#1568 "home directory is -1 bytes long" startup message

Bug
closed-works-for-me
Neil Hodgson
scite (54)
5
2014-01-27
2014-01-07
Piotr Fusik
No

I'm using Ubuntu 12.04 64-bit and its distribution of SciTE. The system is up to date and SciTE is at 3.0.2.

Today I encounter the following error as I start SciTE (either from the left panel or the shell): "File '/home/pfusik/' is -1 bytes long, larger than the 50000000 bytes limit set in the properties. Do you still want to open it?"

When I select 'Yes', it seems to function properly.

When I select 'No', there are no tabs and the menus are uninitialized ("Tool0", "Tool1", etc). It gets back to normal when I press Ctrl+N.

I don't recall doing any SciTE configuration edits recently. I suspect it's caused by a library update.

1 Attachments

Discussion

  • Neil Hodgson
    Neil Hodgson
    2014-01-07

    If max.file.size is set and the command line includes a directory argument then that message will appear. A more explicit message could be provided for directories.

    Its likely that the launcher used to run SciTE from the GUI is including a directory argument. It should be possible to find the command line arguments given to SciTE by running ps in a terminal and looking for SciTE.

     
  • Neil Hodgson
    Neil Hodgson
    2014-01-08

    Committed a change [6b3b9c] that displays a specific warning message when there is a directory as a command line argument.

    However, this doesn't really fix the underlying problem which is that there is an argument to SciTE which is a directory.

     

    Related

    Commit: [6b3b9c]

  • Piotr Fusik
    Piotr Fusik
    2014-01-08

    As I wrote, the message also appears when I run:
    scite
    from the terminal.

     
    • Neil Hodgson
      Neil Hodgson
      2014-01-08

      Well, something is asking to open a directory. Perhaps you have a session file or a Lua script.

       
  • Piotr Fusik
    Piotr Fusik
    2014-01-09

    I have never used session files and there is no ~/.SciTE.session file.

    The error appears even when I strip .SciTEUser.properties to just:
    max.file.size=50000000

    ls -lt /usr/share/scite
    shows files dated 2012-03-07. I did not modify them.

    Attached is the output of:
    strace -tt scite 2>scite.strace

     
    Attachments
    • Neil Hodgson
      Neil Hodgson
      2014-01-09

      The section involved here is at 12:50:46.239700 where the sequence open,SEEK_END,SEEK_SET used to find file sizes is found. This occurs just after opening /tmp/SciTE.15875.in which is the input command pipe, which is then included in the polling set although it never reads any commands. The input pipe is created in the call stack CreateUI,UIAvailable,DirectorExtension::Initialise,CreatePipe which is followed by ProcessCommandLine. Therefore its likely that the directory is being opened by code in ProcessCommandLine which is consistent with it being a command line argument. Its possible GTK+ is adding a command line argument in gtk_init: argc and argv can be modified by gtk_init but that's for removing GTK+ options that the application shouldn't see.

      After the file measurement section, the next interesting code is looking for libdbusmenu message files, probably to perform Ubuntu's global menu bar merging. Then Accessibility Tool Kit messages. Can't see anything much more apart from polling X.

       
  • Piotr Fusik
    Piotr Fusik
    2014-01-10

    Thank you very much for the analysis.

    Additional information:

    ps -f doesn't show any arguments to SciTE.

    The message doesn't appear when I specify filenames on command line or rerun SciTE without arguments when it's already running.

    The message does appear when I run:
    SciTE -

     
    • Neil Hodgson
      Neil Hodgson
      2014-01-10

      Even reverting to 3.0.2 on updated-today Ubuntu 12.04 doesn't show this for me. Printing out argv after the call to gtk_init may reveal what is occurring.

       
  • Neil Hodgson
    Neil Hodgson
    2014-01-27

    • labels: --> scite
    • status: open --> closed-works-for-me
    • assigned_to: Neil Hodgson
     
  • Neil Hodgson
    Neil Hodgson
    2014-01-27

    Added a specific warning message for opening a directory. Still don't know why this is occurring for poster.