Avoid alloca() in markReplacedFiles()
authorPanu Matilainen <pmatilai@redhat.com>
Fri, 25 Apr 2008 12:37:09 +0000 (15:37 +0300)
committerPanu Matilainen <pmatilai@redhat.com>
Fri, 25 Apr 2008 12:37:09 +0000 (15:37 +0300)
lib/psm.c

index 193ad4e..fffd7bb 100644 (file)
--- a/lib/psm.c
+++ b/lib/psm.c
@@ -185,7 +185,7 @@ static rpmRC markReplacedFiles(const rpmpsm psm)
     if (num == 0)
        return RPMRC_OK;
 
-    offsets = alloca(num * sizeof(*offsets));
+    offsets = xmalloc(num * sizeof(*offsets));
     offsets[0] = 0;
     num = prev = 0;
     for (sfi = replaced; sfi->otherPkg; sfi++) {
@@ -227,6 +227,7 @@ static rpmRC markReplacedFiles(const rpmpsm psm)
        }
     }
     mi = rpmdbFreeIterator(mi);
+    free(offsets);
 
     return RPMRC_OK;
 }