summaryrefslogtreecommitdiff
path: root/media-libs/libffado/files/libffado-2.3.0-modelname-strip.patch
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /media-libs/libffado/files/libffado-2.3.0-modelname-strip.patch
reinit the tree, so we can have metadata
Diffstat (limited to 'media-libs/libffado/files/libffado-2.3.0-modelname-strip.patch')
-rw-r--r--media-libs/libffado/files/libffado-2.3.0-modelname-strip.patch45
1 files changed, 45 insertions, 0 deletions
diff --git a/media-libs/libffado/files/libffado-2.3.0-modelname-strip.patch b/media-libs/libffado/files/libffado-2.3.0-modelname-strip.patch
new file mode 100644
index 000000000000..8f28b6ac0f75
--- /dev/null
+++ b/media-libs/libffado/files/libffado-2.3.0-modelname-strip.patch
@@ -0,0 +1,45 @@
+------------------------------------------------------------------------
+r2677 | jwoithe | 2017-03-22 07:43:24 +0900 (Wed, 22 Mar 2017) | 1 line
+
+configrom: there is no obvious reason why a space should be added to the end of the vendor and model strings returned from the interface. Retain the explicit null termination of these strings to cover for the case where an interface may not return any null bytes. Also fix indentation associated with the null termination code. The issue with the trailing space was noticed and reported by Nils Philippsen: its presence broke a test in the saffire_dice mixer python code.
+------------------------------------------------------------------------
+Index: src/libieee1394/configrom.cpp
+===================================================================
+--- a/src/libieee1394/configrom.cpp (revision 2676)
++++ b/src/libieee1394/configrom.cpp (revision 2677)
+@@ -176,13 +176,11 @@
+ ( void* )CSR1212_TEXTUAL_DESCRIPTOR_LEAF_DATA( m_vendorNameKv ),
+ len );
+
+- while ((buf + len - 1) == '\0') {
+- len--;
++ while (*(buf + len - 1) == '\0') {
++ len--;
+ }
+- // \todo XXX seems a bit strage to do this but the nodemgr.c code does
+- // it. try to figure out why this is needed (or not)
+- buf[len++] = ' ';
+- buf[len] = '\0';
++ // Ensure vendor string is null terminated
++ buf[len] = '\0';
+
+
+ debugOutput( DEBUG_LEVEL_VERBOSE, "Vendor name: '%s'\n", buf );
+@@ -195,13 +193,11 @@
+ memcpy( buf,
+ ( void* )CSR1212_TEXTUAL_DESCRIPTOR_LEAF_DATA( m_modelNameKv ),
+ len );
+- while ((buf + len - 1) == '\0') {
+- len--;
++ while (*(buf + len - 1) == '\0') {
++ len--;
+ }
+- // \todo XXX for edirol fa-66 it seems somehow broken. see above
+- // todo as well.
+- buf[len++] = ' ';
+- buf[len] = '\0';
++ // Ensure model name string is null terminated
++ buf[len] = '\0';
+
+ debugOutput( DEBUG_LEVEL_VERBOSE, "Model name: '%s'\n", buf);
+ m_modelName = buf;