From 50a4a72b85a6f849533d3bc92a4b7d6099cb8787 Mon Sep 17 00:00:00 2001 From: rschupp Date: Fri, 3 Feb 2023 14:36:58 +0100 Subject: [PATCH] kodi: fix for return value of smbc_getxattr() for Samba >= 4.17.5 --- .../kodi/patches/kodi-995.11-smbc_getxattr.patch | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 packages/mediacenter/kodi/patches/kodi-995.11-smbc_getxattr.patch diff --git a/packages/mediacenter/kodi/patches/kodi-995.11-smbc_getxattr.patch b/packages/mediacenter/kodi/patches/kodi-995.11-smbc_getxattr.patch new file mode 100644 index 0000000000..77e5e7ff19 --- /dev/null +++ b/packages/mediacenter/kodi/patches/kodi-995.11-smbc_getxattr.patch @@ -0,0 +1,11 @@ +--- ./xbmc/platform/posix/filesystem/SMBDirectory.cpp.orig 2023-02-03 14:31:42.518877830 +0100 ++++ ./xbmc/platform/posix/filesystem/SMBDirectory.cpp 2023-02-03 14:36:27.357905849 +0100 +@@ -171,7 +171,7 @@ + char value[20]; + // We poll for extended attributes which symbolizes bits but split up into a string. Where 0x02 is hidden and 0x12 is hidden directory. + // According to the libsmbclient.h it's supposed to return 0 if ok, or the length of the string. It seems always to return the length which is 4 +- if (smbc_getxattr(strFullName.c_str(), "system.dos_attr.mode", value, sizeof(value)) > 0) ++ if (smbc_getxattr(strFullName.c_str(), "system.dos_attr.mode", value, sizeof(value)) >= 0) + { + long longvalue = strtol(value, NULL, 16); + if (longvalue & SMBC_DOS_MODE_HIDDEN)