return ret;
}
+/* is seq. number of 'es' before WMS higher then 'js' */
static int after_enter_wm(const char *es,const char *js)
{
- return component_seqcode(es,EDG_WLL_SOURCE_NETWORK_SERVER) >
- component_seqcode(js,EDG_WLL_SOURCE_NETWORK_SERVER);
+ return ((component_seqcode(es,EDG_WLL_SOURCE_NETWORK_SERVER) >
+ component_seqcode(js,EDG_WLL_SOURCE_NETWORK_SERVER))
+ ||
+ (component_seqcode(es,EDG_WLL_SOURCE_USER_INTERFACE) >
+ component_seqcode(js,EDG_WLL_SOURCE_USER_INTERFACE)));
}
res = RET_LATE;
}
-/* new event coming from NS => forget about any resubmission loops */
+/* new event coming from NS or UI => forget about any resubmission loops */
if (e->type != EDG_WLL_EVENT_CANCEL &&
js->last_seqcode &&
after_enter_wm(e->any.seqcode,js->last_seqcode))