File filelight-overflow-fix.diff of Package kde3-filelight

--- ./src/part/radialMap/segmentTip.cpp.overflow-fix	2008-07-02 22:48:45.000000000 +0200
+++ ./src/part/radialMap/segmentTip.cpp	2008-09-07 16:53:12.000000000 +0200
@@ -23,13 +23,18 @@
     // # xdpyinfo | grep backing
     // options:    backing-store YES, save-unders YES
 
-    char buffer[4096];
+    char buffer[256];
+    bool backingStore = false;
     FILE *xdpyinfo = popen( "xdpyinfo", "r" );
-    int const N = fread( (void*)buffer, sizeof(char), 4096, xdpyinfo );
-    buffer[ N ] = '\0';
-    pclose( xdpyinfo );
+    while ( fgets( buffer, 256, xdpyinfo ) != 0) {
+        if ( QString::fromLocal8Bit( buffer ).contains( "backing-store YES" ) ) {
+            backingStore = true;
+            break;
+        }
+    }
 
-    return QString::fromLocal8Bit( buffer ).contains( "backing-store YES" );
+    pclose( xdpyinfo );
+    return backingStore;
 }
 
 
openSUSE Build Service is sponsored by