Author: erikharrison
Date: 2007-01-22 04:00:36 +0000 (Mon, 22 Jan 2007)
New Revision: 24693

Modified:
   mousepad/trunk/src/main.c
Log:
Applied patch from Alexander Toresson


Modified: mousepad/trunk/src/main.c
===================================================================
--- mousepad/trunk/src/main.c   2007-01-22 00:25:12 UTC (rev 24692)
+++ mousepad/trunk/src/main.c   2007-01-22 04:00:36 UTC (rev 24693)
@@ -65,22 +65,43 @@
                return -1;
        
        /* version num */
-       fgets(buf, sizeof(buf), fp);
+       if (!fgets(buf, sizeof(buf), fp)) return -1;
        num = g_strsplit(buf, "." , 3);
        if ((atoi(num[1]) >= 1) && (atoi(num[2]) >= 0)) {
-               fgets(buf, sizeof(buf), fp);
-               sd->conf.width = atoi(buf);
-               fgets(buf, sizeof(buf), fp);
-               sd->conf.height = atoi(buf);
-               fgets(buf, sizeof(buf), fp);
+               if (!fgets(buf, sizeof(buf), fp)) return -1;
+               if (buf[0] >= '0' && buf[0] <= '9')
+                       sd->conf.width = atoi(buf);
+               else
+                       return -1;
+
+               if (!fgets(buf, sizeof(buf), fp)) return -1;
+               if (buf[0] >= '0' && buf[0] <= '9')
+                       sd->conf.height = atoi(buf);
+               else
+                       return -1;
+
+               if (!fgets(buf, sizeof(buf), fp)) return -1;
                sd->conf.fontname = g_strdup(buf);
-               fgets(buf, sizeof(buf), fp);
-               sd->conf.wordwrap = atoi(buf);
-               fgets(buf, sizeof(buf), fp);
-               sd->conf.linenumbers = atoi(buf);
-               fgets(buf, sizeof(buf), fp);
-               sd->conf.autoindent = atoi(buf);
-               fgets(buf, sizeof(buf), fp);
+
+               if (!fgets(buf, sizeof(buf), fp)) return -1;
+               if (buf[0] >= '0' && buf[0] <= '1')
+                       sd->conf.wordwrap = atoi(buf);
+               else
+                       return -1;
+
+               if (!fgets(buf, sizeof(buf), fp)) return -1;
+               if (buf[0] >= '0' && buf[0] <= '1')
+                       sd->conf.linenumbers = atoi(buf);
+               else
+                       return -1;
+
+               if (!fgets(buf, sizeof(buf), fp)) return -1;
+               if (buf[0] >= '0' && buf[0] <= '1')
+                       sd->conf.autoindent = atoi(buf);
+               else
+                       return -1;
+
+               if (!fgets(buf, sizeof(buf), fp)) return -1;
                if (strcmp(buf, "0") != 0)
                        sd->conf.charset = g_strdup(buf);
        }

_______________________________________________
Xfce4-commits mailing list
Xfce4-commits@xfce.org
http://foo-projects.org/mailman/listinfo/xfce4-commits

Reply via email to