@yuneta/gobj-js 7.16.0 → 7.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6724,14 +6724,20 @@ var gobjJs = (function(exports) {
6724
6724
  gobj_send_event(gobj, iev_event, iev_kw, gobj);
6725
6725
  return 0;
6726
6726
  }
6727
- let gobj_service = gobj_find_service(iev_dst_service, true);
6728
- if (gobj_service) {
6729
- if (gobj_has_event(gobj_service, iev_event, event_flag_t.EVF_PUBLIC_EVENT)) gobj_send_event(gobj_service, iev_event, iev_kw, gobj);
6730
- else {
6727
+ if (!empty_string(iev_dst_service)) {
6728
+ let gobj_service = gobj_find_service(iev_dst_service, false);
6729
+ if (!gobj_service) {
6730
+ log_warning(`${gobj_short_name(gobj)}: event for a service that is gone, DROPPED: service '${iev_dst_service}', ev '${iev_event}'`);
6731
+ return 0;
6732
+ }
6733
+ if (!gobj_has_event(gobj_service, iev_event, event_flag_t.EVF_PUBLIC_EVENT)) {
6731
6734
  log_error(`${gobj_short_name(gobj)}: Service found but no event or not public, service '${gobj_short_name(gobj_service)}', ev '${iev_event}'`);
6732
6735
  return -1;
6733
6736
  }
6734
- } else if (gobj_is_pure_child(gobj)) gobj_send_event(gobj_parent(gobj), iev_event, iev_kw, gobj);
6737
+ gobj_send_event(gobj_service, iev_event, iev_kw, gobj);
6738
+ return 0;
6739
+ }
6740
+ if (gobj_is_pure_child(gobj)) gobj_send_event(gobj_parent(gobj), iev_event, iev_kw, gobj);
6735
6741
  else gobj_publish_event(gobj, iev_event, iev_kw);
6736
6742
  return 0;
6737
6743
  }