Mercurial > hg > easyhg-kdiff3
changeset 102:4bac4535ea7f
Corrected handling of unicode arguments, especially filenames
author | joachim99 |
---|---|
date | Thu, 02 Sep 2010 20:27:45 +0000 |
parents | 8463601a34a7 |
children | 1b9430d5cf2b |
files | kdiff3/src-QT4/kreplacements/kreplacements.cpp |
diffstat | 1 files changed, 8 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/kdiff3/src-QT4/kreplacements/kreplacements.cpp Sat Jul 31 21:17:57 2010 +0000 +++ b/kdiff3/src-QT4/kreplacements/kreplacements.cpp Thu Sep 02 20:27:45 2010 +0000 @@ -912,7 +912,7 @@ }; static QList<KCmdLineOptionsItem> s_options; -static std::vector<QCStringList> s_vOption; +static std::vector<QStringList> s_vOption; static std::vector<QString> s_vArg; KCmdLineOptions& KCmdLineOptions::add( const QString& name, const QString& description ) @@ -1035,14 +1035,15 @@ ++i; } + QStringList args = QCoreApplication::arguments(); // First find the option "-config" or "--config" to allow loading of options QString configFileName; - for( i=1; i<s_argc-1; ++i ) + for( i=1; i<args.size()-1; ++i ) { - QString arg = s_argv[i]; + QString arg = args[i]; if ( arg == "-config" || arg == "--config" ) { - configFileName = s_argv[i+1]; + configFileName = args[i+1]; } } m_config.readConfigFile(configFileName); @@ -1054,9 +1055,9 @@ s_vOption.resize(nofOptions); - for( i=1; i<s_argc; ++i ) + for( i=1; i<args.size(); ++i ) { - QString arg = s_argv[i]; + QString arg = args[i]; if ( arg[0]=='-' ) // An option { if ( ignorableCmdLineOptions.contains( arg +";") ) @@ -1079,7 +1080,7 @@ optName = s_options[j].name; pos = optName.indexOf( ' ' ); } - if (pos!=-1){ ++i; s_vOption[j].append( s_argv[i] ); } //use param + if (pos!=-1){ ++i; s_vOption[j].append( args[i] ); } //use param else { s_vOption[j].append("1"); } //set state break; }