| 1 | diff --git mythtv/libs/libmythtv/datadirect.cpp mythtv/libs/libmythtv/datadirect.cpp
|
|---|
| 2 | index 1870ff0..7583df8 100644
|
|---|
| 3 | --- mythtv/libs/libmythtv/datadirect.cpp
|
|---|
| 4 | +++ mythtv/libs/libmythtv/datadirect.cpp
|
|---|
| 5 | @@ -1006,8 +1006,14 @@ bool DataDirectProcessor::DDPost(QString ddurl, QString &inputFile,
|
|---|
| 6 | postdata += "</SOAP-ENV:Body>\n";
|
|---|
| 7 | postdata += "</SOAP-ENV:Envelope>\n";
|
|---|
| 8 |
|
|---|
| 9 | - if (inputFile.isEmpty()) {
|
|---|
| 10 | + if (inputFile.isEmpty())
|
|---|
| 11 | + {
|
|---|
| 12 | inputFile = QString("/tmp/mythtv_ddp_data");
|
|---|
| 13 | + if (QFile(inputFile).exists() && !QFileInfo(inputFile).isWritable())
|
|---|
| 14 | + {
|
|---|
| 15 | + err_txt = QString("Aborting: %1 is not writable").arg(inputFile);
|
|---|
| 16 | + return false;
|
|---|
| 17 | + }
|
|---|
| 18 | }
|
|---|
| 19 |
|
|---|
| 20 | QHash<QByteArray, QByteArray> headers;
|
|---|
| 21 | @@ -1039,7 +1045,16 @@ bool DataDirectProcessor::DDPost(QString ddurl, QString &inputFile,
|
|---|
| 22 | uncompressed = postdata;
|
|---|
| 23 |
|
|---|
| 24 | QFile file(inputFile);
|
|---|
| 25 | - file.open(QIODevice::WriteOnly);
|
|---|
| 26 | + if (!file.open(QIODevice::WriteOnly))
|
|---|
| 27 | + {
|
|---|
| 28 | + err_txt = QString("Aborting: download OK, but %1 is not writable")
|
|---|
| 29 | + .arg(inputFile);
|
|---|
| 30 | + return false;
|
|---|
| 31 | + }
|
|---|
| 32 | + file.setPermissions(inputFile,
|
|---|
| 33 | + QFile::ReadOwner | QFile::WriteOwner |
|
|---|
| 34 | + QFile::ReadGroup | QFile::WriteGroup |
|
|---|
| 35 | + QFile::ReadOther | QFile::WriteOther);
|
|---|
| 36 | file.write(uncompressed);
|
|---|
| 37 | file.close();
|
|---|