3 #include "pkgmgrinfo_basic.h"
4 #include "pkgmgrinfo_private.h"
6 static void __ps_free_category(category_x *category)
11 free((void *)category->name);
12 category->name = NULL;
14 free((void*)category);
18 static void __ps_free_privilege(privilege_x *privilege)
20 if (privilege == NULL)
22 if (privilege->text) {
23 free((void *)privilege->text);
24 privilege->text = NULL;
26 free((void*)privilege);
30 static void __ps_free_privileges(privileges_x *privileges)
32 if (privileges == NULL)
35 if (privileges->privilege) {
36 privilege_x *privilege = privileges->privilege;
37 privilege_x *tmp = NULL;
38 while(privilege != NULL) {
39 tmp = privilege->next;
40 __ps_free_privilege(privilege);
44 free((void*)privileges);
48 static void __ps_free_metadata(metadata_x *metadata)
53 free((void *)metadata->key);
56 if (metadata->value) {
57 free((void *)metadata->value);
58 metadata->value = NULL;
60 free((void*)metadata);
64 static void __ps_free_permission(permission_x *permission)
66 if (permission == NULL)
68 if (permission->type) {
69 free((void *)permission->type);
70 permission->type = NULL;
72 if (permission->value) {
73 free((void *)permission->value);
74 permission->value = NULL;
76 free((void*)permission);
80 static void __ps_free_icon(icon_x *icon)
85 free((void *)icon->text);
89 free((void *)icon->lang);
93 free((void *)icon->name);
97 free((void *)icon->section);
101 free((void *)icon->size);
104 if (icon->resolution) {
105 free((void *)icon->resolution);
106 icon->resolution = NULL;
112 static void __ps_free_image(image_x *image)
117 free((void *)image->text);
121 free((void *)image->lang);
125 free((void *)image->name);
128 if (image->section) {
129 free((void *)image->section);
130 image->section = NULL;
136 static void __ps_free_operation(operation_x *operation)
138 if (operation == NULL)
140 if (operation->text) {
141 free((void *)operation->text);
142 operation->text = NULL;
144 free((void*)operation);
148 static void __ps_free_uri(uri_x *uri)
153 free((void *)uri->text);
160 static void __ps_free_mime(mime_x *mime)
165 free((void *)mime->text);
172 static void __ps_free_subapp(subapp_x *subapp)
177 free((void *)subapp->text);
184 static void __ps_free_condition(condition_x *condition)
186 if (condition == NULL)
188 if (condition->text) {
189 free((void *)condition->text);
190 condition->text = NULL;
192 if (condition->name) {
193 free((void *)condition->name);
194 condition->name = NULL;
196 free((void*)condition);
200 static void __ps_free_notification(notification_x *notification)
202 if (notification == NULL)
204 if (notification->text) {
205 free((void *)notification->text);
206 notification->text = NULL;
208 if (notification->name) {
209 free((void *)notification->name);
210 notification->name = NULL;
212 free((void*)notification);
216 static void __ps_free_compatibility(compatibility_x *compatibility)
218 if (compatibility == NULL)
220 if (compatibility->text) {
221 free((void *)compatibility->text);
222 compatibility->text = NULL;
224 if (compatibility->name) {
225 free((void *)compatibility->name);
226 compatibility->name = NULL;
228 free((void*)compatibility);
229 compatibility = NULL;
232 static void __ps_free_allowed(allowed_x *allowed)
237 free((void *)allowed->name);
238 allowed->name = NULL;
241 free((void *)allowed->text);
242 allowed->text = NULL;
244 free((void*)allowed);
248 static void __ps_free_request(request_x *request)
253 free((void *)request->text);
254 request->text = NULL;
256 free((void*)request);
260 static void __ps_free_datacontrol(datacontrol_x *datacontrol)
262 if (datacontrol == NULL)
264 if (datacontrol->providerid) {
265 free((void *)datacontrol->providerid);
266 datacontrol->providerid = NULL;
268 if (datacontrol->access) {
269 free((void *)datacontrol->access);
270 datacontrol->access = NULL;
272 if (datacontrol->type) {
273 free((void *)datacontrol->type);
274 datacontrol->type = NULL;
276 free((void*)datacontrol);
280 static void __ps_free_launchconditions(launchconditions_x *launchconditions)
282 if (launchconditions == NULL)
284 if (launchconditions->text) {
285 free((void *)launchconditions->text);
286 launchconditions->text = NULL;
289 if (launchconditions->condition) {
290 condition_x *condition = launchconditions->condition;
291 condition_x *tmp = NULL;
292 while(condition != NULL) {
293 tmp = condition->next;
294 __ps_free_condition(condition);
298 free((void*)launchconditions);
299 launchconditions = NULL;
302 static void __ps_free_appcontrol(appcontrol_x *appcontrol)
304 if (appcontrol == NULL)
307 if (appcontrol->operation)
308 free((void *)appcontrol->operation);
311 free((void *)appcontrol->uri);
313 if (appcontrol->mime)
314 free((void *)appcontrol->mime);
315 free((void*)appcontrol);
319 static void __ps_free_appsvc(appsvc_x *appsvc)
324 free((void *)appsvc->text);
328 if (appsvc->operation) {
329 operation_x *operation = appsvc->operation;
330 operation_x *tmp = NULL;
331 while(operation != NULL) {
332 tmp = operation->next;
333 __ps_free_operation(operation);
339 uri_x *uri = appsvc->uri;
349 mime_x *mime = appsvc->mime;
351 while(mime != NULL) {
353 __ps_free_mime(mime);
358 if (appsvc->subapp) {
359 subapp_x *subapp = appsvc->subapp;
360 subapp_x *tmp = NULL;
361 while(subapp != NULL) {
363 __ps_free_subapp(subapp);
371 static void __ps_free_deviceprofile(deviceprofile_x *deviceprofile)
376 static void __ps_free_define(define_x *define)
381 free((void *)define->path);
385 if (define->request) {
386 request_x *request = define->request;
387 request_x *tmp = NULL;
388 while(request != NULL) {
390 __ps_free_request(request);
395 if (define->allowed) {
396 allowed_x *allowed = define->allowed;
397 allowed_x *tmp = NULL;
398 while(allowed != NULL) {
400 __ps_free_allowed(allowed);
408 static void __ps_free_datashare(datashare_x *datashare)
410 if (datashare == NULL)
413 if (datashare->define) {
414 define_x *define = datashare->define;
415 define_x *tmp = NULL;
416 while(define != NULL) {
418 __ps_free_define(define);
423 if (datashare->request) {
424 request_x *request = datashare->request;
425 request_x *tmp = NULL;
426 while(request != NULL) {
428 __ps_free_request(request);
432 free((void*)datashare);
436 static void __ps_free_label(label_x *label)
441 free((void *)label->name);
445 free((void *)label->text);
449 free((void *)label->lang);
456 static void __ps_free_author(author_x *author)
461 free((void *)author->email);
462 author->email = NULL;
465 free((void *)author->text);
469 free((void *)author->href);
473 free((void *)author->lang);
480 static void __ps_free_description(description_x *description)
482 if (description == NULL)
484 if (description->name) {
485 free((void *)description->name);
486 description->name = NULL;
488 if (description->text) {
489 free((void *)description->text);
490 description->text = NULL;
492 if (description->lang) {
493 free((void *)description->lang);
494 description->lang = NULL;
496 free((void*)description);
500 static void __ps_free_license(license_x *license)
505 free((void *)license->text);
506 license->text = NULL;
509 free((void *)license->lang);
510 license->lang = NULL;
512 free((void*)license);
516 static void __ps_free_uiapplication(uiapplication_x *uiapplication)
518 if (uiapplication == NULL)
520 if (uiapplication->exec) {
521 free((void *)uiapplication->exec);
522 uiapplication->exec = NULL;
524 if (uiapplication->appid) {
525 free((void *)uiapplication->appid);
526 uiapplication->appid = NULL;
528 if (uiapplication->nodisplay) {
529 free((void *)uiapplication->nodisplay);
530 uiapplication->nodisplay = NULL;
532 if (uiapplication->multiple) {
533 free((void *)uiapplication->multiple);
534 uiapplication->multiple = NULL;
536 if (uiapplication->type) {
537 free((void *)uiapplication->type);
538 uiapplication->type = NULL;
540 if (uiapplication->categories) {
541 free((void *)uiapplication->categories);
542 uiapplication->categories = NULL;
544 if (uiapplication->extraid) {
545 free((void *)uiapplication->extraid);
546 uiapplication->extraid = NULL;
548 if (uiapplication->taskmanage) {
549 free((void *)uiapplication->taskmanage);
550 uiapplication->taskmanage = NULL;
552 if (uiapplication->enabled) {
553 free((void *)uiapplication->enabled);
554 uiapplication->enabled = NULL;
556 if (uiapplication->hwacceleration) {
557 free((void *)uiapplication->hwacceleration);
558 uiapplication->hwacceleration = NULL;
560 if (uiapplication->screenreader) {
561 free((void *)uiapplication->screenreader);
562 uiapplication->screenreader = NULL;
564 if (uiapplication->mainapp) {
565 free((void *)uiapplication->mainapp);
566 uiapplication->mainapp = NULL;
568 if (uiapplication->recentimage) {
569 free((void *)uiapplication->recentimage);
570 uiapplication->recentimage = NULL;
572 if (uiapplication->package) {
573 free((void *)uiapplication->package);
574 uiapplication->package = NULL;
576 if (uiapplication->launchcondition) {
577 free((void *)uiapplication->launchcondition);
578 uiapplication->launchcondition = NULL;
581 if (uiapplication->label) {
582 label_x *label = uiapplication->label;
584 while(label != NULL) {
586 __ps_free_label(label);
591 if (uiapplication->icon) {
592 icon_x *icon = uiapplication->icon;
594 while(icon != NULL) {
596 __ps_free_icon(icon);
601 if (uiapplication->image) {
602 image_x *image = uiapplication->image;
604 while(image != NULL) {
606 __ps_free_image(image);
611 if (uiapplication->appcontrol) {
612 appcontrol_x *appcontrol = uiapplication->appcontrol;
613 appcontrol_x *tmp = NULL;
614 while(appcontrol != NULL) {
615 tmp = appcontrol->next;
616 __ps_free_appcontrol(appcontrol);
620 /*Free LaunchConditions*/
621 if (uiapplication->launchconditions) {
622 launchconditions_x *launchconditions = uiapplication->launchconditions;
623 launchconditions_x *tmp = NULL;
624 while(launchconditions != NULL) {
625 tmp = launchconditions->next;
626 __ps_free_launchconditions(launchconditions);
627 launchconditions = tmp;
630 /*Free Notification*/
631 if (uiapplication->notification) {
632 notification_x *notification = uiapplication->notification;
633 notification_x *tmp = NULL;
634 while(notification != NULL) {
635 tmp = notification->next;
636 __ps_free_notification(notification);
641 if (uiapplication->datashare) {
642 datashare_x *datashare = uiapplication->datashare;
643 datashare_x *tmp = NULL;
644 while(datashare != NULL) {
645 tmp = datashare->next;
646 __ps_free_datashare(datashare);
651 if (uiapplication->appsvc) {
652 appsvc_x *appsvc = uiapplication->appsvc;
653 appsvc_x *tmp = NULL;
654 while(appsvc != NULL) {
656 __ps_free_appsvc(appsvc);
661 if (uiapplication->category) {
662 category_x *category = uiapplication->category;
663 category_x *tmp = NULL;
664 while(category != NULL) {
665 tmp = category->next;
666 __ps_free_category(category);
671 if (uiapplication->metadata) {
672 metadata_x *metadata = uiapplication->metadata;
673 metadata_x *tmp = NULL;
674 while(metadata != NULL) {
675 tmp = metadata->next;
676 __ps_free_metadata(metadata);
681 if (uiapplication->permission) {
682 permission_x *permission = uiapplication->permission;
683 permission_x *tmp = NULL;
684 while(permission != NULL) {
685 tmp = permission->next;
686 __ps_free_permission(permission);
691 if (uiapplication->datacontrol) {
692 datacontrol_x *datacontrol = uiapplication->datacontrol;
693 datacontrol_x *tmp = NULL;
694 while(datacontrol != NULL) {
695 tmp = datacontrol->next;
696 __ps_free_datacontrol(datacontrol);
700 /* _PRODUCT_LAUNCHING_ENHANCED_ START */
701 if (uiapplication->indicatordisplay) {
702 free((void *)uiapplication->indicatordisplay);
703 uiapplication->indicatordisplay = NULL;
705 if (uiapplication->portraitimg) {
706 free((void *)uiapplication->portraitimg);
707 uiapplication->portraitimg = NULL;
709 if (uiapplication->landscapeimg) {
710 free((void *)uiapplication->landscapeimg);
711 uiapplication->landscapeimg = NULL;
713 /* _PRODUCT_LAUNCHING_ENHANCED_ END */
714 if (uiapplication->guestmode_visibility) {
715 free((void *)uiapplication->guestmode_visibility);
716 uiapplication->guestmode_visibility = NULL;
718 if (uiapplication->app_component) {
719 free((void *)uiapplication->app_component);
720 uiapplication->app_component = NULL;
722 if (uiapplication->permission_type) {
723 free((void *)uiapplication->permission_type);
724 uiapplication->permission_type = NULL;
726 if (uiapplication->component_type) {
727 free((void *)uiapplication->component_type);
728 uiapplication->component_type = NULL;
730 if (uiapplication->preload) {
731 free((void *)uiapplication->preload);
732 uiapplication->preload = NULL;
734 if (uiapplication->submode) {
735 free((void *)uiapplication->submode);
736 uiapplication->submode = NULL;
738 if (uiapplication->submode_mainid) {
739 free((void *)uiapplication->submode_mainid);
740 uiapplication->submode_mainid = NULL;
742 if (uiapplication->ui_gadget) {
743 free((void *)uiapplication->ui_gadget);
744 uiapplication->ui_gadget = NULL;
746 if (uiapplication->support_disable) {
747 free((void *)uiapplication->support_disable);
748 uiapplication->support_disable = NULL;
751 free((void*)uiapplication);
752 uiapplication = NULL;
755 static void __ps_free_serviceapplication(serviceapplication_x *serviceapplication)
757 if (serviceapplication == NULL)
759 if (serviceapplication->exec) {
760 free((void *)serviceapplication->exec);
761 serviceapplication->exec = NULL;
763 if (serviceapplication->appid) {
764 free((void *)serviceapplication->appid);
765 serviceapplication->appid = NULL;
767 if (serviceapplication->onboot) {
768 free((void *)serviceapplication->onboot);
769 serviceapplication->onboot = NULL;
771 if (serviceapplication->autorestart) {
772 free((void *)serviceapplication->autorestart);
773 serviceapplication->autorestart = NULL;
775 if (serviceapplication->type) {
776 free((void *)serviceapplication->type);
777 serviceapplication->type = NULL;
779 if (serviceapplication->enabled) {
780 free((void *)serviceapplication->enabled);
781 serviceapplication->enabled = NULL;
783 if (serviceapplication->package) {
784 free((void *)serviceapplication->package);
785 serviceapplication->package = NULL;
787 if (serviceapplication->permission_type) {
788 free((void *)serviceapplication->permission_type);
789 serviceapplication->permission_type = NULL;
792 if (serviceapplication->label) {
793 label_x *label = serviceapplication->label;
795 while(label != NULL) {
797 __ps_free_label(label);
802 if (serviceapplication->icon) {
803 icon_x *icon = serviceapplication->icon;
805 while(icon != NULL) {
807 __ps_free_icon(icon);
812 if (serviceapplication->appcontrol) {
813 appcontrol_x *appcontrol = serviceapplication->appcontrol;
814 appcontrol_x *tmp = NULL;
815 while(appcontrol != NULL) {
816 tmp = appcontrol->next;
817 __ps_free_appcontrol(appcontrol);
822 if (serviceapplication->datacontrol) {
823 datacontrol_x *datacontrol = serviceapplication->datacontrol;
824 datacontrol_x *tmp = NULL;
825 while(datacontrol != NULL) {
826 tmp = datacontrol->next;
827 __ps_free_datacontrol(datacontrol);
831 /*Free LaunchConditions*/
832 if (serviceapplication->launchconditions) {
833 launchconditions_x *launchconditions = serviceapplication->launchconditions;
834 launchconditions_x *tmp = NULL;
835 while(launchconditions != NULL) {
836 tmp = launchconditions->next;
837 __ps_free_launchconditions(launchconditions);
838 launchconditions = tmp;
841 /*Free Notification*/
842 if (serviceapplication->notification) {
843 notification_x *notification = serviceapplication->notification;
844 notification_x *tmp = NULL;
845 while(notification != NULL) {
846 tmp = notification->next;
847 __ps_free_notification(notification);
852 if (serviceapplication->datashare) {
853 datashare_x *datashare = serviceapplication->datashare;
854 datashare_x *tmp = NULL;
855 while(datashare != NULL) {
856 tmp = datashare->next;
857 __ps_free_datashare(datashare);
862 if (serviceapplication->appsvc) {
863 appsvc_x *appsvc = serviceapplication->appsvc;
864 appsvc_x *tmp = NULL;
865 while(appsvc != NULL) {
867 __ps_free_appsvc(appsvc);
872 if (serviceapplication->category) {
873 category_x *category = serviceapplication->category;
874 category_x *tmp = NULL;
875 while(category != NULL) {
876 tmp = category->next;
877 __ps_free_category(category);
882 if (serviceapplication->metadata) {
883 metadata_x *metadata = serviceapplication->metadata;
884 metadata_x *tmp = NULL;
885 while(metadata != NULL) {
886 tmp = metadata->next;
887 __ps_free_metadata(metadata);
892 if (serviceapplication->permission) {
893 permission_x *permission = serviceapplication->permission;
894 permission_x *tmp = NULL;
895 while(permission != NULL) {
896 tmp = permission->next;
897 __ps_free_permission(permission);
901 free((void*)serviceapplication);
902 serviceapplication = NULL;
905 static void __ps_free_font(font_x *font)
910 free((void *)font->name);
914 free((void *)font->text);
921 static void __ps_free_theme(theme_x *theme)
926 free((void *)theme->name);
930 free((void *)theme->text);
937 static void __ps_free_daemon(daemon_x *daemon)
942 free((void *)daemon->name);
946 free((void *)daemon->text);
953 static void __ps_free_ime(ime_x *ime)
958 free((void *)ime->name);
962 free((void *)ime->text);
969 API void pkgmgrinfo_basic_free_application(application_x *application)
971 if (application == NULL)
974 if (application->appid)
975 free((void *)application->appid);
976 if (application->component)
977 free((void *)application->component);
978 if (application->exec)
979 free((void *)application->exec);
980 if (application->nodisplay)
981 free((void *)application->nodisplay);
982 if (application->type)
983 free((void *)application->type);
984 if (application->onboot)
985 free((void *)application->onboot);
986 if (application->multiple)
987 free((void *)application->multiple);
988 if (application->autorestart)
989 free((void *)application->autorestart);
990 if (application->taskmanage)
991 free((void *)application->taskmanage);
992 if (application->enabled)
993 free((void *)application->enabled);
994 if (application->hwacceleration)
995 free((void *)application->hwacceleration);
996 if (application->screenreader)
997 free((void *)application->screenreader);
998 if (application->mainapp)
999 free((void *)application->mainapp);
1000 if (application->recentimage)
1001 free((void *)application->recentimage);
1002 if (application->launchcondition)
1003 free((void *)application->launchcondition);
1004 if (application->indicatordisplay)
1005 free((void *)application->indicatordisplay);
1006 if (application->portraitimg)
1007 free((void *)application->portraitimg);
1008 if (application->landscapeimg)
1009 free((void *)application->landscapeimg);
1010 if (application->guestmode_visibility)
1011 free((void *)application->guestmode_visibility);
1012 if (application->permission_type)
1013 free((void *)application->permission_type);
1014 if (application->preload)
1015 free((void *)application->preload);
1016 if (application->submode)
1017 free((void *)application->submode);
1018 if (application->submode_mainid)
1019 free((void *)application->submode_mainid);
1020 if (application->launch_mode)
1021 free((void *)application->launch_mode);
1022 if (application->ui_gadget)
1023 free((void *)application->ui_gadget);
1024 if (application->component_type)
1025 free((void *)application->component_type);
1026 if (application->package)
1027 free((void *)application->package);
1028 if (application->support_disable)
1029 free((void *)application->support_disable);
1032 if (application->label) {
1033 label_x *label = application->label;
1034 label_x *tmp = NULL;
1035 while(label != NULL) {
1037 __ps_free_label(label);
1042 if (application->icon) {
1043 icon_x *icon = application->icon;
1045 while(icon != NULL) {
1047 __ps_free_icon(icon);
1052 if (application->image) {
1053 image_x *image = application->image;
1054 image_x *tmp = NULL;
1055 while(image != NULL) {
1057 __ps_free_image(image);
1062 if (application->appsvc) {
1063 appsvc_x *appsvc = application->appsvc;
1064 appsvc_x *tmp = NULL;
1065 while(appsvc != NULL) {
1067 __ps_free_appsvc(appsvc);
1072 if (application->appcontrol) {
1073 appcontrol_x *appcontrol = application->appcontrol;
1074 appcontrol_x *tmp = NULL;
1075 while(appcontrol != NULL) {
1076 tmp = appcontrol->next;
1077 __ps_free_appcontrol(appcontrol);
1082 if (application->category) {
1083 category_x *category = application->category;
1084 category_x *tmp = NULL;
1085 while(category != NULL) {
1086 tmp = category->next;
1087 __ps_free_category(category);
1092 if (application->metadata) {
1093 metadata_x *metadata = application->metadata;
1094 metadata_x *tmp = NULL;
1095 while(metadata != NULL) {
1096 tmp = metadata->next;
1097 __ps_free_metadata(metadata);
1102 if (application->permission) {
1103 permission_x *permission = application->permission;
1104 permission_x *tmp = NULL;
1105 while(permission != NULL) {
1106 tmp = permission->next;
1107 __ps_free_permission(permission);
1111 /*Free LaunchConditions*/
1112 if (application->launchconditions) {
1113 launchconditions_x *launchconditions = application->launchconditions;
1114 launchconditions_x *tmp = NULL;
1115 while(launchconditions != NULL) {
1116 tmp = launchconditions->next;
1117 __ps_free_launchconditions(launchconditions);
1118 launchconditions = tmp;
1121 /*Free Notification*/
1122 if (application->notification) {
1123 notification_x *notification = application->notification;
1124 notification_x *tmp = NULL;
1125 while(notification != NULL) {
1126 tmp = notification->next;
1127 __ps_free_notification(notification);
1132 if (application->datashare) {
1133 datashare_x *datashare = application->datashare;
1134 datashare_x *tmp = NULL;
1135 while(datashare != NULL) {
1136 tmp = datashare->next;
1137 __ps_free_datashare(datashare);
1141 /*Free DataControl*/
1142 if (application->datacontrol) {
1143 datacontrol_x *datacontrol = application->datacontrol;
1144 datacontrol_x *tmp = NULL;
1145 while(datacontrol != NULL) {
1146 tmp = datacontrol->next;
1147 __ps_free_datacontrol(datacontrol);
1151 free((void *)application);
1154 API void pkgmgrinfo_basic_free_package(package_x *package)
1156 if (package == NULL)
1158 if (package->for_all_users) {
1159 free((void *)package->for_all_users);
1160 package->for_all_users = NULL;
1163 free((void *)package->ns);
1166 if (package->package) {
1167 free((void *)package->package);
1168 package->package = NULL;
1170 if (package->version) {
1171 free((void *)package->version);
1172 package->version = NULL;
1174 if (package->installlocation) {
1175 free((void *)package->installlocation);
1176 package->installlocation = NULL;
1178 if (package->preload) {
1179 free((void *)package->preload);
1180 package->preload = NULL;
1182 if (package->readonly) {
1183 free((void *)package->readonly);
1184 package->readonly = NULL;
1186 if (package->removable) {
1187 free((void *)package->removable);
1188 package->removable = NULL;
1190 if (package->update) {
1191 free((void *)package->update);
1192 package->update = NULL;
1194 if (package->system) {
1195 free((void *)package->system);
1196 package->system = NULL;
1198 if (package->type) {
1199 free((void *)package->type);
1200 package->type = NULL;
1202 if (package->package_size) {
1203 free((void *)package->package_size);
1204 package->package_size = NULL;
1206 if (package->installed_time) {
1207 free((void *)package->installed_time);
1208 package->installed_time = NULL;
1210 if (package->installed_storage) {
1211 free((void *)package->installed_storage);
1212 package->installed_storage = NULL;
1214 if (package->storeclient_id) {
1215 free((void *)package->storeclient_id);
1216 package->storeclient_id = NULL;
1218 if (package->mainapp_id) {
1219 free((void *)package->mainapp_id);
1220 package->mainapp_id = NULL;
1222 if (package->package_url) {
1223 free((void *)package->package_url);
1224 package->package_url = NULL;
1226 if (package->root_path) {
1227 free((void *)package->root_path);
1228 package->root_path = NULL;
1230 if (package->csc_path) {
1231 free((void *)package->csc_path);
1232 package->csc_path = NULL;
1234 if (package->appsetting) {
1235 free((void *)package->appsetting);
1236 package->appsetting = NULL;
1238 if (package->nodisplay_setting) {
1239 free((void *)package->nodisplay_setting);
1240 package->nodisplay_setting = NULL;
1242 if (package->api_version) {
1243 free((void *)package->api_version);
1244 package->api_version = NULL;
1246 if (package->support_disable) {
1247 free((void *)package->support_disable);
1248 package->support_disable = NULL;
1252 if (package->icon) {
1253 icon_x *icon = package->icon;
1255 while(icon != NULL) {
1257 __ps_free_icon(icon);
1262 if (package->label) {
1263 label_x *label = package->label;
1264 label_x *tmp = NULL;
1265 while(label != NULL) {
1267 __ps_free_label(label);
1272 if (package->author) {
1273 author_x *author = package->author;
1274 author_x *tmp = NULL;
1275 while(author != NULL) {
1277 __ps_free_author(author);
1281 /*Free Description*/
1282 if (package->description) {
1283 description_x *description = package->description;
1284 description_x *tmp = NULL;
1285 while(description != NULL) {
1286 tmp = description->next;
1287 __ps_free_description(description);
1292 if (package->license) {
1293 license_x *license = package->license;
1294 license_x *tmp = NULL;
1295 while(license != NULL) {
1296 tmp = license->next;
1297 __ps_free_license(license);
1302 if (package->privileges) {
1303 privileges_x *privileges = package->privileges;
1304 privileges_x *tmp = NULL;
1305 while(privileges != NULL) {
1306 tmp = privileges->next;
1307 __ps_free_privileges(privileges);
1311 /*Free UiApplication*/
1312 if (package->uiapplication) {
1313 uiapplication_x *uiapplication = package->uiapplication;
1314 uiapplication_x *tmp = NULL;
1315 while(uiapplication != NULL) {
1316 tmp = uiapplication->next;
1317 __ps_free_uiapplication(uiapplication);
1318 uiapplication = tmp;
1321 /*Free ServiceApplication*/
1322 if (package->serviceapplication) {
1323 serviceapplication_x *serviceapplication = package->serviceapplication;
1324 serviceapplication_x *tmp = NULL;
1325 while(serviceapplication != NULL) {
1326 tmp = serviceapplication->next;
1327 __ps_free_serviceapplication(serviceapplication);
1328 serviceapplication = tmp;
1332 if (package->daemon) {
1333 daemon_x *daemon = package->daemon;
1334 daemon_x *tmp = NULL;
1335 while(daemon != NULL) {
1337 __ps_free_daemon(daemon);
1342 if (package->theme) {
1343 theme_x *theme = package->theme;
1344 theme_x *tmp = NULL;
1345 while(theme != NULL) {
1347 __ps_free_theme(theme);
1352 if (package->font) {
1353 font_x *font = package->font;
1355 while(font != NULL) {
1357 __ps_free_font(font);
1363 ime_x *ime = package->ime;
1365 while(ime != NULL) {
1371 /*Free Compatibility*/
1372 if (package->compatibility) {
1373 compatibility_x *compatibility = package->compatibility;
1374 compatibility_x *tmp = NULL;
1375 while(compatibility != NULL) {
1376 tmp = compatibility->next;
1377 __ps_free_compatibility(compatibility);
1378 compatibility = tmp;
1381 /*Free DeviceProfile*/
1382 if (package->deviceprofile) {
1383 deviceprofile_x *deviceprofile = package->deviceprofile;
1384 deviceprofile_x *tmp = NULL;
1385 while(deviceprofile != NULL) {
1386 tmp = deviceprofile->next;
1387 __ps_free_deviceprofile(deviceprofile);
1388 deviceprofile = tmp;
1391 free((void*)package);