ObjFW  Diff

Differences From Artifact [551d38e4e9]:

To Artifact [5df99fa8e8]:


59
60
61
62
63
64
65
66
67
68



69
70
71
72
73
74

75
76
77
78
79
80
81
	return [ret autorelease];
}

+ (id)objectByDeserializingString: (OFString*)string
{
	OFAutoreleasePool *pool = [[OFAutoreleasePool alloc] init];
	OFXMLElement *root = [OFXMLElement elementWithXMLString: string];
	OFXMLElement *element;
	id object;




	if ([[root children] count] != 1)
		@throw [OFInvalidArgumentException newWithClass: self
						       selector: _cmd];

	element = [[root children] firstObject];
	object = [[self objectByDeserializingXMLElement: element] retain];


	@try {
		[pool release];
	} @catch (id e) {
		[object release];
		@throw e;
	}







|


>
>
>
|



<
|
>







59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75

76
77
78
79
80
81
82
83
84
	return [ret autorelease];
}

+ (id)objectByDeserializingString: (OFString*)string
{
	OFAutoreleasePool *pool = [[OFAutoreleasePool alloc] init];
	OFXMLElement *root = [OFXMLElement elementWithXMLString: string];
	OFArray *elements;
	id object;

	elements = [root elementsForName: @"object"
			       namespace: OF_SERIALIZATION_NS];

	if ([elements count] != 1)
		@throw [OFInvalidArgumentException newWithClass: self
						       selector: _cmd];


	object = [[self objectByDeserializingXMLElement: [elements firstObject]]
	    retain];

	@try {
		[pool release];
	} @catch (id e) {
		[object release];
		@throw e;
	}