aboutsummaryrefslogtreecommitdiffstats
path: root/lib-src
diff options
context:
space:
mode:
authorPaul Eggert2011-01-22 23:30:19 -0800
committerPaul Eggert2011-01-22 23:30:19 -0800
commit9055082ef8a2f1b9033f77f0eb2b9c756a306c01 (patch)
tree041665ff66c2bdab89f2f59976fb9ce0e2003ab0 /lib-src
parentf77fabaf6bc1296631b1a4bcdf363721e19a3ac4 (diff)
downloademacs-9055082ef8a2f1b9033f77f0eb2b9c756a306c01.tar.gz
emacs-9055082ef8a2f1b9033f77f0eb2b9c756a306c01.zip
Check return values of some library calls.
Diffstat (limited to 'lib-src')
-rw-r--r--lib-src/ChangeLog8
-rw-r--r--lib-src/hexl.c8
-rw-r--r--lib-src/make-docfile.c13
-rw-r--r--lib-src/movemail.c3
4 files changed, 26 insertions, 6 deletions
diff --git a/lib-src/ChangeLog b/lib-src/ChangeLog
index 232bb389fd7..74509f4ae5e 100644
--- a/lib-src/ChangeLog
+++ b/lib-src/ChangeLog
@@ -1,3 +1,11 @@
12011-01-23 Paul Eggert <eggert@cs.ucla.edu>
2
3 Check return values of some library calls.
4 * hexl.c (main): Check fread result.
5 * make-docfile.c (main): Check chdir result.
6 (scan_c_file): Check fscanf result.
7 * movemail.c (main): Check ftruncate result.
8
12011-01-17 Paul Eggert <eggert@cs.ucla.edu> 92011-01-17 Paul Eggert <eggert@cs.ucla.edu>
2 10
3 Include <unistd.h> unilaterally. 11 Include <unistd.h> unilaterally.
diff --git a/lib-src/hexl.c b/lib-src/hexl.c
index aa5b370aade..e0a5166760a 100644
--- a/lib-src/hexl.c
+++ b/lib-src/hexl.c
@@ -179,7 +179,9 @@ main (int argc, char **argv)
179 179
180#define hexchar(x) (isdigit (x) ? x - '0' : x - 'a' + 10) 180#define hexchar(x) (isdigit (x) ? x - '0' : x - 'a' + 10)
181 181
182 fread (buf, 1, 10, fp); /* skip 10 bytes */ 182 /* Skip 10 bytes. */
183 if (fread (buf, 1, 10, fp) != 10)
184 break;
183 185
184 for (i=0; i < 16; ++i) 186 for (i=0; i < 16; ++i)
185 { 187 {
@@ -207,7 +209,9 @@ main (int argc, char **argv)
207 if (i < 16) 209 if (i < 16)
208 break; 210 break;
209 211
210 fread (buf, 1, 18, fp); /* skip 18 bytes */ 212 /* Skip 18 bytes. */
213 if (fread (buf, 1, 18, fp) != 18)
214 break;
211 } 215 }
212 } 216 }
213 } 217 }
diff --git a/lib-src/make-docfile.c b/lib-src/make-docfile.c
index 4260e4c08f6..b6fccfacfec 100644
--- a/lib-src/make-docfile.c
+++ b/lib-src/make-docfile.c
@@ -158,7 +158,11 @@ main (int argc, char **argv)
158 } 158 }
159 if (argc > i + 1 && !strcmp (argv[i], "-d")) 159 if (argc > i + 1 && !strcmp (argv[i], "-d"))
160 { 160 {
161 chdir (argv[i + 1]); 161 if (chdir (argv[i + 1]) != 0)
162 {
163 perror (argv[i + 1]);
164 return EXIT_FAILURE;
165 }
162 i += 2; 166 i += 2;
163 } 167 }
164 168
@@ -648,6 +652,7 @@ scan_c_file (char *filename, const char *mode)
648 652
649 if (defunflag && (commas == 1 || commas == 2)) 653 if (defunflag && (commas == 1 || commas == 2))
650 { 654 {
655 int scanned = 0;
651 do 656 do
652 c = getc (infile); 657 c = getc (infile);
653 while (c == ' ' || c == '\n' || c == '\r' || c == '\t'); 658 while (c == ' ' || c == '\n' || c == '\r' || c == '\t');
@@ -655,12 +660,14 @@ scan_c_file (char *filename, const char *mode)
655 goto eof; 660 goto eof;
656 ungetc (c, infile); 661 ungetc (c, infile);
657 if (commas == 2) /* pick up minargs */ 662 if (commas == 2) /* pick up minargs */
658 fscanf (infile, "%d", &minargs); 663 scanned = fscanf (infile, "%d", &minargs);
659 else /* pick up maxargs */ 664 else /* pick up maxargs */
660 if (c == 'M' || c == 'U') /* MANY || UNEVALLED */ 665 if (c == 'M' || c == 'U') /* MANY || UNEVALLED */
661 maxargs = -1; 666 maxargs = -1;
662 else 667 else
663 fscanf (infile, "%d", &maxargs); 668 scanned = fscanf (infile, "%d", &maxargs);
669 if (scanned < 0)
670 goto eof;
664 } 671 }
665 } 672 }
666 673
diff --git a/lib-src/movemail.c b/lib-src/movemail.c
index b127c85951d..f492188963d 100644
--- a/lib-src/movemail.c
+++ b/lib-src/movemail.c
@@ -488,7 +488,8 @@ main (int argc, char **argv)
488#ifdef MAIL_USE_SYSTEM_LOCK 488#ifdef MAIL_USE_SYSTEM_LOCK
489 if (! preserve_mail) 489 if (! preserve_mail)
490 { 490 {
491 ftruncate (indesc, 0L); 491 if (ftruncate (indesc, 0L) != 0)
492 pfatal_with_name (inname);
492 } 493 }
493#endif /* MAIL_USE_SYSTEM_LOCK */ 494#endif /* MAIL_USE_SYSTEM_LOCK */
494 495