DbgPrint("Default PD destroyed event handler: %d\n", ret);
}
-static inline struct cb_info *create_cb_info(ret_cb_t cb, void *data)
+static inline __attribute__((always_inline)) struct cb_info *create_cb_info(ret_cb_t cb, void *data)
{
struct cb_info *info;
}
if (handler->lb.auto_launch)
- if (aul_launch_app(handler->pkgname, NULL) < 0)
- ErrPrint("Failed to launch app %s\n", handler->pkgname);
+ if (aul_launch_app(handler->lb.auto_launch, NULL) < 0)
+ ErrPrint("Failed to launch app %s\n", handler->lb.auto_launch);
timestamp = util_timestamp();
packet = packet_create_noack("clicked", "sssddd", handler->pkgname, handler->id, "clicked", timestamp, x, y);
handler->lb.size_list = size_list;
}
-void lb_set_auto_launch(struct livebox *handler, int auto_launch)
+void lb_set_auto_launch(struct livebox *handler, const char *auto_launch)
{
- handler->lb.auto_launch = auto_launch;
+ if (!strlen(auto_launch))
+ return;
+
+ handler->lb.auto_launch = strdup(auto_launch);
+ if (!handler->lb.auto_launch)
+ ErrPrint("Heap: %s\n", strerror(errno));
}
void lb_set_priority(struct livebox *handler, double priority)
free(handler->id);
free(handler->pkgname);
free(handler->filename);
+ free(handler->lb.auto_launch);
if (handler->lb.data.fb) {
fb_destroy(handler->lb.data.fb);