Gitweb links:

...log 
http://git.netsurf-browser.org/netsurf.git/shortlog/94de23dce9b4cb490bcaf08433c6ba75abf4a29c
...commit 
http://git.netsurf-browser.org/netsurf.git/commit/94de23dce9b4cb490bcaf08433c6ba75abf4a29c
...tree 
http://git.netsurf-browser.org/netsurf.git/tree/94de23dce9b4cb490bcaf08433c6ba75abf4a29c

The branch, master has been updated
       via  94de23dce9b4cb490bcaf08433c6ba75abf4a29c (commit)
       via  9176d3233fc395f579a33484ed714649e1fd8f46 (commit)
      from  6a2675557690a7eeab7b5c4ca70a80fd194e6466 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commitdiff 
http://git.netsurf-browser.org/netsurf.git/commit/?id=94de23dce9b4cb490bcaf08433c6ba75abf4a29c
commit 94de23dce9b4cb490bcaf08433c6ba75abf4a29c
Author: Vincent Sanders <[email protected]>
Commit: Vincent Sanders <[email protected]>

    add more tests for partial iterator in url database

diff --git a/test/urldbtest.c b/test/urldbtest.c
index 67f833e..bc707ed 100644
--- a/test/urldbtest.c
+++ b/test/urldbtest.c
@@ -483,12 +483,20 @@ END_TEST
 /**
  * iterate through partial matches
  */
-START_TEST(urldb_iterate_partial_test)
+START_TEST(urldb_iterate_partial_www_test)
 {
        cb_count = 0;
        urldb_iterate_partial("www", urldb_iterate_entries_cb);
        ck_assert_int_eq(cb_count, 7);
 
+}
+END_TEST
+
+/**
+ * iterate through partial matches
+ */
+START_TEST(urldb_iterate_partial_nomatch_test)
+{
        cb_count = 0;
        urldb_iterate_partial("/", urldb_iterate_entries_cb);
        ck_assert_int_eq(cb_count, 0);
@@ -496,6 +504,62 @@ START_TEST(urldb_iterate_partial_test)
 }
 END_TEST
 
+/**
+ * iterate through partial matches
+ */
+START_TEST(urldb_iterate_partial_add_test)
+{
+       nsurl *url;
+
+       cb_count = 0;
+       urldb_iterate_partial("wikipedia", urldb_iterate_entries_cb);
+       ck_assert_int_eq(cb_count, 0);
+
+       url = make_url(wikipedia_url);
+       urldb_add_url(url);
+       nsurl_unref(url);
+
+       cb_count = 0;
+       urldb_iterate_partial("wikipedia", urldb_iterate_entries_cb);
+       ck_assert_int_eq(cb_count, 1);
+}
+END_TEST
+
+/**
+ * iterate through partial matches
+ */
+START_TEST(urldb_iterate_partial_path_test)
+{
+
+       cb_count = 0;
+       urldb_iterate_partial("en.wikipedia.org/wiki", 
urldb_iterate_entries_cb);
+       ck_assert_int_eq(cb_count, 2);
+}
+END_TEST
+
+/**
+ * iterate through partial matches
+ */
+START_TEST(urldb_iterate_partial_numeric_test)
+{
+       nsurl *url;
+
+       cb_count = 0;
+       urldb_iterate_partial("192.168.7.1/", urldb_iterate_entries_cb);
+       ck_assert_int_eq(cb_count, 0);
+
+       url = make_url("http://192.168.7.1/index.html";);
+       urldb_add_url(url);
+       nsurl_unref(url);
+
+       cb_count = 0;
+       urldb_iterate_partial("192.168.7.1/", urldb_iterate_entries_cb);
+       ck_assert_int_eq(cb_count, 1);
+
+
+}
+END_TEST
+
 START_TEST(urldb_auth_details_test)
 {
        nsurl *url;
@@ -509,7 +573,6 @@ START_TEST(urldb_auth_details_test)
        ck_assert_str_eq(res, auth);
 
        nsurl_unref(url);
-
 }
 END_TEST
 
@@ -623,7 +686,11 @@ static TCase *urldb_case_create(void)
                                  urldb_teardown);
 
        tcase_add_test(tc, urldb_iterate_entries_test);
-       tcase_add_test(tc, urldb_iterate_partial_test);
+       tcase_add_test(tc, urldb_iterate_partial_www_test);
+       tcase_add_test(tc, urldb_iterate_partial_nomatch_test);
+       tcase_add_test(tc, urldb_iterate_partial_add_test);
+       tcase_add_test(tc, urldb_iterate_partial_path_test);
+       tcase_add_test(tc, urldb_iterate_partial_numeric_test);
        tcase_add_test(tc, urldb_auth_details_test);
        tcase_add_test(tc, urldb_thumbnail_test);
        tcase_add_test(tc, urldb_cert_permissions_test);
@@ -716,6 +783,16 @@ START_TEST(urldb_api_add_host_assert_test)
 END_TEST
 
 /**
+ * test url database finalisation without initialisation.
+ */
+START_TEST(urldb_api_destroy_no_init_test)
+{
+       urldb_destroy();
+}
+END_TEST
+
+
+/**
  * test case for urldb API including error returns and asserts
  */
 static TCase *urldb_api_case_create(void)
@@ -727,6 +804,9 @@ static TCase *urldb_api_case_create(void)
                                    urldb_api_add_host_assert_test,
                                    6);
 
+       tcase_add_test(tc, urldb_api_destroy_no_init_test);
+
+
        return tc;
 }
 


commitdiff 
http://git.netsurf-browser.org/netsurf.git/commit/?id=9176d3233fc395f579a33484ed714649e1fd8f46
commit 9176d3233fc395f579a33484ed714649e1fd8f46
Author: Vincent Sanders <[email protected]>
Commit: Vincent Sanders <[email protected]>

    ensure url database destructor cleans up correctly

diff --git a/content/urldb.c b/content/urldb.c
index 12a3d41..8c2a3ae 100644
--- a/content/urldb.c
+++ b/content/urldb.c
@@ -2480,8 +2480,10 @@ void urldb_destroy(void)
 
        /* Clean up search trees */
        for (i = 0; i < NUM_SEARCH_TREES; i++) {
-               if (search_trees[i] != &empty)
+               if (search_trees[i] != &empty) {
                        urldb_destroy_search_tree(search_trees[i]);
+                       search_trees[i] = &empty;
+               }
        }
 
        /* And database */
@@ -2489,10 +2491,13 @@ void urldb_destroy(void)
                b = a->next;
                urldb_destroy_host_tree(a);
        }
+       memset(&db_root, 0, sizeof(db_root));
 
        /* And the bloom filter */
-       if (url_bloom != NULL)
+       if (url_bloom != NULL) {
                bloom_destroy(url_bloom);
+               url_bloom = NULL;
+       }
 }
 
 


-----------------------------------------------------------------------

Summary of changes:
 content/urldb.c  |    9 ++++--
 test/urldbtest.c |   86 ++++++++++++++++++++++++++++++++++++++++++++++++++++--
 2 files changed, 90 insertions(+), 5 deletions(-)

diff --git a/content/urldb.c b/content/urldb.c
index 12a3d41..8c2a3ae 100644
--- a/content/urldb.c
+++ b/content/urldb.c
@@ -2480,8 +2480,10 @@ void urldb_destroy(void)
 
        /* Clean up search trees */
        for (i = 0; i < NUM_SEARCH_TREES; i++) {
-               if (search_trees[i] != &empty)
+               if (search_trees[i] != &empty) {
                        urldb_destroy_search_tree(search_trees[i]);
+                       search_trees[i] = &empty;
+               }
        }
 
        /* And database */
@@ -2489,10 +2491,13 @@ void urldb_destroy(void)
                b = a->next;
                urldb_destroy_host_tree(a);
        }
+       memset(&db_root, 0, sizeof(db_root));
 
        /* And the bloom filter */
-       if (url_bloom != NULL)
+       if (url_bloom != NULL) {
                bloom_destroy(url_bloom);
+               url_bloom = NULL;
+       }
 }
 
 
diff --git a/test/urldbtest.c b/test/urldbtest.c
index 67f833e..bc707ed 100644
--- a/test/urldbtest.c
+++ b/test/urldbtest.c
@@ -483,12 +483,20 @@ END_TEST
 /**
  * iterate through partial matches
  */
-START_TEST(urldb_iterate_partial_test)
+START_TEST(urldb_iterate_partial_www_test)
 {
        cb_count = 0;
        urldb_iterate_partial("www", urldb_iterate_entries_cb);
        ck_assert_int_eq(cb_count, 7);
 
+}
+END_TEST
+
+/**
+ * iterate through partial matches
+ */
+START_TEST(urldb_iterate_partial_nomatch_test)
+{
        cb_count = 0;
        urldb_iterate_partial("/", urldb_iterate_entries_cb);
        ck_assert_int_eq(cb_count, 0);
@@ -496,6 +504,62 @@ START_TEST(urldb_iterate_partial_test)
 }
 END_TEST
 
+/**
+ * iterate through partial matches
+ */
+START_TEST(urldb_iterate_partial_add_test)
+{
+       nsurl *url;
+
+       cb_count = 0;
+       urldb_iterate_partial("wikipedia", urldb_iterate_entries_cb);
+       ck_assert_int_eq(cb_count, 0);
+
+       url = make_url(wikipedia_url);
+       urldb_add_url(url);
+       nsurl_unref(url);
+
+       cb_count = 0;
+       urldb_iterate_partial("wikipedia", urldb_iterate_entries_cb);
+       ck_assert_int_eq(cb_count, 1);
+}
+END_TEST
+
+/**
+ * iterate through partial matches
+ */
+START_TEST(urldb_iterate_partial_path_test)
+{
+
+       cb_count = 0;
+       urldb_iterate_partial("en.wikipedia.org/wiki", 
urldb_iterate_entries_cb);
+       ck_assert_int_eq(cb_count, 2);
+}
+END_TEST
+
+/**
+ * iterate through partial matches
+ */
+START_TEST(urldb_iterate_partial_numeric_test)
+{
+       nsurl *url;
+
+       cb_count = 0;
+       urldb_iterate_partial("192.168.7.1/", urldb_iterate_entries_cb);
+       ck_assert_int_eq(cb_count, 0);
+
+       url = make_url("http://192.168.7.1/index.html";);
+       urldb_add_url(url);
+       nsurl_unref(url);
+
+       cb_count = 0;
+       urldb_iterate_partial("192.168.7.1/", urldb_iterate_entries_cb);
+       ck_assert_int_eq(cb_count, 1);
+
+
+}
+END_TEST
+
 START_TEST(urldb_auth_details_test)
 {
        nsurl *url;
@@ -509,7 +573,6 @@ START_TEST(urldb_auth_details_test)
        ck_assert_str_eq(res, auth);
 
        nsurl_unref(url);
-
 }
 END_TEST
 
@@ -623,7 +686,11 @@ static TCase *urldb_case_create(void)
                                  urldb_teardown);
 
        tcase_add_test(tc, urldb_iterate_entries_test);
-       tcase_add_test(tc, urldb_iterate_partial_test);
+       tcase_add_test(tc, urldb_iterate_partial_www_test);
+       tcase_add_test(tc, urldb_iterate_partial_nomatch_test);
+       tcase_add_test(tc, urldb_iterate_partial_add_test);
+       tcase_add_test(tc, urldb_iterate_partial_path_test);
+       tcase_add_test(tc, urldb_iterate_partial_numeric_test);
        tcase_add_test(tc, urldb_auth_details_test);
        tcase_add_test(tc, urldb_thumbnail_test);
        tcase_add_test(tc, urldb_cert_permissions_test);
@@ -716,6 +783,16 @@ START_TEST(urldb_api_add_host_assert_test)
 END_TEST
 
 /**
+ * test url database finalisation without initialisation.
+ */
+START_TEST(urldb_api_destroy_no_init_test)
+{
+       urldb_destroy();
+}
+END_TEST
+
+
+/**
  * test case for urldb API including error returns and asserts
  */
 static TCase *urldb_api_case_create(void)
@@ -727,6 +804,9 @@ static TCase *urldb_api_case_create(void)
                                    urldb_api_add_host_assert_test,
                                    6);
 
+       tcase_add_test(tc, urldb_api_destroy_no_init_test);
+
+
        return tc;
 }
 


-- 
NetSurf Browser

_______________________________________________
netsurf-commits mailing list
[email protected]
http://listmaster.pepperfish.net/cgi-bin/mailman/listinfo/netsurf-commits-netsurf-browser.org

Reply via email to