Eric Pouech : dbghelp: Be stricter when looping in symbol tables.

Alexandre Julliard julliard at winehq.org
Mon Apr 7 06:50:21 CDT 2008


Module: wine
Branch: master
Commit: f46d717818d11cd80127ca64646db57311af72cc
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=f46d717818d11cd80127ca64646db57311af72cc

Author: Eric Pouech <eric.pouech at orange.fr>
Date:   Sat Apr  5 09:34:07 2008 +0200

dbghelp: Be stricter when looping in symbol tables.

---

 dlls/dbghelp/msc.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/dlls/dbghelp/msc.c b/dlls/dbghelp/msc.c
index 25589fc..a2454d0 100644
--- a/dlls/dbghelp/msc.c
+++ b/dlls/dbghelp/msc.c
@@ -1322,6 +1322,7 @@ static int codeview_snarf(const struct msc_debug_info* msc_dbg, const BYTE* root
         const union codeview_symbol* sym = (const union codeview_symbol*)(root + i);
         length = sym->generic.len + 2;
         if (i + length > size) break;
+        if (!sym->generic.id || length < 4) break;
         if (length & 3) FIXME("unpadded len %u\n", length);
 
         switch (sym->generic.id)




More information about the wine-cvs mailing list