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

Diff for /src/usr.bin/tmux/cmd-set-buffer.c between version 1.3 and 1.4

version 1.3, 2009/07/26 12:58:44 version 1.4, 2009/09/07 18:50:45
Line 18 
Line 18 
   
 #include <sys/types.h>  #include <sys/types.h>
   
 #include <stdlib.h>  #include <string.h>
   
 #include "tmux.h"  #include "tmux.h"
   
Line 45 
Line 45 
         struct cmd_buffer_data  *data = self->data;          struct cmd_buffer_data  *data = self->data;
         struct session          *s;          struct session          *s;
         u_int                    limit;          u_int                    limit;
           u_char                  *pdata;
           size_t                   psize;
   
         if ((s = cmd_find_session(ctx, data->target)) == NULL)          if ((s = cmd_find_session(ctx, data->target)) == NULL)
                 return (-1);                  return (-1);
   
         limit = options_get_number(&s->options, "buffer-limit");          limit = options_get_number(&s->options, "buffer-limit");
   
           pdata = xstrdup(data->arg);
           psize = strlen(pdata);
   
         if (data->buffer == -1) {          if (data->buffer == -1) {
                 paste_add(&s->buffers, xstrdup(data->arg), limit);                  paste_add(&s->buffers, pdata, psize, limit);
                 return (0);                  return (0);
         }          }
         if (paste_replace(&s->buffers, data->buffer, xstrdup(data->arg)) != 0) {          if (paste_replace(&s->buffers, data->buffer, pdata, psize) != 0) {
                 ctx->error(ctx, "no buffer %d", data->buffer);                  ctx->error(ctx, "no buffer %d", data->buffer);
                   xfree(pdata);
                 return (-1);                  return (-1);
         }          }
         return (0);          return (0);

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4