[BACK]Return to basic.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / mg

Diff for /src/usr.bin/mg/basic.c between version 1.10 and 1.11

version 1.10, 2002/02/16 21:27:49 version 1.11, 2002/03/10 13:22:56
Line 459 
Line 459 
 {  {
         LINE  *clp;          LINE  *clp;
         int    s;          int    s;
         char   buf[32];          char   buf[32], *tmp;
           long   nl;
   
         if (!(f & FFARG)) {          if (!(f & FFARG)) {
                 char *tmp;  
   
                 if ((s = ereply("Goto line: ", buf, sizeof(buf))) != TRUE)                  if ((s = ereply("Goto line: ", buf, sizeof(buf))) != TRUE)
                         return s;                          return s;
                 errno = 0;                  errno = 0;
                 n = strtol(buf, &tmp, 10);                  nl = strtol(buf, &tmp, 10);
                 if (buf[0] == '\0' || *tmp != '\0') {                  if (buf[0] == '\0' || *tmp != '\0') {
                         ewprintf("Invalid number");                          ewprintf("Invalid number");
                         return FALSE;                          return FALSE;
                 }                  }
                 if ((errno == ERANGE && (n == LONG_MAX || n == LONG_MIN)) ||                  if (nl >= INT_MAX || nl <= INT_MIN) {
                     (n > INT_MAX || n < INT_MIN)) {  
                         ewprintf("Out of range");                          ewprintf("Out of range");
                         return FALSE;                          return FALSE;
                 }                  }
                   n = (int)nl;
         }          }
         if (n >= 0) {          if (n >= 0) {
                 clp = lforw(curbp->b_linep);    /* "clp" is first line */                  clp = lforw(curbp->b_linep);    /* "clp" is first line */

Legend:
Removed from v.1.10  
changed lines
  Added in v.1.11