octave-patch-tracker
[Top][All Lists]
Advanced

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

[Octave-patch-tracker] [patch #7857] Replace dynamic casts of GUI/IDE ed


From: Dan Sebald
Subject: [Octave-patch-tracker] [patch #7857] Replace dynamic casts of GUI/IDE editor with more slots/signals configuration
Date: Mon, 05 Nov 2012 10:26:36 +0000
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.24) Gecko/20111108 Fedora/3.6.24-1.fc14 Firefox/3.6.24

Follow-up Comment #17, patch #7857 (project octave):

I'm not seeing this.  Strange.  I'm running under Linux.  Is that what you are
running under?  (Does your editor have the same file open twice perhaps by
having the same name in the settings file as a result of debugging?)

This command should flush and close the file:

  file.close();

before making the name change and putting the file name into the watcher.  But
that doesn't appear to be happening for your compilation.  There are some
circumstances where a close isn't done, just a flush, but that is for things
like stderr, stdout.  It is as though the flush/close is being delayed in your
case.

I do notice what may be a problem.  When the file is opened, the enumeration
parameter doesn't seem to be anything valid:

  // open the file for writing
  QFile file (saveFileName);
  if (!file.open (QFile::WriteOnly))
    {

There is no such QFile::WriteOnly.  There is a QIODevice::WriteOnly.  Perhaps
the C++ compiler thinks that QFile::WriteOnly is the definition of a QFile
object called "WriteOnly" and is passing in some strange value as an
enumeration.  I've attached a new patch that makes this one change in addition
to the previous:

  // open the file for writing
  QFile file (saveFileName);
  if (!file.open (QIODevice::WriteOnly))
    {

Please give that a try.

If that doesn't help, there may be one other thing to try here.  I see in the
list of flags QIODevice::Unbuffered.  Perhaps this scenario needs the I/O
unbuffered so that when file.close is done there is no delay (and on my system
these files are inherently non-buffered already, maybe your system different),
just hypothesising.  So, if the patch doesn't work, try changing the
conditional line to

  if (!file.open (QIODevice::WriteOnly | QIODevice::Unbuffered))



(file #26876)
    _______________________________________________________

Additional Item Attachment:

File name: octave-gui_no_casts-2012nov05.patch Size:79 KB


    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/patch/?7857>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

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