More crash-resistant on network failure (patch from Lekensteyn)
[ppastats.git] / src / lp_json.c
index 7cd0a86..bb876f8 100644 (file)
@@ -144,7 +144,7 @@ json_object_to_binary_package_publishing_history_list(json_object *o)
                        distro = get_distro_arch_series
                                (h->distro_arch_series_link);
 
-                       if (!distro->is_nominated_arch_indep) {
+                       if (!distro || !distro->is_nominated_arch_indep) {
                                binary_package_publishing_history_free(h);
                                continue ;
                        }
@@ -174,9 +174,13 @@ json_object_to_daily_download_total(const char *d, json_object *o_c)
 static int json_object_get_fields_count(json_object *o)
 {
        int n = 0;
+       struct lh_entry *entry;
 
-       json_object_object_foreach(o, key, val)
+       entry = json_object_get_object(o)->head;
+       while (entry) {
+               entry = entry->next;
                n++;
+       }
 
        return n;
 }