Thu, 23 Mar 2023 23:11:59 -0500
Fix several leaks in tests
All of these are specific to tests, not the library code.
For the moment, `protocol_xfer` still leaks connections (and anything they hold on to) because it is very difficult to disentangle them from the connection manager in the partially implemented state they are in.
This fixes leaks of options in the account option test (these two leaks occur for every test since they all leak the option):
```
61 (48 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 133 of 276
at 0x4848464: calloc (vg_replace_malloc.c:1340)
by 0x49F75F0: g_malloc0 (gmem.c:163)
by 0x48C3B2E: purple_account_option_new (purpleaccountoption.c:78)
by 0x4014AF: test_purple_account_option_copy_int (test_account_option.c:67)
by 0x4A1CC7D: UnknownInlinedFun (gtestutils.c:2933)
by 0x4A1CC7D: g_test_run_suite_internal (gtestutils.c:3021)
by 0x4A1C9E4: g_test_run_suite_internal (gtestutils.c:3038)
by 0x4A1C9E4: g_test_run_suite_internal (gtestutils.c:3038)
by 0x4A1D181: g_test_run_suite (gtestutils.c:3115)
by 0x4A156EC: UnknownInlinedFun (gtestutils.c:2234)
by 0x4A156EC: g_test_run (gtestutils.c:2221)
by 0x401721: main (test_account_option.c:157)
61 (48 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 134 of 276
at 0x4848464: calloc (vg_replace_malloc.c:1340)
by 0x49F75F0: g_malloc0 (gmem.c:163)
by 0x48C3BC7: purple_account_option_copy (purpleaccountoption.c:93)
by 0x4014BF: test_purple_account_option_copy_int (test_account_option.c:68)
by 0x4A1CC7D: UnknownInlinedFun (gtestutils.c:2933)
by 0x4A1CC7D: g_test_run_suite_internal (gtestutils.c:3021)
by 0x4A1C9E4: g_test_run_suite_internal (gtestutils.c:3038)
by 0x4A1C9E4: g_test_run_suite_internal (gtestutils.c:3038)
by 0x4A1D181: g_test_run_suite (gtestutils.c:3115)
by 0x4A156EC: UnknownInlinedFun (gtestutils.c:2234)
by 0x4A156EC: g_test_run (gtestutils.c:2221)
by 0x401721: main (test_account_option.c:157)
```
leaks in the credential manager test (times 3 for read/write/cancel tests):
```
69 (16 direct, 53 indirect) bytes in 1 blocks are definitely lost in loss record 2,427 of 3,503
at 0x484386F: malloc (vg_replace_malloc.c:393)
by 0x4A58168: g_malloc (gmem.c:130)
by 0x4A6FAB5: g_slice_alloc (gslice.c:1074)
by 0x4A700EC: g_slice_alloc0 (gslice.c:1100)
by 0x4A3BECB: g_error_allocate (gerror.c:710)
by 0x4A3C93F: UnknownInlinedFun (gerror.c:724)
by 0x4A3C93F: g_error_new_valist (gerror.c:766)
by 0x4BEE558: g_task_return_new_error (gtask.c:1941)
by 0x48D82C0: purple_credential_manager_read_password_async (purplecredentialmanager.c:492)
by 0x403634: test_purple_credential_manager_no_provider_read_password_idle (test_credential_manager.c:329)
by 0x4A4ECB1: g_idle_dispatch (gmain.c:6124)
by 0x4A4FCBE: UnknownInlinedFun (gmain.c:3444)
by 0x4A4FCBE: g_main_context_dispatch (gmain.c:4162)
by 0x4AA5597: g_main_context_iterate.constprop.0 (gmain.c:4238)
by 0x4A4F28E: g_main_loop_run (gmain.c:4438)
by 0x40369F: test_purple_credential_manager_no_provider_read_password_async (test_credential_manager.c:345)
by 0x4A7DC7D: UnknownInlinedFun (gtestutils.c:2933)
by 0x4A7DC7D: g_test_run_suite_internal (gtestutils.c:3021)
by 0x4A7D9E4: g_test_run_suite_internal (gtestutils.c:3038)
by 0x4A7D9E4: g_test_run_suite_internal (gtestutils.c:3038)
by 0x4A7E181: g_test_run_suite (gtestutils.c:3115)
by 0x4A766EC: UnknownInlinedFun (gtestutils.c:2234)
by 0x4A766EC: g_test_run (gtestutils.c:2221)
by 0x4048F6: main (test_credential_manager.c:695)
```
a leak in the image test:
```
161 bytes in 1 blocks are definitely lost in loss record 260 of 274
at 0x484386F: malloc (vg_replace_malloc.c:393)
by 0x4A55363: g_try_malloc (gmem.c:286)
by 0x4A3D630: UnknownInlinedFun (gfileutils.c:819)
by 0x4A3D630: UnknownInlinedFun (gfileutils.c:924)
by 0x4A3D630: g_file_get_contents (gfileutils.c:1027)
by 0x401890: test_image_new_from_file (test_image.c:144)
by 0x4A7DC7D: UnknownInlinedFun (gtestutils.c:2933)
by 0x4A7DC7D: g_test_run_suite_internal (gtestutils.c:3021)
by 0x4A7D9E4: g_test_run_suite_internal (gtestutils.c:3038)
by 0x4A7E181: g_test_run_suite (gtestutils.c:3115)
by 0x4A766EC: UnknownInlinedFun (gtestutils.c:2234)
by 0x4A766EC: g_test_run (gtestutils.c:2221)
by 0x40195D: main (test_image.c:172)
```
a leak in queued output stream test:
```
72 (40 direct, 32 indirect) bytes in 1 blocks are definitely lost in loss record 219 of 396
at 0x49D51EF: g_type_create_instance (gtype.c:1909)
by 0x49BAC1F: g_object_new_internal (gobject.c:2228)
by 0x49BC247: g_object_new_with_properties (gobject.c:2391)
by 0x49BCFF0: g_object_new (gobject.c:2037)
by 0x402003: test_queued_output_stream_push_bytes_async_error (test_queued_output_stream.c:219)
by 0x4A7DC7D: UnknownInlinedFun (gtestutils.c:2933)
by 0x4A7DC7D: g_test_run_suite_internal (gtestutils.c:3021)
by 0x4A7D9E4: g_test_run_suite_internal (gtestutils.c:3038)
by 0x4A7E181: g_test_run_suite (gtestutils.c:3115)
by 0x4A766EC: UnknownInlinedFun (gtestutils.c:2234)
by 0x4A766EC: g_test_run (gtestutils.c:2221)
by 0x402429: main (test_queued_output_stream.c:280)
```
and protocol xfer tests (times 3 for each test that creates a test protocol object):
```
112 (48 direct, 64 indirect) bytes in 1 blocks are definitely lost in loss record 3,430 of 3,698
at 0x49D51EF: g_type_create_instance (gtype.c:1909)
by 0x49BAC1F: g_object_new_internal (gobject.c:2228)
by 0x49BC247: g_object_new_with_properties (gobject.c:2391)
by 0x49BCFF0: g_object_new (gobject.c:2037)
by 0x40291C: test_purple_protocol_xfer_send_file_func (test_protocol_xfer.c:146)
by 0x4A7DC7D: UnknownInlinedFun (gtestutils.c:2933)
by 0x4A7DC7D: g_test_run_suite_internal (gtestutils.c:3021)
by 0x4A7D9E4: g_test_run_suite_internal (gtestutils.c:3038)
by 0x4A7E181: g_test_run_suite (gtestutils.c:3115)
by 0x4A766EC: UnknownInlinedFun (gtestutils.c:2234)
by 0x4A766EC: g_test_run (gtestutils.c:2221)
by 0x402B64: main (test_protocol_xfer.c:195)
```
and util tests (times 3 for each call to `purple_text_strip_mnemonic` in the test):
```
5 bytes in 1 blocks are definitely lost in loss record 5 of 247
at 0x484386F: malloc (vg_replace_malloc.c:393)
by 0x49F7168: g_malloc (gmem.c:130)
by 0x491975B: purple_text_strip_mnemonic (util.c:895)
by 0x4015B0: test_util_text_strip_mnemonic (test_util.c:49)
by 0x4A1CC7D: UnknownInlinedFun (gtestutils.c:2933)
by 0x4A1CC7D: g_test_run_suite_internal (gtestutils.c:3021)
by 0x4A1C9E4: g_test_run_suite_internal (gtestutils.c:3038)
by 0x4A1C9E4: g_test_run_suite_internal (gtestutils.c:3038)
by 0x4A1D181: g_test_run_suite (gtestutils.c:3115)
by 0x4A156EC: UnknownInlinedFun (gtestutils.c:2234)
by 0x4A156EC: g_test_run (gtestutils.c:2221)
by 0x401901: main (test_util.c:224)
```
and these leaks in any test that initializes the test UI:
```
4,104 bytes in 1 blocks are possibly lost in loss record 3,451 of 3,457
at 0x484386F: malloc (vg_replace_malloc.c:393)
by 0x5235B67: sqlite3MemMalloc.lto_priv.0 (sqlite3.c:25493)
by 0x5232797: UnknownInlinedFun (sqlite3.c:29181)
by 0x5232797: UnknownInlinedFun (sqlite3.c:29227)
by 0x5232797: sqlite3Malloc.lto_priv.0 (sqlite3.c:29221)
by 0x523BD8B: pcache1Alloc.lto_priv.0 (sqlite3.c:53546)
by 0x5249A8B: UnknownInlinedFun (sqlite3.c:53675)
by 0x5249A8B: allocateTempSpace (sqlite3.c:70848)
by 0x52625A6: sqlite3VdbeExec.lto_priv.0 (sqlite3.c:93857)
by 0x525CBEE: UnknownInlinedFun (sqlite3.c:87995)
by 0x525CBEE: UnknownInlinedFun (sqlite3.c:88056)
by 0x525CBEE: sqlite3_step (sqlite3.c:88045)
by 0x529B324: sqlite3_exec (sqlite3.c:131002)
by 0x48FD558: purple_sqlite3_run_migration (purplesqlite3.c:37)
by 0x48FDBB4: purple_sqlite3_run_migrations_from_resources (purplesqlite3.c:195)
by 0x48FDED9: purple_sqlite_history_adapter_run_migrations (purplesqlitehistoryadapter.c:69)
by 0x48FE7F0: purple_sqlite_history_adapter_activate (purplesqlitehistoryadapter.c:287)
by 0x48DB656: purple_history_adapter_activate (purplehistoryadapter.c:181)
by 0x48DC9BC: purple_history_manager_set_active (purplehistorymanager.c:308)
by 0x402BA8: test_ui_init_history (test_ui.c:132)
by 0x402C80: test_ui_purple_init (test_ui.c:167)
by 0x4027BB: main (test_contact.c:88)
4,368 bytes in 1 blocks are possibly lost in loss record 3,453 of 3,457
at 0x484386F: malloc (vg_replace_malloc.c:393)
by 0x5235B67: sqlite3MemMalloc.lto_priv.0 (sqlite3.c:25493)
by 0x5232797: UnknownInlinedFun (sqlite3.c:29181)
by 0x5232797: UnknownInlinedFun (sqlite3.c:29227)
by 0x5232797: sqlite3Malloc.lto_priv.0 (sqlite3.c:29221)
by 0x523BD8B: pcache1Alloc.lto_priv.0 (sqlite3.c:53546)
by 0x5240077: UnknownInlinedFun (sqlite3.c:53634)
by 0x5240077: pcache1FetchStage2 (sqlite3.c:54104)
by 0x5243E9C: UnknownInlinedFun (sqlite3.c:52671)
by 0x5243E9C: getPageNormal.lto_priv.0 (sqlite3.c:60628)
by 0x524A510: UnknownInlinedFun (sqlite3.c:60805)
by 0x524A510: btreeGetPage.lto_priv.0 (sqlite3.c:70289)
by 0x524C2F6: UnknownInlinedFun (sqlite3.c:71257)
by 0x524C2F6: sqlite3BtreeBeginTrans.lto_priv.0 (sqlite3.c:71647)
by 0x5266B3A: sqlite3VdbeExec.lto_priv.0 (sqlite3.c:93532)
by 0x525CBEE: UnknownInlinedFun (sqlite3.c:87995)
by 0x525CBEE: UnknownInlinedFun (sqlite3.c:88056)
by 0x525CBEE: sqlite3_step (sqlite3.c:88045)
by 0x48FD715: purple_sqlite3_get_schema_version (purplesqlite3.c:79)
by 0x48FD9DD: purple_sqlite3_run_migrations_from_resources (purplesqlite3.c:146)
by 0x48FDED9: purple_sqlite_history_adapter_run_migrations (purplesqlitehistoryadapter.c:69)
by 0x48FE7F0: purple_sqlite_history_adapter_activate (purplesqlitehistoryadapter.c:287)
by 0x48DB656: purple_history_adapter_activate (purplehistoryadapter.c:181)
by 0x48DC9BC: purple_history_manager_set_active (purplehistorymanager.c:308)
by 0x402BA8: test_ui_init_history (test_ui.c:132)
by 0x402C80: test_ui_purple_init (test_ui.c:167)
by 0x4027BB: main (test_contact.c:88)
4,368 bytes in 1 blocks are possibly lost in loss record 3,454 of 3,457
at 0x484386F: malloc (vg_replace_malloc.c:393)
by 0x5235B67: sqlite3MemMalloc.lto_priv.0 (sqlite3.c:25493)
by 0x5232797: UnknownInlinedFun (sqlite3.c:29181)
by 0x5232797: UnknownInlinedFun (sqlite3.c:29227)
by 0x5232797: sqlite3Malloc.lto_priv.0 (sqlite3.c:29221)
by 0x523BD8B: pcache1Alloc.lto_priv.0 (sqlite3.c:53546)
by 0x5240077: UnknownInlinedFun (sqlite3.c:53634)
by 0x5240077: pcache1FetchStage2 (sqlite3.c:54104)
by 0x5243E9C: UnknownInlinedFun (sqlite3.c:52671)
by 0x5243E9C: getPageNormal.lto_priv.0 (sqlite3.c:60628)
by 0x52499BC: UnknownInlinedFun (sqlite3.c:60805)
by 0x52499BC: UnknownInlinedFun (sqlite3.c:70289)
by 0x52499BC: btreeGetUnusedPage (sqlite3.c:70432)
by 0x524F504: allocateBtreePage.lto_priv.0 (sqlite3.c:74604)
by 0x5256209: btreeCreateTable.lto_priv.0 (sqlite3.c:77830)
by 0x5265EB2: UnknownInlinedFun (sqlite3.c:77849)
by 0x5265EB2: sqlite3VdbeExec.lto_priv.0 (sqlite3.c:96382)
by 0x525CBEE: UnknownInlinedFun (sqlite3.c:87995)
by 0x525CBEE: UnknownInlinedFun (sqlite3.c:88056)
by 0x525CBEE: sqlite3_step (sqlite3.c:88045)
by 0x529B324: sqlite3_exec (sqlite3.c:131002)
by 0x48FD558: purple_sqlite3_run_migration (purplesqlite3.c:37)
by 0x48FDBB4: purple_sqlite3_run_migrations_from_resources (purplesqlite3.c:195)
by 0x48FDED9: purple_sqlite_history_adapter_run_migrations (purplesqlitehistoryadapter.c:69)
by 0x48FE7F0: purple_sqlite_history_adapter_activate (purplesqlitehistoryadapter.c:287)
by 0x48DB656: purple_history_adapter_activate (purplehistoryadapter.c:181)
by 0x48DC9BC: purple_history_manager_set_active (purplehistorymanager.c:308)
by 0x402BA8: test_ui_init_history (test_ui.c:132)
by 0x402C80: test_ui_purple_init (test_ui.c:167)
by 0x4027BB: main (test_contact.c:88)
```
Testing Done:
Ran tests in valgrind, and all above leaks were gone except for noted `protocol_xfer` issues, and a bunch of leaks of the `PurpleBuddy`-`PurpleContact` compatibility bindings, which will go away in their entirety eventually.
Reviewed at https://reviews.imfreedom.org/r/2385/
|
20147
66f05a854eee
applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents:
19859
diff
changeset
|
1 | /* pidgin |
| 4359 | 2 | * |
| 15572 | 3 | * Pidgin is the legal property of its developers, whose names are too numerous |
| 8046 | 4 | * to list here. Please refer to the COPYRIGHT file distributed with this |
| 5 | * source distribution. | |
|
7326
599c9e8c9da4
[gaim-migrate @ 7912]
Nathan Fredrickson <nathan@silverorange.com>
parents:
7295
diff
changeset
|
6 | * |
| 4359 | 7 | * This program is free software; you can redistribute it and/or modify |
| 8 | * it under the terms of the GNU General Public License as published by | |
| 9 | * the Free Software Foundation; either version 2 of the License, or | |
| 10 | * (at your option) any later version. | |
| 11 | * | |
| 12 | * This program is distributed in the hope that it will be useful, | |
| 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 15 | * GNU General Public License for more details. | |
| 16 | * | |
| 17 | * You should have received a copy of the GNU General Public License | |
| 18 | * along with this program; if not, write to the Free Software | |
|
19859
71d37b57eff2
The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
19721
diff
changeset
|
19 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
| 4359 | 20 | */ |
|
35487
494f09f7f331
Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents:
35486
diff
changeset
|
21 | |
|
40502
875489636847
pidgin.h phase3: create pidgin.h and force its usage
Gary Kramlich <grim@reaperworld.com>
parents:
40496
diff
changeset
|
22 | #if !defined(PIDGIN_GLOBAL_HEADER_INSIDE) && !defined(PIDGIN_COMPILATION) |
|
875489636847
pidgin.h phase3: create pidgin.h and force its usage
Gary Kramlich <grim@reaperworld.com>
parents:
40496
diff
changeset
|
23 | # error "only <pidgin.h> may be included directly" |
|
875489636847
pidgin.h phase3: create pidgin.h and force its usage
Gary Kramlich <grim@reaperworld.com>
parents:
40496
diff
changeset
|
24 | #endif |
|
875489636847
pidgin.h phase3: create pidgin.h and force its usage
Gary Kramlich <grim@reaperworld.com>
parents:
40496
diff
changeset
|
25 | |
|
35487
494f09f7f331
Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents:
35486
diff
changeset
|
26 | #ifndef _PIDGIN_CONVERSATION_H_ |
|
494f09f7f331
Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents:
35486
diff
changeset
|
27 | #define _PIDGIN_CONVERSATION_H_ |
|
35451
206524351826
Add sections for finch and re-arrange its doc index
Ankit Vani <a@nevitus.org>
parents:
35415
diff
changeset
|
28 | |
|
41867
5375c1d58c50
Create PurpleUi that merges PurpleCoreUiOps and PurpleUiInfo
Gary Kramlich <grim@reaperworld.com>
parents:
41611
diff
changeset
|
29 | #include <gtk/gtk.h> |
|
5375c1d58c50
Create PurpleUi that merges PurpleCoreUiOps and PurpleUiInfo
Gary Kramlich <grim@reaperworld.com>
parents:
41611
diff
changeset
|
30 | |
|
15562
8c8249fe5e3c
gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
31 | typedef struct _PidginConversation PidginConversation; |
|
9709
2e73f176cc80
[gaim-migrate @ 10570]
Mark Doliner <markdoliner@pidgin.im>
parents:
9687
diff
changeset
|
32 | |
|
15562
8c8249fe5e3c
gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
33 | #define PIDGIN_CONVERSATION(conv) \ |
|
40744
271b8dac2b0d
Remove ui_data from PurpleConversation and move finch and pidgin to g_object_[gs]et_data.
Gary Kramlich <grim@reaperworld.com>
parents:
40713
diff
changeset
|
34 | ((PidginConversation *)g_object_get_data(G_OBJECT(conv), "pidgin")) |
|
10008
1de3454a0dca
[gaim-migrate @ 10925]
Mark Doliner <markdoliner@pidgin.im>
parents:
9885
diff
changeset
|
35 | |
|
15692
ecda27df58b9
Some more pidgininfication
Daniel Atallah <datallah@pidgin.im>
parents:
15578
diff
changeset
|
36 | #define PIDGIN_IS_PIDGIN_CONVERSATION(conv) \ |
| 15884 | 37 | (purple_conversation_get_ui_ops(conv) == \ |
|
15562
8c8249fe5e3c
gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
38 | pidgin_conversations_get_conv_ui_ops()) |
|
10008
1de3454a0dca
[gaim-migrate @ 10925]
Mark Doliner <markdoliner@pidgin.im>
parents:
9885
diff
changeset
|
39 | |
|
40360
e21f3bbcc2a5
Update all of the pidgin code to include purple.h
Gary Kramlich <grim@reaperworld.com>
parents:
39705
diff
changeset
|
40 | #include <purple.h> |
|
e21f3bbcc2a5
Update all of the pidgin code to include purple.h
Gary Kramlich <grim@reaperworld.com>
parents:
39705
diff
changeset
|
41 | |
| 4359 | 42 | /************************************************************************** |
| 35472 | 43 | * Structures |
| 4359 | 44 | **************************************************************************/ |
| 45 | ||
| 46 | /** | |
|
35415
ba28be1a7611
Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents:
35393
diff
changeset
|
47 | * PidginConversation: |
|
ba28be1a7611
Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents:
35393
diff
changeset
|
48 | * |
|
41087
4fc5b0ddf55e
Remove the + from GTK
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
41086
diff
changeset
|
49 | * A GTK conversation pane. |
| 4359 | 50 | */ |
|
15562
8c8249fe5e3c
gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
51 | struct _PidginConversation |
| 4359 | 52 | { |
| 15884 | 53 | PurpleConversation *active_conv; |
| 10810 | 54 | GList *convs; |
| 11581 | 55 | |
| 4359 | 56 | GtkWidget *tab_cont; |
| 57 | ||
|
41611
518ed33dc53a
Use the new TalkatuAutoScroller adjustment on the converation history.
Gary Kramlich <grim@reaperworld.com>
parents:
41378
diff
changeset
|
58 | GtkAdjustment *vadjustment; |
|
39702
8102041c0288
Replace gtkconv->webview with a TalkatuHistory
Gary Kramlich <grim@reaperworld.com>
parents:
39688
diff
changeset
|
59 | GtkWidget *history; |
|
39681
f4ebcc715447
Basic message sending works with talkatu now
Gary Kramlich <grim@reaperworld.com>
parents:
39679
diff
changeset
|
60 | |
|
f4ebcc715447
Basic message sending works with talkatu now
Gary Kramlich <grim@reaperworld.com>
parents:
39679
diff
changeset
|
61 | GtkWidget *editor; |
| 4359 | 62 | GtkWidget *entry; |
|
15692
ecda27df58b9
Some more pidgininfication
Daniel Atallah <datallah@pidgin.im>
parents:
15578
diff
changeset
|
63 | |
|
18253
e25dd002e0be
Start work on blist pane in conversation. Looks like: http://pidgin.im/~seanegan/infopane.png Certainly much to be done yet.
Sean Egan <seanegan@pidgin.im>
parents:
16254
diff
changeset
|
64 | GtkWidget *infopane; |
| 4359 | 65 | }; |
| 66 | ||
|
32790
b95c7c504118
Add G_BEGIN/END_DECLS to Pidgin public headers, most of which did
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
32604
diff
changeset
|
67 | G_BEGIN_DECLS |
|
b95c7c504118
Add G_BEGIN/END_DECLS to Pidgin public headers, most of which did
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
32604
diff
changeset
|
68 | |
| 4359 | 69 | /************************************************************************** |
|
41087
4fc5b0ddf55e
Remove the + from GTK
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
41086
diff
changeset
|
70 | * GTK Conversation API |
| 4359 | 71 | **************************************************************************/ |
|
5673
47f654fb5134
[gaim-migrate @ 6091]
Christian Hammond <chipx86@chipx86.com>
parents:
5167
diff
changeset
|
72 | |
|
47f654fb5134
[gaim-migrate @ 6091]
Christian Hammond <chipx86@chipx86.com>
parents:
5167
diff
changeset
|
73 | /** |
|
35415
ba28be1a7611
Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents:
35393
diff
changeset
|
74 | * pidgin_conversations_get_conv_ui_ops: |
|
ba28be1a7611
Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents:
35393
diff
changeset
|
75 | * |
|
41087
4fc5b0ddf55e
Remove the + from GTK
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
41086
diff
changeset
|
76 | * Returns the UI operations structure for GTK conversations. |
| 4359 | 77 | * |
|
41087
4fc5b0ddf55e
Remove the + from GTK
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
41086
diff
changeset
|
78 | * Returns: The GTK conversation operations structure. |
| 4359 | 79 | */ |
| 15884 | 80 | PurpleConversationUiOps *pidgin_conversations_get_conv_ui_ops(void); |
| 4359 | 81 | |
| 82 | /** | |
|
35415
ba28be1a7611
Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents:
35393
diff
changeset
|
83 | * pidgin_conv_switch_active_conversation: |
|
ba28be1a7611
Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents:
35393
diff
changeset
|
84 | * @conv: The conversation |
|
11911
797cf405943c
[gaim-migrate @ 14202]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
11690
diff
changeset
|
85 | * |
|
35415
ba28be1a7611
Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents:
35393
diff
changeset
|
86 | * Sets the active conversation within a GTK-conversation. |
|
11911
797cf405943c
[gaim-migrate @ 14202]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
11690
diff
changeset
|
87 | */ |
| 15884 | 88 | void pidgin_conv_switch_active_conversation(PurpleConversation *conv); |
|
11911
797cf405943c
[gaim-migrate @ 14202]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
11690
diff
changeset
|
89 | |
|
797cf405943c
[gaim-migrate @ 14202]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
11690
diff
changeset
|
90 | /** |
|
35415
ba28be1a7611
Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents:
35393
diff
changeset
|
91 | * pidgin_conv_attach_to_conversation: |
|
ba28be1a7611
Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents:
35393
diff
changeset
|
92 | * @conv: The conversation. |
|
19721
4aea7d4bd205
Document the function to reattach conv-ui.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19598
diff
changeset
|
93 | * |
|
35415
ba28be1a7611
Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents:
35393
diff
changeset
|
94 | * Reattach Pidgin UI to a conversation. |
|
19721
4aea7d4bd205
Document the function to reattach conv-ui.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19598
diff
changeset
|
95 | * |
|
41086
631e6cba8635
Fix typos in Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
40958
diff
changeset
|
96 | * Returns: Whether Pidgin UI was successfully attached. |
|
19721
4aea7d4bd205
Document the function to reattach conv-ui.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19598
diff
changeset
|
97 | */ |
|
19594
339d370c27f0
API to reattach a conversation to gtk UI. Use the new
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
18277
diff
changeset
|
98 | gboolean pidgin_conv_attach_to_conversation(PurpleConversation *conv); |
|
339d370c27f0
API to reattach a conversation to gtk UI. Use the new
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
18277
diff
changeset
|
99 | |
| 8582 | 100 | /**************************************************************************/ |
|
41087
4fc5b0ddf55e
Remove the + from GTK
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
41086
diff
changeset
|
101 | /* GTK Conversations Subsystem */ |
| 8582 | 102 | /**************************************************************************/ |
| 103 | ||
| 104 | /** | |
|
35415
ba28be1a7611
Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents:
35393
diff
changeset
|
105 | * pidgin_conversations_get_handle: |
|
ba28be1a7611
Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents:
35393
diff
changeset
|
106 | * |
| 8582 | 107 | * Returns the gtk conversations subsystem handle. |
| 108 | * | |
|
35393
00f876b129bc
Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents:
35117
diff
changeset
|
109 | * Returns: The conversations subsystem handle. |
| 8582 | 110 | */ |
|
15562
8c8249fe5e3c
gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
111 | void *pidgin_conversations_get_handle(void); |
| 8582 | 112 | |
| 113 | /** | |
|
35415
ba28be1a7611
Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents:
35393
diff
changeset
|
114 | * pidgin_conversations_init: |
|
ba28be1a7611
Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents:
35393
diff
changeset
|
115 | * |
|
41087
4fc5b0ddf55e
Remove the + from GTK
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
41086
diff
changeset
|
116 | * Initializes the GTK conversations subsystem. |
| 8582 | 117 | */ |
|
15562
8c8249fe5e3c
gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
118 | void pidgin_conversations_init(void); |
| 8582 | 119 | |
| 120 | /** | |
|
35415
ba28be1a7611
Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents:
35393
diff
changeset
|
121 | * pidgin_conversations_uninit: |
|
ba28be1a7611
Convert docs from doxygen to gtk-doc format for gtkaccount to gtkconvwin
Ankit Vani <a@nevitus.org>
parents:
35393
diff
changeset
|
122 | * |
|
41087
4fc5b0ddf55e
Remove the + from GTK
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
41086
diff
changeset
|
123 | * Uninitialized the GTK conversation subsystem. |
| 8582 | 124 | */ |
|
15562
8c8249fe5e3c
gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
125 | void pidgin_conversations_uninit(void); |
| 8582 | 126 | |
|
41184
05b5c210352b
Move conversation management from gtkconv.c to PidginConversationWindow.
Gary Kramlich <grim@reaperworld.com>
parents:
41124
diff
changeset
|
127 | void pidgin_conversation_detach(PurpleConversation *conv); |
|
05b5c210352b
Move conversation management from gtkconv.c to PidginConversationWindow.
Gary Kramlich <grim@reaperworld.com>
parents:
41124
diff
changeset
|
128 | |
|
32790
b95c7c504118
Add G_BEGIN/END_DECLS to Pidgin public headers, most of which did
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
32604
diff
changeset
|
129 | G_END_DECLS |
|
b95c7c504118
Add G_BEGIN/END_DECLS to Pidgin public headers, most of which did
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
32604
diff
changeset
|
130 | |
| 15563 | 131 | #endif /* _PIDGIN_CONVERSATION_H_ */ |