Use workaround for GCC Bug 66145

This commit is contained in:
Martchus 2016-06-14 22:57:39 +02:00
parent dd7ff6ea98
commit 131abd1f22
5 changed files with 171 additions and 166 deletions

View File

@ -8,6 +8,7 @@
#include <c++utilities/conversion/stringconversion.h>
#include <c++utilities/application/commandlineutils.h>
#include <c++utilities/io/catchiofailure.h>
#if defined(PLATFORM_UNIX)
#include <unistd.h>
@ -20,6 +21,7 @@
using namespace std;
using namespace std::placeholders;
using namespace ConversionUtilities;
using namespace IoUtilities;
using namespace Io;
namespace Cli {
@ -248,20 +250,18 @@ void InteractiveCli::openFile(const string &file, bool readOnly)
m_file.load();
m_currentEntry = m_file.rootEntry();
m_o << "file \"" << file << "\" opened" << endl;
} catch (ParsingException &) {
} catch (const ParsingException &) {
m_o << "error occured when parsing file \"" << file << "\"" << endl;
throw;
} catch (CryptoException &) {
} catch (const CryptoException &) {
m_o << "error occured when decrypting file \"" << file << "\"" << endl;
throw;
} catch (ios_base::failure &) {
} catch(...) {
const char *what = catchIoFailure();
m_o << "IO error occured when opening file \"" << file << "\"" << endl;
throw;
} catch (exception &) {
m_o << "an unexpected exception occured when opening file \"" << file << "\"" << endl;
terminate();
throw ios_base::failure(what);
}
} catch(exception &e) {
} catch(const std::exception &e) {
if(*e.what() != 0) {
m_o << e.what() << endl;
}
@ -290,20 +290,18 @@ void InteractiveCli::saveFile()
try {
m_file.save(*m_file.password());
m_o << "file \"" << m_file.path() << "\" saved" << endl;
} catch (ParsingException &) {
} catch (const ParsingException &) {
m_o << "error occured when parsing file \"" << m_file.path() << "\"" << endl;
throw;
} catch (CryptoException &) {
} catch (const CryptoException &) {
m_o << "error occured when encrypting file \"" << m_file.path() << "\"" << endl;
throw;
} catch (ios_base::failure &) {
} catch (...) {
const char *what = catchIoFailure();
m_o << "IO error occured when saving file \"" << m_file.path() << "\"" << endl;
throw;
} catch (exception &) {
m_o << "an unexpected exception occured when saving file \"" << m_file.path() << "\"" << endl;
terminate();
throw ios_base::failure(what);
}
} catch(exception &e) {
} catch(const exception &e) {
if(*e.what() != 0) {
m_o << e.what() << endl;
}
@ -328,12 +326,10 @@ void InteractiveCli::createFile(const string &file)
m_file.generateRootEntry();
m_currentEntry = m_file.rootEntry();
m_o << "file \"" << file << "\" created and opened" << endl;
} catch (ios_base::failure &) {
} catch (...) {
const char *what = catchIoFailure();
m_o << "IO error occured when creating file \"" << file << "\"" << endl;
throw;
} catch (exception &) {
m_o << "an unexpected exception occured when creating file \"" << file << "\"" << endl;
terminate();
throw ios_base::failure(what);
}
} catch(exception &e) {
if(*e.what() != 0) {

View File

@ -18,6 +18,7 @@
#include <qtutilities/misc/recentmenumanager.h>
#include <c++utilities/io/path.h>
#include <c++utilities/io/catchiofailure.h>
#include <c++utilities/conversion/stringconversion.h>
#include <QFileDialog>
@ -380,8 +381,8 @@ bool MainWindow::openFile(const QString &path)
m_file.setPath(path.toStdString());
try {
m_file.open();
} catch (const ios_base::failure &ex) {
QString errmsg = tr("An IO error occured when opening the specified file \"%1\".\n\n(%2)").arg(path, QString::fromLocal8Bit(ex.what()));
} catch (...) {
const QString errmsg = tr("An IO error occured when opening the specified file \"%1\".\n\n(%2)").arg(path, QString::fromLocal8Bit(catchIoFailure()));
m_ui->statusBar->showMessage(errmsg, 5000);
QMessageBox::critical(this, QApplication::applicationName(), errmsg);
return false;
@ -421,12 +422,14 @@ bool MainWindow::openFile(const QString &path)
QString msg;
try {
m_file.load();
} catch(CryptoException &ex) {
msg = tr("The file couldn't be decrypted.\nOpenSSL error queue: %1").arg(QString::fromLocal8Bit(ex.what()));
} catch(ios_base::failure &ex) {
msg = QString::fromLocal8Bit(ex.what());
} catch(runtime_error &ex) {
msg = tr("Unable to parse the file. %1").arg(QString::fromLocal8Bit(ex.what()));
} catch(const CryptoException &e) {
msg = tr("The file couldn't be decrypted.\nOpenSSL error queue: %1").arg(QString::fromLocal8Bit(e.what()));
} catch (...) {
try {
msg = QString::fromLocal8Bit(catchIoFailure());
} catch(const runtime_error &e) {
msg = tr("Unable to parse the file. %1").arg(QString::fromLocal8Bit(e.what()));
}
}
// show a message in the error case
if(!msg.isEmpty()) {
@ -483,7 +486,8 @@ void MainWindow::createFile(const QString &path, const QString &password)
// create the file and show it
try {
m_file.create();
} catch (const ios_base::failure) {
} catch (...) {
catchIoFailure();
QMessageBox::critical(this, QApplication::applicationName(), tr("The file <i>%1</i> couldn't be created.").arg(path));
return;
}
@ -662,8 +666,8 @@ bool MainWindow::askForCreatingFile()
try {
m_file.create();
updateWindowTitle();
} catch (const ios_base::failure &ex) {
QMessageBox::critical(this, QApplication::applicationName(), QString::fromLocal8Bit(ex.what()));
} catch (...) {
QMessageBox::critical(this, QApplication::applicationName(), QString::fromLocal8Bit(catchIoFailure()));
return false;
}
}
@ -750,8 +754,8 @@ bool MainWindow::saveFile()
if(m_ui->actionAlwaysCreateBackup->isChecked()) {
try {
m_file.doBackup();
} catch(const ios_base::failure &ex) {
QString message(tr("The backup file couldn't be created because in IO error occured: %1").arg(QString::fromLocal8Bit(ex.what())));
} catch(...) {
QString message(tr("The backup file couldn't be created because in IO error occured: %1").arg(QString::fromLocal8Bit(catchIoFailure())));
QMessageBox::critical(this, QApplication::applicationName(), message);
m_ui->statusBar->showMessage(message, 7000);
return false;
@ -784,8 +788,8 @@ bool MainWindow::saveFile()
m_file.save(m_file.password()[0] != 0);
} catch (const CryptoException &ex) {
msg = tr("The password list couldn't be saved due to encryption failure.\nOpenSSL error queue: %1").arg(QString::fromLocal8Bit(ex.what()));
} catch(const ios_base::failure &ex) {
msg = QString::fromLocal8Bit(ex.what());
} catch(...) {
msg = QString::fromLocal8Bit(catchIoFailure());
}
// show status
if(!msg.isEmpty()) {
@ -813,8 +817,8 @@ void MainWindow::exportFile()
QString errmsg;
try {
m_file.exportToTextfile(targetPath.toStdString());
} catch (ios_base::failure &ex) {
errmsg = tr("The password list couldn't be exported. %1").arg(QString::fromLocal8Bit(ex.what()));
} catch (...) {
errmsg = tr("The password list couldn't be exported. %1").arg(QString::fromLocal8Bit(catchIoFailure()));
}
if(errmsg.isEmpty()) {
m_ui->statusBar->showMessage(tr("The password list has been exported."), 5000);

View File

@ -6,6 +6,8 @@
#include <passwordfile/io/entry.h>
#include <c++utilities/io/catchiofailure.h>
#include <QIcon>
#include <QBuffer>
#include <QMimeData>
@ -230,7 +232,8 @@ QVariant EntryModel::data(const QModelIndex &index, int role) const
entry->make(ss);
string string = ss.str();
return QByteArray(string.data(), string.size());
} catch(const ios_base::failure &) {
} catch(...) {
IoUtilities::catchIoFailure();
return false;
}
}
@ -293,7 +296,9 @@ bool EntryModel::setData(const QModelIndex &index, const QVariant &value, int ro
newEntry->setParent(parent, row);
endInsertRows();
return true;
} catch(const ios_base::failure &) {}
} catch(...) {
IoUtilities::catchIoFailure();
}
}
}
}

View File

@ -4,7 +4,7 @@
<context>
<name>QtGui::EntryModel</name>
<message>
<location filename="../model/entrymodel.cpp" line="342"/>
<location filename="../model/entrymodel.cpp" line="347"/>
<source>Name</source>
<translation type="unfinished"></translation>
</message>
@ -231,270 +231,270 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="308"/>
<location filename="../gui/mainwindow.cpp" line="309"/>
<source>A simple password store using AES-256-CBC encryption via OpenSSL.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="329"/>
<location filename="../gui/mainwindow.cpp" line="330"/>
<source>Select a password list</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="329"/>
<location filename="../gui/mainwindow.cpp" line="656"/>
<location filename="../gui/mainwindow.cpp" line="330"/>
<location filename="../gui/mainwindow.cpp" line="660"/>
<source>Password Manager files (*.pwmgr);;All files (*)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="356"/>
<location filename="../gui/mainwindow.cpp" line="357"/>
<source>Undo stack</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="384"/>
<location filename="../gui/mainwindow.cpp" line="385"/>
<source>An IO error occured when opening the specified file &quot;%1&quot;.
(%2)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="391"/>
<location filename="../gui/mainwindow.cpp" line="392"/>
<source>The file you want to load seems to be very big. Do you really want to open it?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="399"/>
<location filename="../gui/mainwindow.cpp" line="400"/>
<source>Opening file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="400"/>
<location filename="../gui/mainwindow.cpp" line="401"/>
<source>Enter the password to open the file &quot;%1&quot;</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="405"/>
<location filename="../gui/mainwindow.cpp" line="406"/>
<location filename="../gui/mainwindow.cpp" line="407"/>
<source>A password is needed to open the file.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="425"/>
<location filename="../gui/mainwindow.cpp" line="426"/>
<source>The file couldn&apos;t be decrypted.
OpenSSL error queue: %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="429"/>
<location filename="../gui/mainwindow.cpp" line="431"/>
<source>Unable to parse the file. %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="487"/>
<location filename="../gui/mainwindow.cpp" line="491"/>
<source>The file &lt;i&gt;%1&lt;/i&gt; couldn&apos;t be created.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="504"/>
<location filename="../gui/mainwindow.cpp" line="508"/>
<source>A new password list has been created.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="507"/>
<location filename="../gui/mainwindow.cpp" line="511"/>
<source>The password list has been load.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="638"/>
<location filename="../gui/mainwindow.cpp" line="642"/>
<source>Exactly one fields needs to be selected (top-left corner for insertion).</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="654"/>
<location filename="../gui/mainwindow.cpp" line="658"/>
<source>Select where you want to save the password list</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="658"/>
<location filename="../gui/mainwindow.cpp" line="662"/>
<source>The file was not be saved.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="680"/>
<location filename="../gui/mainwindow.cpp" line="684"/>
<source>There is no password list opened.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="693"/>
<location filename="../gui/mainwindow.cpp" line="697"/>
<source>There&apos;s no account selected.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="710"/>
<location filename="../gui/mainwindow.cpp" line="714"/>
<source>The password file has been modified.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="711"/>
<location filename="../gui/mainwindow.cpp" line="715"/>
<source>Do you want to save the changes before closing?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="731"/>
<location filename="../gui/mainwindow.cpp" line="735"/>
<source>The password list has been closed.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="754"/>
<location filename="../gui/mainwindow.cpp" line="758"/>
<source>The backup file couldn&apos;t be created because in IO error occured: %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="768"/>
<location filename="../gui/mainwindow.cpp" line="772"/>
<source>Saving file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="769"/>
<location filename="../gui/mainwindow.cpp" line="773"/>
<source>Enter a password to save the file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="777"/>
<location filename="../gui/mainwindow.cpp" line="781"/>
<source>The file hasn&apos;t been saved.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="786"/>
<location filename="../gui/mainwindow.cpp" line="790"/>
<source>The password list couldn&apos;t be saved due to encryption failure.
OpenSSL error queue: %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="798"/>
<location filename="../gui/mainwindow.cpp" line="802"/>
<source>The password list has been saved.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="811"/>
<location filename="../gui/mainwindow.cpp" line="815"/>
<source>Plain text document (*.txt);;All files (*.*)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="817"/>
<location filename="../gui/mainwindow.cpp" line="821"/>
<source>The password list couldn&apos;t be exported. %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="820"/>
<location filename="../gui/mainwindow.cpp" line="824"/>
<source>The password list has been exported.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="836"/>
<location filename="../gui/mainwindow.cpp" line="840"/>
<source>The currently opened file hasn&apos;t been saved yet.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="876"/>
<location filename="../gui/mainwindow.cpp" line="1086"/>
<location filename="../gui/mainwindow.cpp" line="880"/>
<location filename="../gui/mainwindow.cpp" line="1090"/>
<source>Add account</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="876"/>
<location filename="../gui/mainwindow.cpp" line="1087"/>
<location filename="../gui/mainwindow.cpp" line="880"/>
<location filename="../gui/mainwindow.cpp" line="1091"/>
<source>Add category</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="876"/>
<location filename="../gui/mainwindow.cpp" line="880"/>
<source>Enter the entry name</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="876"/>
<location filename="../gui/mainwindow.cpp" line="880"/>
<source>new entry</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="885"/>
<location filename="../gui/mainwindow.cpp" line="889"/>
<source>Unable to create new entry.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="888"/>
<location filename="../gui/mainwindow.cpp" line="892"/>
<source>You didn&apos;t enter text.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="894"/>
<location filename="../gui/mainwindow.cpp" line="898"/>
<source>No node element selected.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="909"/>
<location filename="../gui/mainwindow.cpp" line="913"/>
<source>Unable to remove the entry.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="912"/>
<location filename="../gui/mainwindow.cpp" line="916"/>
<source>No entry selected.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="964"/>
<location filename="../gui/mainwindow.cpp" line="968"/>
<source>A field has to be selected since new fields are always inserted before the currently selected field.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="988"/>
<location filename="../gui/mainwindow.cpp" line="992"/>
<source>No fields have been removed since there are currently no fields selected.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1023"/>
<location filename="../gui/mainwindow.cpp" line="1027"/>
<source>No fields have been changed since there are currently no fields selected.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1053"/>
<location filename="../gui/mainwindow.cpp" line="1057"/>
<source>Changing password</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1060"/>
<location filename="../gui/mainwindow.cpp" line="1064"/>
<source>You didn&apos;t enter a password. &lt;strong&gt;No encryption&lt;/strong&gt; will be used when saving the file next time.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1064"/>
<location filename="../gui/mainwindow.cpp" line="1068"/>
<source>The new password will be used next time you save the file.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1068"/>
<location filename="../gui/mainwindow.cpp" line="1072"/>
<source>You aborted. The old password will still be used when saving the file next time.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1089"/>
<location filename="../gui/mainwindow.cpp" line="1093"/>
<source>Remove entry</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1095"/>
<location filename="../gui/mainwindow.cpp" line="1099"/>
<source>Expanded by default</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1152"/>
<location filename="../gui/mainwindow.cpp" line="1156"/>
<source>Insert field</source>
<translation type="unfinished"></translation>
</message>
<message numerus="yes">
<location filename="../gui/mainwindow.cpp" line="1153"/>
<location filename="../gui/mainwindow.cpp" line="1157"/>
<source>Remove field(s)</source>
<translation type="unfinished">
<numerusform></numerusform>
@ -502,37 +502,37 @@ OpenSSL error queue: %1</source>
</translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1158"/>
<location filename="../gui/mainwindow.cpp" line="1162"/>
<source>Mark as password field</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1161"/>
<location filename="../gui/mainwindow.cpp" line="1165"/>
<source>Mark as normal field</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1167"/>
<location filename="../gui/mainwindow.cpp" line="1171"/>
<source>Copy</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1168"/>
<location filename="../gui/mainwindow.cpp" line="1172"/>
<source>Copy for 5 seconds</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1170"/>
<location filename="../gui/mainwindow.cpp" line="1174"/>
<source>Paste</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1174"/>
<location filename="../gui/mainwindow.cpp" line="1178"/>
<source>Open URL</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1197"/>
<location filename="../gui/mainwindow.cpp" line="1201"/>
<source>The selection is empty.</source>
<translation type="unfinished"></translation>
</message>

View File

@ -4,7 +4,7 @@
<context>
<name>QtGui::EntryModel</name>
<message>
<location filename="../model/entrymodel.cpp" line="342"/>
<location filename="../model/entrymodel.cpp" line="347"/>
<source>Name</source>
<translation type="unfinished"></translation>
</message>
@ -231,270 +231,270 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="308"/>
<location filename="../gui/mainwindow.cpp" line="309"/>
<source>A simple password store using AES-256-CBC encryption via OpenSSL.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="329"/>
<location filename="../gui/mainwindow.cpp" line="330"/>
<source>Select a password list</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="329"/>
<location filename="../gui/mainwindow.cpp" line="656"/>
<location filename="../gui/mainwindow.cpp" line="330"/>
<location filename="../gui/mainwindow.cpp" line="660"/>
<source>Password Manager files (*.pwmgr);;All files (*)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="356"/>
<location filename="../gui/mainwindow.cpp" line="357"/>
<source>Undo stack</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="384"/>
<location filename="../gui/mainwindow.cpp" line="385"/>
<source>An IO error occured when opening the specified file &quot;%1&quot;.
(%2)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="391"/>
<location filename="../gui/mainwindow.cpp" line="392"/>
<source>The file you want to load seems to be very big. Do you really want to open it?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="399"/>
<location filename="../gui/mainwindow.cpp" line="400"/>
<source>Opening file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="400"/>
<location filename="../gui/mainwindow.cpp" line="401"/>
<source>Enter the password to open the file &quot;%1&quot;</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="405"/>
<location filename="../gui/mainwindow.cpp" line="406"/>
<location filename="../gui/mainwindow.cpp" line="407"/>
<source>A password is needed to open the file.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="425"/>
<location filename="../gui/mainwindow.cpp" line="426"/>
<source>The file couldn&apos;t be decrypted.
OpenSSL error queue: %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="429"/>
<location filename="../gui/mainwindow.cpp" line="431"/>
<source>Unable to parse the file. %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="487"/>
<location filename="../gui/mainwindow.cpp" line="491"/>
<source>The file &lt;i&gt;%1&lt;/i&gt; couldn&apos;t be created.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="504"/>
<location filename="../gui/mainwindow.cpp" line="508"/>
<source>A new password list has been created.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="507"/>
<location filename="../gui/mainwindow.cpp" line="511"/>
<source>The password list has been load.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="638"/>
<location filename="../gui/mainwindow.cpp" line="642"/>
<source>Exactly one fields needs to be selected (top-left corner for insertion).</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="654"/>
<location filename="../gui/mainwindow.cpp" line="658"/>
<source>Select where you want to save the password list</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="658"/>
<location filename="../gui/mainwindow.cpp" line="662"/>
<source>The file was not be saved.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="680"/>
<location filename="../gui/mainwindow.cpp" line="684"/>
<source>There is no password list opened.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="693"/>
<location filename="../gui/mainwindow.cpp" line="697"/>
<source>There&apos;s no account selected.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="710"/>
<location filename="../gui/mainwindow.cpp" line="714"/>
<source>The password file has been modified.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="711"/>
<location filename="../gui/mainwindow.cpp" line="715"/>
<source>Do you want to save the changes before closing?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="731"/>
<location filename="../gui/mainwindow.cpp" line="735"/>
<source>The password list has been closed.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="754"/>
<location filename="../gui/mainwindow.cpp" line="758"/>
<source>The backup file couldn&apos;t be created because in IO error occured: %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="768"/>
<location filename="../gui/mainwindow.cpp" line="772"/>
<source>Saving file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="769"/>
<location filename="../gui/mainwindow.cpp" line="773"/>
<source>Enter a password to save the file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="777"/>
<location filename="../gui/mainwindow.cpp" line="781"/>
<source>The file hasn&apos;t been saved.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="786"/>
<location filename="../gui/mainwindow.cpp" line="790"/>
<source>The password list couldn&apos;t be saved due to encryption failure.
OpenSSL error queue: %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="798"/>
<location filename="../gui/mainwindow.cpp" line="802"/>
<source>The password list has been saved.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="811"/>
<location filename="../gui/mainwindow.cpp" line="815"/>
<source>Plain text document (*.txt);;All files (*.*)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="817"/>
<location filename="../gui/mainwindow.cpp" line="821"/>
<source>The password list couldn&apos;t be exported. %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="820"/>
<location filename="../gui/mainwindow.cpp" line="824"/>
<source>The password list has been exported.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="836"/>
<location filename="../gui/mainwindow.cpp" line="840"/>
<source>The currently opened file hasn&apos;t been saved yet.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="876"/>
<location filename="../gui/mainwindow.cpp" line="1086"/>
<location filename="../gui/mainwindow.cpp" line="880"/>
<location filename="../gui/mainwindow.cpp" line="1090"/>
<source>Add account</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="876"/>
<location filename="../gui/mainwindow.cpp" line="1087"/>
<location filename="../gui/mainwindow.cpp" line="880"/>
<location filename="../gui/mainwindow.cpp" line="1091"/>
<source>Add category</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="876"/>
<location filename="../gui/mainwindow.cpp" line="880"/>
<source>Enter the entry name</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="876"/>
<location filename="../gui/mainwindow.cpp" line="880"/>
<source>new entry</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="885"/>
<location filename="../gui/mainwindow.cpp" line="889"/>
<source>Unable to create new entry.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="888"/>
<location filename="../gui/mainwindow.cpp" line="892"/>
<source>You didn&apos;t enter text.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="894"/>
<location filename="../gui/mainwindow.cpp" line="898"/>
<source>No node element selected.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="909"/>
<location filename="../gui/mainwindow.cpp" line="913"/>
<source>Unable to remove the entry.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="912"/>
<location filename="../gui/mainwindow.cpp" line="916"/>
<source>No entry selected.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="964"/>
<location filename="../gui/mainwindow.cpp" line="968"/>
<source>A field has to be selected since new fields are always inserted before the currently selected field.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="988"/>
<location filename="../gui/mainwindow.cpp" line="992"/>
<source>No fields have been removed since there are currently no fields selected.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1023"/>
<location filename="../gui/mainwindow.cpp" line="1027"/>
<source>No fields have been changed since there are currently no fields selected.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1053"/>
<location filename="../gui/mainwindow.cpp" line="1057"/>
<source>Changing password</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1060"/>
<location filename="../gui/mainwindow.cpp" line="1064"/>
<source>You didn&apos;t enter a password. &lt;strong&gt;No encryption&lt;/strong&gt; will be used when saving the file next time.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1064"/>
<location filename="../gui/mainwindow.cpp" line="1068"/>
<source>The new password will be used next time you save the file.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1068"/>
<location filename="../gui/mainwindow.cpp" line="1072"/>
<source>You aborted. The old password will still be used when saving the file next time.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1089"/>
<location filename="../gui/mainwindow.cpp" line="1093"/>
<source>Remove entry</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1095"/>
<location filename="../gui/mainwindow.cpp" line="1099"/>
<source>Expanded by default</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1152"/>
<location filename="../gui/mainwindow.cpp" line="1156"/>
<source>Insert field</source>
<translation type="unfinished"></translation>
</message>
<message numerus="yes">
<location filename="../gui/mainwindow.cpp" line="1153"/>
<location filename="../gui/mainwindow.cpp" line="1157"/>
<source>Remove field(s)</source>
<translation type="unfinished">
<numerusform></numerusform>
@ -502,37 +502,37 @@ OpenSSL error queue: %1</source>
</translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1158"/>
<location filename="../gui/mainwindow.cpp" line="1162"/>
<source>Mark as password field</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1161"/>
<location filename="../gui/mainwindow.cpp" line="1165"/>
<source>Mark as normal field</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1167"/>
<location filename="../gui/mainwindow.cpp" line="1171"/>
<source>Copy</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1168"/>
<location filename="../gui/mainwindow.cpp" line="1172"/>
<source>Copy for 5 seconds</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1170"/>
<location filename="../gui/mainwindow.cpp" line="1174"/>
<source>Paste</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1174"/>
<location filename="../gui/mainwindow.cpp" line="1178"/>
<source>Open URL</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/mainwindow.cpp" line="1197"/>
<location filename="../gui/mainwindow.cpp" line="1201"/>
<source>The selection is empty.</source>
<translation type="unfinished"></translation>
</message>