X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=format.c;h=bcdbff9ff425df1783975cf8ac62a64ab28fa40e;hb=6dc3d02ae5959a4ec5f3de4765d7440a580ff3e1;hp=6b7a2f6e2186b8850f2e04abaecff9cb88b3a625;hpb=a398d5009251fa41859006dae5c99afc6824fab2;p=adu.git diff --git a/format.c b/format.c index 6b7a2f6..bcdbff9 100644 --- a/format.c +++ b/format.c @@ -259,14 +259,21 @@ err: } free(info->items); free(info); + *result = NULL; return ret; } +/** + * It's OK to pass a \p NULL pointer to this function. + */ void free_format_info(struct format_info *info) { int i; struct format_item *item; + if (!info) + return; + for (i = 0; (item = info->items[i]); i++) { if (!item->atom_ptr) free(item->af.cs.string); @@ -395,6 +402,8 @@ char *format_items(struct format_info *info, union atom_value *values) int i; char *buf = NULL; + if (!info) + return NULL; for (i = 0; info->items[i]; i++) { struct atom *a; struct format_item *fi = info->items[i];