projects
/
mmh
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
add some gcc hint defines
[mmh]
/
sbr
/
vfgets.c
diff --git
a/sbr/vfgets.c
b/sbr/vfgets.c
index
bd01a2c
..
1ddd99b
100644
(file)
--- a/
sbr/vfgets.c
+++ b/
sbr/vfgets.c
@@
-6,6
+6,7
@@
** complete copyright information.
*/
** complete copyright information.
*/
+#include <sysexits.h>
#include <h/mh.h>
#include <h/utils.h>
#include <h/mh.h>
#include <h/utils.h>
@@
-21,7
+22,7
@@
vfgets(FILE *in, char **bp)
static char *pp = NULL;
if (pp == NULL)
static char *pp = NULL;
if (pp == NULL)
- pp = mh_xmalloc((size_t) (len = BUFSIZ));
+ pp = mh_xcalloc(len = BUFSIZ, sizeof(char));
for (ep = (cp = pp) + len - 1;;) {
if (fgets(cp, ep - cp + 1, in) == NULL) {
for (ep = (cp = pp) + len - 1;;) {
if (fgets(cp, ep - cp + 1, in) == NULL) {
@@
-35,7
+36,7
@@
vfgets(FILE *in, char **bp)
if ((dp = cp + strlen(cp) - 2) < cp || *dp != QUOTE) {
wrong_guess:
if (cp > ++dp)
if ((dp = cp + strlen(cp) - 2) < cp || *dp != QUOTE) {
wrong_guess:
if (cp > ++dp)
- adios(NULL, "vfgets() botch -- you lose big");
+ adios(EX_SOFTWARE, NULL, "vfgets() botch -- you lose big");
if (*dp == '\n') {
*bp = pp;
return 0;
if (*dp == '\n') {
*bp = pp;
return 0;
@@
-63,7
+64,7
@@
wrong_guess:
if (cp >= ep) {
int curlen = cp - pp;
if (cp >= ep) {
int curlen = cp - pp;
- dp = mh_xrealloc(pp, (size_t) (len += BUFSIZ));
+ dp = mh_xrealloc(pp, len += BUFSIZ);
cp = dp + curlen;
ep = (pp = dp) + len - 1;
}
cp = dp + curlen;
ep = (pp = dp) + len - 1;
}