This is an automatic generated email to let you know that the following patch 
were queued at the 
http://git.linuxtv.org/cgit.cgi/v4l-utils.git tree:

Subject: common/media-info: fail for unknown entity function values
Author:  Hans Verkuil <hverkuil-ci...@xs4all.nl>
Date:    Thu Sep 28 13:59:18 2023 +0200

This fixes several logic bugs that prevented unknown entity function
values to be propagated as failures in the v4l2-compliance tests.

Signed-off-by: Hans Verkuil <hverkuil-ci...@xs4all.nl>

 utils/common/media-info.cpp | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

---

http://git.linuxtv.org/cgit.cgi/v4l-utils.git/commit/?id=99c4f6dd80613c7bd1fe02bd34492bbd4c999fea
diff --git a/utils/common/media-info.cpp b/utils/common/media-info.cpp
index c9a3740262f2..95e4c74f84bd 100644
--- a/utils/common/media-info.cpp
+++ b/utils/common/media-info.cpp
@@ -367,15 +367,17 @@ std::string mi_entfunction2s(__u32 function, bool 
*is_invalid)
                if (function == entity_functions_def[i].flag) {
                        bool fail = !memcmp(entity_functions_def[i].str, "FAIL: 
", 6);
 
-                       if (is_invalid) {
+                       if (is_invalid && fail) {
                                *is_invalid = fail;
                                return entity_functions_def[i].str;
                        }
                        return fail ? entity_functions_def[i].str + 6 : 
entity_functions_def[i].str;
                }
        }
-       if (is_invalid)
-               return "WARNING: Unknown Function (" + num2s(function) + "), is 
v4l2-compliance out-of-date?";
+       if (is_invalid) {
+               *is_invalid = true;
+               return "FAIL: Unknown Function (" + num2s(function) + "), is 
v4l2-compliance out-of-date?";
+       }
        return "Unknown Function (" + num2s(function) + ")";
 }
 
@@ -572,7 +574,7 @@ static __u32 read_topology(int media_fd, __u32 major, __u32 
minor,
                        }
                        printf("\t  Link 0x%08x: %s remote pad 0x%x of entity 
'%s' (%s): %s\n",
                               link.id, is_sink ? "from" : "to", remote_pad,
-                              remote_ent->name, 
mi_entfunction2s(remote_ent->function).c_str(),
+                              remote_ent->name, 
mi_entfunction2s(remote_ent->function, is_invalid).c_str(),
                               mi_linkflags2s(link.flags).c_str());
                        if (function && !*function)
                                *function = remote_ent->function;

_______________________________________________
linuxtv-commits mailing list
linuxtv-commits@linuxtv.org
https://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to