4 #include "pkgmgr-info-basic.h"
5 #include "pkgmgr-info-internal.h"
7 static void __ps_free_category(category_x *category)
12 free((void *)category->name);
13 category->name = NULL;
15 free((void*)category);
19 static void __ps_free_privilege(privilege_x *privilege)
21 if (privilege == NULL)
23 if (privilege->text) {
24 free((void *)privilege->text);
25 privilege->text = NULL;
27 free((void*)privilege);
31 static void __ps_free_privileges(privileges_x *privileges)
33 if (privileges == NULL)
36 if (privileges->privilege) {
37 privilege_x *privilege = privileges->privilege;
38 privilege_x *tmp = NULL;
39 while(privilege != NULL) {
40 tmp = privilege->next;
41 __ps_free_privilege(privilege);
45 free((void*)privileges);
49 static void __ps_free_metadata(metadata_x *metadata)
54 free((void *)metadata->key);
57 if (metadata->value) {
58 free((void *)metadata->value);
59 metadata->value = NULL;
61 free((void*)metadata);
65 static void __ps_free_permission(permission_x *permission)
67 if (permission == NULL)
69 if (permission->type) {
70 free((void *)permission->type);
71 permission->type = NULL;
73 if (permission->value) {
74 free((void *)permission->value);
75 permission->value = NULL;
77 free((void*)permission);
81 static void __ps_free_icon(icon_x *icon)
86 free((void *)icon->text);
90 free((void *)icon->lang);
94 free((void *)icon->name);
98 free((void *)icon->section);
102 free((void *)icon->size);
105 if (icon->resolution) {
106 free((void *)icon->resolution);
107 icon->resolution = NULL;
113 static void __ps_free_image(image_x *image)
118 free((void *)image->text);
122 free((void *)image->lang);
126 free((void *)image->name);
129 if (image->section) {
130 free((void *)image->section);
131 image->section = NULL;
137 static void __ps_free_operation(operation_x *operation)
139 if (operation == NULL)
141 if (operation->text) {
142 free((void *)operation->text);
143 operation->text = NULL;
145 free((void*)operation);
149 static void __ps_free_uri(uri_x *uri)
154 free((void *)uri->text);
161 static void __ps_free_mime(mime_x *mime)
166 free((void *)mime->text);
173 static void __ps_free_subapp(subapp_x *subapp)
178 free((void *)subapp->text);
185 static void __ps_free_condition(condition_x *condition)
187 if (condition == NULL)
189 if (condition->text) {
190 free((void *)condition->text);
191 condition->text = NULL;
193 if (condition->name) {
194 free((void *)condition->name);
195 condition->name = NULL;
197 free((void*)condition);
201 static void __ps_free_notification(notification_x *notification)
203 if (notification == NULL)
205 if (notification->text) {
206 free((void *)notification->text);
207 notification->text = NULL;
209 if (notification->name) {
210 free((void *)notification->name);
211 notification->name = NULL;
213 free((void*)notification);
217 static void __ps_free_compatibility(compatibility_x *compatibility)
219 if (compatibility == NULL)
221 if (compatibility->text) {
222 free((void *)compatibility->text);
223 compatibility->text = NULL;
225 if (compatibility->name) {
226 free((void *)compatibility->name);
227 compatibility->name = NULL;
229 free((void*)compatibility);
230 compatibility = NULL;
233 static void __ps_free_allowed(allowed_x *allowed)
238 free((void *)allowed->name);
239 allowed->name = NULL;
242 free((void *)allowed->text);
243 allowed->text = NULL;
245 free((void*)allowed);
249 static void __ps_free_request(request_x *request)
254 free((void *)request->text);
255 request->text = NULL;
257 free((void*)request);
261 static void __ps_free_datacontrol(datacontrol_x *datacontrol)
263 if (datacontrol == NULL)
265 if (datacontrol->providerid) {
266 free((void *)datacontrol->providerid);
267 datacontrol->providerid = NULL;
269 if (datacontrol->access) {
270 free((void *)datacontrol->access);
271 datacontrol->access = NULL;
273 if (datacontrol->type) {
274 free((void *)datacontrol->type);
275 datacontrol->type = NULL;
277 free((void*)datacontrol);
281 static void __ps_free_launchconditions(launchconditions_x *launchconditions)
283 if (launchconditions == NULL)
285 if (launchconditions->text) {
286 free((void *)launchconditions->text);
287 launchconditions->text = NULL;
290 if (launchconditions->condition) {
291 condition_x *condition = launchconditions->condition;
292 condition_x *tmp = NULL;
293 while(condition != NULL) {
294 tmp = condition->next;
295 __ps_free_condition(condition);
299 free((void*)launchconditions);
300 launchconditions = NULL;
303 static void __ps_free_appcontrol(appcontrol_x *appcontrol)
305 if (appcontrol == NULL)
308 if (appcontrol->operation)
309 free((void *)appcontrol->operation);
312 free((void *)appcontrol->uri);
314 if (appcontrol->mime)
315 free((void *)appcontrol->mime);
316 free((void*)appcontrol);
320 static void __ps_free_appsvc(appsvc_x *appsvc)
325 free((void *)appsvc->text);
329 if (appsvc->operation) {
330 operation_x *operation = appsvc->operation;
331 operation_x *tmp = NULL;
332 while(operation != NULL) {
333 tmp = operation->next;
334 __ps_free_operation(operation);
340 uri_x *uri = appsvc->uri;
350 mime_x *mime = appsvc->mime;
352 while(mime != NULL) {
354 __ps_free_mime(mime);
359 if (appsvc->subapp) {
360 subapp_x *subapp = appsvc->subapp;
361 subapp_x *tmp = NULL;
362 while(subapp != NULL) {
364 __ps_free_subapp(subapp);
372 static void __ps_free_deviceprofile(deviceprofile_x *deviceprofile)
377 static void __ps_free_define(define_x *define)
382 free((void *)define->path);
386 if (define->request) {
387 request_x *request = define->request;
388 request_x *tmp = NULL;
389 while(request != NULL) {
391 __ps_free_request(request);
396 if (define->allowed) {
397 allowed_x *allowed = define->allowed;
398 allowed_x *tmp = NULL;
399 while(allowed != NULL) {
401 __ps_free_allowed(allowed);
409 static void __ps_free_datashare(datashare_x *datashare)
411 if (datashare == NULL)
414 if (datashare->define) {
415 define_x *define = datashare->define;
416 define_x *tmp = NULL;
417 while(define != NULL) {
419 __ps_free_define(define);
424 if (datashare->request) {
425 request_x *request = datashare->request;
426 request_x *tmp = NULL;
427 while(request != NULL) {
429 __ps_free_request(request);
433 free((void*)datashare);
437 static void __ps_free_label(label_x *label)
442 free((void *)label->name);
446 free((void *)label->text);
450 free((void *)label->lang);
457 static void __ps_free_author(author_x *author)
462 free((void *)author->email);
463 author->email = NULL;
466 free((void *)author->text);
470 free((void *)author->href);
474 free((void *)author->lang);
481 static void __ps_free_description(description_x *description)
483 if (description == NULL)
485 if (description->name) {
486 free((void *)description->name);
487 description->name = NULL;
489 if (description->text) {
490 free((void *)description->text);
491 description->text = NULL;
493 if (description->lang) {
494 free((void *)description->lang);
495 description->lang = NULL;
497 free((void*)description);
501 static void __ps_free_license(license_x *license)
506 free((void *)license->text);
507 license->text = NULL;
510 free((void *)license->lang);
511 license->lang = NULL;
513 free((void*)license);
517 static void __ps_free_uiapplication(uiapplication_x *uiapplication)
519 if (uiapplication == NULL)
521 if (uiapplication->exec) {
522 free((void *)uiapplication->exec);
523 uiapplication->exec = NULL;
525 if (uiapplication->appid) {
526 free((void *)uiapplication->appid);
527 uiapplication->appid = NULL;
529 if (uiapplication->nodisplay) {
530 free((void *)uiapplication->nodisplay);
531 uiapplication->nodisplay = NULL;
533 if (uiapplication->multiple) {
534 free((void *)uiapplication->multiple);
535 uiapplication->multiple = NULL;
537 if (uiapplication->type) {
538 free((void *)uiapplication->type);
539 uiapplication->type = NULL;
541 if (uiapplication->categories) {
542 free((void *)uiapplication->categories);
543 uiapplication->categories = NULL;
545 if (uiapplication->extraid) {
546 free((void *)uiapplication->extraid);
547 uiapplication->extraid = NULL;
549 if (uiapplication->taskmanage) {
550 free((void *)uiapplication->taskmanage);
551 uiapplication->taskmanage = NULL;
553 if (uiapplication->enabled) {
554 free((void *)uiapplication->enabled);
555 uiapplication->enabled = NULL;
557 if (uiapplication->hwacceleration) {
558 free((void *)uiapplication->hwacceleration);
559 uiapplication->hwacceleration = NULL;
561 if (uiapplication->screenreader) {
562 free((void *)uiapplication->screenreader);
563 uiapplication->screenreader = NULL;
565 if (uiapplication->mainapp) {
566 free((void *)uiapplication->mainapp);
567 uiapplication->mainapp = NULL;
569 if (uiapplication->recentimage) {
570 free((void *)uiapplication->recentimage);
571 uiapplication->recentimage = NULL;
573 if (uiapplication->package) {
574 free((void *)uiapplication->package);
575 uiapplication->package = NULL;
577 if (uiapplication->launchcondition) {
578 free((void *)uiapplication->launchcondition);
579 uiapplication->launchcondition = NULL;
582 if (uiapplication->label) {
583 label_x *label = uiapplication->label;
585 while(label != NULL) {
587 __ps_free_label(label);
592 if (uiapplication->icon) {
593 icon_x *icon = uiapplication->icon;
595 while(icon != NULL) {
597 __ps_free_icon(icon);
602 if (uiapplication->image) {
603 image_x *image = uiapplication->image;
605 while(image != NULL) {
607 __ps_free_image(image);
612 if (uiapplication->appcontrol) {
613 appcontrol_x *appcontrol = uiapplication->appcontrol;
614 appcontrol_x *tmp = NULL;
615 while(appcontrol != NULL) {
616 tmp = appcontrol->next;
617 __ps_free_appcontrol(appcontrol);
621 /*Free LaunchConditions*/
622 if (uiapplication->launchconditions) {
623 launchconditions_x *launchconditions = uiapplication->launchconditions;
624 launchconditions_x *tmp = NULL;
625 while(launchconditions != NULL) {
626 tmp = launchconditions->next;
627 __ps_free_launchconditions(launchconditions);
628 launchconditions = tmp;
631 /*Free Notification*/
632 if (uiapplication->notification) {
633 notification_x *notification = uiapplication->notification;
634 notification_x *tmp = NULL;
635 while(notification != NULL) {
636 tmp = notification->next;
637 __ps_free_notification(notification);
642 if (uiapplication->datashare) {
643 datashare_x *datashare = uiapplication->datashare;
644 datashare_x *tmp = NULL;
645 while(datashare != NULL) {
646 tmp = datashare->next;
647 __ps_free_datashare(datashare);
652 if (uiapplication->appsvc) {
653 appsvc_x *appsvc = uiapplication->appsvc;
654 appsvc_x *tmp = NULL;
655 while(appsvc != NULL) {
657 __ps_free_appsvc(appsvc);
662 if (uiapplication->category) {
663 category_x *category = uiapplication->category;
664 category_x *tmp = NULL;
665 while(category != NULL) {
666 tmp = category->next;
667 __ps_free_category(category);
672 if (uiapplication->metadata) {
673 metadata_x *metadata = uiapplication->metadata;
674 metadata_x *tmp = NULL;
675 while(metadata != NULL) {
676 tmp = metadata->next;
677 __ps_free_metadata(metadata);
682 if (uiapplication->permission) {
683 permission_x *permission = uiapplication->permission;
684 permission_x *tmp = NULL;
685 while(permission != NULL) {
686 tmp = permission->next;
687 __ps_free_permission(permission);
692 if (uiapplication->datacontrol) {
693 datacontrol_x *datacontrol = uiapplication->datacontrol;
694 datacontrol_x *tmp = NULL;
695 while(datacontrol != NULL) {
696 tmp = datacontrol->next;
697 __ps_free_datacontrol(datacontrol);
701 /* _PRODUCT_LAUNCHING_ENHANCED_ START */
702 if (uiapplication->indicatordisplay) {
703 free((void *)uiapplication->indicatordisplay);
704 uiapplication->indicatordisplay = NULL;
706 if (uiapplication->portraitimg) {
707 free((void *)uiapplication->portraitimg);
708 uiapplication->portraitimg = NULL;
710 if (uiapplication->landscapeimg) {
711 free((void *)uiapplication->landscapeimg);
712 uiapplication->landscapeimg = NULL;
714 /* _PRODUCT_LAUNCHING_ENHANCED_ END */
715 if (uiapplication->guestmode_visibility) {
716 free((void *)uiapplication->guestmode_visibility);
717 uiapplication->guestmode_visibility = NULL;
719 if (uiapplication->app_component) {
720 free((void *)uiapplication->app_component);
721 uiapplication->app_component = NULL;
723 if (uiapplication->permission_type) {
724 free((void *)uiapplication->permission_type);
725 uiapplication->permission_type = NULL;
727 if (uiapplication->component_type) {
728 free((void *)uiapplication->component_type);
729 uiapplication->component_type = NULL;
731 if (uiapplication->preload) {
732 free((void *)uiapplication->preload);
733 uiapplication->preload = NULL;
735 if (uiapplication->submode) {
736 free((void *)uiapplication->submode);
737 uiapplication->submode = NULL;
739 if (uiapplication->submode_mainid) {
740 free((void *)uiapplication->submode_mainid);
741 uiapplication->submode_mainid = NULL;
744 free((void*)uiapplication);
745 uiapplication = NULL;
748 static void __ps_free_serviceapplication(serviceapplication_x *serviceapplication)
750 if (serviceapplication == NULL)
752 if (serviceapplication->exec) {
753 free((void *)serviceapplication->exec);
754 serviceapplication->exec = NULL;
756 if (serviceapplication->appid) {
757 free((void *)serviceapplication->appid);
758 serviceapplication->appid = NULL;
760 if (serviceapplication->onboot) {
761 free((void *)serviceapplication->onboot);
762 serviceapplication->onboot = NULL;
764 if (serviceapplication->autorestart) {
765 free((void *)serviceapplication->autorestart);
766 serviceapplication->autorestart = NULL;
768 if (serviceapplication->type) {
769 free((void *)serviceapplication->type);
770 serviceapplication->type = NULL;
772 if (serviceapplication->enabled) {
773 free((void *)serviceapplication->enabled);
774 serviceapplication->enabled = NULL;
776 if (serviceapplication->package) {
777 free((void *)serviceapplication->package);
778 serviceapplication->package = NULL;
780 if (serviceapplication->permission_type) {
781 free((void *)serviceapplication->permission_type);
782 serviceapplication->permission_type = NULL;
785 if (serviceapplication->label) {
786 label_x *label = serviceapplication->label;
788 while(label != NULL) {
790 __ps_free_label(label);
795 if (serviceapplication->icon) {
796 icon_x *icon = serviceapplication->icon;
798 while(icon != NULL) {
800 __ps_free_icon(icon);
805 if (serviceapplication->appcontrol) {
806 appcontrol_x *appcontrol = serviceapplication->appcontrol;
807 appcontrol_x *tmp = NULL;
808 while(appcontrol != NULL) {
809 tmp = appcontrol->next;
810 __ps_free_appcontrol(appcontrol);
815 if (serviceapplication->datacontrol) {
816 datacontrol_x *datacontrol = serviceapplication->datacontrol;
817 datacontrol_x *tmp = NULL;
818 while(datacontrol != NULL) {
819 tmp = datacontrol->next;
820 __ps_free_datacontrol(datacontrol);
824 /*Free LaunchConditions*/
825 if (serviceapplication->launchconditions) {
826 launchconditions_x *launchconditions = serviceapplication->launchconditions;
827 launchconditions_x *tmp = NULL;
828 while(launchconditions != NULL) {
829 tmp = launchconditions->next;
830 __ps_free_launchconditions(launchconditions);
831 launchconditions = tmp;
834 /*Free Notification*/
835 if (serviceapplication->notification) {
836 notification_x *notification = serviceapplication->notification;
837 notification_x *tmp = NULL;
838 while(notification != NULL) {
839 tmp = notification->next;
840 __ps_free_notification(notification);
845 if (serviceapplication->datashare) {
846 datashare_x *datashare = serviceapplication->datashare;
847 datashare_x *tmp = NULL;
848 while(datashare != NULL) {
849 tmp = datashare->next;
850 __ps_free_datashare(datashare);
855 if (serviceapplication->appsvc) {
856 appsvc_x *appsvc = serviceapplication->appsvc;
857 appsvc_x *tmp = NULL;
858 while(appsvc != NULL) {
860 __ps_free_appsvc(appsvc);
865 if (serviceapplication->category) {
866 category_x *category = serviceapplication->category;
867 category_x *tmp = NULL;
868 while(category != NULL) {
869 tmp = category->next;
870 __ps_free_category(category);
875 if (serviceapplication->metadata) {
876 metadata_x *metadata = serviceapplication->metadata;
877 metadata_x *tmp = NULL;
878 while(metadata != NULL) {
879 tmp = metadata->next;
880 __ps_free_metadata(metadata);
885 if (serviceapplication->permission) {
886 permission_x *permission = serviceapplication->permission;
887 permission_x *tmp = NULL;
888 while(permission != NULL) {
889 tmp = permission->next;
890 __ps_free_permission(permission);
894 free((void*)serviceapplication);
895 serviceapplication = NULL;
898 static void __ps_free_font(font_x *font)
903 free((void *)font->name);
907 free((void *)font->text);
914 static void __ps_free_theme(theme_x *theme)
919 free((void *)theme->name);
923 free((void *)theme->text);
930 static void __ps_free_daemon(daemon_x *daemon)
935 free((void *)daemon->name);
939 free((void *)daemon->text);
946 static void __ps_free_ime(ime_x *ime)
951 free((void *)ime->name);
955 free((void *)ime->text);
962 API void pkgmgrinfo_basic_free_application(application_x *application)
964 if (application == NULL)
967 if (application->appid)
968 free((void *)application->appid);
969 if (application->component)
970 free((void *)application->component);
971 if (application->exec)
972 free((void *)application->exec);
973 if (application->nodisplay)
974 free((void *)application->nodisplay);
975 if (application->type)
976 free((void *)application->type);
977 if (application->onboot)
978 free((void *)application->onboot);
979 if (application->multiple)
980 free((void *)application->multiple);
981 if (application->autorestart)
982 free((void *)application->autorestart);
983 if (application->taskmanage)
984 free((void *)application->taskmanage);
985 if (application->enabled)
986 free((void *)application->enabled);
987 if (application->hwacceleration)
988 free((void *)application->hwacceleration);
989 if (application->screenreader)
990 free((void *)application->screenreader);
991 if (application->mainapp)
992 free((void *)application->mainapp);
993 if (application->recentimage)
994 free((void *)application->recentimage);
995 if (application->launchcondition)
996 free((void *)application->launchcondition);
997 if (application->indicatordisplay)
998 free((void *)application->indicatordisplay);
999 if (application->portraitimg)
1000 free((void *)application->portraitimg);
1001 if (application->landscapeimg)
1002 free((void *)application->landscapeimg);
1003 if (application->guestmode_visibility)
1004 free((void *)application->guestmode_visibility);
1005 if (application->permission_type)
1006 free((void *)application->permission_type);
1007 if (application->preload)
1008 free((void *)application->preload);
1009 if (application->submode)
1010 free((void *)application->submode);
1011 if (application->submode_mainid)
1012 free((void *)application->submode_mainid);
1013 if (application->launch_mode)
1014 free((void *)application->launch_mode);
1015 if (application->component_type)
1016 free((void *)application->component_type);
1017 if (application->package)
1018 free((void *)application->package);
1021 if (application->label) {
1022 label_x *label = application->label;
1023 label_x *tmp = NULL;
1024 while(label != NULL) {
1026 __ps_free_label(label);
1031 if (application->icon) {
1032 icon_x *icon = application->icon;
1034 while(icon != NULL) {
1036 __ps_free_icon(icon);
1041 if (application->image) {
1042 image_x *image = application->image;
1043 image_x *tmp = NULL;
1044 while(image != NULL) {
1046 __ps_free_image(image);
1051 if (application->appsvc) {
1052 appsvc_x *appsvc = application->appsvc;
1053 appsvc_x *tmp = NULL;
1054 while(appsvc != NULL) {
1056 __ps_free_appsvc(appsvc);
1061 if (application->appcontrol) {
1062 appcontrol_x *appcontrol = application->appcontrol;
1063 appcontrol_x *tmp = NULL;
1064 while(appcontrol != NULL) {
1065 tmp = appcontrol->next;
1066 __ps_free_appcontrol(appcontrol);
1071 if (application->category) {
1072 category_x *category = application->category;
1073 category_x *tmp = NULL;
1074 while(category != NULL) {
1075 tmp = category->next;
1076 __ps_free_category(category);
1081 if (application->metadata) {
1082 metadata_x *metadata = application->metadata;
1083 metadata_x *tmp = NULL;
1084 while(metadata != NULL) {
1085 tmp = metadata->next;
1086 __ps_free_metadata(metadata);
1091 if (application->permission) {
1092 permission_x *permission = application->permission;
1093 permission_x *tmp = NULL;
1094 while(permission != NULL) {
1095 tmp = permission->next;
1096 __ps_free_permission(permission);
1100 /*Free LaunchConditions*/
1101 if (application->launchconditions) {
1102 launchconditions_x *launchconditions = application->launchconditions;
1103 launchconditions_x *tmp = NULL;
1104 while(launchconditions != NULL) {
1105 tmp = launchconditions->next;
1106 __ps_free_launchconditions(launchconditions);
1107 launchconditions = tmp;
1110 /*Free Notification*/
1111 if (application->notification) {
1112 notification_x *notification = application->notification;
1113 notification_x *tmp = NULL;
1114 while(notification != NULL) {
1115 tmp = notification->next;
1116 __ps_free_notification(notification);
1121 if (application->datashare) {
1122 datashare_x *datashare = application->datashare;
1123 datashare_x *tmp = NULL;
1124 while(datashare != NULL) {
1125 tmp = datashare->next;
1126 __ps_free_datashare(datashare);
1130 /*Free DataControl*/
1131 if (application->datacontrol) {
1132 datacontrol_x *datacontrol = application->datacontrol;
1133 datacontrol_x *tmp = NULL;
1134 while(datacontrol != NULL) {
1135 tmp = datacontrol->next;
1136 __ps_free_datacontrol(datacontrol);
1140 free((void *)application);
1143 API void pkgmgrinfo_basic_free_package(package_x *package)
1145 if (package == NULL)
1147 if (package->for_all_users) {
1148 free((void *)package->for_all_users);
1149 package->for_all_users = NULL;
1152 free((void *)package->ns);
1155 if (package->package) {
1156 free((void *)package->package);
1157 package->package = NULL;
1159 if (package->version) {
1160 free((void *)package->version);
1161 package->version = NULL;
1163 if (package->installlocation) {
1164 free((void *)package->installlocation);
1165 package->installlocation = NULL;
1167 if (package->preload) {
1168 free((void *)package->preload);
1169 package->preload = NULL;
1171 if (package->readonly) {
1172 free((void *)package->readonly);
1173 package->readonly = NULL;
1175 if (package->removable) {
1176 free((void *)package->removable);
1177 package->removable = NULL;
1179 if (package->update) {
1180 free((void *)package->update);
1181 package->update = NULL;
1183 if (package->system) {
1184 free((void *)package->system);
1185 package->system = NULL;
1187 if (package->type) {
1188 free((void *)package->type);
1189 package->type = NULL;
1191 if (package->package_size) {
1192 free((void *)package->package_size);
1193 package->package_size = NULL;
1195 if (package->installed_time) {
1196 free((void *)package->installed_time);
1197 package->installed_time = NULL;
1199 if (package->installed_storage) {
1200 free((void *)package->installed_storage);
1201 package->installed_storage = NULL;
1203 if (package->storeclient_id) {
1204 free((void *)package->storeclient_id);
1205 package->storeclient_id = NULL;
1207 if (package->mainapp_id) {
1208 free((void *)package->mainapp_id);
1209 package->mainapp_id = NULL;
1211 if (package->package_url) {
1212 free((void *)package->package_url);
1213 package->package_url = NULL;
1215 if (package->root_path) {
1216 free((void *)package->root_path);
1217 package->root_path = NULL;
1219 if (package->csc_path) {
1220 free((void *)package->csc_path);
1221 package->csc_path = NULL;
1223 if (package->appsetting) {
1224 free((void *)package->appsetting);
1225 package->appsetting = NULL;
1227 if (package->nodisplay_setting) {
1228 free((void *)package->nodisplay_setting);
1229 package->nodisplay_setting = NULL;
1231 if (package->api_version) {
1232 free((void *)package->api_version);
1233 package->api_version = NULL;
1237 if (package->icon) {
1238 icon_x *icon = package->icon;
1240 while(icon != NULL) {
1242 __ps_free_icon(icon);
1247 if (package->label) {
1248 label_x *label = package->label;
1249 label_x *tmp = NULL;
1250 while(label != NULL) {
1252 __ps_free_label(label);
1257 if (package->author) {
1258 author_x *author = package->author;
1259 author_x *tmp = NULL;
1260 while(author != NULL) {
1262 __ps_free_author(author);
1266 /*Free Description*/
1267 if (package->description) {
1268 description_x *description = package->description;
1269 description_x *tmp = NULL;
1270 while(description != NULL) {
1271 tmp = description->next;
1272 __ps_free_description(description);
1277 if (package->license) {
1278 license_x *license = package->license;
1279 license_x *tmp = NULL;
1280 while(license != NULL) {
1281 tmp = license->next;
1282 __ps_free_license(license);
1287 if (package->privileges) {
1288 privileges_x *privileges = package->privileges;
1289 privileges_x *tmp = NULL;
1290 while(privileges != NULL) {
1291 tmp = privileges->next;
1292 __ps_free_privileges(privileges);
1296 /*Free UiApplication*/
1297 if (package->uiapplication) {
1298 uiapplication_x *uiapplication = package->uiapplication;
1299 uiapplication_x *tmp = NULL;
1300 while(uiapplication != NULL) {
1301 tmp = uiapplication->next;
1302 __ps_free_uiapplication(uiapplication);
1303 uiapplication = tmp;
1306 /*Free ServiceApplication*/
1307 if (package->serviceapplication) {
1308 serviceapplication_x *serviceapplication = package->serviceapplication;
1309 serviceapplication_x *tmp = NULL;
1310 while(serviceapplication != NULL) {
1311 tmp = serviceapplication->next;
1312 __ps_free_serviceapplication(serviceapplication);
1313 serviceapplication = tmp;
1317 if (package->daemon) {
1318 daemon_x *daemon = package->daemon;
1319 daemon_x *tmp = NULL;
1320 while(daemon != NULL) {
1322 __ps_free_daemon(daemon);
1327 if (package->theme) {
1328 theme_x *theme = package->theme;
1329 theme_x *tmp = NULL;
1330 while(theme != NULL) {
1332 __ps_free_theme(theme);
1337 if (package->font) {
1338 font_x *font = package->font;
1340 while(font != NULL) {
1342 __ps_free_font(font);
1348 ime_x *ime = package->ime;
1350 while(ime != NULL) {
1356 /*Free Compatibility*/
1357 if (package->compatibility) {
1358 compatibility_x *compatibility = package->compatibility;
1359 compatibility_x *tmp = NULL;
1360 while(compatibility != NULL) {
1361 tmp = compatibility->next;
1362 __ps_free_compatibility(compatibility);
1363 compatibility = tmp;
1366 /*Free DeviceProfile*/
1367 if (package->deviceprofile) {
1368 deviceprofile_x *deviceprofile = package->deviceprofile;
1369 deviceprofile_x *tmp = NULL;
1370 while(deviceprofile != NULL) {
1371 tmp = deviceprofile->next;
1372 __ps_free_deviceprofile(deviceprofile);
1373 deviceprofile = tmp;
1376 free((void*)package);