|
@@ -277,14 +277,14 @@ NSString *_Nonnull FIRMessagingStringFromSQLiteResult(int result) {
|
|
|
- (FIRMessagingPersistentSyncMessage *)querySyncMessageWithRmqID:(NSString *)rmqID {
|
|
- (FIRMessagingPersistentSyncMessage *)querySyncMessageWithRmqID:(NSString *)rmqID {
|
|
|
__block FIRMessagingPersistentSyncMessage *persistentMessage;
|
|
__block FIRMessagingPersistentSyncMessage *persistentMessage;
|
|
|
dispatch_sync(_databaseOperationQueue, ^{
|
|
dispatch_sync(_databaseOperationQueue, ^{
|
|
|
- NSString *queryFormat = @"SELECT %@ FROM %@ WHERE %@ = '%@'";
|
|
|
|
|
|
|
+ NSString *queryFormat = @"SELECT %@ FROM %@ WHERE %@ = ?";
|
|
|
NSString *query =
|
|
NSString *query =
|
|
|
[NSString stringWithFormat:queryFormat,
|
|
[NSString stringWithFormat:queryFormat,
|
|
|
kSyncMessagesColumns, // SELECT (rmq_id, expiration_ts,
|
|
kSyncMessagesColumns, // SELECT (rmq_id, expiration_ts,
|
|
|
// apns_recv, mcs_recv)
|
|
// apns_recv, mcs_recv)
|
|
|
kTableSyncMessages, // FROM sync_rmq
|
|
kTableSyncMessages, // FROM sync_rmq
|
|
|
- kRmqIdColumn, // WHERE rmq_id
|
|
|
|
|
- rmqID];
|
|
|
|
|
|
|
+ kRmqIdColumn // WHERE rmq_id
|
|
|
|
|
+ ];
|
|
|
|
|
|
|
|
sqlite3_stmt *stmt;
|
|
sqlite3_stmt *stmt;
|
|
|
if (sqlite3_prepare_v2(self->_database, [query UTF8String], -1, &stmt, NULL) != SQLITE_OK) {
|
|
if (sqlite3_prepare_v2(self->_database, [query UTF8String], -1, &stmt, NULL) != SQLITE_OK) {
|
|
@@ -293,6 +293,13 @@ NSString *_Nonnull FIRMessagingStringFromSQLiteResult(int result) {
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ if (sqlite3_bind_text(stmt, 1, [rmqID UTF8String], (int)[rmqID length], SQLITE_STATIC) !=
|
|
|
|
|
+ SQLITE_OK) {
|
|
|
|
|
+ [self logError];
|
|
|
|
|
+ sqlite3_finalize(stmt);
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
const int rmqIDColumn = 0;
|
|
const int rmqIDColumn = 0;
|
|
|
const int expirationTimestampColumn = 1;
|
|
const int expirationTimestampColumn = 1;
|
|
|
const int apnsReceivedColumn = 2;
|
|
const int apnsReceivedColumn = 2;
|