Enlightenment CVS committal

Author  : raster
Project : e17
Module  : apps/e

Dir     : e17/apps/e/src/bin


Modified Files:
        e_fm.c 


Log Message:


lots of prointf debugging - hunting donw this dnd icon bug

===================================================================
RCS file: /cvs/e/e17/apps/e/src/bin/e_fm.c,v
retrieving revision 1.167
retrieving revision 1.168
diff -u -3 -r1.167 -r1.168
--- e_fm.c      13 May 2007 23:23:55 -0000      1.167
+++ e_fm.c      14 May 2007 15:37:11 -0000      1.168
@@ -2011,10 +2011,15 @@
                         sd->icons = evas_list_append_relative(sd->icons, ic, 
ic2);
                       else
                         sd->icons = evas_list_prepend_relative(sd->icons, ic, 
ic2);
+                      printf("ICADD0 %p %s\n", ic, ic->info.file);
                       break;
                    }
               }
-            if (!l) sd->icons = evas_list_append(sd->icons, ic);
+            if (!l)
+              {
+                 sd->icons = evas_list_append(sd->icons, ic);
+                 printf("ICADD1 %p %s\n", ic, ic->info.file);
+              }
          }
        sd->tmp.last_insert = NULL;
        sd->iconlist_changed = 1;
@@ -2036,8 +2041,13 @@
        if (!strcmp(ic->info.file, file))
          {
             sd->icons = evas_list_remove_list(sd->icons, l);
+            printf("ICREM0 %p %s\n", ic, ic->info.file);
             if (ic->region)
-              ic->region->list = evas_list_remove(ic->region->list, ic);
+              {
+                 ic->region->list = evas_list_remove(ic->region->list, ic);
+                 ic->region = NULL;
+                 printf("  REM REG\n");
+              }
             _e_fm2_icon_free(ic);
             return;
          }
@@ -2061,6 +2071,7 @@
        if (sd->resize_job) ecore_job_del(sd->resize_job);
        sd->resize_job = ecore_job_add(_e_fm2_cb_resize_job, obj);
        evas_object_smart_callback_call(sd->obj, "changed", NULL);
+       sd->tmp.last_insert = NULL;
        return;
      }
 //   double tt = ecore_time_get();
@@ -2127,15 +2138,23 @@
                  ic2 = l->data;
                  if (_e_fm2_cb_icon_sort(ic, ic2) < 0)
                    {
-                      sd->icons = evas_list_prepend_relative_list(sd->icons, 
ic, l);
+                      if (l == sd->icons)
+                        sd->icons = evas_list_prepend(sd->icons, ic);
+                      else
+                        sd->icons = evas_list_prepend_relative_list(sd->icons, 
+                                                                    ic, l);
+                      printf("ICADD2 %p %s @ %p (->%p <-%p)\n", ic, 
ic->info.file,
+                             l, l->next, l->prev);
                       sd->tmp.last_insert = l;
                       break;
                    }
               }
+            printf("BORKED\n");
          }
        if (!l)
          {
             sd->icons = evas_list_append(sd->icons, ic);
+            printf("ICADD3 %p %s\n", ic, ic->info.file);
             sd->tmp.last_insert = evas_list_last(sd->icons);
          }
        added++;
@@ -2541,6 +2560,7 @@
    /* free all icons */
    while (sd->icons)
      {
+       printf("ICREM2 %p %s\n", sd->icons->data, ((E_Fm2_Icon 
*)sd->icons->data)->info.file);
        _e_fm2_icon_free(sd->icons->data);
         sd->icons = evas_list_remove_list(sd->icons, sd->icons);
      }
@@ -2667,7 +2687,7 @@
        free(ic);
        return NULL;
      }
-   printf("NEW IC %p %s\n", ic, ic->info.file);
+   printf("NEW IC %p %p %s %s\n", ic, ic->sd, ic->info.file, ic->sd->realpath);
    return ic;
 }
 
@@ -2887,7 +2907,7 @@
 static void
 _e_fm2_icon_free(E_Fm2_Icon *ic)
 {
-   printf("DEL IC %p %s\n", ic, ic->info.file);
+   printf("DEL IC %p %p %s %s\n", ic, ic->sd, ic->info.file, ic->sd->realpath);
    /* free icon, object data etc. etc. */
    if (ic->sd->drop_icon == ic)
      {
@@ -5909,6 +5929,7 @@
        (sd->listing) || (sd->scan_timer)) return;
    sd->live.idler = ecore_idler_add(_e_fm2_cb_live_idler, obj);
    sd->live.timer = ecore_timer_add(0.2, _e_fm2_cb_live_timer, obj);
+   sd->tmp.last_insert = NULL;
 }
 
 static void
@@ -5938,6 +5959,7 @@
        ecore_timer_del(sd->live.timer);
        sd->live.timer = NULL;
      }
+   sd->tmp.last_insert = NULL;
 }
 
 static void



-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to