void DispatchReplySuccess(BluetoothReplyRunnable* aRunnable, const BluetoothValue& aValue) { MOZ_ASSERT(aRunnable); MOZ_ASSERT(aValue.type() != BluetoothValue::T__None); BluetoothReply* reply = new BluetoothReply(BluetoothReplySuccess(aValue)); aRunnable->SetReply(reply); // runnable will delete reply after Run() NS_WARN_IF(NS_FAILED(NS_DispatchToMainThread(aRunnable))); }
void DispatchBluetoothReply(BluetoothReplyRunnable* aRunnable, const BluetoothValue& aValue, const enum BluetoothStatus aStatusCode) { // Reply will be deleted by the runnable after running on main thread BluetoothReply* reply; if (aStatusCode != STATUS_SUCCESS) { reply = new BluetoothReply(BluetoothReplyError(aStatusCode, EmptyString())); } else { MOZ_ASSERT(aValue.type() != BluetoothValue::T__None); reply = new BluetoothReply(BluetoothReplySuccess(aValue)); } aRunnable->SetReply(reply); if (NS_FAILED(NS_DispatchToMainThread(aRunnable))) { BT_WARNING("Failed to dispatch to main thread!"); } }
void DispatchBluetoothReply(BluetoothReplyRunnable* aRunnable, const BluetoothValue& aValue, const nsAString& aErrorStr) { // Reply will be deleted by the runnable after running on main thread BluetoothReply* reply; if (!aErrorStr.IsEmpty()) { nsString err(aErrorStr); reply = new BluetoothReply(BluetoothReplyError(err)); } else { MOZ_ASSERT(aValue.type() != BluetoothValue::T__None); reply = new BluetoothReply(BluetoothReplySuccess(aValue)); } aRunnable->SetReply(reply); if (NS_FAILED(NS_DispatchToMainThread(aRunnable))) { NS_WARNING("Failed to dispatch to main thread!"); } }