| dsc_ | g_signal_connect(conv_abook_aggregator, "contacts-removed", G_CALLBACK(contacts_removed_cb), nullptr); | 07:06 |
|---|---|---|
| dsc_ | void contacts_removed_cb(OssoABookRoster *roster, const char **ids, gpointer data) {} | 07:06 |
| dsc_ | freemangordon: ^ what is ids here, and how to get local_uid/remote_uid from it | 07:07 |
| freemangordon | uid is vcard UID | 07:09 |
| dsc_ | ok thx | 07:10 |
| freemangordon | afaik | 07:10 |
| freemangordon | dsc_: but, why do you care about accounts added/removed? abook takes care of that already | 07:17 |
| dsc_ | for GUI purposes | 07:17 |
| dsc_ | chatwindow | 07:17 |
| dsc_ | if the friend is removed, there shall be a button add friend, to restore the friendship <3 | 07:18 |
| dsc_ | need to monitor for contact removed signal | 07:18 |
| freemangordon | I see | 07:18 |
| freemangordon | please, put that button in the menu | 07:19 |
| dsc_ | it is in the menu, yeah | 07:19 |
| freemangordon | great | 07:19 |
| dsc_ | the menu changes depending on the publication state | 07:19 |
| freemangordon | cool, makes sense | 07:19 |
| freemangordon | shall I assume you are facing no issues with abook? | 07:20 |
| dsc_ | but ehh, char* -> OssoABookContact | 07:20 |
| dsc_ | no abook works well | 07:20 |
| freemangordon | no, the contacts is already gone, you cannot create contact from it | 07:20 |
| freemangordon | *contact | 07:20 |
| dsc_ | ah yeah | 07:20 |
| freemangordon | sorry, still having my first coffee | 07:20 |
| dsc_ | i should have printed this char* before asking | 07:21 |
| dsc_ | let me try | 07:21 |
| freemangordon | no, the contact is already gone, you cannot create OssoABookContact* from it | 07:21 |
| dsc_ | yes | 07:21 |
| dsc_ | but there's probably some uid | 07:21 |
| freemangordon | dsc_: hmm, what happens to the channel when remote party 'blocks' you? | 07:22 |
| dsc_ | have not looked at blocks yet | 07:22 |
| dsc_ | with channel you mean TextChannel? | 07:22 |
| dsc_ | I guess CM should close it? | 07:23 |
| freemangordon | mhm | 07:23 |
| dsc_ | maybe not | 07:23 |
| freemangordon | so, wtym "if the friend is removed"? | 07:23 |
| freemangordon | removed how? | 07:23 |
| dsc_ | counterparty removes me from friendlist | 07:24 |
| dsc_ | it is a signal | 07:24 |
| dsc_ | some xmpp thing probably | 07:24 |
| dsc_ | no wait | 07:24 |
| freemangordon | right, so, what happens with the channel that chat window is tied to? | 07:24 |
| freemangordon | removing from friendlist most-probably will change published status or something | 07:25 |
| freemangordon | it will not remove the contact | 07:25 |
| dsc_ | yes, nothing happens to channel | 07:25 |
| dsc_ | can still send messages | 07:25 |
| freemangordon | but also the contact is not removed | 07:25 |
| freemangordon | I doubt you will receive 'contact-removed' for that contact | 07:25 |
| freemangordon | I guess removing will only happen if remote party de-registers from the service, like, closes the account | 07:26 |
| freemangordon | in which case I assume TP will close the channel | 07:26 |
| dsc_ | right | 07:27 |
| freemangordon | but that's different to what you are on | 07:28 |
| freemangordon | I think you should listen for 'contacts-changed' signal only | 07:28 |
| freemangordon | and watch published/blocked/whatever state from there | 07:29 |
| dsc_ | im also doing that yes, and yeah you are right about the removal signal | 07:29 |
| dsc_ | if the counterparty removes me, I get no removal signal | 07:30 |
| freemangordon | makes sense | 07:30 |
| dsc_ | if I remove the contact from abook, abook crashes | 07:31 |
| freemangordon | please, backtrace | 07:31 |
| dsc_ | sure | 07:31 |
| freemangordon | I assume you are on version 1:4.4.5+3m7 | 07:31 |
| dsc_ | $ apt policy osso-addressbook | 07:34 |
| dsc_ | osso-addressbook: Installed: 0.3.4+3m7 | 07:34 |
| dsc_ | Candidate: 0.3.4+3m7 | 07:34 |
| freemangordon | apt policy libosso-abook | 07:34 |
| dsc_ | 4.4.4+3m7 | 07:35 |
| dsc_ | ill update first | 07:35 |
| freemangordon | yes, please, https://github.com/maemo-leste/osso-abook/commit/5590751fcd56dae2222f58498b3b0edad7c1eda5 | 07:36 |
| freemangordon | don;t forget to install debug symbols if not already | 07:37 |
| dsc_ | ehmm | 07:43 |
| dsc_ | im attaching with gdb to /usr/bin/osso-addressbook | 07:44 |
| dsc_ | trigger the crash | 07:44 |
| dsc_ | [Thread 0x7f648ec76700 (LWP 3597) exited] | 07:44 |
| dsc_ | [Inferior 1 (process 3596) exited with code 027] | 07:44 |
| dsc_ | (gdb) bt | 07:44 |
| dsc_ | No stack. | 07:44 |
| freemangordon | Inferior 1 (process 3596) exited with code 027 | 07:44 |
| dsc_ | user 3059 0.0 0.6 293908 24988 ? S<sl 06:37 0:00 /usr/bin/osso-abook-home-applet | 07:44 |
| dsc_ | user 3647 0.0 0.0 2368 496 ? S 06:43 0:00 /usr/bin/osso-addressbook | 07:44 |
| freemangordon | you should attach to the other process | 07:44 |
| dsc_ | user 3648 0.0 1.0 598064 40960 ? Ssl 06:43 0:00 /usr/bin/osso-addressbook | 07:44 |
| dsc_ | alright | 07:44 |
| freemangordon | to 3648 | 07:45 |
| dsc_ | pretty sure I did that one | 07:45 |
| dsc_ | (the one with the most memory) | 07:45 |
| dsc_ | cant seem to catch it | 07:46 |
| dsc_ | i attached to both this time :P | 07:46 |
| freemangordon | no way :) | 07:47 |
| dsc_ | how is that possible though | 07:47 |
| dsc_ | gdb -p 3647 | 07:47 |
| dsc_ | [Inferior 1 (process 3647) exited with code 027] | 07:47 |
| dsc_ | the other: | 07:47 |
| dsc_ | gdb -p 3648 | 07:47 |
| dsc_ | [Inferior 1 (process 3648) exited with code 027] | 07:47 |
| dsc_ | im probably doing something stupid | 07:47 |
| freemangordon | I am usually starting gdb | 07:48 |
| freemangordon | and then doing attach $pid | 07:48 |
| freemangordon | no idea what -p is supposed to do | 07:48 |
| freemangordon | and you only need to attach to the second peocess | 07:48 |
| freemangordon | do you have libc6-dbg installed? | 07:49 |
| dsc_ | dmesg: | 07:49 |
| dsc_ | [ 243.598551] evolution-addre[3328]: segfault at 0 ip 00007f1721002a44 sp 00007ffcb0002c60 error 4 in libglib-2.0.so.0.6600.8[7f1720fe0000+88000] | 07:49 |
| dsc_ | yes | 07:49 |
| freemangordon | evolution-addressbook? | 07:50 |
| freemangordon | what is that? | 07:50 |
| freemangordon | oh | 07:50 |
| freemangordon | evolution-addressbook-factory | 07:50 |
| dsc_ | not sure, I pasted it because it might be related | 07:50 |
| freemangordon | it is | 07:50 |
| dsc_ | user 3282 0.0 0.6 436876 26852 ? Sl 06:37 0:00 /usr/libexec/evolution-source-registry | 07:50 |
| dsc_ | user 3713 0.0 0.8 725448 32468 ? Sl 06:46 0:00 /usr/libexec/evolution-addressbook-factory | 07:50 |
| freemangordon | that might be TP EDS plugin segfaulting | 07:51 |
| freemangordon | hot do you trigger the bug? | 07:51 |
| dsc_ | remove a contact :D | 07:51 |
| freemangordon | what contact? | 07:51 |
| dsc_ | xmpp contact in this case | 07:51 |
| freemangordon | ok, lemme try | 07:51 |
| freemangordon | oh, I thin kI know what happens | 07:51 |
| dsc_ | Thread 1 "evolution-addre" received signal SIGSEGV, Segmentation fault. | 07:52 |
| dsc_ | 0x00007fca01b06a44 in g_hash_table_iter_next () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 | 07:52 |
| dsc_ | #0 0x00007fca01b06a44 in g_hash_table_iter_next () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 | 07:52 |
| freemangordon | please install debug symbols | 07:52 |
| dsc_ | #1 0x00007fc9f9c4479d in () at /usr/lib/evolution-data-server/addressbook-backends/libebookbackendtp.so | 07:52 |
| dsc_ | #2 0x00007fc9f9c44d88 in () at /usr/lib/evolution-data-server/addressbook-backends/libebookbackendtp.so | 07:52 |
| dsc_ | yah | 07:52 |
| freemangordon | libglib2.0-0-dbgsym | 07:52 |
| dsc_ | ty | 07:52 |
| freemangordon | evolution-data-server-addressbook-backend-telepathy-dbg | 07:53 |
| dsc_ | question | 07:57 |
| dsc_ | /usr/libexec/evolution-addressbook-factory | 07:57 |
| dsc_ | this is a stripped binary | 07:57 |
| dsc_ | thats ok? | 07:57 |
| freemangordon | hmm... | 07:57 |
| freemangordon | I just saw "authorisation request" in addressbook :D | 07:58 |
| dsc_ | indeed | 07:58 |
| freemangordon | it is stripped | 07:58 |
| freemangordon | but segfault is in ibebookbackendtp.so | 07:58 |
| freemangordon | so, that means you don;t need to implement it in conversations ;) | 07:59 |
| freemangordon | lemme try if it works though | 07:59 |
| dsc_ | it does work | 07:59 |
| freemangordon | then no need to duplicate in the conversations | 08:00 |
| freemangordon | yep. it works, just tested :D | 08:02 |
| freemangordon | but, cannot reproduce the crash | 08:02 |
| dsc_ | fine by me | 08:04 |
| dsc_ | there's more to managing friends than just sending auth requests tho | 08:04 |
| dsc_ | abook seems a bit rough in this area | 08:04 |
| freemangordon | sure | 08:04 |
| freemangordon | it does not support contact blocking I assume | 08:05 |
| dsc_ | if someone adds you as friend, I dont think it shows up in abook as such, or no notification thereof | 08:05 |
| dsc_ | let me check | 08:05 |
| freemangordon | yeah, I think this should happen in conversations | 08:06 |
| freemangordon | however, could you repro the crash with debug symbols? | 08:06 |
| dsc_ | it did crash, but this time gdb didnt catch it | 08:07 |
| freemangordon | what crashed? eds addressbook factory? | 08:07 |
| dsc_ | yes | 08:08 |
| freemangordon | with gdb attached? | 08:08 |
| dsc_ | /usr/libexec/evolution-addressbook-factory | 08:08 |
| freemangordon | mhm | 08:08 |
| dsc_ | i could catch it on this process *before* installing the db libs | 08:08 |
| dsc_ | dbg* | 08:08 |
| freemangordon | it crashes no more? | 08:09 |
| dsc_ | i was doing something else | 08:09 |
| dsc_ | but let me try | 08:09 |
| freemangordon | hmm, seems auth requests from pidgin are auto-approved somehow | 08:10 |
| dsc_ | ah got it | 08:11 |
| freemangordon | nice :) | 08:11 |
| dsc_ | https://plak.infrapuin.nl/selif/58f7a25o.txt | 08:11 |
| freemangordon | sec | 08:12 |
| freemangordon | dsc_: frame 1 | 08:12 |
| freemangordon | p contact->variants | 08:12 |
| dsc_ | (gdb) frame 1 | 08:13 |
| dsc_ | #1 0x00007fe9f31cc79d in e_book_backend_tp_db_add_variants (tpdb=0x7ffc859330b0, tpdb@entry=0x7fe9e8002460 [EBookBackendTpDb], contact=contact@entry=0x560b0f024310, error=error@entry=0x7ffc859331d0) at e-book-backend-tp-db.c:1055 | 08:13 |
| dsc_ | 1055e-book-backend-tp-db.c: No such file or directory. | 08:13 |
| dsc_ | (gdb) p contact->variants | 08:13 |
| dsc_ | $1 = 0x560b0f06d800<error reading variable: Cannot access memory at address 0x0> | 08:13 |
| freemangordon | p *contact | 08:13 |
| dsc_ | (gdb) p *contact | 08:13 |
| dsc_ | $2 = {handle = 252022576, name = 0x0, alias = 0x560b0f0373e0 "@Y\003\017\vV", generic_status = 0x7fe9f31d7925 "available", status = 0x560b0efa9bb0 "\240\216\005\017\vV", status_message = 0x560b0f043120 "\020\215\006\017\vV", avatar_token = 0x560b0f08d470 "", avatar_mime = 0x0, avatar_len = 0, avatar_data = 0x0, contact_info = 0x0, flags = 0, pending_flags = 0, uid = 0x560b0f035910 "`", | 08:13 |
| dsc_ | master_uids = 0x7fe9e8004c40, capabilities = 14, variants = 0x560b0f06d800<error reading variable: Cannot access memory at address 0x0>, ref_count = 0} | 08:14 |
| dsc_ | this is without running conversations btw | 08:14 |
| dsc_ | just adding/removing xmpp contact | 08:14 |
| freemangordon | yeah, I see | 08:15 |
| dsc_ | im using 2 clients: gajim and pidgin for this | 08:15 |
| freemangordon | but cannot repro it here | 08:15 |
| dsc_ | and then I delete @ abook | 08:15 |
| freemangordon | how do you 'add' that contact? | 08:15 |
| freemangordon | by hand? | 08:16 |
| dsc_ | request from gajim, authorize in pdigin, delete in abook | 08:16 |
| dsc_ | yes | 08:16 |
| freemangordon | I assume gajim runs in the VM, right? | 08:16 |
| dsc_ | no | 08:17 |
| freemangordon | ah | 08:17 |
| dsc_ | both on host | 08:17 |
| freemangordon | ok, lemme try to add it from abook | 08:17 |
| dsc_ | grabbing coffee brb 3min | 08:17 |
| dsc_ | ill leave gdb open | 08:17 |
| freemangordon | sure | 08:17 |
| freemangordon | dsc_: which account do you use on gajim? the same as in VM? | 08:20 |
| dsc_ | freemangordon: pidgin uses the VM account | 08:24 |
| freemangordon | ok, so, pidgin is not really used, right? | 08:25 |
| dsc_ | im using it to authorize the incoming request | 08:25 |
| freemangordon | I see | 08:26 |
| freemangordon | so, you add contact in abook? | 08:26 |
| dsc_ | no | 08:26 |
| freemangordon | or in gajim | 08:26 |
| dsc_ | in gajim | 08:26 |
| freemangordon | ok | 08:26 |
| dsc_ | abook only for deletion | 08:26 |
| freemangordon | I assume I can use empathy for that | 08:26 |
| dsc_ | I also observed cases where it did not crash, but the contact refused to dissapear from the list | 08:27 |
| dsc_ | and then the table acted a bit strange | 08:27 |
| dsc_ | :P | 08:27 |
| dsc_ | where it highlighted multiple rows | 08:27 |
| freemangordon | yeah, but that's another story | 08:27 |
| freemangordon | hmm, I guess that issue shall be fixed too | 08:30 |
| freemangordon | I can;t make it crash here :( | 08:30 |
| dsc_ | dsc@xmpp.is @ gajim, stevejobs@xmpp.wajer.org @ pidgin, stevejobs@xmpp.wajer.org @ maemo VM | 08:30 |
| freemangordon | and requesting auth from pidgin? | 08:31 |
| freemangordon | or from gajim? | 08:31 |
| dsc_ | requesting auth from gajim | 08:31 |
| dsc_ | accepting authorization in pidgin | 08:31 |
| dsc_ | then delete in abook | 08:31 |
| freemangordon | yeah, but does not crash here | 08:32 |
| dsc_ | it does seem to delete from the perspective of xmpp though | 08:32 |
| freemangordon | mhm | 08:32 |
| freemangordon | but UI bug I can repro | 08:32 |
| freemangordon | so will fix at least that one | 08:32 |
| freemangordon | while tring to repro | 08:32 |
| dsc_ | right | 08:33 |
| freemangordon | lemme see if valgrind will say something | 08:33 |
| dsc_ | anyway about abook doing everything related to authorization | 08:33 |
| freemangordon | no, no | 08:33 |
| dsc_ | in terms of UX its nice to accept/remove friends too | 08:34 |
| dsc_ | from conversations | 08:34 |
| freemangordon | you should implement accepting auth in conversations | 08:34 |
| dsc_ | or at least get notified somehow | 08:34 |
| dsc_ | right | 08:34 |
| freemangordon | 'removing' is already there, in a book | 08:34 |
| freemangordon | adding as well | 08:34 |
| dsc_ | yes | 08:34 |
| dsc_ | minus the remove yeah | 08:35 |
| freemangordon | I have to check how it looks like in fremantle in terms of accepting auth request | 08:35 |
| freemangordon | wtym? | 08:35 |
| dsc_ | nvm, I am agreeing | 08:35 |
| freemangordon | removing might be buggy, but I will fix it | 08:35 |
| freemangordon | hmm, wait, wait | 08:36 |
| dsc_ | waiting | 08:36 |
| freemangordon | maybe there is some abook plugin that shows auth requests | 08:36 |
| freemangordon | because now, auth requests are auto-accepeted | 08:37 |
| freemangordon | by somebody, I assume abook | 08:37 |
| dsc_ | i dont think so... | 08:37 |
| freemangordon | they are | 08:37 |
| freemangordon | I delete the contact, request auth from pidgin, and immediately pidgin sees the remote status | 08:37 |
| freemangordon | in the same time empathy shows "do you allow...." | 08:38 |
| dsc_ | re: crash, I think I'm in a weird state. I blame wizzups server | 08:38 |
| freemangordon | so somebody is accepting the auth in the VM | 08:38 |
| freemangordon | I assume abook | 08:38 |
| freemangordon | no matter the server, it should not use dangling pointers | 08:38 |
| dsc_ | hmm | 08:38 |
| dsc_ | ok so | 08:40 |
| dsc_ | I add from gajim, it shows up in abook | 08:41 |
| dsc_ | but this auth request is not accepted yet | 08:41 |
| freemangordon | sure | 08:41 |
| dsc_ | < freemangordon> because now, auth requests are auto-accepeted | 08:41 |
| dsc_ | not here | 08:41 |
| dsc_ | else i would see the vcard/avatar | 08:41 |
| dsc_ | and the online status | 08:41 |
| freemangordon | but if you request auth from gajim, it will immediately see the VM online status | 08:41 |
| dsc_ | I am requesting auth from gajim | 08:42 |
| dsc_ | to the VM | 08:42 |
| dsc_ | its not auto-accepted | 08:42 |
| freemangordon | and it is not accepeted? | 08:42 |
| dsc_ | no | 08:42 |
| freemangordon | maybe with your modified conversations, dunno | 08:42 |
| dsc_ | conversations is not running | 08:42 |
| freemangordon | hmm | 08:42 |
| dsc_ | i removed it from auto-start | 08:42 |
| freemangordon | lemme stop conversations here then | 08:42 |
| dsc_ | fresh reboot | 08:42 |
| dsc_ | (I just moved /usr/bin/conversations to another place) | 08:43 |
| dsc_ | anyway | 08:43 |
| dsc_ | the contact shows up in abook because it is a roster change | 08:43 |
| dsc_ | but authorization is about publication/presence | 08:43 |
| dsc_ | anyway | 08:44 |
| dsc_ | maybe you have another client online somewhere? | 08:44 |
| freemangordon | dsc_: no, that account I use only for testing | 08:52 |
| freemangordon | anyway, have to run, will look at it when I am back, to fix the UI issue at least | 08:52 |
| dsc_ | alright, thanks4help | 08:52 |
| freemangordon | will also check who handles auth requests on fremantle and why here in my VM they seem auto-accepted | 08:55 |
| freemangordon | dsc_: the bug when deleted contact remains visible seems to be in window manager | 20:43 |
| freemangordon | abook does everything properly, but windows does not get repainted | 20:43 |
| freemangordon | *window | 20:43 |
| freemangordon | dsfds | 20:47 |
| freemangordon | oops | 20:47 |
| freemangordon | dsc_: it seems to happen in VM only (or on 64bits only) | 20:55 |
| dsc_ | < freemangordon> abook does everything properly, but windows does not get repainted | 22:26 |
| dsc_ | i've had this in conversations too | 22:26 |
| dsc_ | its related to switching from subwindow to the mainwindow | 22:26 |
| dsc_ | stacked window* | 22:27 |
Generated by irclog2html.py 2.17.0 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!