projects
/
mmh
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of git.sv.nongnu.org:/srv/git/nmh
[mmh]
/
uip
/
scansbr.c
diff --git
a/uip/scansbr.c
b/uip/scansbr.c
index
0d12c34
..
1f2785a
100644
(file)
--- a/
uip/scansbr.c
+++ b/
uip/scansbr.c
@@
-19,13
+19,6
@@
# define _cnt _w /* Wretch */
#endif
# define _cnt _w /* Wretch */
#endif
-#ifdef SCO_5_STDIO
-# define _ptr __ptr
-# define _cnt __cnt
-# define _base __base
-# define _filbuf(fp) ((fp)->__cnt = 0, __filbuf(fp))
-#endif
-
#define MAXSCANL 256 /* longest possible scan line */
/*
#define MAXSCANL 256 /* longest possible scan line */
/*
@@
-63,7
+56,6
@@
char *scanl = 0; /* text of most recent scanline */
/*
* prototypes
*/
/*
* prototypes
*/
-int sc_width (void); /* from termsbr.c */
static int mh_fputs(char *, FILE *);
#ifdef MULTIBYTE_SUPPORT
static int mh_fputs(char *, FILE *);
#ifdef MULTIBYTE_SUPPORT
@@
-215,6
+207,15
@@
scan (FILE *inb, int innum, int outnum, char *nfs, int width, int curflg,
case BODY:
compnum = -1;
case BODY:
compnum = -1;
+ /*
+ * A slight hack ... if we have less than rlwidth characters
+ * in the buffer, call m_getfld again.
+ */
+
+ if ((i = strlen(tmpbuf)) < rlwidth) {
+ state = m_getfld (state, name, tmpbuf + i,
+ rlwidth - i, inb);
+ }
if (! outnum) {
state = FILEEOF; /* stop now if scan cmd */
goto finished;
if (! outnum) {
state = FILEEOF; /* stop now if scan cmd */
goto finished;