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

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

[Octave-bug-tracker] [bug #56298] [Windows] File Browser "rename" operat


From: John Donoghue
Subject: [Octave-bug-tracker] [bug #56298] [Windows] File Browser "rename" operation deletes file when only changing case of file name
Date: Mon, 13 May 2019 13:17:03 -0400 (EDT)
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/18.17763

Follow-up Comment #4, bug #56298 (project octave):

We are using 5.12.1 in the 5.1.0 release.

Doing a quick qheck in windows, it appears that QFile.rename behaves
differently to QDir.rename

ie: 

QFile("lower.txt").rename("LOWER.TXT") will return all ok,

however


dir.rename("lower.txt", "LOWER.TXT") will fail


My test program:


// compiled:  g++ testrename.cpp -I /mingw64/qt5/include -L/mingw64/qt5/lib
-DQT_CORE_LIB -lQt5Core
#include <QtCore/qfile.h>
#include <QtCore/qdir.h>

int main()
{
  qDebug("running test");
  
  unlink("QtSoftware.txt"); unlink("qtsoftware.txt");

  // create file
  {
    QFile file("qtsoftware.txt"); file.open(QIODevice::WriteOnly);
file.close(); 
  }
  
  // rename test
  {  
    QFile file("qtsoftware.txt"); 
    
    if(!file.rename("QTSOFTWARE.TXT"))
    {
      qDebug("file error %s", qPrintable(file.errorString()));
    }
    else
    {
      qDebug("file rename was ok");
    }
    
    unlink("QTSOFTWARE.TXT"); unlink("qtsoftware.txt");
  }
  
  // create file
  {
    QFile file("qtsoftware.txt"); file.open(QIODevice::WriteOnly);
file.close(); 
  }
  
  // test QDir
  {
    
    QFile file("qtsoftware.txt"); 
    
    QDir dir(".");
 
    if(dir.rename("qtsoftware.txt", "QTSOFTWARE.TXT"))
    {
      qDebug("Qdir error %s", qPrintable(file.errorString()));
    }
    else
    {
      qDebug("QDir rename was ok");
    }
    
    unlink("QTSOFTWARE.TXT"); unlink("qtsoftware.txt");
  }  

  return 0;
}




    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?56298>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

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