# ------------------------------------------------------------------------------ # CHANGES | 15 ++++ # WWW/Library/Implementation/HTAccess.c | 3 # WWW/Library/Implementation/HTFile.c | 2 # WWW/Library/Implementation/HTMLDTD.c | 10 --- # WWW/Library/Implementation/HTPlain.c | 2 # WWW/Library/Implementation/HTString.c | 59 +++++++++++++++++ # WWW/Library/Implementation/HTString.h | 16 ++++ # WWW/Library/Implementation/SGML.c | 2 # build-slang.com | 1 # build.com | 1 # src/LYCharSets.c | 11 --- # src/LYHistory.c | 33 +++++++++ # src/LYHistory.h | 1 # src/LYMain.c | 6 - # src/LYMainLoop.c | 106 +++++++++++++++++++------------- # src/LYUtils.c | 22 +++--- # src/LYUtils.h | 9 +- # src/descrip.mms | 2 # userdefs.h | 4 - # 19 files changed, 218 insertions, 87 deletions # ------------------------------------------------------------------------------ Index: CHANGES --- 2.8.2pre.3/CHANGES Wed May 12 20:06:05 1999 +++ 2.8.2pre.4/CHANGES Sun May 16 21:11:26 1999 @@ -1,6 +1,21 @@ Changes since Lynx 2.8 release =============================================================================== +1999-05-16 (2.8.2pre.4) +* add 'fixit' parameter to LYEnsureAbsoluteURL() to suppress logic in + LYConvertToURL() that was changed in 2.8.1dev.4, to re-offer the original + string after an invalid URL is entered at a 'g' prompt. The calls to support + 'g' are unmodified; other calls revert to the older behavior (recommended by + KW) -TD +* add/use string functions that make EBCDIC comparisons sort in the ASCII + collating sequence, eliminating some special ifdef's in HTMLDTD.c -PG +* when STARTFILE cannot not be loaded, lynx now exits with more understandable + status messages: all important statusline messages are now printed to + stderr/stdout -LP +* add definition for _DECC_V4_SOURCE for VMS SOCKETSHR_TCP configuration to + top-level and ./src build*.com files (reported by Andy Harper) -TD +* change UNKNOWN_URL_TYPE to 1, to keep it distinct from NOT_A_URL_TYPE, fixes + an error introduced when changing UrlTypes to an enum (reported by KW) -TD 1999-05-12 (2.8.2pre.3) * add DEBUG_SOURCE_CACHE makefile flag so all documents will be cached in SOURCE_CACHE mode, including local files. Normally undef'ed so only http Index: WWW/Library/Implementation/HTAccess.c --- 2.8.2pre.3/WWW/Library/Implementation/HTAccess.c Wed May 5 18:33:59 1999 +++ 2.8.2pre.4/WWW/Library/Implementation/HTAccess.c Sun May 16 21:11:26 1999 @@ -1011,7 +1011,8 @@ /* Failure in accessing a document */ cp = NULL; - StrAllocCopy(cp, "Can't Access `"); + StrAllocCopy(cp, gettext("Can't Access")); + StrAllocCat(cp, " `"); StrAllocCat(cp, full_address); StrAllocCat(cp, "'"); _HTProgress(cp); Index: WWW/Library/Implementation/HTFile.c --- 2.8.2pre.3/WWW/Library/Implementation/HTFile.c Wed May 12 20:06:05 1999 +++ 2.8.2pre.4/WWW/Library/Implementation/HTFile.c Sun May 16 21:11:26 1999 @@ -1556,7 +1556,7 @@ { - HTBTree * bt = HTBTree_new((HTComparer)strcmp); + HTBTree * bt = HTBTree_new((HTComparer)AS_cmp); int num_of_entries = 0; /* lines counter */ _HTProgress (gettext("Reading directory...")); Index: WWW/Library/Implementation/HTMLDTD.c --- 2.8.2pre.3/WWW/Library/Implementation/HTMLDTD.c Wed May 12 20:06:05 1999 +++ 2.8.2pre.4/WWW/Library/Implementation/HTMLDTD.c Sun May 16 21:11:26 1999 @@ -1540,26 +1540,16 @@ { P("FORM") , form_attr, HTML_FORM_ATTRIBUTES, SGML_MIXED,T_FORM}, { P("FRAME") , frame_attr, HTML_FRAME_ATTRIBUTES, SGML_EMPTY,T_FRAME}, { P("FRAMESET"), frameset_attr,HTML_FRAMESET_ATTRIBUTES, SGML_ELEMENT,T_FRAMESET}, -#ifndef EBCDIC /* S/390 -- gil -- 0177 */ { P("H1") , h_attr, HTML_H_ATTRIBUTES, SGML_MIXED,T_H1}, { P("H2") , h_attr, HTML_H_ATTRIBUTES, SGML_MIXED,T_H2}, { P("H3") , h_attr, HTML_H_ATTRIBUTES, SGML_MIXED,T_H3}, { P("H4") , h_attr, HTML_H_ATTRIBUTES, SGML_MIXED,T_H4}, { P("H5") , h_attr, HTML_H_ATTRIBUTES, SGML_MIXED,T_H5}, { P("H6") , h_attr, HTML_H_ATTRIBUTES, SGML_MIXED,T_H6}, -#endif /* EBCDIC S/390 -- gil -- 0187 */ { P("HEAD") , gen_attr, HTML_GEN_ATTRIBUTES, SGML_ELEMENT,T_HEAD}, { P("HR") , hr_attr, HTML_HR_ATTRIBUTES, SGML_EMPTY,T_HR}, { P("HTML") , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED,T_HTML}, { P("HY") , gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY,T_HY}, -#ifdef EBCDIC - { P("H1") , h_attr, HTML_H_ATTRIBUTES, SGML_MIXED,T_H1}, - { P("H2") , h_attr, HTML_H_ATTRIBUTES, SGML_MIXED,T_H2}, - { P("H3") , h_attr, HTML_H_ATTRIBUTES, SGML_MIXED,T_H3}, - { P("H4") , h_attr, HTML_H_ATTRIBUTES, SGML_MIXED,T_H4}, - { P("H5") , h_attr, HTML_H_ATTRIBUTES, SGML_MIXED,T_H5}, - { P("H6") , h_attr, HTML_H_ATTRIBUTES, SGML_MIXED,T_H6}, -#endif /* EBCDIC -- gil */ { P("I") , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED,T_I}, { P("IFRAME") , iframe_attr, HTML_IFRAME_ATTRIBUTES, SGML_MIXED,T_IFRAME}, { P("IMG") , img_attr, HTML_IMG_ATTRIBUTES, SGML_EMPTY,T_IMG}, Index: WWW/Library/Implementation/HTPlain.c --- 2.8.2pre.3/WWW/Library/Implementation/HTPlain.c Wed Mar 17 20:17:11 1999 +++ 2.8.2pre.4/WWW/Library/Implementation/HTPlain.c Sun May 16 21:11:26 1999 @@ -167,7 +167,7 @@ diff < 0 ? (low = i+1) : (high = i)) { /* Binary search */ i = (low + (high-low)/2); - diff = strncmp(HTML_dtd.entity_names[i], name, len); + diff = AS_ncmp(HTML_dtd.entity_names[i], name, len); if (diff == 0) { HText_appendText(me->text, LYCharSets[me->outUCLYhndl][i]); Index: WWW/Library/Implementation/HTString.c --- 2.8.2pre.3/WWW/Library/Implementation/HTString.c Sat May 8 11:46:28 1999 +++ 2.8.2pre.4/WWW/Library/Implementation/HTString.c Sun May 16 21:11:26 1999 @@ -122,6 +122,65 @@ } #endif /* VM */ +#ifdef NOT_ASCII + +/* Case-insensitive with ASCII collating sequence +** ---------------- +*/ +PUBLIC int AS_casecomp ARGS2( + CONST char*, p, + CONST char*, q) +{ + int diff; + + for ( ; ; p++, q++) { + if (!(*p && *q)) + return ((unsigned char) *p - (unsigned char) *q); + diff = TOASCII(TOLOWER(*p)) + - TOASCII(TOLOWER(*q)); + if (diff) + return diff; + } + /*NOTREACHED*/ +} + + +/* With count limit and ASCII collating sequence +** ---------------- +** AS_cmp uses n == -1 to compare indefinite length. +*/ +PUBLIC int AS_ncmp ARGS3( + CONST char *, p, + CONST char *, q, + unsigned int, n) +{ + CONST char *a = p; + int diff; + + for ( ; (p-a) < n; p++, q++) { + if (!(*p && *q)) + return ((unsigned char) *p - (unsigned char) *q); + diff = TOASCII(*p) + - TOASCII(*q); + if (diff) + return diff; + } + return 0; /* Match up to n characters */ +} + + +/* With ASCII collating sequence +** ---------------- +*/ +PUBLIC int AS_cmp ARGS2( + CONST char *, p, + CONST char *, q) +{ + return( AS_ncmp( p, q, -1 ) ); +} +#endif /* NOT_ASCII */ + + /* Allocate a new copy of a string, and returns it */ PUBLIC char * HTSACopy ARGS2( Index: WWW/Library/Implementation/HTString.h --- 2.8.2pre.3/WWW/Library/Implementation/HTString.h Fri Apr 23 08:56:35 1999 +++ 2.8.2pre.4/WWW/Library/Implementation/HTString.h Sun May 16 21:11:26 1999 @@ -16,6 +16,22 @@ extern CONST char * HTLibraryVersion; /* String for help screen etc */ /* + EBCDIC string comparison using ASCII collating sequence +*/ +#ifdef NOT_ASCII +extern int AS_casecomp PARAMS((CONST char *a, CONST char *b)); +extern int AS_ncmp PARAMS((CONST char *a, CONST char *b, unsigned int n)); +#define AS_cmp( a, b ) ( AS_ncmp( ( a ), ( b ), -1 ) ) +extern int AS_cmp PARAMS((CONST char *a, CONST char *b)); + +#else +#define AS_casecomp( a, b ) ( strcasecomp( ( a ), ( b ) ) ) +#define AS_ncmp( a, b, c ) ( strncmp( ( a ), ( b ), ( c ) ) ) +#define AS_cmp strcmp + +#endif /* NOT_ASCII */ + +/* Case-insensitive string comparison Index: WWW/Library/Implementation/SGML.c --- 2.8.2pre.3/WWW/Library/Implementation/SGML.c Wed May 5 18:33:59 1999 +++ 2.8.2pre.4/WWW/Library/Implementation/SGML.c Sun May 16 21:11:26 1999 @@ -1215,7 +1215,7 @@ high > low; diff < 0 ? (low = i+1) : (high = i)) { /* Binary search */ i = (low + (high-low)/2); - diff = strcasecomp(dtd->tags[i].name, string); /* Case insensitive */ + diff = AS_casecomp(dtd->tags[i].name, string); /* Case insensitive */ if (diff == 0) { /* success: found it */ return &dtd->tags[i]; } Index: build-slang.com --- 2.8.2pre.3/build-slang.com Tue Mar 30 10:10:37 1999 +++ 2.8.2pre.4/build-slang.com Sun May 16 21:11:26 1999 @@ -217,6 +217,7 @@ $ compiler := "DECC" $ if option .eqs. "UCX" then optfile = "UCXSHR" $ if option .eqs. "TCPWARE" then optfile = "TCPWARESHR" +$ if option .eqs. "SOCKETSHR_TCP" then extra = extra + ",_DECC_V4_SOURCE" $ if option .eqs. "MULTINET" then - extra = extra + ",_DECC_V4_SOURCE,__SOCKET_TYPEDEFS" $ v1 = f$verify(1) Index: build.com --- 2.8.2pre.3/build.com Tue Mar 30 10:10:37 1999 +++ 2.8.2pre.4/build.com Sun May 16 21:11:26 1999 @@ -196,6 +196,7 @@ $ compiler := "DECC" $ if option .eqs. "UCX" then optfile = "UCXSHR" $ if option .eqs. "TCPWARE" then optfile = "TCPWARESHR" +$ if option .eqs. "SOCKETSHR_TCP" then extra = extra + ",_DECC_V4_SOURCE" $ if option .eqs. "MULTINET" then - extra = extra + ",_DECC_V4_SOURCE,__SOCKET_TYPEDEFS" $ v1 = f$verify(1) Index: src/LYCharSets.c --- 2.8.2pre.3/src/LYCharSets.c Fri Apr 23 08:56:35 1999 +++ 2.8.2pre.4/src/LYCharSets.c Sun May 16 21:11:26 1999 @@ -868,12 +868,6 @@ /* * Try UC_entity_info unicode_entities[]. */ -#ifdef NOT_ASCII /* S/390 -- gil -- 1656 */ - for (i = 0; i < number_of_unicode_entities; i++ ) { - /* - ** Linear search for NOT_ASCII. - */ -#else /* NOT_ASCII */ for (low = 0, high = number_of_unicode_entities; high > low; diff < 0 ? (low = i+1) : (high = i)) { @@ -881,15 +875,12 @@ ** Binary search. */ i = (low + (high-low)/2); -#endif /* NOT_ASCII S/390 -- gil -- 1662 */ - diff = strcmp(unicode_entities[i].name, name); /* Case sensitive! */ + diff = AS_cmp(unicode_entities[i].name, name); /* Case sensitive! */ if (diff == 0) { value = unicode_entities[i].code; break; } } - /* } NOT_ASCII */ - return(value); } Index: src/LYHistory.c --- 2.8.2pre.3/src/LYHistory.c Wed May 5 18:33:59 1999 +++ 2.8.2pre.4/src/LYHistory.c Sun May 16 21:11:26 1999 @@ -677,6 +677,7 @@ fprintf(fp0, "
\n");
     fprintf(fp0, "
    \n"); + /* print messages in reverse order: */ i = topOfStack; while (--i >= 0) { if (buffstack[i] != NULL) @@ -706,6 +707,38 @@ if (!HTLoadAbsolute(&WWWDoc)) return(NOT_FOUND); return(NORMAL); +} + +/* + * Dump statusline messages into the buffer. + * Called from mainloop() when exit immediately with an error: + * can not access startfile (first_file) so a couple of alert messages + * will be very useful on exit. + * (Don't expect everyone will look a trace log in case of difficulties:)) + */ +PUBLIC void LYprint_statusline_messages_on_exit ARGS1( + char **, buf) +{ + int i; + + StrAllocCat(*buf, "\n"); + /* print messages in chronological order: + * probably a single message but let's do it. + */ + i = topOfStack - 1; + while (++i <= STATUSBUFSIZE) { + if (buffstack[i] != NULL) { + StrAllocCat(*buf, buffstack[i]); + StrAllocCat(*buf, "\n"); + } + } + i = -1; + while (++i < topOfStack) { + if (buffstack[i] != NULL) { + StrAllocCat(*buf, buffstack[i]); + StrAllocCat(*buf, "\n"); + } + } } Index: src/LYHistory.h --- 2.8.2pre.3/src/LYHistory.h Fri Apr 23 08:56:35 1999 +++ 2.8.2pre.4/src/LYHistory.h Sun May 16 21:11:26 1999 @@ -17,5 +17,6 @@ extern void LYstore_message2 PARAMS((CONST char *message, CONST char *argument)); extern void LYstore_message PARAMS((CONST char *message)); extern int LYshow_statusline_messages PARAMS((document *newdoc)); +extern void LYprint_statusline_messages_on_exit PARAMS((char **buf)); #endif /* LYHISTORY_H */ Index: src/LYMain.c --- 2.8.2pre.3/src/LYMain.c Wed May 5 18:33:59 1999 +++ 2.8.2pre.4/src/LYMain.c Sun May 16 21:11:26 1999 @@ -1369,7 +1369,7 @@ */ StrAllocCopy(LynxHome, startfile); LYFillLocalFileURL((char **)&LynxHome, "file://localhost"); - LYEnsureAbsoluteURL((char **)&LynxHome, "LynxHome"); + LYEnsureAbsoluteURL((char **)&LynxHome, "LynxHome", FALSE); /* * Process any command line arguments not already handled. - FM @@ -1692,7 +1692,7 @@ * make it one. - FM */ LYFillLocalFileURL((char **)&startfile, "file://localhost"); - LYEnsureAbsoluteURL((char **)&startfile, "STARTFILE"); + LYEnsureAbsoluteURL((char **)&startfile, "STARTFILE", FALSE); /* * If homepage was specified and is a file URL with the @@ -1701,7 +1701,7 @@ */ if (homepage) { LYFillLocalFileURL((char **)&homepage, "file://localhost"); - LYEnsureAbsoluteURL((char **)&homepage, "HOMEPAGE"); + LYEnsureAbsoluteURL((char **)&homepage, "HOMEPAGE", FALSE); } /* Index: src/LYMainLoop.c --- 2.8.2pre.3/src/LYMainLoop.c Wed May 12 20:06:05 1999 +++ 2.8.2pre.4/src/LYMainLoop.c Sun May 16 21:11:26 1999 @@ -55,6 +55,7 @@ #include +PRIVATE void exit_immediately_with_error_message PARAMS((int state, BOOLEAN first_file)); PRIVATE void print_status_message PARAMS((CONST linkstruct curlink, char **cp)); PRIVATE BOOL confirm_post_resub PARAMS(( CONST char* address, @@ -647,25 +648,7 @@ /* * If nhist = 0 then it must be the first file. */ - if (!dump_output_immediately) - cleanup(); -#ifdef UNIX - if (dump_output_immediately) - fprintf(stderr, gettext("\nlynx: Can't access startfile %s\n"), - startfile); - else -#endif /* UNIX */ - { - - SetOutputMode( O_TEXT ); - printf(gettext("\nlynx: Can't access startfile %s\n"), - startfile); - SetOutputMode( O_BINARY ); - } - - if (!dump_output_immediately) { - exit_immediately(-1); - } + exit_immediately_with_error_message(NOT_FOUND, first_file); return(-1); } @@ -738,28 +721,8 @@ newdoc.internal_link = FALSE; goto try_again; } else { - if (!dump_output_immediately) - cleanup(); -#ifdef UNIX - if (dump_output_immediately) { - fprintf(stderr, - gettext("\nlynx: Start file could not be found or is not text/html or text/plain\n")); - fprintf(stderr, gettext(" Exiting...\n")); - } else -#endif /* UNIX */ - { - SetOutputMode( O_TEXT ); - - printf( - gettext("\nlynx: Start file could not be found or is not text/html or text/plain\n")); - printf(gettext(" Exiting...\n")); - - SetOutputMode( O_BINARY ); - } - if (!dump_output_immediately) { - exit_immediately(-1); - } - return(-1); + exit_immediately_with_error_message(NULLFILE, first_file); + return(-1); } } @@ -3641,7 +3604,7 @@ if ( user_input_buffer[1] && HTFindPoundSelector(user_input_buffer+1) ) { /* HTFindPoundSelector will initialize www_search_result, - so we do nothing else. */ + so we do nothing else. */ HTAddGotoURL(user_input_buffer); } break; @@ -3651,7 +3614,7 @@ */ StrAllocCopy(temp, user_input_buffer); LYFillLocalFileURL((char **)&temp, "file://localhost"); - LYEnsureAbsoluteURL((char **)&temp, ""); + LYEnsureAbsoluteURL((char **)&temp, "", TRUE); sprintf(user_input_buffer, "%.*s", (int)(sizeof(user_input_buffer) - 1), temp); FREE(temp); @@ -6236,4 +6199,61 @@ } /* turn off cursor since now it's probably on statusline -HV */ move((LYlines - 1), (LYcols - 1)); +} + + +PRIVATE void exit_immediately_with_error_message ARGS2( + int, state, + BOOLEAN, first_file) +{ + char *buf = 0; + char *buf2 = 0; + + if (first_file) { + /* print statusline messages as a hint, if any */ + LYprint_statusline_messages_on_exit(&buf2); + } + + if (state == NOT_FOUND) + { + HTSprintf0(&buf, "%s\n%s %s\n", + buf2, + gettext("lynx: Can't access startfile"), + /* + * hack: if we fail in HTAccess.c + * avoid duplicating URL, oh. + */ + strstr(buf2, gettext("Can't Access")) ? "" : startfile); + } + + if (state == NULLFILE) + { + HTSprintf0(&buf, "%s\n%s\n%s\n", + buf2, + gettext("lynx: Start file could not be found or is not text/html or text/plain"), + gettext(" Exiting...")); + } + + FREE(buf2); + + if (!dump_output_immediately) + cleanup(); + +#ifdef UNIX + if (dump_output_immediately) { + fprintf(stderr, buf); + } else +#endif /* UNIX */ + { + SetOutputMode( O_TEXT ); + printf(buf); + SetOutputMode( O_BINARY ); + } + + FREE(buf); + + if (!dump_output_immediately) { + exit_immediately(-1); + } + /* else: return(-1) in mainloop */ } Index: src/LYUtils.c --- 2.8.2pre.3/src/LYUtils.c Sat May 8 11:46:28 1999 +++ 2.8.2pre.4/src/LYUtils.c Sun May 16 21:11:26 1999 @@ -2514,7 +2514,7 @@ * Don't crash on an empty argument. */ if (cp == NULL || *cp == '\0') - return(0); + return(NOT_A_URL_TYPE); /* kill beginning spaces */ cp = LYSkipBlanks(cp); @@ -2535,11 +2535,11 @@ FREE(cp2); #if defined (DOSPATH) if (cp[1] == ':') - return(0); /* could be drive letter? - kw */ + return(NOT_A_URL_TYPE); /* could be drive letter? - kw */ #endif cp1++; if (!*cp) { - return(0); + return(NOT_A_URL_TYPE); } else if (isdigit((unsigned char)*cp1)) { while (*cp1 && isdigit((unsigned char)*cp1)) cp1++; @@ -2550,7 +2550,7 @@ } } - return(0); + return(NOT_A_URL_TYPE); } /* @@ -3791,9 +3791,10 @@ ** an 'g'oto entries, after they have been ** passed to LYFillLocalFileURL(). - FM */ -PUBLIC void LYEnsureAbsoluteURL ARGS2( +PUBLIC void LYEnsureAbsoluteURL ARGS3( char **, href, - CONST char *, name) + CONST char *, name, + int, fixit) { char *temp = NULL; @@ -3812,7 +3813,7 @@ if (!is_url(*href)) { CTRACE(tfp, "%s%s'%s' is not a URL\n", (name ? name : ""), (name ? " " : ""), *href); - LYConvertToURL(href); + LYConvertToURL(href, fixit); } if ((temp = HTParse(*href, "", PARSE_ALL)) != NULL && *temp != '\0') StrAllocCopy(*href, temp); @@ -3825,8 +3826,9 @@ * directory on the local system, otherwise as an * http URL. - FM */ -PUBLIC void LYConvertToURL ARGS1( - char **, AllocatedString) +PUBLIC void LYConvertToURL ARGS2( + char **, AllocatedString, + int, fixit) { char *old_string = *AllocatedString; char *temp = NULL; @@ -4183,7 +4185,7 @@ } else { StrAllocCopy(*AllocatedString, old_string); } - } else { + } else if (fixit) { /* RW 1998Mar16 Restore AllocatedString to 'old_string' */ StrAllocCopy(*AllocatedString, old_string); } Index: src/LYUtils.h --- 2.8.2pre.3/src/LYUtils.h Wed May 5 18:33:59 1999 +++ 2.8.2pre.4/src/LYUtils.h Sun May 16 21:11:26 1999 @@ -98,9 +98,9 @@ extern void LYCleanupTemp NOPARAMS; extern void LYCloseTemp PARAMS((char *name)); extern void LYCloseTempFP PARAMS((FILE *fp)); -extern void LYConvertToURL PARAMS((char **AllocatedString)); +extern void LYConvertToURL PARAMS((char **AllocatedString, int fixit)); extern void LYDoCSI PARAMS((char *url, CONST char *comment, char **csi)); -extern void LYEnsureAbsoluteURL PARAMS((char **href, CONST char *name)); +extern void LYEnsureAbsoluteURL PARAMS((char **href, CONST char *name, int fixit)); extern void LYFakeZap PARAMS((BOOL set)); extern void LYLocalFileToURL PARAMS((char **target, CONST char *source)); extern void LYLocalhostAliases_free NOPARAMS; @@ -141,10 +141,11 @@ /* * For is_url(). * - * Universal document id types. + * Universal document id types (see LYCheckForProxyURL) */ typedef enum { - UNKNOWN_URL_TYPE = 0, + NOT_A_URL_TYPE = 0, + UNKNOWN_URL_TYPE = 1, /* must be nonzero */ HTTP_URL_TYPE, FILE_URL_TYPE, Index: src/descrip.mms --- 2.8.2pre.3/src/descrip.mms Tue Apr 13 03:39:16 1999 +++ 2.8.2pre.4/src/descrip.mms Sun May 16 21:11:26 1999 @@ -84,7 +84,7 @@ TCP = SOCKETSHR_TCP TCPOPT = SOCKETSHR_TCP .ifdef DEC_C -CDEF = __VMS_CURSES +CDEF = _DECC_V4_SOURCE,__VMS_CURSES .endif .endif Index: userdefs.h --- 2.8.2pre.3/userdefs.h Wed May 5 18:33:59 1999 +++ 2.8.2pre.4/userdefs.h Wed May 5 18:33:59 1999 @@ -1244,12 +1244,12 @@ * the version definition with the Project Version on checkout. Just * ignore it. - kw */ /* $Format: "#define LYNX_VERSION \"$ProjectVersion$\""$ */ -#define LYNX_VERSION "2.8.2pre.3" +#define LYNX_VERSION "2.8.2pre.4" #define LYNX_WWW_HOME "http://lynx.browser.org/" #define LYNX_WWW_DIST "http://www.slcc.edu/lynx/current/" #define LYNX_RELEASE FALSE /* $Format: "#define LYNX_DATE \"$ProjectDate$\""$ */ -#define LYNX_DATE "Wed, 12 May 1999 20:06:05 -0600" +#define LYNX_DATE "Sun, 16 May 1999 21:11:26 -0600" #define LYNX_DATE_OFF 5 /* truncate the automatically-generated date */ #define LYNX_DATE_LEN 11 /* truncate the automatically-generated date */ #define LYNX_RELEASE_DATE "1998"