On Thu, May 20, 2010 at 6:06 PM, Robert Lipe <robertlipe@...:
>
>
> On Thu, May 20, 2010 at 5:12 PM, David Snedecor <dsnedecor@...:
>
>> Yep. I didn't think it would be too big of a deal, but just wanted to
>> point it out. :) It is more important for what I am experimenting with. I am
>> working with iPhoneOS (no garbage collection) and will potentially will be
>> able to start and stop tracking within the boundaries of a process.
>
>
> For an IPad app, this is surely the wrong tool for the job, but that's your
> call. Whatver you do, remember to respect the GPL. The app store makes
> that difficult, as I understand it...
> RJL
>
[ insert sound clip of needle scraping across a record ]
Wait. For this code to make any sense at all on iPhoneOS, you must not be
working with the iPad 3G or an iPhone 3G as those would both be serviced by
the iPhone location manager thingy. The code path in question makes sense
only for an external Garmin USB device. What device runs iPhoneOS with a
USB bus master?
RJL
>
>
>>
>> On Thu, May 20, 2010 at 5:02 PM, Robert Lipe <robertlipe@...:
>>
>>>
>>>
>>> On Thu, May 20, 2010 at 4:38 PM, David Snedecor <dsnedecor@...:
>>>
>>>> Yep, the archives suddenly showed up. I guess I checked them too soon
>>>> after I joined and it hadn't updated. I checked the beta source and it
>>>> looks like they're still there. I'm not sure how to create a patch, but I'm
>>>> sure Google can be of assistance there.
>>>>
>>>> The leaks are as follows:
>>>>
>>>> In mac/libusb/usb.h it looks like a new void *dev was added for darwin.
>>>> In darwin.c, it is malloc'd:
>>>> dev->dev = (USBDeviceAddress *)malloc(4);
>>>>
>>>> But then it never gets freed.
>>>>
>>>> In darwin.c in usb_os_find_busses, there is a loop:
>>>>
>>>> while ((device = usb_get_next_device (deviceIterator, &location)) !=
>>>> NULL) {
>>>>
>>>> and then a conditional:
>>>>
>>>> if (location & 0x00ffffff)
>>>> continue;
>>>>
>>>> if this path is taken, device never gets released.
>>>>
>>>
>>> Fair enough. Good info. I can't say that a leak in device discovery is
>>> something I'd get too frothy about. It happens once at start and is then
>>> reclaimed when we exit. This would be much higher on my list of things to
>>> lose sleep over if it was in the "per position report" path.
>>>
>>> RJL
>>>
>>>
>>>>
>>>> On Thu, May 20, 2010 at 3:57 PM, Robert Lipe <robertlipe@...:
>>>>
>>>>>
>>>>>
>>>>> On Thu, May 20, 2010 at 3:15 PM, David Snedecor <dsnedecor@...:
>>>>>
>>>>>> I'm not sure if anyone reads this as it looks like there are no
>>>>>> archives out there that I can find.
>>>>>
>>>>>
>>>>> They're clevely hidden in the 'archives' link at
>>>>> http://www.gpsbabel.org/lists.html
>>>>>
>>>>>
>>>>>> I was running gpsbabel-debug (real-time tracking mode) with Leaks in
>>>>>> Mac OS X and I think I've discovered 2 memory leaks in the darwin USB code.
>>>>>> I'm no expert C programmer, but I'll post the sections of code when I get
>>>>>> home. (It's on my laptop, which I don't have with me).
>>>>>>
>>>>>
>>>>> I haven't had great luck with Leaks.
>>>>>
>>>>> At one time, I ran the realtime tracking code for 48 hours on OS/X with
>>>>> no observed growth of process size. We (or Apple) may have hosed something
>>>>> since then. Analysis (and patches) welcome.
>>>>>
>>>>
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>>
>>>>
>>>> _______________________________________________
>>>> Gpsbabel-code mailing list http://www.gpsbabel.org
>>>> Gpsbabel-code@...
>>>> https://lists.sourceforge.net/lists/listinfo/gpsbabel-code
>>>>
>>>>
>>>
>>
>>
>> ------------------------------------------------------------------------------
>>
>>
>> _______________________________________________
>> Gpsbabel-code mailing list http://www.gpsbabel.org
>> Gpsbabel-code@...
>> https://lists.sourceforge.net/lists/listinfo/gpsbabel-code
>>
>>
>
|