discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Addresses not importing vcards files


From: Sebastian Reitenbach
Subject: Re: Addresses not importing vcards files
Date: Tue, 10 Sep 2013 15:22:51 +0200
User-agent: SOGoMail 2.0.7

 
On Tuesday, September 10, 2013 15:12 CEST, Richard Frith-Macdonald 
<richardfrithmacdonald@gmail.com> wrote: 
 
> 
> On 10 Sep 2013, at 10:22, Sebastian Reitenbach 
> <sebastia@l00-bugdead-prods.de> wrote:
> 
> > 
> > On Sunday, September 8, 2013 14:42 CEST, Philippe Roussel 
> > <p.o.roussel@free.fr> wrote: 
> > 
> >> Hi Sebastian,
> >> 
> >> On Sun, Sep 08, 2013 at 02:27:56PM +0200, Sebastian Reitenbach wrote:
> >>> Hi,
> >>> 
> >>> while testing Addresses for a new release, I figured there are a couple 
> >>> of problems.
> >>> Riccardo suggested to forward them here, I'll separate them in different 
> >>> threads.
> >>> 
> >>> First problem is that Addresses is unable for me to import vcards, even 
> >>> vcards 
> >>> it successfully exported.
> >>> 
> >>> I found that in Addresses/Frameworks/Addresses/ADConverter.m in 
> >>> - (id<ADInputConverting>) inputConverterWithFile: (NSString*) filename
> >>> 
> >>> http://cvs.savannah.gnu.org/viewvc/gap/system-apps/Addresses/Frameworks/Addresses/ADConverter.m?revision=1.4&root=gap&view=markup
> >>> 
> >>> 
> >>> its detecting the type of encoding of the file wrongly. With the patch 
> >>> attached,
> >>> it works for me. That moves the detection of ASCII encoding before UTF8 
> >>> encoding.
> >>> 
> >>> Without the patch it would detect UTF-8 all the time, and then fail 
> >>> parsing the vcard.
> >>> On the other hand, I could just move the UTF-8 detection to the end.
> >> 
> >> I'm probably missing something here but shouldn't utf-8 works for
> >> plain ascii files ?
> > 
> > I would have expected that too, but that didn't seemed to be the case.
> > When it was parsing the vcard, addresses was telling me that it didn't 
> > found a vcard 
> > in the file. I set a breakpoint into the function where its doing the 
> > parsing,
> > and its looking for the colon in: BEGIN:VCARD
> > 
> > But it cannot find the :, printing out the string examining it, I see only 
> > some garbage,
> > but no readable string.
> > With the patch I had attached, I moved the detection of ASCII before UTF8,
> > then it happily detected the colon, and imported the vcard.
> > 
> > Sebastian
> 
> The patch can't possibly be correct because, as Philippe pointed out, if a 
> vcard is valid ascii then it *must* also be valid utf-8.
> 
> The only ways I can think of that the patch could 'fix' things for a 
> particular vcard would be:
> a. there's a memory or unintialised variable bug somewhere and changing the 
> code layout stops the bug manifesting ion this case or
> b. there's a bug in the ascii string checking such that it is creating a 
> string successfully even though the data is not valid ascii
> c. some other bug the patch somehow hides
> 
> Could you possibly post the actual vcard so I could try looking at it under 
> gdb.
> 

I created a test user in Addresses, and exported that one into a vcard, then 
tried to import 
it again in Addresses, and it failed with following message:

$AddressManager                                                       
2013-09-10 15:20:11.210 AddressManager[4391] File in NSUnicodeStringEncoding
2013-09-10 15:20:11.278 AddressManager[4391] Syntax error in line 0!

The Syntax error in line 0 is because it cannot find the colon in <BEGIN:VCARD>
tag.

Does that import/export work for you?

Sebastian

> 
> PS. I think the existing code to try latin2 and ascii after all else should 
> be removed since it's redundant and should never be reached as it's preceded 
> by an attempt to use latin1 which should always succeed.
> 
 
 
 
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]