ObjFW  Check-in [63c5c7d501]

Overview
Comment:Fix a missing return in objc_setProperty.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 63c5c7d5013a1a674f1ab1632494ab7d54f0bee055d76801882c33fc9394bdd8
User & Date: js on 2010-01-24 20:07:53
Other Links: manifest | tags
Context
2010-01-25
15:22
Make retain counter 32 bit due to atomic ops being 32 bit. check-in: 831ebcd4f5 user: js tags: trunk
2010-01-24
20:07
Fix a missing return in objc_setProperty. check-in: 63c5c7d501 user: js tags: trunk
18:54
Make retain/release atomic. check-in: b4a9924066 user: js tags: trunk
Changes

Modified src/objc_properties.m from [432d7c935c] to [14cd33968d].

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
			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];
}







>
>
>
>
>





>

>
>











>
>
>
>





>


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
69
70
71
72
73
74
75
76
77
78
79
80
81
			id old = *ptr;

			switch (copy) {
			case 0:
				*ptr = [value retain];
				break;
			case 2:
				/*
				 * Apple uses this to indicate that the copy
				 * should be mutable. Please hit them for
				 * abusing a poor BOOL!
				 */
				*ptr = [value mutableCopy];
				break;
			default:
				*ptr = [value copy];
			}

			[old release];

			return;
		}
	}

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

	switch (copy) {
	case 0:
		*ptr = [value retain];
		break;
	case 2:
		/*
		 * Apple uses this to indicate that the copy should be mutable.
		 * Please hit them for abusing a poor BOOL!
		 */
		*ptr = [value mutableCopy];
		break;
	default:
		*ptr = [value copy];
	}

	[old release];
}