# include "config.h"
#endif
+#include <lib-lib/mem.h>
+#include <lib-lib/macros.h>
+
#include "mutt.h"
+#include "ascii.h"
+#include "enter.h"
#include "mutt_curses.h"
#include "mutt_idna.h"
-#include "lib/mem.h"
-#include "lib/intl.h"
#include "lib/str.h"
#include <stdio.h>
* SLcurses_waddnstr() can't take a "const char *", so this is only
* declared "static" (sigh)
*/
-static char *EditorHelp = N_("\
+static const char *EditorHelp = N_("\
~~ insert a line begining with a single ~\n\
~b users add users to the Bcc: field\n\
~c users add users to the Cc: field\n\
. on a line by itself ends input\n");
static char **be_snarf_data (FILE * f, char **buf, int *bufmax, int *buflen,
- int offset, int bytes, int prefix)
+ off_t offset, int bytes, int prefix)
{
char tmp[HUGE_STRING];
char *p = tmp;
tmplen = sizeof (tmp) - tmplen;
}
- fseek (f, offset, 0);
+ fseeko (f, offset, 0);
while (bytes > 0) {
if (fgets (p, tmplen - 1, f) == NULL)
break;
bytes -= str_len (p);
if (*bufmax == *buflen)
- safe_realloc (&buf, sizeof (char *) * (*bufmax += 25));
+ p_realloc(&buf, *bufmax += 25);
buf[(*buflen)++] = str_dup (tmp);
}
if (buf && *bufmax == *buflen) { /* Do not smash memory past buf */
- safe_realloc (&buf, sizeof (char *) * (++*bufmax));
+ p_realloc(&buf, ++*bufmax);
}
if (buf)
buf[*buflen] = NULL;
static void be_free_memory (char **buf, int buflen)
{
while (buflen-- > 0)
- FREE (&buf[buflen]);
+ p_delete(&buf[buflen]);
if (buf)
- FREE (&buf);
+ p_delete(&buf);
}
static char **be_include_messages (char *msg, char **buf, int *bufmax,
}
if (*bufmax == *buflen)
- safe_realloc (&buf, sizeof (char *) * (*bufmax += 25));
+ p_realloc(&buf, *bufmax += 25);
buf[(*buflen)++] = str_dup (tmp);
bytes = Context->hdrs[n]->content->length;
pfx);
if (*bufmax == *buflen)
- safe_realloc (&buf, sizeof (char *) * (*bufmax += 25));
+ p_realloc(&buf, *bufmax += 25);
buf[(*buflen)++] = str_dup ("\n");
}
else
buflen--;
strfcpy (tmp, buf[buflen], sizeof (tmp));
tmp[str_len (tmp) - 1] = 0;
- FREE (&buf[buflen]);
+ p_delete(&buf[buflen]);
buf[buflen] = NULL;
continue;
}
case 'e':
case 'v':
if (be_barf_file (path, buf, buflen) == 0) {
- char *tag, *err;
+ const char *tag, *err;
be_free_memory (buf, buflen);
buf = NULL;
else {
str_cat (tmp, sizeof (tmp), "\n");
if (buflen == bufmax)
- safe_realloc (&buf, sizeof (char *) * (bufmax += 25));
+ p_realloc(&buf, bufmax += 25);
buf[buflen++] = str_dup (tmp[1] == '~' ? tmp + 1 : tmp);
}