зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1139830 - Make type/id/payload nullable in MozNDEFRecordOptions. r=smaug
This commit is contained in:
Родитель
38c3210ae5
Коммит
642ea0f3ee
|
@ -250,13 +250,13 @@ MozNDEFRecord::ReadStructuredClone(JSContext* aCx, JSStructuredCloneReader* aRea
|
|||
}
|
||||
|
||||
void
|
||||
MozNDEFRecord::InitType(JSContext* aCx, const Optional<Uint8Array>& aType)
|
||||
MozNDEFRecord::InitType(JSContext* aCx, const Optional<Nullable<Uint8Array>>& aType)
|
||||
{
|
||||
if (!aType.WasPassed()) {
|
||||
if (!aType.WasPassed() || aType.Value().IsNull()) {
|
||||
return;
|
||||
}
|
||||
|
||||
const Uint8Array& type = aType.Value();
|
||||
const Uint8Array& type = aType.Value().Value();
|
||||
type.ComputeLengthAndData();
|
||||
mType = Uint8Array::Create(aCx, this, type.Length(), type.Data());
|
||||
IncSize(type.Length());
|
||||
|
@ -279,13 +279,13 @@ MozNDEFRecord::InitType(JSContext* aCx, JSObject& aType, uint32_t aLen)
|
|||
}
|
||||
|
||||
void
|
||||
MozNDEFRecord::InitId(JSContext* aCx, const Optional<Uint8Array>& aId)
|
||||
MozNDEFRecord::InitId(JSContext* aCx, const Optional<Nullable<Uint8Array>>& aId)
|
||||
{
|
||||
if (!aId.WasPassed()) {
|
||||
if (!aId.WasPassed() || aId.Value().IsNull()) {
|
||||
return;
|
||||
}
|
||||
|
||||
const Uint8Array& id = aId.Value();
|
||||
const Uint8Array& id = aId.Value().Value();
|
||||
id.ComputeLengthAndData();
|
||||
mId = Uint8Array::Create(aCx, this, id.Length(), id.Data());
|
||||
IncSize(1 /* id_length */ + id.Length());
|
||||
|
@ -299,13 +299,13 @@ MozNDEFRecord::InitId(JSContext* aCx, JSObject& aId, uint32_t aLen)
|
|||
}
|
||||
|
||||
void
|
||||
MozNDEFRecord::InitPayload(JSContext* aCx, const Optional<Uint8Array>& aPayload)
|
||||
MozNDEFRecord::InitPayload(JSContext* aCx, const Optional<Nullable<Uint8Array>>& aPayload)
|
||||
{
|
||||
if (!aPayload.WasPassed()) {
|
||||
if (!aPayload.WasPassed() || aPayload.Value().IsNull()) {
|
||||
return;
|
||||
}
|
||||
|
||||
const Uint8Array& payload = aPayload.Value();
|
||||
const Uint8Array& payload = aPayload.Value().Value();
|
||||
payload.ComputeLengthAndData();
|
||||
mPayload = Uint8Array::Create(aCx, this, payload.Length(), payload.Data());
|
||||
IncSizeForPayload(payload.Length());
|
||||
|
|
|
@ -103,12 +103,12 @@ private:
|
|||
nsRefPtr<nsISupports> mParent;
|
||||
void HoldData();
|
||||
void DropData();
|
||||
void InitType(JSContext* aCx, const Optional<Uint8Array>& aType);
|
||||
void InitType(JSContext* aCx, const Optional<Nullable<Uint8Array>>& aType);
|
||||
void InitType(JSContext* aCx, const RTD rtd);
|
||||
void InitType(JSContext* aCx, JSObject& aType, uint32_t aLen);
|
||||
void InitId(JSContext* aCx, const Optional<Uint8Array>& aId);
|
||||
void InitId(JSContext* aCx, const Optional<Nullable<Uint8Array>>& aId);
|
||||
void InitId(JSContext* aCx, JSObject& aId, uint32_t aLen);
|
||||
void InitPayload(JSContext* aCx, const Optional<Uint8Array>& aPayload);
|
||||
void InitPayload(JSContext* aCx, const Optional<Nullable<Uint8Array>>& aPayload);
|
||||
void InitPayload(JSContext* aCx, const nsAString& aUri);
|
||||
void InitPayload(JSContext* aCx, JSObject& aPayload, uint32_t aLen);
|
||||
void IncSize(uint32_t aCount);
|
||||
|
|
|
@ -58,20 +58,23 @@ struct CommandOptions
|
|||
NDEFRecordStruct record;
|
||||
record.mTnf = currentValue[i].mTnf;
|
||||
|
||||
if (currentValue[i].mType.WasPassed()) {
|
||||
const dom::Uint8Array& type = currentValue[i].mType.Value();
|
||||
if (currentValue[i].mType.WasPassed() &&
|
||||
!currentValue[i].mType.Value().IsNull()) {
|
||||
const dom::Uint8Array& type = currentValue[i].mType.Value().Value();
|
||||
type.ComputeLengthAndData();
|
||||
record.mType.AppendElements(type.Data(), type.Length());
|
||||
}
|
||||
|
||||
if (currentValue[i].mId.WasPassed()) {
|
||||
const dom::Uint8Array& id = currentValue[i].mId.Value();
|
||||
if (currentValue[i].mId.WasPassed() &&
|
||||
!currentValue[i].mId.Value().IsNull()) {
|
||||
const dom::Uint8Array& id = currentValue[i].mId.Value().Value();
|
||||
id.ComputeLengthAndData();
|
||||
record.mId.AppendElements(id.Data(), id.Length());
|
||||
}
|
||||
|
||||
if (currentValue[i].mPayload.WasPassed()) {
|
||||
const dom::Uint8Array& payload = currentValue[i].mPayload.Value();
|
||||
if (currentValue[i].mPayload.WasPassed() &&
|
||||
!currentValue[i].mPayload.Value().IsNull()) {
|
||||
const dom::Uint8Array& payload = currentValue[i].mPayload.Value().Value();
|
||||
payload.ComputeLengthAndData();
|
||||
record.mPayload.AppendElements(payload.Data(), payload.Length());
|
||||
}
|
||||
|
|
|
@ -161,17 +161,17 @@ public:
|
|||
|
||||
if (recordStruct.mType.Length() > 0) {
|
||||
record.mType.Construct();
|
||||
record.mType.Value().Init(Uint8Array::Create(cx, recordStruct.mType.Length(), recordStruct.mType.Elements()));
|
||||
record.mType.Value().SetValue().Init(Uint8Array::Create(cx, recordStruct.mType.Length(), recordStruct.mType.Elements()));
|
||||
}
|
||||
|
||||
if (recordStruct.mId.Length() > 0) {
|
||||
record.mId.Construct();
|
||||
record.mId.Value().Init(Uint8Array::Create(cx, recordStruct.mId.Length(), recordStruct.mId.Elements()));
|
||||
record.mId.Value().SetValue().Init(Uint8Array::Create(cx, recordStruct.mId.Length(), recordStruct.mId.Elements()));
|
||||
}
|
||||
|
||||
if (recordStruct.mPayload.Length() > 0) {
|
||||
record.mPayload.Construct();
|
||||
record.mPayload.Value().Init(Uint8Array::Create(cx, recordStruct.mPayload.Length(), recordStruct.mPayload.Elements()));
|
||||
record.mPayload.Value().SetValue().Init(Uint8Array::Create(cx, recordStruct.mPayload.Length(), recordStruct.mPayload.Elements()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -118,7 +118,7 @@ interface MozNDEFRecord
|
|||
|
||||
dictionary MozNDEFRecordOptions {
|
||||
TNF tnf = "empty";
|
||||
Uint8Array type;
|
||||
Uint8Array id;
|
||||
Uint8Array payload;
|
||||
Uint8Array? type;
|
||||
Uint8Array? id;
|
||||
Uint8Array? payload;
|
||||
};
|
||||
|
|
Загрузка…
Ссылка в новой задаче