free((void *)compatibility);
}
-static void __ps_free_datacontrol(gpointer data)
+static void __ps_free_plugin_info(gpointer data)
{
- datacontrol_x *datacontrol = (datacontrol_x *)data;
- if (datacontrol == NULL)
+ plugin_x *plugin = (plugin_x *)data;
+ if (plugin == NULL)
return;
- if (datacontrol->providerid)
- free((void *)datacontrol->providerid);
- if (datacontrol->access)
- free((void *)datacontrol->access);
- if (datacontrol->type)
- free((void *)datacontrol->type);
- free((void *)datacontrol);
+ if (plugin->pkgid)
+ free((void *)plugin->pkgid);
+ if (plugin->appid)
+ free((void *)plugin->appid);
+ if (plugin->plugin_type)
+ free((void *)plugin->plugin_type);
+ if (plugin->plugin_name)
+ free((void *)plugin->plugin_name);
+ free((void *)plugin);
}
static void __ps_free_appcontrol(gpointer data)
/*Free Mime*/
if (appcontrol->mime)
free((void *)appcontrol->mime);
+ /*Free Visibility*/
+ if (appcontrol->visibility)
+ free((void *)appcontrol->visibility);
+ /*Free Id*/
+ if (appcontrol->id)
+ free((void *)appcontrol->id);
+ /*Free Privileges*/
+ if (appcontrol->privileges)
+ g_list_free_full(appcontrol->privileges, free);
free((void *)appcontrol);
}
free((void *)splashscreen);
}
-/* FIXME */
-static void __ps_free_support_size(gpointer data)
+static void __ps_free_privilege(gpointer data)
{
- support_size_x *support_size = (support_size_x *)data;
- if (support_size == NULL)
+ privilege_x *privilege = (privilege_x *)data;
+ if (privilege == NULL)
return;
- if (support_size->preview)
- free((void *)support_size->preview);
- if (support_size->size)
- free((void *)support_size->size);
- free((void *)support_size);
+ if (privilege->type)
+ free((void *)privilege->type);
+ if (privilege->value)
+ free((void *)privilege->value);
+ free((void *)privilege);
}
-static void __ps_free_privilege(gpointer data)
+static void __ps_free_appdefined_privilege(gpointer data)
{
- privilege_x *privilege = (privilege_x *)data;
+ appdefined_privilege_x *privilege = (appdefined_privilege_x *)data;
if (privilege == NULL)
return;
if (privilege->type)
free((void *)privilege->type);
if (privilege->value)
free((void *)privilege->value);
+ if (privilege->license)
+ free((void *)privilege->license);
free((void *)privilege);
}
+static void __ps_free_datacontrol(gpointer data)
+{
+ datacontrol_x *datacontrol = (datacontrol_x *)data;
+ if (datacontrol == NULL)
+ return;
+ if (datacontrol->providerid)
+ free((void *)datacontrol->providerid);
+ if (datacontrol->access)
+ free((void *)datacontrol->access);
+ if (datacontrol->type)
+ free((void *)datacontrol->type);
+ if (datacontrol->trusted)
+ free((void *)datacontrol->trusted);
+ if (datacontrol->privileges)
+ g_list_free_full(datacontrol->privileges, free);
+ free((void *)datacontrol);
+}
+
+static void __ps_free_dependency(gpointer data)
+{
+ dependency_x *dependency = (dependency_x *)data;
+ if (dependency == NULL)
+ return;
+ if (dependency->depends_on)
+ free((void *)dependency->depends_on);
+ if (dependency->type)
+ free((void *)dependency->type);
+ if (dependency->required_version)
+ free((void *)dependency->required_version);
+ free((void *)dependency);
+}
+
static void __ps_free_application(gpointer data)
{
application_x *application = (application_x *)data;
free((void *)application->autorestart);
if (application->taskmanage)
free((void *)application->taskmanage);
- if (application->enabled)
- free((void *)application->enabled);
if (application->categories)
free((void *)application->categories);
if (application->extraid)
free((void *)application->package_installed_time);
if (application->support_mode)
free((void *)application->support_mode);
+ if (application->setup_appid)
+ free((void *)application->setup_appid);
/*Free Label*/
g_list_free_full(application->label, __ps_free_label);
g_list_free_full(application->background_category, free);
/*Free SplashScreen*/
g_list_free_full(application->splashscreens, __ps_free_splashscreen);
- /* FIXME */
- g_list_free_full(application->support_sizes, __ps_free_support_size);
free((void *)application);
}
free((void *)package->external_path);
if (package->support_mode)
free((void *)package->support_mode);
+ if (package->use_system_certs)
+ free((void *)package->use_system_certs);
/*Free Icon*/
g_list_free_full(package->icon, __ps_free_icon);
g_list_free_full(package->license, __ps_free_license);
/*Free Privileges*/
g_list_free_full(package->privileges, __ps_free_privilege);
+ /*Free AppDefined Privileges*/
+ g_list_free_full(package->appdefined_privileges,
+ __ps_free_appdefined_privilege);
+ /*Free Providing AppDefined Privileges*/
+ g_list_free_full(package->provides_appdefined_privileges,
+ __ps_free_appdefined_privilege);
/*Free Application*/
g_list_free_full(package->application, __ps_free_application);
/*Free Compatibility*/
g_list_free_full(package->compatibility, __ps_free_compatibility);
/*Free Device profiles*/
g_list_free_full(package->deviceprofile, free);
+ /*Free Dependencies*/
+ g_list_free_full(package->dependencies, __ps_free_dependency);
+ /*Free Plugin execution history*/
+ g_list_free_full(package->plugin, __ps_free_plugin_info);
free((void *)package);
}