EionRobb / pidgin-pushbullet

A Pushbullet plugin for Pidgin
GNU General Public License v3.0
42 stars 12 forks source link

Getting a segfault when Trying to add an account #14

Open Psykar opened 8 years ago

Psykar commented 8 years ago

Trace here: http://pastebin.com/raw/cUnsjViB

Note this trace is when trying to enable the account I've previously added. I can get one of a fresh account addition if you'd prefer?

EionRobb commented 8 years ago

#0 purple_account_get_int (account=0x1, ... thats pretty bad/weird... it's like the account has disconnected while we're still using it, or something

Psykar commented 8 years ago

Yeah, at the point the crash occurs I can see a 'Lost connection to server' message for that account. I'm trying to find a useful breakpoint at the moment if you have suggestions.

EionRobb commented 8 years ago

I'm worried if there's been a server-side change to make the plugin incompatible - I think there's been some changes around the access tokens that you pick up from your Pushbullet settings page, that they don't have full-control over the account any more

Psykar commented 8 years ago

My contacts do actually flash up briefly as well, so it's something your plugin is attempting after a successful connection.

Psykar commented 8 years ago

Hrm. So now it's not segfaulting, but instead still disconnects, with the following in the debug log. No changes made, so unsure why it's getting further this time.


'
(12:14:25) pushbullet: Got response: {"accounts":[],"blocks":[],"channels":[],"chats":[],"clients":[],"contacts":[],"devices":[],"grants":[],"pushes":[],"profiles":[],"subscriptions":[],"texts":[]}
(12:14:25) util: Response headers: 'HTTP/1.0 404 Not Found
Content-Type: application/json; charset=utf-8
Vary: Accept-Encoding
Date: Mon, 18 Apr 2016 02:14:24 GMT
Server: Google Frontend
Cache-Control: private
Alt-Svc: quic=":443"; ma=2592000; v="32,31,30,29,28,27,26,25"
Accept-Ranges: none

'
(12:14:25) pushbullet: Got response: {"error":{"code":"invalid_request","type":"invalid_request","message":"The resource could not be found.","cat":"~(=^‥^)"},"error_code":"invalid_request"}
(12:14:25) connection: Connection error on 0x2d83c00 (reason: 2 description: The resource could not be found.)
(12:14:25) account: Disconnecting account <redacted email address> (0x183e7a0)
(12:14:25) connection: Disconnecting connection 0x2d83c00
Psykar commented 8 years ago

With a bit of hacking to figure out which http requests were failing:

(14:54:33) pushbullet: Got response for: https://api.pushbullet.com/v3/get-permanent
(14:54:33) pushbullet: Got response: {"error":{"code":"insufficient_authorization","type":"invalid_request","message":"Insufficient authorization.","cat":"(=^‥^=)"},"error_code":"insufficient_authorization"}

(14:54:33) pushbullet: Got response for: https://api.pushbullet.com/v2/texts
(14:54:33) pushbullet: Got response: {"error":{"code":"invalid_request","type":"invalid_request","message":"The resource could not be found.","cat":"~(=^‥^)"},"error_code":"invalid_request"}
Psykar commented 8 years ago

Seems https://api.pushbullet.com/v2/everything can replace the 'texts' call, but the /v3/get-permanent call appears to only accept HTTP Basic Authorization now, not an access token... I'm saying this without knowing the history of their API at all though... and their doco is a little haphazard.

synthead commented 8 years ago

Duplicate of #8