X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=color.c;h=1c60c7766cfadbf7ab9eeaecea2f3e25a70b4e92;hp=34a3d709db963592bd8476de3ca19ff936677bb8;hb=617e7d83d14e14e6a520a48e75437211b16c8834;hpb=df70e07e24add1869bcc9b7af2277d9d0c09a281 diff --git a/color.c b/color.c index 34a3d70..1c60c77 100644 --- a/color.c +++ b/color.c @@ -1,29 +1,28 @@ /* + * Copyright notice from original mutt: * Copyright (C) 1996-2002 Michael R. Elkins - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. + * + * This file is part of mutt-ng, see http://www.muttng.org/. + * It's licensed under the GNU General Public License, + * please see the file GPL in the top level source directory. */ #if HAVE_CONFIG_H # include "config.h" #endif +#include + #include "mutt.h" +#include "buffer.h" +#include "ascii.h" #include "mutt_curses.h" #include "mapping.h" +#include "lib/intl.h" +#include "lib/str.h" +#include "lib/debug.h" + #include #include #include @@ -100,7 +99,7 @@ static struct mapping_t Fields[] = { static COLOR_LINE *mutt_new_color_line (void) { - COLOR_LINE *p = safe_calloc (1, sizeof (COLOR_LINE)); + COLOR_LINE *p = p_new(COLOR_LINE, 1); p->fg = p->bg = -1; @@ -127,14 +126,14 @@ static void mutt_free_color_line (COLOR_LINE ** l, int free_colors) regfree (&tmp->rx); mutt_pattern_free (&tmp->color_pattern); - FREE (&tmp->pattern); - FREE (l); + p_delete(&tmp->pattern); + p_delete(l); } void ci_start_color (void) { memset (ColorDefs, A_NORMAL, sizeof (int) * MT_COLOR_MAX); - ColorQuote = (int *) safe_malloc (COLOR_QUOTE_INIT * sizeof (int)); + ColorQuote = p_new(int, COLOR_QUOTE_INIT); memset (ColorQuote, A_NORMAL, sizeof (int) * COLOR_QUOTE_INIT); ColorQuoteSize = COLOR_QUOTE_INIT; ColorQuoteUsed = 0; @@ -227,7 +226,7 @@ int mutt_alloc_color (int fg, int bg) i++; } - p = (COLOR_LIST *) safe_malloc (sizeof (COLOR_LIST)); + p = p_new(COLOR_LIST, 1); p->next = ColorList; ColorList = p; @@ -250,8 +249,7 @@ int mutt_alloc_color (int fg, int bg) init_pair (i, fg, bg); - dprint (1, (debugfile, "mutt_alloc_color(): Color pairs used so far: %d\n", - UserColors)); + debug_print (1, ("Color pairs used so far: %d\n", UserColors)); return (COLOR_PAIR (p->index)); } @@ -268,20 +266,18 @@ void mutt_free_color (int fg, int bg) return; UserColors--; - dprint (1, - (debugfile, "mutt_free_color(): Color pairs used so far: %d\n", - UserColors)); + debug_print (1, ("Color pairs used so far: %d\n", UserColors)); if (p == ColorList) { ColorList = ColorList->next; - FREE (&p); + p_delete(&p); return; } q = ColorList; while (q) { if (q->next == p) { q->next = p->next; - FREE (&p); + p_delete(&p); return; } q = q->next; @@ -302,13 +298,13 @@ parse_color_name (const char *s, int *col, int *attr, int brite, BUFFER * err) { char *eptr; - if (mutt_strncasecmp (s, "bright", 6) == 0) { + if (str_ncasecmp (s, "bright", 6) == 0) { *attr |= brite; s += 6; } /* allow aliases for xterm color resources */ - if (mutt_strncasecmp (s, "color", 5) == 0) { + if (str_ncasecmp (s, "color", 5) == 0) { s += 5; *col = strtol (s, &eptr, 10); if (!*s || *eptr || *col < 0 || @@ -368,7 +364,7 @@ _mutt_parse_uncolor (BUFFER * buf, BUFFER * s, unsigned long data, return (-1); } - if (mutt_strncmp (buf->data, "index", 5) != 0) { + if (str_ncmp (buf->data, "index", 5) != 0) { snprintf (err->data, err->dsize, _("%s: command valid only for index object"), parse_uncolor ? "uncolor" : "unmono"); @@ -406,7 +402,7 @@ _mutt_parse_uncolor (BUFFER * buf, BUFFER * s, unsigned long data, do { mutt_extract_token (buf, s, 0); - if (!mutt_strcmp ("*", buf->data)) { + if (!str_cmp ("*", buf->data)) { for (tmp = ColorIndexList; tmp;) { if (!do_cache) do_cache = 1; @@ -419,12 +415,10 @@ _mutt_parse_uncolor (BUFFER * buf, BUFFER * s, unsigned long data, else { for (last = NULL, tmp = ColorIndexList; tmp; last = tmp, tmp = tmp->next) { - if (!mutt_strcmp (buf->data, tmp->pattern)) { + if (!str_cmp (buf->data, tmp->pattern)) { if (!do_cache) do_cache = 1; - dprint (1, - (debugfile, "Freeing pattern \"%s\" from ColorIndexList\n", - tmp->pattern)); + debug_print (1, ("Freeing pattern \"%s\" from ColorIndexList\n", tmp->pattern)); if (last) last->next = tmp->next; else @@ -463,11 +457,11 @@ add_pattern (COLOR_LINE ** top, const char *s, int sensitive, while (tmp) { if (sensitive) { - if (mutt_strcmp (s, tmp->pattern) == 0) + if (str_cmp (s, tmp->pattern) == 0) break; } else { - if (mutt_strcasecmp (s, tmp->pattern) == 0) + if (str_casecmp (s, tmp->pattern) == 0) break; } tmp = tmp->next; @@ -516,7 +510,7 @@ add_pattern (COLOR_LINE ** top, const char *s, int sensitive, return (-1); } tmp->next = *top; - tmp->pattern = safe_strdup (s); + tmp->pattern = str_dup (s); #ifdef HAVE_COLOR if (fg != -1 && bg != -1) { tmp->fg = fg; @@ -543,7 +537,7 @@ parse_object (BUFFER * buf, BUFFER * s, int *o, int *ql, BUFFER * err) } mutt_extract_token (buf, s, 0); - if (!mutt_strncmp (buf->data, "quoted", 6)) { + if (!str_ncmp (buf->data, "quoted", 6)) { if (buf->data[6]) { *ql = strtol (buf->data + 6, &eptr, 10); if (*eptr || q_level < 0) { @@ -707,7 +701,7 @@ _mutt_parse_color (BUFFER * buf, BUFFER * s, BUFFER * err, } else if (object == MT_COLOR_QUOTED) { if (q_level >= ColorQuoteSize) { - safe_realloc (&ColorQuote, (ColorQuoteSize += 2) * sizeof (int)); + p_realloc(&ColorQuote, ColorQuoteSize += 2); ColorQuote[ColorQuoteSize - 2] = ColorDefs[MT_COLOR_QUOTED]; ColorQuote[ColorQuoteSize - 1] = ColorDefs[MT_COLOR_QUOTED]; }