Hi All, I think I've worked out what's going on with drag-and-drop. We're compiling with -fno-rtti and (some parts of) fltk do dynamic_cast, which needs rtti. The run-time handling for detecting the conflict is nonexistent/unforgiving. When I make the change below and rebuild, drag-and-drop starts working for me. The executable size penalty is significant. The only 3+MB one is the only one with rtti turned on: ...$ ls -l versions/*/*/src/dillo -rwxr-xr-x 1 ... staff 2943392 25 Nov 21:42 versions/cookies/dillo-jfw01/src/dillo -rwxr-xr-x 1 ... staff 3253032 20 Jan 20:10 versions/everything/dillo-jfw01/src/dillo -rwxr-xr-x 1 ... staff 2943096 26 Oct 16:46 versions/pull-everything/dillo-jfw01/src/dillo -rwxr-xr-x 1 ... staff 2942840 15 Sep 18:11 versions/render/dillo-jfw01/src/dillo -rwxr-xr-x 1 ... staff 2942448 28 Oct 17:58 versions/ssh-everything-dirty/dillo-jfw01/src/dillo ...$ There are two dynamic casts in fltk: ./src/Fl_cocoa.mm:3792: if ( dynamic_cast<Fl_Input_*>(w) != NULL || dynamic_cast<Fl_Text_Display*>(w) != NULL) { ./src/Fl_cocoa.mm:3973: BOOL to_quartz = dynamic_cast<Fl_Printer*>(this) != NULL; I have no opinion yet about how difficult they would be to replace. The way forward should be decided by someone who remembers why no-rtti was originally turned on. Regards, James. $ hg diff configure.ac diff -r e773dab661ec configure.ac --- a/configure.ac Wed Sep 17 00:24:37 2014 +1200 +++ b/configure.ac Tue Jan 20 20:49:00 2015 +1300 @@ -488,7 +488,8 @@ dnl if eval "test x$GCC = xyes"; then - CXXFLAGS="$CXXFLAGS -Wall -W -Wno-unused-parameter -fno-rtti -fno-exceptions" + CXXFLAGS="$CXXFLAGS -Wall -W -Wno-unused-parameter -fno-exceptions" +dnl removed -fno-rtti to enable DND in FLTK fi AC_SUBST(BASE_CUR_WORKING_DIR) On 1/7/15, Johannes Hofmann <Johannes.Hofmann at gmx.de> wrote:
On Sat, Dec 27, 2014 at 08:42:55PM +0100, Johannes Hofmann wrote:
On Sat, Dec 27, 2014 at 06:22:12PM +0000, eocene wrote:
James wrote:
This is exercisable in Dillo 3.0.4.1, but not new. I found it by accident in my hack-up of Dillo 3.0.4.
The reproduction is: - enable cookies for .google.com - navigate to https://mail.google.com/mail/?ui=html - fight the links until you get a screen with two fields, one for the username and one for the password - type something into the username field - select it and drag to the password field -- core dump
I am on:
- OSX 10.6.8 - Dillo 3.0.4.1 with SSL enabled - FLTK 1.3.3 - with dpid, etc from Dillo 3.0.4 with extensive hacking
so the fault could be Mac-specific.
I tried playing around a little, on linux and not having a gmail acct, and nothing wanted to go wrong, so, yeah, it might be an osx issue...
Can't reproduce it either on DragonFly BSD. I can try later to get a stack trace on osx.
On MacOSX all attempts to drag and drop crash dillo for me. As it also causes confusion on X11 based systems I disabled DND alltogether for now.
Cheers, Johannes
_______________________________________________ Dillo-dev mailing list Dillo-dev at dillo.org http://lists.dillo.org/cgi-bin/mailman/listinfo/dillo-dev