diff options
Diffstat (limited to 'lib/history/ephy-history-service-urls-table.c')
-rw-r--r-- | lib/history/ephy-history-service-urls-table.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/history/ephy-history-service-urls-table.c b/lib/history/ephy-history-service-urls-table.c index 5473894d5..75d98ea0c 100644 --- a/lib/history/ephy-history-service-urls-table.c +++ b/lib/history/ephy-history-service-urls-table.c @@ -252,6 +252,9 @@ ephy_history_service_find_url_rows (EphyHistoryService *self, EphyHistoryQuery * statement_str = g_string_append (statement_str, "WHERE "); } + if (query->host > 0) + statement_str = g_string_append (statement_str, "urls.host = ? AND "); + for (substring = query->substring_list; substring != NULL; substring = substring->next) statement_str = g_string_append (statement_str, "(urls.url LIKE ? OR urls.title LIKE ?) AND "); @@ -298,6 +301,14 @@ ephy_history_service_find_url_rows (EphyHistoryService *self, EphyHistoryQuery * return NULL; } } + if (query->host > 0) { + if (ephy_sqlite_statement_bind_int (statement, i++, (int)query->host, &error) == FALSE) { + g_error ("Could not build urls table query statement: %s", error->message); + g_error_free (error); + g_object_unref (statement); + return NULL; + } + } for (substring = query->substring_list; substring != NULL; substring = substring->next) { char *string = g_strdup_printf ("%%%s%%", (char*)substring->data); if (ephy_sqlite_statement_bind_string (statement, i++, string, &error) == FALSE) { |