From: David Lawrence Ramsey Date: Thu, 4 Nov 2004 15:31:43 +0000 (+0000) Subject: avoid potential segfaults while unpartitioning a filestruct X-Git-Tag: v1.3.5~63 X-Git-Url: https://git.wh0rd.org/?a=commitdiff_plain;h=8cbd4cb67f1fd58066620194980635d2b97a3348;p=nano.git avoid potential segfaults while unpartitioning a filestruct git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@2057 35c25a1d-7b9e-4130-9fde-d3aeb78583b8 --- diff --git a/src/nano.c b/src/nano.c index db601ada..98a74147 100644 --- a/src/nano.c +++ b/src/nano.c @@ -674,7 +674,8 @@ void unpartition_filestruct(partition *p) * with it. */ tmp = mallocstrcpy(NULL, fileage->data); fileage->prev = p->top_prev; - fileage->prev->next = fileage; + if (fileage->prev != NULL) + fileage->prev->next = fileage; fileage->data = charealloc(fileage->data, strlen(p->top_data) + strlen(fileage->data) + 1); strcpy(fileage->data, p->top_data); @@ -686,7 +687,8 @@ void unpartition_filestruct(partition *p) * the text after bot_x from bot_data. Free bot_data when we're * done with it. */ filebot->next = p->bot_next; - filebot->next->prev = filebot; + if (filebot->next != NULL) + filebot->next->prev = filebot; filebot->data = charealloc(filebot->data, strlen(filebot->data) + strlen(p->bot_data) + 1); strcat(filebot->data, p->bot_data);