Diff for /embedaddon/sudo/common/lbuf.c between versions 1.1.1.1 and 1.1.1.2

version 1.1.1.1, 2012/02/21 16:23:02 version 1.1.1.2, 2012/05/29 12:26:49
Line 47 Line 47
 #include "alloc.h"  #include "alloc.h"
 #include "error.h"  #include "error.h"
 #include "lbuf.h"  #include "lbuf.h"
   #include "sudo_debug.h"
   
 void  void
 lbuf_init(struct lbuf *lbuf, int (*output)(const char *),  lbuf_init(struct lbuf *lbuf, int (*output)(const char *),
     int indent, const char *continuation, int cols)      int indent, const char *continuation, int cols)
 {  {
       debug_decl(lbuf_init, SUDO_DEBUG_UTIL)
   
     lbuf->output = output;      lbuf->output = output;
     lbuf->continuation = continuation;      lbuf->continuation = continuation;
     lbuf->indent = indent;      lbuf->indent = indent;
Line 59  lbuf_init(struct lbuf *lbuf, int (*output)(const char  Line 62  lbuf_init(struct lbuf *lbuf, int (*output)(const char 
     lbuf->len = 0;      lbuf->len = 0;
     lbuf->size = 0;      lbuf->size = 0;
     lbuf->buf = NULL;      lbuf->buf = NULL;
   
       debug_return;
 }  }
   
 void  void
 lbuf_destroy(struct lbuf *lbuf)  lbuf_destroy(struct lbuf *lbuf)
 {  {
       debug_decl(lbuf_destroy, SUDO_DEBUG_UTIL)
   
     efree(lbuf->buf);      efree(lbuf->buf);
     lbuf->buf = NULL;      lbuf->buf = NULL;
   
       debug_return;
 }  }
   
 /*  /*
Line 78  lbuf_append_quoted(struct lbuf *lbuf, const char *set, Line 87  lbuf_append_quoted(struct lbuf *lbuf, const char *set,
     va_list ap;      va_list ap;
     int len;      int len;
     char *cp, *s = NULL;      char *cp, *s = NULL;
       debug_decl(lbuf_append_quoted, SUDO_DEBUG_UTIL)
   
     va_start(ap, fmt);      va_start(ap, fmt);
     while (*fmt != '\0') {      while (*fmt != '\0') {
Line 118  lbuf_append_quoted(struct lbuf *lbuf, const char *set, Line 128  lbuf_append_quoted(struct lbuf *lbuf, const char *set,
     }      }
     lbuf->buf[lbuf->len] = '\0';      lbuf->buf[lbuf->len] = '\0';
     va_end(ap);      va_end(ap);
   
       debug_return;
 }  }
   
 /*  /*
Line 129  lbuf_append(struct lbuf *lbuf, const char *fmt, ...) Line 141  lbuf_append(struct lbuf *lbuf, const char *fmt, ...)
     va_list ap;      va_list ap;
     int len;      int len;
     char *s = NULL;      char *s = NULL;
       debug_decl(lbuf_append, SUDO_DEBUG_UTIL)
   
     va_start(ap, fmt);      va_start(ap, fmt);
     while (*fmt != '\0') {      while (*fmt != '\0') {
Line 155  lbuf_append(struct lbuf *lbuf, const char *fmt, ...) Line 168  lbuf_append(struct lbuf *lbuf, const char *fmt, ...)
     }      }
     lbuf->buf[lbuf->len] = '\0';      lbuf->buf[lbuf->len] = '\0';
     va_end(ap);      va_end(ap);
   
       debug_return;
 }  }
   
 static void  static void
Line 162  lbuf_println(struct lbuf *lbuf, char *line, int len) Line 177  lbuf_println(struct lbuf *lbuf, char *line, int len)
 {  {
     char *cp, save;      char *cp, save;
     int i, have, contlen;      int i, have, contlen;
       debug_decl(lbuf_println, SUDO_DEBUG_UTIL)
   
     contlen = lbuf->continuation ? strlen(lbuf->continuation) : 0;      contlen = lbuf->continuation ? strlen(lbuf->continuation) : 0;
   
Line 210  lbuf_println(struct lbuf *lbuf, char *line, int len) Line 226  lbuf_println(struct lbuf *lbuf, char *line, int len)
         }          }
         lbuf->output("\n");          lbuf->output("\n");
     }      }
   
       debug_return;
 }  }
   
 /*  /*
Line 221  lbuf_print(struct lbuf *lbuf) Line 239  lbuf_print(struct lbuf *lbuf)
 {  {
     char *cp, *ep;      char *cp, *ep;
     int len;      int len;
       debug_decl(lbuf_print, SUDO_DEBUG_UTIL)
   
     if (lbuf->buf == NULL || lbuf->len == 0)      if (lbuf->buf == NULL || lbuf->len == 0)
         goto done;          goto done;
Line 250  lbuf_print(struct lbuf *lbuf) Line 269  lbuf_print(struct lbuf *lbuf)
   
 done:  done:
     lbuf->len = 0;              /* reset the buffer for re-use. */      lbuf->len = 0;              /* reset the buffer for re-use. */
   
       debug_return;
 }  }

Removed from v.1.1.1.1  
changed lines
  Added in v.1.1.1.2


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>