Fix false ***buffer overflow*** detection
[src/app-framework-binder.git] / src / afb-evt.c
index 05d9096..a75cbbc 100644 (file)
@@ -86,7 +86,7 @@ struct afb_evtid {
        int id;
 
        /* fullname of the event */
-       char fullname[1];
+       char fullname[];
 };
 
 /*
@@ -296,7 +296,7 @@ struct afb_evtid *afb_evt_evtid_create(const char *fullname)
 
        /* allocates the event */
        len = strlen(fullname);
-       evtid = malloc(len + sizeof * evtid);
+       evtid = malloc(len + 1 + sizeof * evtid);
        if (evtid == NULL)
                goto error;
 
@@ -698,6 +698,7 @@ int afb_evt_event_x2_unhooked_push(struct afb_event_x2 *eventid, struct json_obj
        return 0;
 }
 
+#if WITH_LEGACY_BINDING_V1 || WITH_LEGACY_BINDING_V2
 struct afb_event_x1 afb_evt_event_from_evtid(struct afb_evtid *evtid)
 {
        return evtid
@@ -708,6 +709,7 @@ struct afb_event_x1 afb_evt_event_from_evtid(struct afb_evtid *evtid)
 #endif
                : (struct afb_event_x1){ .itf = NULL, .closure = NULL };
 }
+#endif
 
 void afb_evt_event_x2_unref(struct afb_event_x2 *eventid)
 {