summaryrefslogtreecommitdiff
path: root/pcr/mediatomb/symlinks.patch
diff options
context:
space:
mode:
Diffstat (limited to 'pcr/mediatomb/symlinks.patch')
-rw-r--r--pcr/mediatomb/symlinks.patch42
1 files changed, 42 insertions, 0 deletions
diff --git a/pcr/mediatomb/symlinks.patch b/pcr/mediatomb/symlinks.patch
new file mode 100644
index 000000000..8028f2201
--- /dev/null
+++ b/pcr/mediatomb/symlinks.patch
@@ -0,0 +1,42 @@
+--- mediatomb-0.12.1.orig/src/autoscan_inotify.cc 2010-03-25 10:58:11.000000000 -0400
++++ mediatomb-0.12.1/src/autoscan_inotify.cc 2012-06-18 02:40:11.000000000 -0400
+@@ -281,7 +281,7 @@
+ }
+ }
+
+- if (adir != nil && mask & (IN_DELETE | IN_DELETE_SELF | IN_MOVE_SELF | IN_CLOSE_WRITE | IN_MOVED_FROM | IN_MOVED_TO | IN_UNMOUNT))
++ if (adir != nil && mask & (IN_DELETE | IN_DELETE_SELF | IN_MOVE_SELF | IN_CLOSE_WRITE | IN_MOVED_FROM | IN_MOVED_TO | IN_UNMOUNT | IN_CREATE))
+ {
+ String fullPath;
+ if (mask & IN_ISDIR)
+@@ -312,16 +312,17 @@
+ if (objectID != INVALID_OBJECT_ID)
+ cm->removeObject(objectID);
+ }
+- if (mask & (IN_CLOSE_WRITE | IN_MOVED_TO))
++ if (mask & (IN_CLOSE_WRITE | IN_MOVED_TO | IN_CREATE))
+ {
+ log_debug("adding %s\n", path.c_str());
+ // path, recursive, async, hidden, low priority, cancellable
+ cm->addFile(fullPath, adir->getRecursive(), true, adir->getHidden(), true, false);
+
+- if (mask & IN_ISDIR)
++ if (mask & IN_ISDIR && !(mask & IN_CREATE))
+ monitorUnmonitorRecursive(path, false, adir, watchAs->getNormalizedAutoscanPath(), false);
+ }
+ }
++
+ if (mask & IN_IGNORED)
+ {
+ removeWatchMoves(wd);
+--- mediatomb-0.12.1.orig/src/content_manager.cc 2010-03-25 10:58:11.000000000 -0400
++++ mediatomb-0.12.1/src/content_manager.cc 2012-06-18 02:03:55.000000000 -0400
+@@ -202,7 +202,7 @@
+ #ifdef HAVE_MAGIC
+ if (! ignore_unknown_extensions)
+ {
+- ms = magic_open(MAGIC_MIME);
++ ms = magic_open(MAGIC_MIME|MAGIC_SYMLINK);
+ if (ms == NULL)
+ {
+ log_error("magic_open failed\n");