tool: Moved internal variable isatty to the global config
authorSteve Holme <steve_holme@hotmail.com>
Sat, 1 Mar 2014 13:49:28 +0000 (13:49 +0000)
committerSteve Holme <steve_holme@hotmail.com>
Sat, 1 Mar 2014 18:30:16 +0000 (18:30 +0000)
src/tool_cb_dbg.c
src/tool_cfgable.h
src/tool_operate.c

index 8a75fb6..010dae3 100644 (file)
@@ -142,8 +142,7 @@ int tool_debug_cb(CURL *handle, curl_infotype type,
            to stderr or stdout, we don't display the alert about the data not
            being shown as the data _is_ shown then just not via this
            function */
-        if(!operation->isatty ||
-           ((output != stderr) && (output != stdout))) {
+        if(!config->isatty || ((output != stderr) && (output != stdout))) {
           if(!newl)
             fprintf(output, "%s%s ", timebuf, s_infotype[type]);
           fprintf(output, "[data not shown]\n");
index 1041175..4519744 100644 (file)
@@ -100,7 +100,6 @@ struct OperationConfig {
   bool netrc_opt;
   bool netrc;
   char *netrc_file;
-  bool isatty;              /* updated internally only if output is a tty */
   struct getout *url_list;  /* point to the first node */
   struct getout *url_last;  /* point to the last/current node */
   struct getout *url_get;   /* point to the node to fill in URL */
@@ -216,6 +215,7 @@ struct GlobalConfig {
                                       1 => -S has been used to show errors */
   bool mute;                      /* don't show messages, --silent given */
   bool noprogress;                /* don't show progress bar --silent given */
+  bool isatty;                    /* Updated internally if output is a tty */
   FILE *errors;                   /* Error stream, defaults to stderr */
   bool errors_fopened;            /* Whether error stream isn't stderr */
   char *trace_dump;               /* file to dump the network trace to */
index 8e1b1a5..02841c1 100644 (file)
@@ -346,7 +346,7 @@ static CURLcode operate_do(struct GlobalConfig *global,
 
   /* save the values of noprogress and isatty to restore them later on */
   orig_noprogress = global->noprogress;
-  orig_isatty = config->isatty;
+  orig_isatty = global->isatty;
 
   /*
   ** Nested loops start here.
@@ -745,12 +745,12 @@ static CURLcode operate_do(struct GlobalConfig *global,
            isatty(fileno(outs.stream)))
           /* we send the output to a tty, therefore we switch off the progress
              meter */
-          global->noprogress = config->isatty = TRUE;
+          global->noprogress = global->isatty = TRUE;
         else {
           /* progress meter is per download, so restore config
              values */
           global->noprogress = orig_noprogress;
-          config->isatty = orig_isatty;
+          global->isatty = orig_isatty;
         }
 
         if(urlnum > 1 && !global->mute) {
@@ -1750,6 +1750,10 @@ static CURLcode operate_do(struct GlobalConfig *global,
 
   quit_curl:
 
+  /* Reset the global config variables */
+  global->noprogress = orig_noprogress;
+  global->isatty = orig_isatty;
+
   /* Free function-local referenced allocated memory */
   Curl_safefree(httpgetfields);