* src/SDCClrange.c: fixed bug 869095 that caused segfault
authorvrokas <vrokas@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Fri, 2 Jan 2004 11:11:11 +0000 (11:11 +0000)
committervrokas <vrokas@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Fri, 2 Jan 2004 11:11:11 +0000 (11:11 +0000)
in certain cases, e.g. when ROM assignment, patch provided
from Albert den Haan.

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3076 4a8a32a2-be11-0410-ad9d-d568d2c75423

ChangeLog
src/SDCClrange.c

index de377cb5662595409be6bb75468aab83690cc9ca..3b094f6211f94eb83b36436e8fcd7051790207fa 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2004-01-02 Vangelis Rokas <vrokas@otenet.gr>
+
+       * src/SDCClrange.c: fixed bug 869095 that caused segfault
+       in certain cases, e.g. when ROM assignment, patch provided
+       from Albert den Haan.
+
 2004-01-01 Bernhard Held <bernhard@bernhardheld.de>
 
        Many signedness and type propagation fixes:
index 22dada220a9df8553f88fa5ba7a7083e0f6123cc..f96e3635b55b05631483ee3b734b039ceb6bebee 100644 (file)
@@ -629,6 +629,10 @@ adjustIChain (eBBlock ** ebbs, int count)
         continue;
 
       ic = ebbs[i]->sch;
+
+      /* is there any code for this eBBlock? (e.g. ROM assignment) */
+      if(!ic)continue;
+
       while (ic->prev)
         ic = ic->prev;
       ebbs[i]->sch = ic;