diff --git a/package/wine/0001-Prevent-call-to-memset-with-a-null-pointer.patch b/package/wine/0001-Prevent-call-to-memset-with-a-null-pointer.patch new file mode 100644 index 0000000000..f6d5a9d3c2 --- /dev/null +++ b/package/wine/0001-Prevent-call-to-memset-with-a-null-pointer.patch @@ -0,0 +1,40 @@ +commit deb274226783ab886bdb44876944e156757efe2b +Author: Daniel Beitler +Date: Sun May 18 13:27:42 2014 -0400 + + msi: Prevent call to memset with a null pointer + in get_tablecolumns function. + +Fix miscompilation with gcc >= 4.9 +See https://bugs.winehq.org/show_bug.cgi?id=36139 for the upstream +bug report. There won't be a Wine 1.6.3 so we need to address this +anyway. + +Backported from: deb274226783ab886bdb44876944e156757efe2b +Signed-off-by: André Hentschel +--- + dlls/msi/table.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/dlls/msi/table.c b/dlls/msi/table.c +index 8012369..9ed9421 100644 +--- a/dlls/msi/table.c ++++ b/dlls/msi/table.c +@@ -671,7 +671,7 @@ static UINT get_tablecolumns( MSIDATABASE *db, LPCWSTR szTableName, MSICOLUMNINF + /* Note: _Columns table doesn't have non-persistent data */ + + /* if maxcount is non-zero, assume it's exactly right for this table */ +- memset( colinfo, 0, maxcount * sizeof(*colinfo) ); ++ if (colinfo) memset( colinfo, 0, maxcount * sizeof(*colinfo) ); + count = table->row_count; + for (i = 0; i < count; i++) + { +@@ -684,7 +684,7 @@ static UINT get_tablecolumns( MSIDATABASE *db, LPCWSTR szTableName, MSICOLUMNINF + /* check the column number is in range */ + if (col < 1 || col > maxcount) + { +- ERR("column %d out of range\n", col); ++ ERR("column %d out of range (maxcount: %d)\n", col, maxcount); + continue; + } + /* check if this column was already set */