Skip to content

Commit 84e2e2d

Browse files
committed
Fixes
- Incorrect dependency from package.json removed. - Better parameter checking of async batch execution
1 parent 263de99 commit 84e2e2d

2 files changed

Lines changed: 9 additions & 7 deletions

File tree

cpp/installer.cpp

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -233,19 +233,24 @@ void install(jsi::Runtime &rt, std::shared_ptr<react::CallInvoker> jsCallInvoker
233233
{
234234
if (sizeof(args) < 3)
235235
{
236-
return createError(rt, "[react-native-quick-sqlite][execSQLBatch] - Incorrect parameter count");
236+
return {};
237237
}
238238

239239
const jsi::Value &params = args[1];
240+
const jsi::Value &callbackHolder = args[2];
241+
if(!callbackHolder.isObject() || !callbackHolder.asObject(rt).isFunction(rt)) {
242+
return {};
243+
}
244+
240245
if (params.isNull() || params.isUndefined())
241246
{
242-
return createError(rt, "[react-native-quick-sqlite][execSQLBatch] - An array of SQL commands or parameters is needed");
247+
callbackHolder.asObject(rt).asFunction(rt).call(rt, createError(rt, "[react-native-quick-sqlite][execSQLBatch] - An array of SQL commands or parameters is needed"));
248+
return {};
243249
}
244250

245-
246251
const string dbName = args[0].asString(rt).utf8(rt);
247252
const jsi::Array &batchParams = params.asObject(rt).asArray(rt);
248-
auto callback = make_shared<jsi::Value>((args[2].asObject(rt)));
253+
auto callback = make_shared<jsi::Value>((callbackHolder.asObject(rt)));
249254

250255
vector<QuickQueryArguments> commands;
251256
jsiBatchParametersToQuickArguments(rt, batchParams, &commands);

package.json

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -138,8 +138,5 @@
138138
}
139139
]
140140
]
141-
},
142-
"dependencies": {
143-
"react-native-quick-sqlite": "file:///home/eduardo/Projetos/react/plugins/react-native-quick-sqlite"
144141
}
145142
}

0 commit comments

Comments
 (0)