assorted fixes uncovered by randomconfig runs
No binary (build failed)
—
(log yok)
| @@ -260,7 +260,9 @@ static void crash_dummy(); | |
| static void crash_test(); | |
| static int crashme = 0; | |
| #endif | |
| + | #if ENABLE_FEATURE_VI_COLON |
| static char *initial_cmds[] = { NULL, NULL , NULL }; // currently 2 entries, NULL terminated | |
| + | #endif |
| static void write1(const char *out) | |
| @@ -307,12 +309,14 @@ int vi_main(int argc, char **argv) | |
| // 1- process $HOME/.exrc file (not inplemented yet) | |
| // 2- process EXINIT variable from environment | |
| // 3- process command line args | |
| + | #if ENABLE_FEATURE_VI_COLON |
| { | |
| char *p = getenv("EXINIT"); | |
| if (p && *p) | |
| initial_cmds[0] = xstrdup(p); | |
| } | |
| - | while ((c = getopt(argc, argv, "hCRc:")) != -1) { |
| + | #endif |
| + | while ((c = getopt(argc, argv, "hCR" USE_FEATURE_VI_COLON("c:"))) != -1) { |
| switch (c) { | |
| #if ENABLE_FEATURE_VI_CRASHME | |
| case 'C': | |
| @@ -328,11 +332,13 @@ int vi_main(int argc, char **argv) | |
| //case 'r': // recover flag- ignore- we don't use tmp file | |
| //case 'x': // encryption flag- ignore | |
| //case 'c': // execute command first | |
| + | #if ENABLE_FEATURE_VI_COLON |
| case 'c': // cmd line vi command | |
| if (*optarg) | |
| initial_cmds[initial_cmds[0] != 0] = xstrdup(optarg); | |
| break; | |
| //case 'h': // help -- just use default | |
| + | #endif |
| default: | |
| show_help(); | |
| return 1; | |
| @@ -431,6 +437,7 @@ static void edit_file(char * fn) | |
| redraw(FALSE); // dont force every col re-draw | |
| show_status_line(); | |
| + | #if ENABLE_FEATURE_VI_COLON |
| { | |
| char *p, *q; | |
| int n = 0; | |
| @@ -450,6 +457,7 @@ static void edit_file(char * fn) | |
| n++; | |
| } | |
| } | |
| + | #endif |
| //------This is the main Vi cmd handling loop ----------------------- | |
| while (editing > 0) { | |
| #if ENABLE_FEATURE_VI_CRASHME | |
| @@ -938,7 +946,9 @@ static void colon(char * buf) | |
| } | |
| #if ENABLE_FEATURE_VI_SET | |
| } else if (strncasecmp(cmd, "set", i) == 0) { // set or clear features | |
| + | #if ENABLE_FEATURE_VI_SETOPTS |
| char *argp; | |
| + | #endif |
| i = 0; // offset into args | |
| // only blank is regarded as args delmiter. What about tab '\t' ? | |
| if (!args[0] || strcasecmp(args, "all") == 0) { | |
| @@ -387,9 +387,10 @@ int ifconfig_main(int argc, char **argv) | |
| } | |
| #endif | |
| else { | |
| + | len_and_sockaddr *lsa; |
| if (strcmp(host, "inet") == 0) | |
| continue; /* compat stuff */ | |
| - | len_and_sockaddr *lsa = xhost2sockaddr(host, 0); |
| + | lsa = xhost2sockaddr(host, 0); |
| #if ENABLE_FEATURE_IPV6 | |
| if (lsa->sa.sa_family == AF_INET6) { | |
| int sockfd6; | |
| @@ -325,6 +325,7 @@ struct globals { | |
| s |= (sector >> 2) & 0xc0; \ | |
| } while (0) | |
| + | #if ENABLE_FEATURE_FDISK_WRITABLE |
| /* read line; return 0 or first printable char */ | |
| static int | |
| read_line(const char *prompt) | |
| @@ -343,6 +344,7 @@ read_line(const char *prompt) | |
| line_ptr++; | |
| return *line_ptr; | |
| } | |
| + | #endif |
| /* | |
| * return partition name - uses static storage | |