- Revert: Change index parameter types from int to size_t to make 0-based range implicit.

- Add checks that index values are >= 0.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@409 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
Marshall Greenblatt
2011-12-08 10:22:15 +00:00
parent 64e08c2918
commit ef64033467
15 changed files with 137 additions and 51 deletions

View File

@@ -851,13 +851,17 @@ bool CefV8ValueImpl::HasValue(const CefString& key)
return obj->Has(GetV8String(key));
}
bool CefV8ValueImpl::HasValue(size_t index)
bool CefV8ValueImpl::HasValue(int index)
{
CEF_REQUIRE_UI_THREAD(false);
if(!GetHandle()->IsObject()) {
NOTREACHED() << "V8 value is not an object";
return false;
}
if (index < 0) {
NOTREACHED() << "invalid input parameter";
return false;
}
v8::HandleScope handle_scope;
v8::Local<v8::Object> obj = GetHandle()->ToObject();
@@ -882,13 +886,17 @@ bool CefV8ValueImpl::DeleteValue(const CefString& key)
return obj->Delete(GetV8String(key));
}
bool CefV8ValueImpl::DeleteValue(size_t index)
bool CefV8ValueImpl::DeleteValue(int index)
{
CEF_REQUIRE_UI_THREAD(false);
if(!GetHandle()->IsObject()) {
NOTREACHED() << "V8 value is not an object";
return false;
}
if (index < 0) {
NOTREACHED() << "invalid input parameter";
return false;
}
v8::HandleScope handle_scope;
v8::Local<v8::Object> obj = GetHandle()->ToObject();
@@ -913,13 +921,17 @@ CefRefPtr<CefV8Value> CefV8ValueImpl::GetValue(const CefString& key)
return new CefV8ValueImpl(obj->Get(GetV8String(key)));
}
CefRefPtr<CefV8Value> CefV8ValueImpl::GetValue(size_t index)
CefRefPtr<CefV8Value> CefV8ValueImpl::GetValue(int index)
{
CEF_REQUIRE_UI_THREAD(NULL);
if(!GetHandle()->IsObject()) {
NOTREACHED() << "V8 value is not an object";
return NULL;
}
if (index < 0) {
NOTREACHED() << "invalid input parameter";
return false;
}
v8::HandleScope handle_scope;
v8::Local<v8::Object> obj = GetHandle()->ToObject();
@@ -948,7 +960,7 @@ bool CefV8ValueImpl::SetValue(const CefString& key,
}
}
bool CefV8ValueImpl::SetValue(size_t index, CefRefPtr<CefV8Value> value)
bool CefV8ValueImpl::SetValue(int index, CefRefPtr<CefV8Value> value)
{
CEF_REQUIRE_UI_THREAD(false);
@@ -956,6 +968,10 @@ bool CefV8ValueImpl::SetValue(size_t index, CefRefPtr<CefV8Value> value)
NOTREACHED() << "V8 value is not an object";
return false;
}
if (index < 0) {
NOTREACHED() << "invalid input parameter";
return false;
}
CefV8ValueImpl *impl = static_cast<CefV8ValueImpl*>(value.get());
if(impl) {