[BACK]Return to cmd-display-menu.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / tmux

Diff for /src/usr.bin/tmux/cmd-display-menu.c between version 1.33 and 1.34

version 1.33, 2021/08/27 17:25:55 version 1.34, 2021/10/11 10:55:30
Line 53 
Line 53 
         .name = "display-popup",          .name = "display-popup",
         .alias = "popup",          .alias = "popup",
   
         .args = { "BCc:d:Eh:t:w:x:y:", 0, -1, NULL },          .args = { "BCc:d:e:Eh:t:w:x:y:", 0, -1, NULL },
         .usage = "[-BCE] [-c target-client] [-d start-directory] [-h height] "          .usage = "[-BCE] [-c target-client] [-d start-directory] "
                  CMD_TARGET_PANE_USAGE " [-w width] "                   "[-e environment] [-h height] " CMD_TARGET_PANE_USAGE " "
                  "[-x position] [-y position] [shell-command]",                   "[-w width] [-x position] [-y position] [shell-command]",
   
         .target = { 't', CMD_FIND_PANE, 0 },          .target = { 't', CMD_FIND_PANE, 0 },
   
Line 357 
Line 357 
         char                    *cwd, *cause, **argv = NULL;          char                    *cwd, *cause, **argv = NULL;
         int                      flags = 0, argc = 0;          int                      flags = 0, argc = 0;
         u_int                    px, py, w, h, count = args_count(args);          u_int                    px, py, w, h, count = args_count(args);
           struct args_value       *av;
           struct environ          *env = NULL;
   
         if (args_has(args, 'C')) {          if (args_has(args, 'C')) {
                 server_client_clear_overlay(tc);                  server_client_clear_overlay(tc);
Line 410 
Line 412 
         } else          } else
                 args_to_vector(args, &argc, &argv);                  args_to_vector(args, &argc, &argv);
   
           if (args_has(args, 'e') >= 1) {
                   env = environ_create();
                   av = args_first_value(args, 'e');
                   while (av != NULL) {
                           environ_put(env, av->string, 0);
                           av = args_next_value(av);
                   }
           }
   
         if (args_has(args, 'E') > 1)          if (args_has(args, 'E') > 1)
                 flags |= POPUP_CLOSEEXITZERO;                  flags |= POPUP_CLOSEEXITZERO;
         else if (args_has(args, 'E'))          else if (args_has(args, 'E'))
                 flags |= POPUP_CLOSEEXIT;                  flags |= POPUP_CLOSEEXIT;
         if (args_has(args, 'B'))          if (args_has(args, 'B'))
                 flags |= POPUP_NOBORDER;                  flags |= POPUP_NOBORDER;
         if (popup_display(flags, item, px, py, w, h, shellcmd, argc, argv, cwd,          if (popup_display(flags, item, px, py, w, h, env, shellcmd, argc, argv,
             tc, s, NULL, NULL) != 0) {              cwd, tc, s, NULL, NULL) != 0) {
                 cmd_free_argv(argc, argv);                  cmd_free_argv(argc, argv);
                   if (env != NULL)
                           environ_free(env);
                 return (CMD_RETURN_NORMAL);                  return (CMD_RETURN_NORMAL);
         }          }
           if (env != NULL)
                   environ_free(env);
         cmd_free_argv(argc, argv);          cmd_free_argv(argc, argv);
         return (CMD_RETURN_WAIT);          return (CMD_RETURN_WAIT);
 }  }

Legend:
Removed from v.1.33  
changed lines
  Added in v.1.34