Re: Offline mode
- From: Philip Van Hoof <spam pvanhoof be>
- To: vvaradhan novell com
- Cc: tinymail-devel-list gnome org
- Subject: Re: Offline mode
- Date: Tue, 13 Jun 2006 23:32:00 +0200
On Tue, 2006-06-13 at 23:29 +0200, Philip Van Hoof wrote:
> It still doesn't work. But this is a "after looking at
> evolution/mail/*.c" improved version.
Ok nevermind, It works now. I had to set_online the session first.
Committing this to SVN of tinymail
> On Tue, 2006-06-13 at 16:41 +0200, Philip Van Hoof wrote:
> > Is the disco an instance that is created once (and reused)? Or, when
> > will this method happen?
> >
> >
> > static void
> > disco_construct (CamelService *service, CamelSession *session,
> > CamelProvider *provider, CamelURL *url,
> > CamelException *ex)
> > {
> > CamelDiscoStore *disco = CAMEL_DISCO_STORE (service);
> >
> > CAMEL_SERVICE_CLASS (parent_class)->construct (service, session,
> > provider, url, ex);
> > if (camel_exception_is_set (ex))
> > return;
> > disco->status = camel_session_is_online (session) ?
> > CAMEL_DISCO_STORE_ONLINE : CAMEL_DISCO_STORE_OFFLINE;
> > }
> >
> >
> > I create my folder the first time when the session is offline. I
> > recreate the same folder when the session becomes online. However, if
> > the disco is reused .. this constructor will not happen and therefore
> > will the disco stay offline (disco->status iif).
> >
> > Correct?
> >
> > On Tue, 2006-06-13 at 16:20 +0200, Philip Van Hoof wrote:
> > > (gdb) break imap_get_message
> > > Breakpoint 5 at 0xb57332db: file camel-imap-folder.c, line 2038.
> > > (gdb) cont
> > > Continuing.
> > > [New Thread -1259193424 (LWP 13222)]
> > > [Thread -1259193424 (zombie) exited]
> > >
> > > Breakpoint 5, imap_get_message (folder=0x8350e68, uid=0x8396588 "2790",
> > > ex=0x83333b8) at camel-imap-folder.c:2038
> > > 2038 CamelImapFolder *imap_folder = CAMEL_IMAP_FOLDER
> > > (folder);
> > > (gdb) next
> > > 2039 CamelImapStore *store = CAMEL_IMAP_STORE
> > > (folder->parent_store);
> > > (gdb)
> > > 2045 mi = (CamelImapMessageInfo *)camel_folder_summary_uid
> > > (folder->summary, uid);
> > > (gdb) print store
> > > $1 = (CamelImapStore *) 0x8334150
> > > (gdb) next
> > > 2046 if (mi == NULL) {
> > > (gdb) print *store
> > > $2 = {parent_object = {parent_object = {parent_object = {parent_object =
> > > {klass = 0x8333ce8, magic = 2007188717, hooks = 0x83354b0,
> > > ref_count = 6, flags = 0, next = 0x0, prev = 0x0}, priv =
> > > 0x83346b8, session = 0x831cef0, provider = 0xb57429a0,
> > > status = CAMEL_SERVICE_CONNECTED, connect_op = 0x0, url =
> > > 0x83347e0}, priv = 0x8336200, folders = 0x8335270, flags = 11,
> > > mode = 3}, status = CAMEL_DISCO_STORE_OFFLINE, diary = 0x8334970},
> > > istream = 0x0, ostream = 0x0, summary = 0x8334ef0,
> > > connected = 1, preauthed = 0, braindamaged = 0, renaming = 0,
> > > nocustomappend = 0, tag_prefix = 66 'B', command = 0,
> > > current_folder = 0x0, server_level = IMAP_LEVEL_IMAP4REV1,
> > > capabilities = 350, parameters = 0, namespace = 0x8336738 "INBOX",
> > > dir_sep = 46 '.', base_url = 0x8334838
> > > "imap://spampvanhoofbe mail pvanhoof be",
> > > storage_path = 0x8336810
> > > "/home/pvanhoof/.tinymail/mail/imap/spampvanhoofbe mail pvanhoof be",
> > > authtypes = 0x0, refresh_stamp = 0}
> > > (gdb) print *session
> > > No symbol "session" in current context.
> > > (gdb) print *store->session
> > > There is no member named session.
> > > (gdb) print store->session
> > > There is no member named session.
> > > (gdb) print store.session
> > > There is no member named session.
> > > (gdb) print *0x831cef0
> > > $3 = 137481768
> > > (gdb) print *(CamelSession*)0x831cef0
> > > $4 = {parent_object = {klass = 0x831ce28, magic = 2007188717, hooks =
> > > 0x0, ref_count = 3, flags = 0, next = 0x0, prev = 0x0},
> > > priv = 0x831d120, storage_path = 0x8332ae8
> > > "/home/pvanhoof/.tinymail/mail", junk_plugin = 0x0, online = 1,
> > > check_junk = 0,
> > > network_state = 1}
> > > (gdb) print *store
> > > $5 = {parent_object = {parent_object = {parent_object = {parent_object =
> > > {klass = 0x8333ce8, magic = 2007188717, hooks = 0x83354b0,
> > > ref_count = 6, flags = 0, next = 0x0, prev = 0x0}, priv =
> > > 0x83346b8, session = 0x831cef0, provider = 0xb57429a0,
> > > status = CAMEL_SERVICE_CONNECTED, connect_op = 0x0, url =
> > > 0x83347e0}, priv = 0x8336200, folders = 0x8335270, flags = 11,
> > > mode = 3}, status = CAMEL_DISCO_STORE_OFFLINE, diary = 0x8334970},
> > > istream = 0x0, ostream = 0x0, summary = 0x8334ef0,
> > > connected = 1, preauthed = 0, braindamaged = 0, renaming = 0,
> > > nocustomappend = 0, tag_prefix = 66 'B', command = 0,
> > > current_folder = 0x0, server_level = IMAP_LEVEL_IMAP4REV1,
> > > capabilities = 350, parameters = 0, namespace = 0x8336738 "INBOX",
> > > dir_sep = 46 '.', base_url = 0x8334838
> > > "imap://spampvanhoofbe mail pvanhoof be",
> > > storage_path = 0x8336810
> > > "/home/pvanhoof/.tinymail/mail/imap/spampvanhoofbe mail pvanhoof be",
> > > authtypes = 0x0, refresh_stamp = 0}
> > > (gdb) print *(CamelSession*)0x831cef0
> > > $6 = {parent_object = {klass = 0x831ce28, magic = 2007188717, hooks =
> > > 0x0, ref_count = 3, flags = 0, next = 0x0, prev = 0x0},
> > > priv = 0x831d120, storage_path = 0x8332ae8
> > > "/home/pvanhoof/.tinymail/mail", junk_plugin = 0x0, online = 1,
> > > check_junk = 0,
> > > network_state = 1}
> > > (gdb) bt
> > > #0 imap_get_message (folder=0x8350e68, uid=0x8396588 "2790",
> > > ex=0x83333b8) at camel-imap-folder.c:2046
> > > #1 0xb6e0fa93 in camel_folder_get_message (folder=0x8350e68,
> > > uid=0x8396588 "2790", ex=0x8367b9c) at camel-folder.c:1070
> > > #2 0xb71bbd6b in tny_msg_folder_get_message (self=0x8083640,
> > > header=0x83bd460) at tny-msg-folder.c:661
> > > #3 0xb71d3da2 in tny_msg_folder_iface_get_message (self=0x8083640,
> > > header=0x8191a30) at tny-msg-folder-iface.c:196
> > > #4 0x0804c29e in on_header_view_tree_selection_changed
> > > (selection=0x8367b9c, user_data=0x8367b9c) at tny-summary-window.c:337
> > > #5 0xb730d423 in IA__g_cclosure_marshal_VOID__VOID (closure=0x82655f0,
> > > return_value=0x0, n_param_values=1, param_values=0xbf92f60c,
> > > invocation_hint=0xbf92f4fc, marshal_data=0x804c219) at gmarshal.c:77
> > > #6 0xb730179f in IA__g_closure_invoke (closure=0x82655f0,
> > > return_value=0x8367b9c, n_param_values=137788316,
> > > param_values=0x8367b9c,
> > > invocation_hint=0x8367b9c) at gclosure.c:490
> > > #7 0xb73102ea in signal_emit_unlocked_R (node=0x8267058, detail=0,
> > > instance=0x80d4060, emission_return=0x0,
> > > instance_and_params=0xbf92f60c) at gsignal.c:2438
> > > #8 0xb7311b19 in IA__g_signal_emit_valist (instance=0x80d4060,
> > > signal_id=203, detail=0, var_args=<value optimized out>)
> > > at gsignal.c:2197
> > > #9 0xb7311e89 in IA__g_signal_emit (instance=0x8367b9c,
> > > signal_id=137788316, detail=137788316) at gsignal.c:2241
> > > #10 0xb7860c57 in _gtk_tree_selection_internal_select_node ()
> > > from /usr/lib/libgtk-x11-2.0.so.0
> > > #11 0xb787307e in gtk_tree_view_scroll_to_cell ()
> > > from /usr/lib/libgtk-x11-2.0.so.0
> > > #12 0xb787b9ca in gtk_tree_view_set_model ()
> > > from /usr/lib/libgtk-x11-2.0.so.0
> > > #13 0xb77aa850 in _gtk_marshal_BOOLEAN__BOXED ()
> > > from /usr/lib/libgtk-x11-2.0.so.0
> > > #14 0xb730116f in g_type_class_meta_marshal (closure=0x80a93e0,
> > > return_value=0x8367b9c, n_param_values=137788316,
> > > param_values=0xbf92fc2c, invocation_hint=0x8367b9c,
> > > marshal_data=0x8367b9c) at gclosure.c:567
> > > #15 0xb730179f in IA__g_closure_invoke (closure=0x80a93e0,
> > > return_value=0x8367b9c, n_param_values=137788316,
> > > param_values=0x8367b9c,
> > > invocation_hint=0x8367b9c) at gclosure.c:490
> > > #16 0xb73109ce in signal_emit_unlocked_R (node=0x80a9818, detail=0,
> > > instance=0x80c7b40, emission_return=0xbf92fdec,
> > > instance_and_params=0xbf92fc2c) at gsignal.c:2476
> > > #17 0xb7311886 in IA__g_signal_emit_valist (instance=0x80c7b40,
> > > signal_id=30, detail=0,
> > > var_args=0xbf92fe70 "\210�\222�(\0334\b {\f\b!�\210�@{\f\b�j\n\b")
> > > at gsignal.c:2207
> > > #18 0xb7311e89 in IA__g_signal_emit (instance=0x8367b9c,
> > > signal_id=137788316, detail=137788316) at gsignal.c:2241
> > > #19 0xb788cc4f in gtk_widget_activate ()
> > > from /usr/lib/libgtk-x11-2.0.so.0
> > > #20 0xb77a8fcd in gtk_propagate_event ()
> > > from /usr/lib/libgtk-x11-2.0.so.0
> > > #21 0xb77a93db in gtk_main_do_event () from /usr/lib/libgtk-x11-2.0.so.0
> > > #22 0xb764cddc in _gdk_events_queue () from /usr/lib/libgdk-x11-2.0.so.0
> > > #23 0xb71fa8c6 in IA__g_main_context_dispatch (context=0x80862c8) at
> > > gmain.c:1916
> > > #24 0xb71fd986 in g_main_context_iterate (context=0x80862c8, block=1,
> > > dispatch=1, self=0x804e008) at gmain.c:2547
> > > #25 0xb71fdca8 in IA__g_main_loop_run (loop=0x80e1448) at gmain.c:2751
> > > #26 0xb77a86d5 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
> > > #27 0x0804ad42 in main (argc=1, argv=0xbf930144) at tny-main.c:92
> > > (gdb)
> > --
> > Philip Van Hoof, software developer at x-tend
> > home: me at pvanhoof dot be
> > gnome: pvanhoof at gnome dot org
> > work: vanhoof at x-tend dot be
> > http://www.pvanhoof.be - http://www.x-tend.be
--
Philip Van Hoof, software developer at x-tend
home: me at pvanhoof dot be
gnome: pvanhoof at gnome dot org
work: vanhoof at x-tend dot be
http://www.pvanhoof.be - http://www.x-tend.be
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]