discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=c2c9c3ab721db560f67a90f21cb7e7e1a75c8c96

commit c2c9c3ab721db560f67a90f21cb7e7e1a75c8c96
Author: Mike Blumenkrantz <zm...@samsung.com>
Date:   Thu Dec 19 14:55:53 2013 -0500

    propagate parent tasks when creating work tasks from scan tasks
---
 src/bin/e_fm_op.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/src/bin/e_fm_op.c b/src/bin/e_fm_op.c
index 4768596..88b15d7 100644
--- a/src/bin/e_fm_op.c
+++ b/src/bin/e_fm_op.c
@@ -1467,6 +1467,8 @@ _e_fm_op_scan_atom(E_Fm_Op_Task *task)
 
    if (task->type == E_FM_OP_COPY)
      {
+        Eina_List *l;
+
         _e_fm_op_update_progress(NULL, 0, task->src.st.st_size);
 
         ctask = _e_fm_op_task_new();
@@ -1474,6 +1476,17 @@ _e_fm_op_scan_atom(E_Fm_Op_Task *task)
         memcpy(&(ctask->src.st), &(task->src.st), sizeof(struct stat));
         if (task->dst.name)
           ctask->dst.name = eina_stringshare_add(task->dst.name);
+        if (task->parent)
+          ctask->parent = task->parent;
+        else
+          {
+             EINA_LIST_FOREACH(_e_fm_op_scan_queue, l, rtask)
+               if (rtask->parent == task)
+                 rtask->parent = ctask;
+             EINA_LIST_FOREACH(_e_fm_op_work_queue, l, rtask)
+               if (rtask->parent == task)
+                 rtask->parent = ctask;
+          }
         ctask->type = E_FM_OP_COPY;
 
         _e_fm_op_work_queue = eina_list_append(_e_fm_op_work_queue, ctask);

-- 


Reply via email to