diff options
Diffstat (limited to 'packages/parted')
-rw-r--r-- | packages/parted/parted-1.8.0/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/parted/parted-1.8.0/memory_allocation.patch | 42 | ||||
-rw-r--r-- | packages/parted/parted_1.8.0.bb | 3 | ||||
-rw-r--r-- | packages/parted/parted_1.8.2.bb | 16 |
4 files changed, 60 insertions, 1 deletions
diff --git a/packages/parted/parted-1.8.0/.mtn2git_empty b/packages/parted/parted-1.8.0/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/parted/parted-1.8.0/.mtn2git_empty diff --git a/packages/parted/parted-1.8.0/memory_allocation.patch b/packages/parted/parted-1.8.0/memory_allocation.patch new file mode 100644 index 0000000000..ba3709680b --- /dev/null +++ b/packages/parted/parted-1.8.0/memory_allocation.patch @@ -0,0 +1,42 @@ +--- parted-1.8.0/libparted/exception.c_orig 2006-12-11 19:44:23.000000000 +0000 ++++ parted-1.8.0/libparted/exception.c 2006-12-11 19:47:53.000000000 +0000 +@@ -231,6 +231,9 @@ + PedExceptionOption ex_opts, const char* message, ...) + { + va_list arg_list; ++ int result; ++ static int size = 1000; ++ + + if (ex) + ped_exception_catch (); +@@ -239,16 +242,22 @@ + if (!ex) + goto no_memory; + +- ex->message = (char*) malloc (8192); +- if (!ex->message) +- goto no_memory; +- + ex->type = ex_type; + ex->options = ex_opts; + +- va_start (arg_list, message); +- vsnprintf (ex->message, 8192, message, arg_list); +- va_end (arg_list); ++ while (1) { ++ ex->message = (char*) malloc (size); ++ if (!ex->message) ++ goto no_memory; ++ va_start (arg_list, message); ++ result = vsnprintf (ex->message, size, message, arg_list); ++ va_end (arg_list); ++ ++ if (result > -1 && result < size) ++ break; ++ size += 10; ++ } ++ + + return do_throw (); + diff --git a/packages/parted/parted_1.8.0.bb b/packages/parted/parted_1.8.0.bb index 8681055855..bff27a62e8 100644 --- a/packages/parted/parted_1.8.0.bb +++ b/packages/parted/parted_1.8.0.bb @@ -5,7 +5,8 @@ SECTION = "console/tools" DEPENDS = "readline e2fsprogs-libs" PR = "r0" -SRC_URI = "${GNU_MIRROR}/parted/parted-${PV}.tar.gz" +SRC_URI = "${GNU_MIRROR}/parted/parted-${PV}.tar.gz \ + file://memory_allocation.patch;patch=0" EXTRA_OECONF = "--disable-Werror" #export CFLAGS = "-mstructure-size-boundary=8" diff --git a/packages/parted/parted_1.8.2.bb b/packages/parted/parted_1.8.2.bb new file mode 100644 index 0000000000..1185014aa3 --- /dev/null +++ b/packages/parted/parted_1.8.2.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "parted, the GNU partition resizing program" +HOMEPAGE = "http://www.gnu.org/software/parted/parted.html" +LICENSE = "GPLv2" +SECTION = "console/tools" +DEPENDS = "readline e2fsprogs-libs" +PR = "r0" + +SRC_URI = "${GNU_MIRROR}/parted/parted-${PV}.tar.gz" + +#EXTRA_OECONF = "--disable-Werror" + +inherit autotools pkgconfig + +do_stage() { + autotools_stage_all +} |