aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTilman Keskinoz <arved@FreeBSD.org>2015-03-12 10:37:41 +0000
committerTilman Keskinoz <arved@FreeBSD.org>2015-03-12 10:37:41 +0000
commit8080b578f62f16714d500628eb829471cff282a6 (patch)
tree38753ee2d9281252c00aeaca77db53678473f4f0
parent44be37dd3975692d23eb5c5ea978a4bb936f0358 (diff)
downloadports-8080b578f62f16714d500628eb829471cff282a6.tar.gz
ports-8080b578f62f16714d500628eb829471cff282a6.zip
Fix podbeuter
PR: 198531 Reported by: usrucb@gmail.com
Notes
Notes: svn path=/head/; revision=381071
-rw-r--r--www/newsbeuter/Makefile1
-rw-r--r--www/newsbeuter/files/patch-pb_controller.cpp11
-rw-r--r--www/newsbeuter/files/patch-pb_view.cpp11
-rw-r--r--www/newsbeuter/files/patch-poddlthread31
4 files changed, 54 insertions, 0 deletions
diff --git a/www/newsbeuter/Makefile b/www/newsbeuter/Makefile
index 7af4d3db4c30..efeafc2d9f0b 100644
--- a/www/newsbeuter/Makefile
+++ b/www/newsbeuter/Makefile
@@ -3,6 +3,7 @@
PORTNAME= newsbeuter
PORTVERSION= 2.9
+PORTREVISION= 1
CATEGORIES= www
MASTER_SITES= http://newsbeuter.org/downloads/
diff --git a/www/newsbeuter/files/patch-pb_controller.cpp b/www/newsbeuter/files/patch-pb_controller.cpp
new file mode 100644
index 000000000000..e0790bd4426d
--- /dev/null
+++ b/www/newsbeuter/files/patch-pb_controller.cpp
@@ -0,0 +1,11 @@
+diff src/pb_controller.cpp src/pb_controller.cpp
+--- src/pb_controller.cpp
++++ src/pb_controller.cpp
+@@ -287,6 +287,7 @@ void pb_controller::start_downloads() {
+ if (it->status() == DL_QUEUED) {
+ std::thread t {poddlthread(&(*it), cfg)};
+ --dl2start;
++ t.detach();
+ }
+ }
+ }
diff --git a/www/newsbeuter/files/patch-pb_view.cpp b/www/newsbeuter/files/patch-pb_view.cpp
new file mode 100644
index 000000000000..b200f293ebf2
--- /dev/null
+++ b/www/newsbeuter/files/patch-pb_view.cpp
@@ -0,0 +1,11 @@
+diff src/pb_view.cpp src/pb_view.cpp
+--- src/pb_view.cpp
++++ src/pb_view.cpp
+@@ -111,6 +111,7 @@ void pb_view::run(bool auto_download) {
+ if (idx != -1) {
+ if (ctrl->downloads()[idx].status() != DL_DOWNLOADING) {
+ std::thread t {poddlthread(&ctrl->downloads()[idx], ctrl->get_cfgcont())};
++ t.detach();
+ }
+ }
+ }
diff --git a/www/newsbeuter/files/patch-poddlthread b/www/newsbeuter/files/patch-poddlthread
new file mode 100644
index 000000000000..23c3acce1251
--- /dev/null
+++ b/www/newsbeuter/files/patch-poddlthread
@@ -0,0 +1,31 @@
+diff include/poddlthread.h include/poddlthread.h
+--- include/poddlthread.h
++++ include/poddlthread.h
+@@ -7,6 +7,7 @@
+
+ #include <sys/time.h>
+ #include <time.h>
++#include <memory>
+
+ #include <configcontainer.h>
+
+@@ -24,7 +25,7 @@ class poddlthread {
+ private:
+ void mkdir_p(const char * file);
+ download * dl;
+- std::ofstream *f;
++ std::shared_ptr<std::ofstream> f;
+ timeval tv1;
+ timeval tv2;
+ size_t bytecount;
+diff --git a/src/poddlthread.cpp b/src/poddlthread.cpp
+--- src/poddlthread.cpp
++++ src/poddlthread.cpp
+@@ -22,7 +22,6 @@ poddlthread::poddlthread(download * dl_, newsbeuter::configcontainer * c) : dl(d
+ }
+
+ poddlthread::~poddlthread() {
+- delete f;
+ }
+
+ void poddlthread::operator()() {