]> granicus.if.org Git - neomutt/commitdiff
Add mutt_buffer_strcpy_n()
authorKevin McCarthy <kevin@8t8.us>
Mon, 11 Mar 2019 09:38:18 +0000 (17:38 +0800)
committerRichard Russon <rich@flatcap.org>
Tue, 9 Apr 2019 11:54:28 +0000 (12:54 +0100)
Co-authored-by: Richard Russon <rich@flatcap.org>
mutt/buffer.c
mutt/buffer.h

index e62da201db7a91ed15d3047ff695dd43718921b3..cdc3a56eac5442f32f6470777ac8eb6faf0d23f4 100644 (file)
@@ -319,6 +319,20 @@ void mutt_buffer_strcpy(struct Buffer *buf, const char *s)
   mutt_buffer_addstr(buf, s);
 }
 
+/**
+ * mutt_buffer_strcpy - Copy a string into a Buffer
+ * @param buf Buffer to overwrite
+ * @param s   String to copy
+ * @param len Length of string to copy
+ *
+ * Overwrites any existing content.
+ */
+void mutt_buffer_strcpy_n(struct Buffer *buf, const char *s, size_t len)
+{
+  mutt_buffer_reset(buf);
+  mutt_buffer_addstr_n(buf, s, len);
+}
+
 /**
  * mutt_buffer_increase_size - Increase the allocated size of a buffer
  * @param buf      Buffer to change
index eee8c79f11a236abcaa18cc0a73ce6b822b379b7..d04b7b6ddf97ef005099fa979aa970d6b87326b4 100644 (file)
@@ -59,6 +59,7 @@ struct Buffer *mutt_buffer_new          (void);
 int            mutt_buffer_printf       (struct Buffer *buf, const char *fmt, ...);
 void           mutt_buffer_reset        (struct Buffer *buf);
 void           mutt_buffer_strcpy       (struct Buffer *buf, const char *s);
+void           mutt_buffer_strcpy_n     (struct Buffer *buf, const char *s, size_t len);
 
 void           mutt_buffer_pool_free    (void);
 struct Buffer *mutt_buffer_pool_get     (void);