ObjFW  Check-in [89db847794]

Overview
Comment:Apple allows BOOL copy to be 2 for mutableCopy on properties.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 89db8477949eb3c86798b9df32bc84defd53a4cd9116024d120c7bb51a742150
User & Date: js on 2010-01-22 18:55:38
Other Links: manifest | tags
Context
2010-01-23
11:25
Make -[readLineWithEncoding:] compatible with \r\n linebreaks. check-in: 1421bc837b user: js tags: trunk
2010-01-22
18:55
Apple allows BOOL copy to be 2 for mutableCopy on properties. check-in: 89db847794 user: js tags: trunk
18:52
Differentiate more between OFArray and OFMutableArray in tests. check-in: 7e47fcb96a user: js tags: trunk
Changes

Modified src/objc_properties.m from [11db8370a9] to [432d7c935c].

33
34
35
36
37
38
39


40







41
42
43
44
45
46
47


48







49
50
    BOOL copy)
{
	if (atomic) {
		@synchronized ((atomic ? self : nil)) {
			id *ptr = (id*)((char*)self + offset);
			id old = *ptr;



			*ptr = (copy ? [value copy] : [value retain]);







			[old release];
		}
	}

	id *ptr = (id*)((char*)self + offset);
	id old = *ptr;



	*ptr = (copy ? [value copy] : [value retain]);







	[old release];
}







>
>
|
>
>
>
>
>
>
>







>
>
|
>
>
>
>
>
>
>


33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
    BOOL copy)
{
	if (atomic) {
		@synchronized ((atomic ? self : nil)) {
			id *ptr = (id*)((char*)self + offset);
			id old = *ptr;

			switch (copy) {
			case 0:
				*ptr = [value retain];
				break;
			case 2:
				*ptr = [value mutableCopy];
				break;
			default:
				*ptr = [value copy];
			}
			[old release];
		}
	}

	id *ptr = (id*)((char*)self + offset);
	id old = *ptr;

	switch (copy) {
	case 0:
		*ptr = [value retain];
		break;
	case 2:
		*ptr = [value mutableCopy];
		break;
	default:
		*ptr = [value copy];
	}
	[old release];
}