# HG changeset patch # User Jacob Carlborg # Date 1286217765 -7200 # Node ID 963b756ed579bcd1480b06b19013a17f1b9dd591 # Parent 8ab9588b92bf8954a3662063cf72f54a121b67cc# Parent 51f05fd6a6262357eaa348ce55517d8c3dcf28a5 Resolved merge conflicts. diff -r 51f05fd6a626 -r 963b756ed579 orange/serialization/archives/XMLArchive.d --- a/orange/serialization/archives/XMLArchive.d Mon Oct 04 20:18:02 2010 +0200 +++ b/orange/serialization/archives/XMLArchive.d Mon Oct 04 20:42:45 2010 +0200 @@ -418,14 +418,14 @@ auto runtimeType = getValueOfAttribute(Attributes.runtimeTypeAttribute); if (!runtimeType) - return T.init; + return T.init; auto name = fromDataType!(string)(runtimeType); id = getValueOfAttribute(Attributes.idAttribute); if (!id) return T.init; - + T result = cast(T) newInstance(name); addUnarchivedReference(result, id); @@ -458,6 +458,9 @@ auto value = fromDataType!(T)(element.value); slice.id = getValueOfAttribute(Attributes.idAttribute, element); + if (!slice.id) + return T.init; + addUnarchivedSlice(value, slice.id); return value; @@ -658,7 +661,7 @@ errorCallback(new ArchiveException(`Could not unarchive the value of the attribute "` ~ to!(string)(attribute) ~ `" due to malformed data.`, __FILE__, __LINE__), [attribute]); } } - + return null; }