Re: [Evolution-hackers] Evolution Has Regressed Considerably



On 10/27/2014 02:22 AM, Milan Crha wrote:
On Sat, 2014-10-25 at 06:09 +0100, Onyeibo Oku wrote:
The newest bizarre status is the "Unknown background operation".
What  is that?

Unknown is unknown, the operation didn't identify itself yet.
Backtrace matters here, but I'd guess this is related to server
address resolutions (it uses to be), thus also related to the above
bug.

I added the "Unknown background operation" as a hack to try and flush out tasks that were silently executing without a message being posted in the status bar. But sometimes even tasks that *do* push a status message only do so after some delay like waiting to acquire a mutex, and it's during that interim that you see the "Unknown background operation" message.

One way you might fix that (for 3.14) is to break the CamelSession API to have camel_session_submit_job() take an initial message up front:

    void camel_session_submit_job (CamelSession *session,
                                   const gchar *initial_message,
                                   CamelSessionCallback callback,
                                   gpointer user_data,
                                   GDestroyNotify notify)

Then you could push the initial message just after emitting the "job-started" signal in session_start_job_cb() and pop it just after the CamelSessionCallback function returns in session_do_job_cb().

That would eliminate the need for the "Unknown background operation" hack in Evolution because the Camel API would now *force* callers to provide a status message. It's a more direct solution for what I was trying to do with the hack.

Just a suggestion.

Matt



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