Mailing List Archive: 49091 messages
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

IMAP bug fix?

 [1/5] from: gchiu::compkarori::co::nz at: 13-Dec-2002 16:06


There's a bug with the IMAP protocol. If you try and open/close twice in the same session, it dies as it tries to open a non existent mailbox. Eg. first open INBOX, and close INBOX, then open INBOX again, and it actually tries to open INBOXINBOX instead .. which doesn't exist. This seems to fix it ... but perhaps others can test it out as well: In the open: function Change the line: if port/target [append path port/target] to if port/target [path: port/target] --Graham http://www.compkarori.com/cerebrus

 [2/5] from: chalz:earthlink at: 12-Dec-2002 22:12


I'm talking out of my arse here, but wouldn't it be wiser to, instead, have 'close clear the path instead?

 [3/5] from: gchiu:compkarori at: 13-Dec-2002 17:07


On Thu, 12 Dec 2002 22:12:43 -0500 "Charles" <[chalz--earthlink--net]> wrote:
> I'm talking out of my arse here, but wouldn't it be >wiser to, instead, have >'close clear the path instead? >
But where is 'close defined? It's not in the IMAP protocol, but a native function. --Graham http://www.compkarori.com/cerebrus

 [4/5] from: gscottjones:mchsi at: 13-Dec-2002 1:57


Hi, Graham, From: "Graham Chiu"
> There's a bug with the IMAP protocol. > If you try and open/close twice in the same session, it
<<quoted lines omitted: 9>>
> to > if port/target [path: port/target]
As you know, I am currently a "have not" in the REBOL SDK world. :( However, I can still poke around under the hood (bonnet) of REBOL/View. :) In View 1.2.8, the pertinent code in open in imap is: path: any [port/path ""] if port/target [append path port/target] and path is a local value, and presumably the value is not saved between calls. This leads me to suspect that the "another" bug may lie elsewhere. My "concern" with your patch is that information passed for some users through port/path would be lost. A conceivably more durable approach (albeit more wordy) may be: if not parse path compose/deep [any [(port/path)] any [(port/target)]] [append path port/target] Assuming I wrote this correctly, it should check to see if the port/target has previously been appended to path. If no one complains about your patch, then no worries. However, if problems do arise when both port/path and port/target infomation is needed, my suggestion may help. I have no imap email accounts, so I have no way to further investigate nor help debug. :) --Scott Jones

 [5/5] from: gchiu:compkarori at: 13-Dec-2002 23:13


>My "concern" with your patch is that information passed >for some users >through port/path would be lost. A conceivably more >durable approach
Hi Scott, My "fix" means that you won't be able to open nested IMAP directories eg. INBOX/1/2/3/4 but I personally don't have any such nested directories. Of course a fix that fixes everything would be better :) -- Graham

Notes
  • Quoted lines have been omitted from some messages.
    View the message alone to see the lines that have been omitted