catch missing targets in STATE_SET programs, for example
authortsauerbeck <tsauerbeck>
Tue, 19 Oct 2004 17:31:18 +0000 (17:31 +0000)
committertsauerbeck <tsauerbeck@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Tue, 19 Oct 2004 17:31:18 +0000 (17:31 +0000)
SVN revision: 11913

legacy/edje/src/bin/edje_cc_out.c

index 2c56758..b3e82ad 100644 (file)
@@ -473,6 +473,27 @@ data_write(void)
               }
  */
          }
+
+       for (ll = pc->programs; ll; ll = ll->next)
+         {
+            Edje_Program *ep = ll->data;
+
+            switch (ep->action) {
+                 case EDJE_ACTION_TYPE_STATE_SET:
+                 case EDJE_ACTION_TYPE_ACTION_STOP:
+                 case EDJE_ACTION_TYPE_DRAG_VAL_SET:
+                 case EDJE_ACTION_TYPE_DRAG_VAL_STEP:
+                 case EDJE_ACTION_TYPE_DRAG_VAL_PAGE:
+                    if (!ep->targets) {
+                      fprintf(stderr, "%s: Error. Target missing in program %s\n",
+                            progname, ep->name);
+                      ABORT_WRITE(ef, file_out);
+                    }
+                    break;
+                 default:
+                    break;
+            }
+         }
      }
    for (l = edje_collections; l; l = l->next)
      {