• Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r4wp

[!REBOL3] General discussion about REBOL 3

MarcS
10-Mar-2013
[1515x2]
I might patch this NONE case unless anyone has a good reason to leave 
it in place?
(At the moment, you get usage info on stderr. The current r3 just 
segfaults on Linux.)
BrianH
10-Mar-2013
[1517]
It's none propagation I guess. Because dealing with or ignoring nones 
is easier to do in Rebol than writing conditional code around everything 
to avoid triggering errors.
MarcS
10-Mar-2013
[1518]
Okay, so I guess we just need to handle the NONE rather than attempting 
to browse it
BrianH
10-Mar-2013
[1519x3]
The BROWSE code should explicitly do nothing if passed a NONE. It 
certainly shouldn't segfault.
If it doesn't explicitly do nothing, that's a bug.
Just return unset, I guess.
MarcS
10-Mar-2013
[1522x2]
Okay, fixing now.
not R_NONE?
BrianH
10-Mar-2013
[1524]
No, that returns none. Whatever BROWSE normally returns.
Andreas
10-Mar-2013
[1525]
It normally returns NONE.
MarcS
10-Mar-2013
[1526]
R_NONE
Andreas
10-Mar-2013
[1527]
But I think the original intent was for NONE to open an empty browser. 
Can't find any references for that.
BrianH
10-Mar-2013
[1528]
Weird. Shouldn't it return unset?
MarcS
10-Mar-2013
[1529]
https://github.com/rebol/r3/blob/master/src/core/n-io.c#L499
Andreas
10-Mar-2013
[1530]
Should probably rather return the URL, that would be more useful 
:)
BrianH
10-Mar-2013
[1531]
That treatment of a none argument makes sense, Andreas. However, 
the function should return unset, like PRINT.
MarcS
10-Mar-2013
[1532x2]
If we can agree on something, I'll push that the change.
BrianH: So, R_UNSET?
Andreas
10-Mar-2013
[1534]
That's independent of the OSX open fix in any case.
BrianH
10-Mar-2013
[1535]
Sure. And in the has-a-url case too.
Andreas
10-Mar-2013
[1536]
So better just file a CC issue for the `browse none` crash, and we 
can discuss the desired design in there.
BrianH
10-Mar-2013
[1537]
Yeah, maybe two pulls.
MarcS
10-Mar-2013
[1538]
Okay, I'll pop this in a separate branch.
BrianH
10-Mar-2013
[1539]
Marc, did you file a ticket for this? If not, I can repurpose #1921 
for this.
Andreas
10-Mar-2013
[1540]
Win32 browse opens an empty browser for NONE.
MarcS
10-Mar-2013
[1541]
I didn't, no.
Andreas
10-Mar-2013
[1542]
Please don't repurpose 1921 :)
BrianH
10-Mar-2013
[1543]
Let 1921 stay dismissed, OK.
Andreas
10-Mar-2013
[1544x2]
One ticket for missing BROWSE on OSX, another one for the browse 
none crash.
https://github.com/rebol/r3/blob/master/src/os/win32/host-lib.c#L640
BrianH
10-Mar-2013
[1546]
Will do. And I'm still revamping the REWORD ticket example code.
Andreas
10-Mar-2013
[1547]
Well, I'll briefly write up the crash ticket.
BrianH
10-Mar-2013
[1548]
If you could write both I'd appreciate it. I have limited R3 time 
today, I have an R2 task I have to work on.
Andreas
10-Mar-2013
[1549]
Ok.
MarcS
10-Mar-2013
[1550x2]
https://github.com/0branch/r3/commit/95e3481ffba473f9191b918dd2eb890e764ff32a
If that looks good, I can submit pull requests for both issues once 
Andreas has written up the issues?
Andreas
10-Mar-2013
[1552x2]
I'm not sure if the second is the desired change :)
MarcS: one open questions is if we should use the __APPLE__ define 
(is that defined for iOS as well?) or rather use the R3-specific 
platform defines.
MarcS
10-Mar-2013
[1554]
Oh, did I misunderstand?
Andreas
10-Mar-2013
[1555]
Win32 handles a none URL gracefully, just opening an "empty" browser.
MarcS
10-Mar-2013
[1556]
Oh, okay. But this meets Brian's suggestion?
Andreas
10-Mar-2013
[1557]
Yes.
BrianH
10-Mar-2013
[1558]
A function should only return none if returning another value is 
a valid option. If it never returns a value, it shouyld return unset.
MarcS
10-Mar-2013
[1559x2]
Incidentally, there's no simple way to browse to none using the current 
technique (as far as I can see).
BrianH: oh okay, so this is a unit type / void.
BrianH
10-Mar-2013
[1561]
Yeah.
MarcS
10-Mar-2013
[1562x3]
e.g., on MacOSX, open uses the format of its argument to determine 
the appropriate handler. I'd imagine xdg-open does the same.
And i doubt browsing to file:/// is the desired default.
(Replace file:/// with anything else, I think the point stands.)