Re: [evolution-patches] patch of bug 51187 on bugzilla



commited  to trunk.

jack
Rodrigo Moya wrote:

On Wed, 2004-03-10 at 18:27 +0800, Alfred Peng wrote:

Dear rodrigo,
    I have a patch of bug 51187 on bugzilla.
My evolution version is uptodate, and cvs download from trunk on 2004-3-9.

    You can reproduce the problem following the steps:
       1.Create a  appointment in the calender today.
       2.setup up a alarm for this appointment.
       3.Drag and Drop this appointment to another day, before or after.
   result:
      evolution-alarm-notify crash

Stepping into the source code, I found that the main problem is in the file calendar/gui/alarm-notify/alarm-queue.c, function "query_objects_changed_cb". When returning from the function "e_cal_get_alarms_for_object", the variable "alarms" or "alarms->alarms"maybe NULL. And then, if we've added the component to the hash table before, we can get the corresponding "cqa" to the variable "uid". The program evolution-alarm-notify will be in trouble. In some conditions, the "alarms" is NULL, and trouble happened at the code "(sl = cqa->alarms->alarms; sl; sl = sl->next)"; In some other conditions, the "alarms->alarms" is NULL, and evolution-alarm-notify will crash in the function "remove_comp", the code "g_assert (cqa->queued_alarms != NULL)" will failed. So my opinion is to check the "alarms" and the "alarms->alarms" before proceeding, just as the patch shows. If one of the two variables is NULL, just remove the alarms. Otherwise, update it in the following steps. By the way, I don't understand the usage of the member variable "expecting_update" clearly.

   I'm looking for your answering.

looks ok to me, please commit.

cheers

_______________________________________________
Evolution-patches mailing list
Evolution-patches lists ximian com
http://lists.ximian.com/mailman/listinfo/evolution-patches





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