EionRobb / funyahoo-plusplus

A replacement Yahoo prpl (protocol plugin) for Pidgin/libpurple
GNU General Public License v3.0
59 stars 11 forks source link

Pidgin crashes with latest git #57

Closed Fry-kun closed 6 years ago

Fry-kun commented 7 years ago
[...]
(23:50:24) certificate: Successfully verified certificate for login.yahoo.com
(23:50:24) s5: reallocing from 5 to 8
(23:50:24) http: Request 0x55c2819d0220 performed without success.
(23:50:24) yahoo: Error parsing response: Internal Server Error

(Pidgin:9768): Json-CRITICAL **: json_node_get_object: assertion 'JSON_NODE_IS_VALID (node)' failed

(Pidgin:9768): Json-CRITICAL **: json_object_has_member: assertion 'object != NULL' failed
Pidgin 2.12.0-2.fc26 has segfaulted and attempted to dump a core file.
This is a bug in the software and has happened through
no fault of your own.
[...]

commit cbceef10ef4388ab0bf0d654493636180802274d

Fedora 26

EionRobb commented 7 years ago

https://developer.pidgin.im/wiki/GetABacktrace :)

cfeilen commented 7 years ago

I've got the Win32 version from 8/14ish (no idea what the real version is, no compiled version info it the DLL). Pidgin crashes on startup if I have this plugin in installed. Removed it, and Pidgin works.
developer.pidgin.im seems down today also.

Edited with backtrace:

Windows Version 6.2 Build 9200

C:\Program Files (x86)\Pidgin\pidgin.exe caused an Access Violation at location 76438438 in module C:\WINDOWS\System32\msvcrt.dll Reading from location 00000000.

Registers: eax=00003f3f ebx=3f3f3f3f ecx=00000000 edx=00000000 esi=00000001 edi=654c948e eip=76438438 esp=0061dca0 ebp=0061dcf8 iopl=0 nv up ei pl nz na po nc cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00210206

Call stack: C:\WINDOWS\System32\msvcrt.dll [7.0.16353.1001] 76438438 C:\WINDOWS\System32\msvcrt.dll strchr 654C1BE6 C:\Program Files (x86)\Pidgin\plugins\libyahoo-plusplus.dll 654CA38D C:\Program Files (x86)\Pidgin\plugins\libyahoo-plusplus.dll purple_init_plugin 654C9482 C:\Program Files (x86)\Pidgin\plugins\libyahoo-plusplus.dll purple_init_plugin 654C94AD C:\Program Files (x86)\Pidgin\plugins\libyahoo-plusplus.dll purple_init_plugin C:\Program Files (x86)\Pidgin\pidgin.dll [2.12.0.0] Using Debug Symbols from: C:\Program Files (x86)\Pidgin\pidgin-2.12.0-dbgsym\pidgin.dll.dbgsym 5681FA48 C:\Program Files (x86)\Pidgin\pidgin.dll pidgin_docklet_uninit C:\Program Files (x86)\Pidgin\Gtk\bin\libglib-2.0-0.dll [2.28.8.0] 685EB90D C:\Program Files (x86)\Pidgin\Gtk\bin\libglib-2.0-0.dll g_main_context_dispatch 685EBD9D C:\Program Files (x86)\Pidgin\Gtk\bin\libglib-2.0-0.dll g_main_loop_run C:\Program Files (x86)\Pidgin\Gtk\bin\libgtk-win32-2.0-0.dll [2.16.6.0] 61854260 C:\Program Files (x86)\Pidgin\Gtk\bin\libgtk-win32-2.0-0.dll gtk_main

Fry-kun commented 7 years ago

That's.. fair. I guess I got lazy and figured it would crash for any OS and since it's on program start, you wouldn't have to trace far..

(gdb) run
Starting program: /usr/bin/pidgin
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Detaching after fork from child process 17963.
[New Thread 0x7fffce7c7700 (LWP 17966)]
[New Thread 0x7fffcdfc6700 (LWP 17967)]
[New Thread 0x7fffcd209700 (LWP 17968)]
Detaching after fork from child process 17972.
Detaching after fork from child process 17973.
Detaching after fork from child process 17974.
Detaching after fork from child process 17975.

(Pidgin:17952): Json-CRITICAL **: json_node_get_object: assertion 'JSON_NODE_IS_VALID (node)' failed

(Pidgin:17952): Json-CRITICAL **: json_object_has_member: assertion 'object != NULL' failed

Thread 1 "pidgin" received signal SIGSEGV, Segmentation fault.
0x00007ffff1e9e343 in __strchr_sse2 () from /lib64/libc.so.6
(gdb) bt full
#0  0x00007ffff1e9e343 in __strchr_sse2 () at /lib64/libc.so.6
#1  0x00007fffe3c5b9a3 in yahoo_auth_r2_callback (ya=0x555556a141c0, node=<optimized out>, user_data=<optimized out>) at libyahoo-plusplus.c:868
        request = <optimized out>
        obj = 0x0
        url = 0x0
        config = <optimized out>
        acrumb = <optimized out>
        session = <optimized out>
        params = <optimized out>
        i = <optimized out>
        postdata = <optimized out>
#2  0x00007fffe3c5b534 in yahoo_response_callback (http_conn=0x555556b7e8d0, response=<optimized out>, user_data=0x555556a190b0) at libyahoo-plusplus.c:285
        body = 0x555556a1c730 "Internal Server Error"
        body_len = 21
        conn = 0x555556a190b0
        parser = 0x555555e0e6e0
#3  0x00007fffe3c6084b in purple_http_connection_terminate (hc=0x555556b7e8d0) at purple2compat/http.c:1703
#4  0x00007fffe3c62bc0 in _purple_http_recv_loopbody (hc=hc@entry=0x555556b7e8d0, fd=<optimized out>) at purple2compat/http.c:1275
        len = <optimized out>
        buf = "Internal Server Error Server Error\r\nX-Frame-Options: DENY\r\nX-Content-Type-Options: nosniff\r\nX-XSS-Protection: 1; mode=block\r\nx-powered-by: Yahoo\r\nAge: 0\r\nPragma: no-cache\r\nExpires: 0\r\nCache-Control: n"...
        got_anything = <optimized out>
#5  0x00007fffe3c62fb0 in _purple_http_recv (_hc=0x555556b7e8d0, fd=<optimized out>, cond=<optimized out>) at purple2compat/http.c:1286
        hc = 0x555556b7e8d0
#6  0x00005555555c5a7e in pidgin_io_invoke ()
#7  0x00007ffff2ffc247 in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#8  0x00007ffff2ffc5e8 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#9  0x00007ffff2ffc902 in g_main_loop_run () at /lib64/libglib-2.0.so.0
#10 0x00007ffff6b130f7 in gtk_main () at /lib64/libgtk-x11-2.0.so.0
#11 0x000055555558c115 in main ()
(gdb) quit

LMK if you need more

nywiley commented 6 years ago

The problem is that the initial login is getting back an internal server error from yahoo. I think the URL has changed and the one in the code wont work anymore.

ghost commented 6 years ago

It only seems to crash on my Linux Mint installation. I can't add my Yahoo account to it without it crashing.

RevStrangeHope commented 6 years ago

This also seems to crash Ubuntu 16.04.3 LTS 64-Bit

EionRobb commented 6 years ago

There's an updated windows build at https://eion.robbmob.com/libyahoo-plusplus.dll if anyone wants to try on windows

colin1951uk commented 6 years ago

Eion,

This one seems to work.

I login ok with no crashes BUT all my friends seem to have disappeared so I can't tell if the messaging works.

I'll keep checking and hopefully someone will turn up to chat with.

It's looking good anyway and thank you for persevering with this fix.

Cheers...Colin

======= On 14-February-2018, 07:42:02 you wrote: =======

There's an updated windows build at https://eion.robbmob.com/libyahoo-plusplus.dll if anyone wants to try on windows