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

Diff for /src/usr.bin/tmux/cmd-load-buffer.c between version 1.60 and 1.61

version 1.60, 2020/04/13 20:51:57 version 1.61, 2020/09/02 13:46:35
Line 37 
Line 37 
         .name = "load-buffer",          .name = "load-buffer",
         .alias = "loadb",          .alias = "loadb",
   
         .args = { "b:", 1, 1 },          .args = { "b:t:w", 1, 1 },
         .usage = CMD_BUFFER_USAGE " path",          .usage = CMD_BUFFER_USAGE " " CMD_TARGET_CLIENT_USAGE " path",
   
         .flags = CMD_AFTERHOOK,          .flags = CMD_AFTERHOOK|CMD_CLIENT_TFLAG|CMD_CLIENT_CANFAIL,
         .exec = cmd_load_buffer_exec          .exec = cmd_load_buffer_exec
 };  };
   
 struct cmd_load_buffer_data {  struct cmd_load_buffer_data {
           struct client           *client;
         struct cmdq_item        *item;          struct cmdq_item        *item;
         char                    *name;          char                    *name;
 };  };
Line 54 
Line 55 
     int closed, struct evbuffer *buffer, void *data)      int closed, struct evbuffer *buffer, void *data)
 {  {
         struct cmd_load_buffer_data     *cdata = data;          struct cmd_load_buffer_data     *cdata = data;
           struct client                   *tc = cdata->client;
         struct cmdq_item                *item = cdata->item;          struct cmdq_item                *item = cdata->item;
         void                            *bdata = EVBUFFER_DATA(buffer);          void                            *bdata = EVBUFFER_DATA(buffer);
         size_t                           bsize = EVBUFFER_LENGTH(buffer);          size_t                           bsize = EVBUFFER_LENGTH(buffer);
Line 72 
Line 74 
                         cmdq_error(item, "%s", cause);                          cmdq_error(item, "%s", cause);
                         free(cause);                          free(cause);
                         free(copy);                          free(copy);
                 }                  } else if (tc != NULL &&
                       tc->session != NULL &&
                       (~tc->flags & CLIENT_DEAD))
                           tty_set_selection(&tc->tty, copy, bsize);
                   if (tc != NULL)
                           server_client_unref(tc);
         }          }
         cmdq_continue(item);          cmdq_continue(item);
   
Line 84 
Line 91 
 cmd_load_buffer_exec(struct cmd *self, struct cmdq_item *item)  cmd_load_buffer_exec(struct cmd *self, struct cmdq_item *item)
 {  {
         struct args                     *args = cmd_get_args(self);          struct args                     *args = cmd_get_args(self);
           struct client                   *tc = cmdq_get_target_client(item);
         struct cmd_load_buffer_data     *cdata;          struct cmd_load_buffer_data     *cdata;
         const char                      *bufname = args_get(args, 'b');          const char                      *bufname = args_get(args, 'b');
         char                            *path;          char                            *path;
Line 94 
Line 102 
                 cdata->name = xstrdup(bufname);                  cdata->name = xstrdup(bufname);
         else          else
                 cdata->name = NULL;                  cdata->name = NULL;
           if (args_has(args, 'w') && tc != NULL) {
                   cdata->client = tc;
                   cdata->client->references++;
           }
   
         path = format_single_from_target(item, args->argv[0]);          path = format_single_from_target(item, args->argv[0]);
         file_read(cmdq_get_client(item), path, cmd_load_buffer_done, cdata);          file_read(cmdq_get_client(item), path, cmd_load_buffer_done, cdata);

Legend:
Removed from v.1.60  
changed lines
  Added in v.1.61