diff options
Diffstat (limited to 'source/l/qt/QElfParser-fix-type-of-sh_size.patch')
-rw-r--r-- | source/l/qt/QElfParser-fix-type-of-sh_size.patch | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/source/l/qt/QElfParser-fix-type-of-sh_size.patch b/source/l/qt/QElfParser-fix-type-of-sh_size.patch new file mode 100644 index 00000000..1c30f9a4 --- /dev/null +++ b/source/l/qt/QElfParser-fix-type-of-sh_size.patch @@ -0,0 +1,41 @@ +From 9e981c4dd03effc2c52b52f529edfa8955e534ce Mon Sep 17 00:00:00 2001 +From: Pino Toscano <toscano.pino@tiscali.it> +Date: Tue, 15 May 2012 14:40:15 +0200 +Subject: [PATCH] QElfParser: fix type of sh_size + +The type of the sh_size field of a section header is either Elf32_Word or Elf64_Xword, +so the type used cannot be qelfword_t (always 32 bits) but qelfoff_t. + +Change-Id: Ia380b6823913fee7a96b39f742630ae3a9ca0cb8 +Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> +Reviewed-by: Arvid Picciani <arvid.picciani@nokia.com> +(backport of 77b179689ba37dc909778fdd00df2701f83a2868 from qtbase) +--- + src/corelib/plugin/qelfparser_p.cpp | 4 ++-- + src/corelib/plugin/qelfparser_p.h | 2 +- + 2 files changed, 3 insertions(+), 3 deletions(-) + +--- a/src/corelib/plugin/qelfparser_p.cpp ++++ b/src/corelib/plugin/qelfparser_p.cpp +@@ -61,8 +61,8 @@ const char *QElfParser::parseSectionHead + + sizeof(qelfaddr_t); // sh_addr + sh->offset = read<qelfoff_t>(data); + data += sizeof(qelfoff_t); // sh_offset +- sh->size = read<qelfword_t>(data); +- data += sizeof(qelfword_t); // sh_size ++ sh->size = read<qelfoff_t>(data); ++ data += sizeof(qelfoff_t); // sh_size + return data; + } + +--- a/src/corelib/plugin/qelfparser_p.h ++++ b/src/corelib/plugin/qelfparser_p.h +@@ -80,7 +80,7 @@ public: + qelfword_t name; + qelfword_t type; + qelfoff_t offset; +- qelfword_t size; ++ qelfoff_t size; + }; + + int m_endian; |