Re: [evolution-patches] fix for bug #43862



I dont think this patch is the right fix.

Yes, normally when a store is added it is in offline mode.  This is
normal.

When the store gets expanded (opened/connected), it should go online,
and then it either does a get_folders() or it just happens automagically
via new_folder events (i can't recall which).  I would guess that
something about adding a new account isn't working the same as it used
to work (it has always worked for me).

I dunno, i'll have a closer look this morning.

On Sat, 2003-05-31 at 06:46, Jeffrey Stedfast wrote:
> This only ever happens the first time you run Evolution and if you add
> an IMAP server as your first account.
> 
> The problem is that there is a race condition between the session going
> online, the stores going online, and the stores getting 'noted' causing
> a get_folderinfo
> 
> it seems that most of the time, the new imap account is in OFFLINE mode
> in mail_note_store() and so mail_get_folderinfo() never gets called for
> it.
> 
> The attached patch seems to fix it for me, but I'm not sure if it is the
> best solution or if it introduces other race conditions? (note that I
> now add a 'struct _store_info' pointer to 'struct _update_data', there
> may be a race caused by that - not really sure. Actually, hmm... looks
> like there definetely is.
> 
> what I've done is move the mail_set_offline() async function call out of
> mail-offline-handler.c:storage_go_online() and into mail_note_store()
> instead, only getting called if the DiscoStore is in offline mode while
> the CamelSession is in online mode.
> 
> This patch still needs work (ugh, introduces another race) but at least
> it documents what the problem in 43862...




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]