{
LogDebug("entered");
-// AceSecurityStatus status = CONTACT_CHECK_ACCESS(controller->getContext(), CONTACT_FUNCTION_API_ADD);
+ bool js2ndParamIsString = false;
+
+// AceSecurityStatus status = CONTACT_CHECK_ACCESS(CONTACT_FUNCTION_API_ADD);
// TIZEN_SYNC_ACCESS_HANDLER(status, context, exception);
JSSortModePriv *priv = static_cast<JSSortModePriv*>(JSObjectGetPrivate(constructor));
BasicValidator validator = BasicValidatorFactory::getValidator(gContext, exception);
Try {
- if (argumentCount < 1 || argumentCount > 2)
+ if (argumentCount < 1)
ThrowMsg(InvalidArgumentException, "Wrong arguments count.");
if (!JSValueIsString(gContext, arguments[0]))
if (argumentCount >= 2)
{
- if (!JSValueIsString(gContext, arguments[1]) && !JSValueIsNull(gContext, arguments[1]))
+ if (JSValueIsString(gContext, arguments[1]))
+ js2ndParamIsString = true;
+
+ if (!js2ndParamIsString &&
+ !JSValueIsNull(gContext, arguments[1]) &&
+ !JSValueIsUndefined(gContext, arguments[1]))
ThrowMsg(InvalidArgumentException, "2nd argument is not string.");
}
- // 3rd argument can be any type.
-
} Catch(Exception ) {
LogError("Argument type mismatch : " << _rethrown_exception.GetMessage());
*exception = JSTizenExceptionFactory::makeErrorObject(context, JSTizenException::TYPE_MISMATCH_ERROR, "Wrong arguments");
}
Try {
- sortOrder = ASCENDING_SORT_ORDER;
- if(argumentCount >= 2)
- {
- if(JSValueIsString(gContext, arguments[1]))
- sortOrder = converter->toSortOrder(arguments[1]);
- }
+ if(js2ndParamIsString)
+ sortOrder = converter->toSortOrder(arguments[1]);
+ else
+ sortOrder = ASCENDING_SORT_ORDER;
+
} Catch(Exception) {
LogError("Argument type mismatch : " << _rethrown_exception.GetMessage());
*exception = JSTizenExceptionFactory::makeErrorObject(context, JSTizenException::TYPE_MISMATCH_ERROR, "Wrong arguments");