magic_t magic_cookie = magic_open(MAGIC_MIME_ENCODING);
if (magic_cookie) {
bool detected = true;
- if (magic_load(magic_cookie, NULL) != 0) {
+ if (magic_load(magic_cookie, nullptr) != 0) {
LYXERR(Debug::FILES, "isBinaryFile: "
"Could not load magic database - "
<< magic_error(magic_cookie));
}
+FileName const tempFileName(FileName tempdir, string const & mask, bool const dir)
+{
+ return tempFileName(TempFile(tempdir, mask).name(), dir);
+}
+
+
FileName const tempFileName(string const & mask, bool const dir)
{
- FileName tempfile = TempFile(mask).name();
+ return tempFileName(TempFile(mask).name(), dir);
+}
+
+
+FileName const tempFileName(FileName tempfile, bool const dir)
+{
// Since the QTemporaryFile object is destroyed at function return
// (which is what is intended here), the next call to this function
// may return the same file name again.
QFileInfo tmp_fi(QDir(toqstr(tempdir.absFileName())), toqstr(mask));
FileName const tmpfl =
- tempFileName(fromqstr(tmp_fi.absoluteFilePath()) + ".XXXXXXXXXXXX", true);
+ tempFileName(FileName(fromqstr(tmp_fi.absolutePath())),
+ fromqstr(tmp_fi.fileName()) + ".XXXXXXXXXXXX", true);
if (tmpfl.empty() || !tmpfl.createDirectory(0700)) {
LYXERR0("LyX could not create temporary directory in " << tempdir
if (path != "." && path != "./" && !path.empty()) {
buf = os::internal_path(path);
- if (!suffixIs(path, '/'))
+ if (!suffixIs(buf, '/'))
buf += '/';
}
{
string str = path;
+ // Recode URL encoded chars.
+ str = from_percent_encoding(str);
+
// If file is from LyXDir, display it as if it were relative.
string const system = package().system_support().absFileName();
if (prefixIs(str, system) && str != system)
command = rtrim(command, "2>&1");
err2out = true;
}
- string const cmdarg = "/d /c " + command;
+ string const cmdarg = "/d /c \"" + command + "\"";
string const comspec = getEnv("COMSPEC");
security.nLength = sizeof(SECURITY_ATTRIBUTES);
// is used."
// However, we want to take advantage of the format sine almost all
// the different formats has environment variables that can be used
- // to controll which paths to search. f.ex. bib looks in
+ // to control which paths to search. f.ex. bib looks in
// BIBINPUTS and TEXBIB. Small list follows:
// bib - BIBINPUTS, TEXBIB
// bst - BSTINPUTS