[Pidgin] #12664: Animated Smileys make CPU usage going mad

Pidgin trac at pidgin.im
Wed Sep 22 07:54:36 EDT 2010


#12664: Animated Smileys make CPU usage going mad
--------------------------+-------------------------------------------------
 Reporter:  josch         |     Owner:  rekkanoryo
     Type:  defect        |    Status:  new       
Component:  unclassified  |   Version:  2.7.3     
 Keywords:                |  
--------------------------+-------------------------------------------------
 I use pidgin on Windows (32bit Version 2.7.3 on Windows 7 64bit).
 I am using the original Smilies Theme from here:
 http://wiki.andreineculau.com/Original_Smileys_Theme_for_Pidgin

 If I have this Smilies enabled and use some of them in an ICQ-
 Conversation, CPU Usage of pidgin.exe is between 20% and 25% (on a
 quadcore, so it is fully using one CPU).
 Additionally, the smilie animations are played way to fast! If I take a
 look at the gif-files using e.g. IrfanView, they play in normal speed.

 I have no plugins installed in Pidgin, it is a fresh install with just the
 smilies added.

 The CPU usage seems to be higher if the smilies are in the text fild where
 I enter the message.

 Here are two snapshots of the stack:


 {{{
 ntoskrnl.exe!KiSwapContext+0x7a
 ntoskrnl.exe!KiCommitThreadWait+0x1d2
 ntoskrnl.exe!KeWaitForSingleObject+0x19f
 ntoskrnl.exe!KiSuspendThread+0x74
 ntoskrnl.exe!KiDeliverApc+0x211
 ntoskrnl.exe!KiCheckForKernelApcDelivery+0x25
 win32k.sys!NtGdiDeleteObjectApp+0xfc
 ntoskrnl.exe!KiSystemServiceCopyEnd+0x13
 wow64cpu.dll!CpupSyscallStub+0x9
 wow64cpu.dll!Thunk0Arg+0x5
 wow64.dll!RunCpuSimulation+0xa
 wow64.dll!Wow64LdrpInitialize+0x429
 ntdll.dll!LdrpInitializeProcess+0x1780
 ntdll.dll!??_C at _0BN@KLOBBEB at Enabling?5heap?5debug?5options?6?$AA at FNODOBFM@+0x2b7e0
 ntdll.dll!LdrInitializeThunk+0xe
 GDI32.dll!_NtGdiDeleteObjectApp at 4+0x15
 GDI32.dll!_DeleteObject at 4+0x1e1
 libgdk-win32-2.0-0.dll!gdk_pixmap_create_from_data+0x419
 libgdk-win32-2.0-0.dll!gdk_pixmap_get_type+0x1a9
 libgdk-win32-2.0-0.dll!gdk_window_end_paint+0x446
 libgdk-win32-2.0-0.dll!gdk_window_is_viewable+0x211
 libgdk-win32-2.0-0.dll!gdk_window_invalidate_rect+0x9f
 libgdk-win32-2.0-0.dll!gdk_window_process_updates+0x10e
 libgdk-win32-2.0-0.dll!gdk_threads_add_timeout_seconds+0xb0
 libglib-2.0-0.dll!g_source_get_current_time+0xfe
 libglib-2.0-0.dll!g_main_context_dispatch+0x19b
 libglib-2.0-0.dll!g_main_context_prepare+0x8b5
 libglib-2.0-0.dll!g_main_loop_run+0x164
 libgtk-win32-2.0-0.dll!gtk_main+0xa0
 pidgin.dll!pidgin_main+0x4ab
 pidgin.exe+0x2161
 pidgin.exe+0x3286
 pidgin.exe+0x10b6
 pidgin.exe+0x1128
 kernel32.dll!@BaseThreadInitThunk at 12+0xe
 ntdll.dll!___RtlUserThreadStart at 8+0x70
 ntdll.dll!__RtlUserThreadStart at 8+0x1b
 }}}

 {{{
 ntoskrnl.exe!KiSwapContext+0x7a
 ntoskrnl.exe!KiCommitThreadWait+0x1d2
 ntoskrnl.exe!KeWaitForSingleObject+0x19f
 ntoskrnl.exe!KiSuspendThread+0x74
 ntoskrnl.exe!KiDeliverApc+0x211
 ntoskrnl.exe!KiCommitThreadWait+0x3dd
 ntoskrnl.exe!KeWaitForMultipleObjects+0x271
 ntoskrnl.exe!ObpWaitForMultipleObjects+0x294
 ntoskrnl.exe!NtWaitForMultipleObjects32+0xec
 ntoskrnl.exe!KiSystemServiceCopyEnd+0x13
 wow64cpu.dll!CpupSyscallStub+0x9
 wow64cpu.dll!WaitForMultipleObjects32+0x32
 wow64.dll!RunCpuSimulation+0xa
 wow64.dll!Wow64LdrpInitialize+0x429
 ntdll.dll!LdrpInitializeProcess+0x1780
 ntdll.dll!??_C at _0BN@KLOBBEB at Enabling?5heap?5debug?5options?6?$AA at FNODOBFM@+0x2b7e0
 ntdll.dll!LdrInitializeThunk+0xe
 ntdll.dll!_ZwWaitForMultipleObjects at 20+0x15
 kernel32.dll!_WaitForMultipleObjectsExImplementation at 20+0xe0
 libglib-2.0-0.dll!g_pattern_match_string+0xeb
 libglib-2.0-0.dll!g_poll+0x119
 libglib-2.0-0.dll!g_main_context_prepare+0x62f
 libglib-2.0-0.dll!g_main_loop_run+0x164
 libgtk-win32-2.0-0.dll!gtk_main+0xa0
 pidgin.dll!pidgin_main+0x4ab
 pidgin.exe+0x2161
 pidgin.exe+0x3286
 pidgin.exe+0x10b6
 pidgin.exe+0x1128
 kernel32.dll!@BaseThreadInitThunk at 12+0xe
 ntdll.dll!___RtlUserThreadStart at 8+0x70
 ntdll.dll!__RtlUserThreadStart at 8+0x1b
 }}}

-- 
Ticket URL: <http://developer.pidgin.im/ticket/12664>
Pidgin <http://pidgin.im>
Pidgin


More information about the Tracker mailing list