rendered paste bodydiff --git a/components/library/localdatabase/src/sbLocalDatabaseLibrary.cpp b/components/library/localdatabase/src/sbLocalDatabaseLibrary.cpp
index 24cb9e3..d742a64 100644
--- a/components/library/localdatabase/src/sbLocalDatabaseLibrary.cpp
+++ b/components/library/localdatabase/src/sbLocalDatabaseLibrary.cpp
@@ -660,6 +660,14 @@ nsresult sbLocalDatabaseLibrary::CreateQueries()
values (?, ?, ?, ?, ?, ?, ?)"), getter_AddRefs(mCreateMediaItemPreparedStatement));
NS_ENSURE_SUCCESS(rv, rv);
+ query->PrepareQuery(NS_LITERAL_STRING("\
+ SELECT _mlt.type \
+ FROM media_items as _mi \
+ LEFT JOIN media_list_types as _mlt ON _mi.media_list_type_id = _mlt.media_list_type_id \
+ WHERE _mi.guid = ?"),
+ getter_AddRefs(mGetTypeForGUID));
+ NS_ENSURE_SUCCESS(rv, rv);
+
return NS_OK;
}
/**
@@ -892,11 +900,7 @@ sbLocalDatabaseLibrary::GetTypeForGUID(const nsAString& aGUID,
nsresult rv = MakeStandardQuery(getter_AddRefs(query));
NS_ENSURE_SUCCESS(rv, rv);
- rv = query->AddQuery(NS_LITERAL_STRING("\
- SELECT _mlt.type \
- FROM media_items as _mi \
- LEFT JOIN media_list_types as _mlt ON _mi.media_list_type_id = _mlt.media_list_type_id \
- WHERE _mi.guid = ?"));
+ rv = query->AddPreparedStatement(mGetTypeForGUID);
NS_ENSURE_SUCCESS(rv, rv);
rv = query->BindStringParameter(0, aGUID);
diff --git a/components/library/localdatabase/src/sbLocalDatabaseLibrary.h b/components/library/localdatabase/src/sbLocalDatabaseLibrary.h
index 9ebd0c9..5e5fe39 100644
--- a/components/library/localdatabase/src/sbLocalDatabaseLibrary.h
+++ b/components/library/localdatabase/src/sbLocalDatabaseLibrary.h
@@ -343,6 +343,7 @@ private:
nsCOMPtr<nsIURI> mContentSrc;
nsCOMPtr<sbIDatabasePreparedStatement> mCreateMediaItemPreparedStatement;
+ nsCOMPtr<sbIDatabasePreparedStatement> mGetTypeForGUID;
// There's a separate update statement for each top level property.
// This is because we have no efficient way to /not/ update a property