[ObjectiveResource] Recursion in OS 4.0

22 views
Skip to first unread message

Oliver Sigge

unread,
May 11, 2010, 4:59:15 PM5/11/10
to ObjectiveResource
Hi,

in iPhone OS 4.0 beta 3 the example code always runs in a recursion,
when saving. When I try my own app including authentication via
authlogic, I get the recursion loop when the createRemote message is
sent.

I debugged objectiveresource but couldn't track it down. I'm stuck in
line 18 in NSDictionary+XMLSeriazibleSupport.m:

NSMutableString *elementValue = [NSMutableString string];

This throws a EXC_BAD_ACCESS. A look a the docs gets, that there isn't
a static function called string so I changed it to:

NSMutableString *elementValue = [NSMutableString stringWithCapacity:
0];

but didn't help.

Any ideas?

Greetings,

- Oliver

--
You received this message because you are subscribed to the Google Groups "ObjectiveResource" group.
To post to this group, send email to objectiv...@googlegroups.com.
To unsubscribe from this group, send email to objectiveresou...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/objectiveresource?hl=en.

Joshua Vickery

unread,
May 11, 2010, 9:26:49 PM5/11/10
to objectiv...@googlegroups.com
> NSMutableString *elementValue = [NSMutableString string];
>
> This throws a EXC_BAD_ACCESS. A look a the docs gets, that there isn't
> a static function called string so I changed it to:
>
> NSMutableString *elementValue = [NSMutableString stringWithCapacity:
> 0];
>
> but didn't help.

The +string method is inherited from the NSString class:

http://developer.apple.com/mac/library/documentation/cocoa/reference/foundation/Classes/NSString_Class/Reference/NSString.html#//apple_ref/occ/clm/NSString/string

so I'm afraid that's a bid of a red herring.

I haven't tried running it in 4.0 so I'm afraid I don't have an easy answer.

If you are getting EXC_BAD_ACCESS it suggests a memory problem,
possibly access after a release. It would be weird for you to get it
at the line you listed, so it's possible you are seeing memory
corruption.

The full stack trace and anything that gets printed to the console
might be of some help.

Josh

Oliver Sigge

unread,
May 12, 2010, 6:16:56 AM5/12/10
to ObjectiveResource


On 12 Mai, 03:26, Joshua Vickery <j...@viraud.com> wrote:
> I haven't tried running it in 4.0 so I'm afraid I don't have an easy answer.

In general, do you plan updating OR to work with 4.0?

>
> If you are getting EXC_BAD_ACCESS it suggests a memory problem,
> possibly access after a release. It would be weird for you to get it
> at the line you listed, so it's possible you are seeing memory
> corruption.
>
> The full stack trace and anything that gets printed to the console
> might be of some help.

The only thing I get in the console is this:

Program received signal: “EXC_BAD_ACCESS”.
[Switching to process 2114]
warning: Unable to restore previously selected frame.
Data Formatters temporarily unavailable, will re-try after a
'continue'. (Not safe to call dlopen at this time.)

... not much helpful. :(

Here is the stack trace:

#0 0x95558295 in tiny_malloc_from_free_list
#1 0x95557523 in szone_malloc_should_clear
#2 0x955573a8 in malloc_zone_malloc
#3 0x0231d07d in _CFRuntimeCreateInstance
#4 0x0231efb5 in __CFStringCreateImmutableFunnel3
#5 0x0232665e in CFStringCreateWithBytes
#6 0x00034899 in -[NSPlaceholderString initWithBytes:length:encoding:]
#7 0x0003bae1 in +[NSString stringWithCString:encoding:]
#8 0x00005907 in +[NSObject(PropertySupport) propertyNamesAndTypes] at
NSObject+PropertySupport.m:40
#9 0x00005734 in +[NSObject(PropertySupport) propertyNames] at NSObject
+PropertySupport.m:21
#10 0x000056ff in -[NSObject(PropertySupport) properties] at NSObject
+PropertySupport.m:52
#11 0x00009e95 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#12 0x00009fcf in -[NSObject(XMLSerializableSupport) toXMLElementAs:]
at NSObject+XMLSerializableSupport.m:82
#13 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#14 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#15 0x00009fcf in -[NSObject(XMLSerializableSupport) toXMLElementAs:]
at NSObject+XMLSerializableSupport.m:82
#16 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#17 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#18 0x00009fcf in -[NSObject(XMLSerializableSupport) toXMLElementAs:]
at NSObject+XMLSerializableSupport.m:82
#19 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#20 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#21 0x00009fcf in -[NSObject(XMLSerializableSupport) toXMLElementAs:]
at NSObject+XMLSerializableSupport.m:82

[... 970 lines later....]

#991 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#992 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#993 0x00009fcf in -[NSObject(XMLSerializableSupport) toXMLElementAs:]
at NSObject+XMLSerializableSupport.m:82
#994 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#995 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#996 0x00009fcf in -[NSObject(XMLSerializableSupport) toXMLElementAs:]
at NSObject+XMLSerializableSupport.m:82
#997 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#998 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#999 0x00009fcf in -[NSObject(XMLSerializableSupport) toXMLElementAs:]
at NSObject+XMLSerializableSupport.m:82
#1000 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#1001 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#1002 0x00009fcf in -[NSObject(XMLSerializableSupport)
toXMLElementAs:] at NSObject+XMLSerializableSupport.m:82
#1003 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#1004 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#1005 0x00009fcf in -[NSObject(XMLSerializableSupport)
toXMLElementAs:] at NSObject+XMLSerializableSupport.m:82
#1006 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#1007 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#1008 0x00009fcf in -[NSObject(XMLSerializableSupport)
toXMLElementAs:] at NSObject+XMLSerializableSupport.m:82
#1009 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#1010 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#1011 0x00009fcf in -[NSObject(XMLSerializableSupport)
toXMLElementAs:] at NSObject+XMLSerializableSupport.m:82
#1012 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#1013 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#1014 0x00009fcf in -[NSObject(XMLSerializableSupport)
toXMLElementAs:] at NSObject+XMLSerializableSupport.m:82
#1015 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#1016 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#1017 0x00009fcf in -[NSObject(XMLSerializableSupport)
toXMLElementAs:] at NSObject+XMLSerializableSupport.m:82
#1018 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#1019 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#1020 0x00009fcf in -[NSObject(XMLSerializableSupport)
toXMLElementAs:] at NSObject+XMLSerializableSupport.m:82
#1021 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#1022 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#1023 0x00009fcf in -[NSObject(XMLSerializableSupport)
toXMLElementAs:] at NSObject+XMLSerializableSupport.m:82

[...4729 lines later....]

#5752 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#5753 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#5754 0x00009fcf in -[NSObject(XMLSerializableSupport)
toXMLElementAs:] at NSObject+XMLSerializableSupport.m:82
#5755 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#5756 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#5757 0x00009fcf in -[NSObject(XMLSerializableSupport)
toXMLElementAs:] at NSObject+XMLSerializableSupport.m:82
#5758 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#5759 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#5760 0x00009fcf in -[NSObject(XMLSerializableSupport)
toXMLElementAs:] at NSObject+XMLSerializableSupport.m:82
#5761 0x00009c05 in -[NSDictionary(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:andType:] at
NSDictionary+XMLSerializableSupport.m:26
#5762 0x00009ee8 in -[NSObject(XMLSerializableSupport)
toXMLElementAs:excludingInArray:withTranslations:] at NSObject
+XMLSerializableSupport.m:98
#5763 0x0000a03b in -[NSObject(XMLSerializableSupport)
toXMLElementExcluding:] at NSObject+XMLSerializableSupport.m:78
#5764 0x0000413b in -[NSObject(ObjectiveResource)
convertToRemoteExpectedType] at NSObject+ObjectiveResource.m:162
#5765 0x00003fa0 in -[NSObject(ObjectiveResource)
createRemoteAtPath:withResponse:] at NSObject+ObjectiveResource.m:203
#5766 0x00003ca3 in -[NSObject(ObjectiveResource)
createRemoteWithResponse:] at NSObject+ObjectiveResource.m:245
#5767 0x0000cbf4 in +[ReachabilityManager checkLoginFromController:]
at ReachabilityManager.m:46
#5768 0x0000b502 in -[SurveysViewController fetchDataInBackground] at
SurveysViewController.m:73
#5769 0x00046668 in -[NSThread main]
#5770 0x000465f4 in __NSThread__main__
#5771 0x95580a19 in _pthread_start
#5772 0x9558089e in thread_start

I also renamed some of my attributes in my rails app, just to make
sure that the naming doesn't conflict with reserved message oder
varnames.

stygeo

unread,
Jun 8, 2010, 7:27:19 AM6/8/10
to ObjectiveResource
I had the same problem you're having and I've fixed the issue.
There're a couple of dodgy ivars that seem to be in each and every
NSObject:
accessibilityLanguage
accessibilityFrame
accessibilityTraits
accessibilityHint
accessibilityValue
accessibilityLabel
isAccessibilityElement

Somehow ObjectiveResource tries to parse this error and gets stuck in
an infinite loop, or at least that's what I think because you will
eventually run out of memory. You can fix this issue rather simple. In
ObjectiveResoure locate the file "NSObject+PropertySupport.m" and head
over to line 42 (method: + (NSDictionary *)propertyNamesAndTypes).
Line 42 should look similar to:
if (![propName isEqualToString:@"_mapkit_hasPanoramaID"]) { ... }

Replace that if statement with the following if statement (this one
also fixes a Three20 compatibility):
if (![propName isEqualToString:@"_mapkit_hasPanoramaID"] &&
![propName isEqualToString:@"URLValue"] &&
![propName isEqualToString:@"accessibilityLanguage"] &&
![propName isEqualToString:@"accessibilityFrame"] &&
![propName isEqualToString:@"accessibilityTraits"] &&
![propName isEqualToString:@"accessibilityHint"] &&
![propName isEqualToString:@"accessibilityValue"] &&
![propName isEqualToString:@"accessibilityLabel"] &&
![propName isEqualToString:@"isAccessibilityElement"])

For the sake of being on the save side open file "NSObject
+ObjectiveResource.m" and add the same strings to the
excludedPropertyNames list. This should get you all fixed up!
Hope that helps! :)

Thiha

unread,
Jun 8, 2010, 5:43:51 PM6/8/10
to ObjectiveResource
Hi stygeo

I am having similar issue. Do you use XML and get it working? I read
in another post that people who use JSON get it working with the fix.
I am using xml and cannot get the fix to work yet.

Oliver Sigge

unread,
Jun 8, 2010, 5:52:05 PM6/8/10
to objectiv...@googlegroups.com
Thanks for investigating the problem. I checked your fix. Seems to work when I get data from REST Interface (app doesn't crash any longer). I will try that fix for creating remote objects.

2010/6/8 stygeo <sty...@gmail.com>

stygeo

unread,
Jun 9, 2010, 5:17:17 AM6/9/10
to ObjectiveResource
Yup, I'm using XML. Could you post your stack trace? Perhaps your
issue isn't with OS 4? It could be due to another library you're
using, the best thing to do is log all the variables objective
resource is trying to assign in NSObject+PropertySupport.m. (line 41)
Add NSLog(@"Type: %@. Property: %@", type, propName) (Just make sure
you call once propName has been set -> propName = [NSString
stringWithCString:property_getName(*prop)
encoding:NSUTF8StringEncoding];). Identify if there are any other
variables (besides the one mentioned above) objective resource is
trying to assign. This process is rather slow, but it will get you
there.

I did fork the repos on github with the fixes (objectiveresource &
objectivesupport) the links can be found on my blog http://spicedcocoa.wordpress.com

stygeo

unread,
Jun 9, 2010, 5:18:57 AM6/9/10
to ObjectiveResource
I didn't have problems with GET'ing any remote objects. That seemed to
work fine for me even before the fix. Creating remote objects is what
seemed to cause the problem, which I fixed with the fix above.
> > objectiveresou...@googlegroups.com<objectiveresource%2Bunsubscr i...@googlegroups.com>
> > .

Thiha

unread,
Jun 14, 2010, 11:21:19 AM6/14/10
to ObjectiveResource
Thanks for reply, stygeo. One of my CreateRemote calls works now with
your fix. The other createRemote call didn't work as the server was
returning an error xml (with ok status). That error didn't cause the
code to crash in previous version of the OS. I guess I need to find
out how error should be returned from Rails so that Objective Resource
can handle properly. Thanks.

stygeo

unread,
Jun 14, 2010, 12:51:59 PM6/14/10
to ObjectiveResource
You could, at your ruby/rails code, make it return a different status
code like so: render :xml, :status => :unprocessable_entity
This will result in OR showing THE errors. What i have done in my code
is the following: render :text =>
@model.error_messages.to_xml, :status => :unproseccable_entity and at
my objc code i build a parser that parses them (I'll see if i can post
the code somewhere, it's at work). Anywho for all rails status
messages go here: http://www.codyfauser.com/2008/7/4/rails-http-status-code-to-symbol-mapping
Sorry for any typos, posting from my iPhone :)

Hope any of it helps tho :)

Dan Cutting

unread,
Jun 16, 2010, 10:52:32 AM6/16/10
to ObjectiveResource
After a bit more digging, it seems like it's the accessibilityFrame
property in particular that's causing the problem. It's a CGRect which
cannot be serialised by the JSON serialiser.

I just added the various accessibility properties to the default
excluded properties in NSObject+ObjectiveResource.m around line 185.
(Also included the Three20 fix.) I.e.:

NSArray *defaultExclusions = [NSArray arrayWithObjects:[self
getRemoteClassIdName], @"_mapkit_hasPanoramaID",
@"accessibilityLanguage", @"accessibilityFrame",
@"accessibilityTraits", @"accessibilityHint", @"accessibilityValue",
@"accessibilityLabel", @"isAccessibilityElement", @"createdAt",
@"updatedAt", nil];

Cheers,
Dan


On Jun 14, 5:51 pm, stygeo <sty...@gmail.com> wrote:
> You could, at your ruby/rails code, make it return a different status
> code like so: render :xml, :status => :unprocessable_entity
> This will result in OR showing THE errors. What i have done in my code
> is the following: render :text =>
> @model.error_messages.to_xml, :status => :unproseccable_entity and at
> my objc code i build a parser that parses them (I'll see if i can post
> the code somewhere, it's at work). Anywho for all rails status
> messages go here:http://www.codyfauser.com/2008/7/4/rails-http-status-code-to-symbol-m...

Joshua Vickery

unread,
Jun 16, 2010, 2:24:50 PM6/16/10
to objectiv...@googlegroups.com
I posted this as a response to a different thread, but if you want you
can take this commit:

http://github.com/yfactorial/objectivesupport/commit/41117ca505858136884c2f729ca4dbf933a7e023

which excludes all the newly added properties on NSObject.

This points out that the meta programming based properties support is
an ongoing issue, as Apple continues to add more properties directly
to NSObject, some of which can't be serialized.

Anyone have any thoughts on a better strategy for handling this? One
simple option may be to only include properties that are objects.

> --
> You received this message because you are subscribed to the Google Groups "ObjectiveResource" group.
> To post to this group, send email to objectiv...@googlegroups.com.

> To unsubscribe from this group, send email to objectiveresou...@googlegroups.com.

Joshua Vickery

unread,
Jun 24, 2010, 3:41:24 PM6/24/10
to objectiv...@googlegroups.com
All right, I came up with my own idea for improving this. Rather than
excluding specific properties from the property support, I excluded
*all* non-object properties, since we can't deal with them anyway.

http://github.com/yfactorial/objectivesupport/commit/9500f4fcf8db27bf7d2afd1bb8aa2030a028627d

I would appreciate any feedback on this.

stygeo

unread,
Jun 24, 2010, 4:33:03 PM6/24/10
to ObjectiveResource

This actually seems like a pretty good idea! I'll test it out at work
tomorrow, we have an app that heavily depends on rails and I'll post
my findings here.

Thanks Joshua
On Jun 24, 9:41 pm, Joshua Vickery <j...@viraud.com> wrote:
> All right, I came up with my own idea for improving this. Rather than
> excluding specific properties from the property support, I excluded
> *all* non-object properties, since we can't deal with them anyway.
>
> http://github.com/yfactorial/objectivesupport/commit/9500f4fcf8db27bf...
>
> I would appreciate any feedback on this.
>
>
>
> On Wed, Jun 16, 2010 at 2:24 PM, Joshua Vickery <j...@viraud.com> wrote:
> > I posted this as a response to a different thread, but if you want you
> > can take this commit:
>
> >http://github.com/yfactorial/objectivesupport/commit/41117ca505858136...
>
> > which excludes all the newly added properties on NSObject.
>
> > This points out that the meta programming based properties support is
> > an ongoing issue, as Apple continues to add more properties directly
> > to NSObject, some of which can't be serialized.
>
> > Anyone have any thoughts on a better strategy for handling this? One
> > simple option may be to only include properties that are objects.
>

Sangmin Ryu

unread,
Jul 28, 2010, 5:02:48 PM7/28/10
to ObjectiveResource
Good solution Jushua.

I applied another solution some days ago.

I try to use exclude properties feature. But I consider to reveal in
the future.

This problem start Apple UIKit to extend 'NSObject'.

So, I have a assumption for this problem.

"NSObject has no properties."

If that assumption right, this code can solve .


===================================================================
--- NSObject+PropertySupport.m (.../trunk/Libraries/ObjectiveSupport/
Core/NSObject+PropertySupport.m) (revision 5567)
+++ NSObject+PropertySupport.m (.../branches/20100727_xcode_3.2.3/
Libraries/ObjectiveSupport/Core/NSObject+PropertySupport.m) (revision
5805)
@@ -%ld,%ld +%ld,%ld @@

//include superclass properties
Class currentClass = [self class];
- while (currentClass != nil) {
+ while (currentClass != nil && currentClass != [NSObject class]) {
// Get the raw list of properties
unsigned int outCount;
objc_property_t *propList = class_copyPropertyList(currentClass,
&outCount);


How about this solution?


On Jun 24, 12:41 pm, Joshua Vickery <j...@viraud.com> wrote:
> All right, I came up with my own idea for improving this. Rather than
> excluding specific properties from the property support, I excluded
> *all* non-object properties, since we can't deal with them anyway.
>
> http://github.com/yfactorial/objectivesupport/commit/9500f4fcf8db27bf...
>
> I would appreciate any feedback on this.
>
>
>
> On Wed, Jun 16, 2010 at 2:24 PM, Joshua Vickery <j...@viraud.com> wrote:
> > I posted this as a response to a different thread, but if you want you
> > can take this commit:
>
> >http://github.com/yfactorial/objectivesupport/commit/41117ca505858136...
>
> > which excludes all the newly added properties on NSObject.
>
> > This points out that the meta programming based properties support is
> > an ongoing issue, as Apple continues to add more properties directly
> > to NSObject, some of which can't be serialized.
>
> > Anyone have any thoughts on a better strategy for handling this? One
> > simple option may be to only include properties that are objects.
>

Joshua Vickery

unread,
Jul 30, 2010, 11:11:51 AM7/30/10
to objectiv...@googlegroups.com
Ha! I came up with that solution myself, but haven't gotten around to
implementing it. If you submit as a patch request on github I'll apply
it.

Josh Vickery

unread,
Aug 2, 2010, 6:03:06 AM8/2/10
to objectiv...@googlegroups.com

Thank you Sangmin! I've pulled your patch in and it looks like it should do the trick for those that are still having trouble with this. Would anyone who is still having a problem update their Objective Support to the latest including Sangmin's fix and let us all know if it works for them?

http://github.com/yfactorial/objectivesupport/commit/a3c7a6b5765cb2695712c832c9bca9d8fd6a6898

Josh


Reply all
Reply to author
Forward
0 new messages