Fix code generation for a null default value for nullable string arguments.

This commit is contained in:
Ms2ger 2014-03-20 22:51:31 +01:00
parent 7bfb15ec62
commit acffed2dcd
3 changed files with 3 additions and 4 deletions

View file

@ -702,8 +702,7 @@ def getJSToNativeConversionTemplate(type, descriptorProvider, failureCode=None,
if isinstance(defaultValue, IDLNullValue): if isinstance(defaultValue, IDLNullValue):
assert(type.nullable()) assert(type.nullable())
return handleDefault(conversionCode, return handleDefault(conversionCode, "${declName} = None;")
"${declName}.SetNull();")
value = "str::from_utf8(data).unwrap().to_owned()" value = "str::from_utf8(data).unwrap().to_owned()"
if type.nullable(): if type.nullable():

View file

@ -125,7 +125,7 @@ impl TestBinding {
pub fn PassOptionalNullableUnsignedLongLongWithDefault(&self, _: Option<u64>) {} pub fn PassOptionalNullableUnsignedLongLongWithDefault(&self, _: Option<u64>) {}
pub fn PassOptionalNullableFloatWithDefault(&self, _: Option<f32>) {} pub fn PassOptionalNullableFloatWithDefault(&self, _: Option<f32>) {}
pub fn PassOptionalNullableDoubleWithDefault(&self, _: Option<f64>) {} pub fn PassOptionalNullableDoubleWithDefault(&self, _: Option<f64>) {}
// pub fn PassOptionalNullableStringWithDefault(&self, _: Option<DOMString>) {} pub fn PassOptionalNullableStringWithDefault(&self, _: Option<DOMString>) {}
pub fn PassOptionalNullableInterfaceWithDefault(&self, _: Option<JS<Blob>>) {} pub fn PassOptionalNullableInterfaceWithDefault(&self, _: Option<JS<Blob>>) {}
pub fn PassOptionalAnyWithDefault(&self, _: *JSContext, _: JSVal) {} pub fn PassOptionalAnyWithDefault(&self, _: *JSContext, _: JSVal) {}

View file

@ -81,7 +81,7 @@ interface TestBinding {
void passOptionalNullableUnsignedLongWithDefault(optional unsigned long? arg = null); void passOptionalNullableUnsignedLongWithDefault(optional unsigned long? arg = null);
void passOptionalNullableLongLongWithDefault(optional long long? arg = null); void passOptionalNullableLongLongWithDefault(optional long long? arg = null);
void passOptionalNullableUnsignedLongLongWithDefault(optional unsigned long long? arg = null); void passOptionalNullableUnsignedLongLongWithDefault(optional unsigned long long? arg = null);
// void passOptionalNullableStringWithDefault(optional DOMString? arg = null); void passOptionalNullableStringWithDefault(optional DOMString? arg = null);
void passOptionalNullableInterfaceWithDefault(optional Blob? arg = null); void passOptionalNullableInterfaceWithDefault(optional Blob? arg = null);
void passOptionalAnyWithDefault(optional any arg = null); void passOptionalAnyWithDefault(optional any arg = null);