{"action":"created","issue":{"url":"https://api.github.com/repos/DynamoRIO/drmemory/issues/1768","labels_url":"https://api.github.com/repos/DynamoRIO/drmemory/issues/1768/labels{/name}","comments_url":"https://api.github.com/repos/DynamoRIO/drmemory/issues/1768/comments","events_url":"https://api.github.com/repos/DynamoRIO/drmemory/issues/1768/events","html_url":"https://github.com/DynamoRIO/drmemory/issues/1768","id":105134671,"number":1768,"title":"Internal crash when debugging Pidgin (Windows 1.9.0-RC1)","user":{"login":"EionRobb","id":1063865,"avatar_url":"https://avatars.githubusercontent.com/u/1063865?v=3","gravatar_id":"","url":"https://api.github.com/users/EionRobb","html_url":"https://github.com/EionRobb","followers_url":"https://api.github.com/users/EionRobb/followers","following_url":"https://api.github.com/users/EionRobb/following{/other_user}","gists_url":"https://api.github.com/users/EionRobb/gists{/gist_id}","starred_url":"https://api.github.com/users/EionRobb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/EionRobb/subscriptions","organizations_url":"https://api.github.com/users/EionRobb/orgs","repos_url":"https://api.github.com/users/EionRobb/repos","events_url":"https://api.github.com/users/EionRobb/events{/privacy}","received_events_url":"https://api.github.com/users/EionRobb/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-09-07T02:35:06Z","updated_at":"2015-09-07T02:46:38Z","closed_at":null,"body":"```\r\n---------------------------\r\nDr. Memory Notice: C:\\Program Files (x86)\\Pidgin\\pidgin.exe(10580)\r\n---------------------------\r\nApplication C:\\Program Files (x86)\\Pidgin\\pidgin.exe (10580).  Dr. Memory internal crash at PC 0x73861b9f.  Please report this at http://drmemory.org/issues.  Program aborted.\r\n0xc0000005 0x00000000 0x73861b9f 0x73861b9f 0x00000000 0x0464a20c\r\nBase: 0x70060000\r\nRegisters: eax=0x0464a211 ebx=0x28fc5508 ecx=0x00000000 edx=0xffffffff\r\n\tesi=0x28f895fc edi=0x00000000 esp=0x2564e6cc ebp=0x0464a200\r\n\teflags=0x000\r\n1.9.0-0-(Aug 28 2015 22:56:18) win100\r\n-no_dynamic_options -disasm_mask 8 -logdir 'C:\\Users\\Eion Robb\\AppData\\Roaming\\Dr. Memory\\dynamorio' -client_lib 'C:\\Program Files (x86)\\Dr. Memory\\bin\\release\\drmemorylib.dll;0;-logdir `C:\\Users\\Eion Robb\\AppData\\Roaming\\Dr. Memory` -symcache_dir `C:\\Users\\Eion Robb\\AppData\\Roaming\\Dr. Memory\\symcache` -lib_blacklist `C\r\nC:\\Program Files (x86)\\Dr. Memory\\bin\\release\\drmemorylib.dll=0x73800000\r\nC:\\Program Files (x86)\\Dr. Memory\\bin\\release/dbghelp.dll=0x02530000\r\nC:\\WINDOWS/system32/msvcrt.dll=0x00d10000\r\nC:\\WINDOWS/system32/kernel32.dll=0x02650000\r\nC:\\WINDOWS/system32/KERNELBASE.dll=0x02740000\r\n```\r\n\r\n\r\n> What steps will reproduce the problem?\r\n\r\n1. Install a plugin compiled without ggdb, eg  the Facebook Pidgin plugin, eg https://github.com/jgeboski/purple-facebook/releases/tag/565fbae05259\r\n2. path\\to\\drmemory.exe -- path\\to\\pidgin.exe --debug\r\n3. Last debug message will show a plugin has crashed drmemory, eg:\r\n```\r\n(14:11:24) plugins: probing C:\\Program Files (x86)\\Pidgin\\plugins\\libfacebook (8).dll\r\n<Application C:\\Program Files (x86)\\Pidgin\\pidgin.exe (7880).  Dr. Memory internal crash at PC 0x73861b9f.  Please report this at http://drmemory.org/issues.  Program aborted.\r\n```\r\n\r\n> What is the expected output? What do you see instead?\r\n\r\nHoping that it will skip over that particular plugin and continue, rather than crash\r\n\r\n> What version of the product are you using? On what operating system?\r\n\r\nDrMemory 1.9.0-RC1 on Windows 10\r\n\r\n> Does the problem go away when running in light mode (pass \"-light\" to Dr.\r\nMemory)?  What about when running with the options \"-leaks_only -no_count_leaks -no_track_allocs\"?\r\n\r\n\"-light\" does work mostly.  It'll output\r\n```\r\n~~4108~~ WARNING: application is missing line number information.\r\n~~4108~~ Re-compile with the -ggdb flag to include DWARF2 line numbers.\r\n```\r\nfor the first plugin that isn't compiled with gdb, but it will still crash upon the next plugin without  it comes across\r\nRunning with \"-leaks_only -no_count_leaks -no_track_allocs\" does not work, same crash\r\nAlso crashes with \"-no_count_leaks\" and \"-leaks_only -no_count_leaks\" (as per narrowing down the source\r\n\r\n> Does the problem go away when using the most recent build from http://build.chromium.org/p/client.drmemory/builds/?\r\n\r\nUnsure, will try later\r\n\r\n> Try the debug version of Dr. Memory and of its underlying engine DynamoRIO by passing \"-debug -dr_debug -pause_at_assert\" to drmemory.exe. Are any\r\nmessages reported?\r\n\r\nUnsure, will try later\r\n\r\n> Please provide any additional information below.  Please also see the \"Narrowing Down the Source of the Problem\" section of https://github.com/DynamoRIO/drmemory/wiki/Debugging.\r\n\r\nI imagine it's something to do with handling one block of non-ggdb compiled code, but not mixed dll's, some with and some without?  Wild guess though :)"},"comment":{"url":"https://api.github.com/repos/DynamoRIO/drmemory/issues/comments/138165481","html_url":"https://github.com/DynamoRIO/drmemory/issues/1768#issuecomment-138165481","issue_url":"https://api.github.com/repos/DynamoRIO/drmemory/issues/1768","id":138165481,"user":{"login":"EionRobb","id":1063865,"avatar_url":"https://avatars.githubusercontent.com/u/1063865?v=3","gravatar_id":"","url":"https://api.github.com/users/EionRobb","html_url":"https://github.com/EionRobb","followers_url":"https://api.github.com/users/EionRobb/followers","following_url":"https://api.github.com/users/EionRobb/following{/other_user}","gists_url":"https://api.github.com/users/EionRobb/gists{/gist_id}","starred_url":"https://api.github.com/users/EionRobb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/EionRobb/subscriptions","organizations_url":"https://api.github.com/users/EionRobb/orgs","repos_url":"https://api.github.com/users/EionRobb/repos","events_url":"https://api.github.com/users/EionRobb/events{/privacy}","received_events_url":"https://api.github.com/users/EionRobb/received_events","type":"User","site_admin":false},"created_at":"2015-09-07T02:46:38Z","updated_at":"2015-09-07T02:46:38Z","body":"After looking into the global.log file, the sporadic nature of it came down to libbonjour.dll that ships with Pidgin spawning a thread and causing a crash later on during other plugin loads, eg\r\n```\r\n\r\nmodule load event: \"libbonjour.dll\" 0x522b0000-0x522cd000 modid: 128 C:\\Program Files (x86)\\Pidgin\\plugins\\libbonjour.dll\r\nnew thread #5 id=7576\r\n\r\nmodule load event: \"libjson-glib-1.0.dll\" 0x68900000-0x6898a000 modid: 129 C:\\Program Files (x86)\\Pidgin\\libjson-glib-1.0.dll\r\n\r\nmodule load event: \"libfacebook.dll\" 0x52210000-0x522a6000 modid: 130 C:\\Program Files (x86)\\Pidgin\\plugins\\libfacebook (8).dll\r\nWARNING: unable to load symbols for C:\\WINDOWS\\SYSTEM32\\RPCRT4.dll\r\nWARNING: unable to load symbols for C:\\WINDOWS\\SYSTEM32\\sechost.dll\r\nWARNING: unable to load symbols for C:\\Windows\\SysWOW64\\logoncli.dll\r\nWARNING: unable to load symbols for C:\\Program Files (x86)\\Pidgin\\plugins\\libbonjour.dll\r\nWARNING: unable to load symbols for C:\\WINDOWS\\SYSTEM32\\KERNEL32.DLL\r\nWARNING: unable to load symbols for C:\\Program Files (x86)\\Pidgin\\pidgin.dll\r\nWARNING: unable to load symbols for C:\\Program Files (x86)\\Pidgin\\pidgin.exe\r\n\r\nNEW THREAD: thread id 7576 created here:\r\n```\r\n\r\nWhich makes it appear as if it's the facebook.dll causing the crash.  So now I'm a bit lost as to what it could be causing the 0x73861b9f crash :)"}}