Signed-off-by: Ilia Mirkin <imir...@alum.mit.edu>
---

Tom, any objections to enabling xvmc by default again? You turned it off in
commit 6a19bb56e ("configure: Disable xvmc by default") complaining about the
tests failing. These all pass for me now on nouveau.

 src/gallium/state_trackers/xvmc/tests/test_rendering.c  | 12 +++++-------
 src/gallium/state_trackers/xvmc/tests/test_subpicture.c |  8 ++++++--
 src/gallium/state_trackers/xvmc/tests/testlib.c         |  2 +-
 3 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/src/gallium/state_trackers/xvmc/tests/test_rendering.c 
b/src/gallium/state_trackers/xvmc/tests/test_rendering.c
index 2ea557a..5bfbea7 100644
--- a/src/gallium/state_trackers/xvmc/tests/test_rendering.c
+++ b/src/gallium/state_trackers/xvmc/tests/test_rendering.c
@@ -50,9 +50,7 @@
 #define DEFAULT_OUTPUT_HEIGHT          INPUT_HEIGHT
 #define DEFAULT_ACCEPTABLE_ERR         0.01
 
-void ParseArgs(int argc, char **argv, unsigned int *output_width, unsigned int 
*output_height, double *acceptable_error, int *prompt);
-
-void ParseArgs(int argc, char **argv, unsigned int *output_width, unsigned int 
*output_height, double *acceptable_error, int *prompt)
+static void ParseArgs(int argc, char **argv, unsigned int *output_width, 
unsigned int *output_height, double *acceptable_error, int *prompt)
 {
        int fail = 0;
        int i;
@@ -60,7 +58,7 @@ void ParseArgs(int argc, char **argv, unsigned int 
*output_width, unsigned int *
        *output_width = DEFAULT_OUTPUT_WIDTH;
        *output_height = DEFAULT_OUTPUT_HEIGHT;
        *acceptable_error = DEFAULT_ACCEPTABLE_ERR;
-       *prompt = 1;
+       *prompt = 0;
 
        for (i = 1; i < argc && !fail; ++i)
        {
@@ -79,8 +77,8 @@ void ParseArgs(int argc, char **argv, unsigned int 
*output_width, unsigned int *
                        if (sscanf(argv[++i], "%lf", acceptable_error) != 1)
                                fail = 1;
                }
-               else if (strcmp(argv[i], "-n"))
-                       *prompt = 0;
+               else if (!strcmp(argv[i], "-p"))
+                       *prompt = 1;
                else
                        fail = 1;
        }
@@ -95,7 +93,7 @@ void ParseArgs(int argc, char **argv, unsigned int 
*output_width, unsigned int *
                        "\t-w <width>\tOutput width\n"
                        "\t-h <height>\tOutput height\n"
                        "\t-e <error>\tAcceptable margin of error per pixel, 
from 0 to 1\n"
-                       "\t-n\tDon't prompt for quit\n",
+                       "\t-p\tPrompt for quit\n",
                        argv[0]
                );
 }
diff --git a/src/gallium/state_trackers/xvmc/tests/test_subpicture.c 
b/src/gallium/state_trackers/xvmc/tests/test_subpicture.c
index 89af093..9149879 100644
--- a/src/gallium/state_trackers/xvmc/tests/test_subpicture.c
+++ b/src/gallium/state_trackers/xvmc/tests/test_subpicture.c
@@ -165,8 +165,12 @@ int main(int argc, char **argv)
                assert(subpicture.xvimage_id == subpics[i].id);
                /* Test width & height assigned and correct */
                assert(subpicture.width == width && subpicture.height == 
height);
-               /* Test no palette support */
-               assert(subpicture.num_palette_entries == 0 && 
subpicture.entry_bytes == 0);
+                if (subpics[i].type == XvRGB)
+                   /* Test no palette support */
+                   assert(subpicture.num_palette_entries == 0 && 
subpicture.entry_bytes == 0);
+                else
+                   /* Test palette support */
+                   assert(subpicture.num_palette_entries == 16 && 
subpicture.entry_bytes == 4);
                /* Test valid params */
                assert(XvMCDestroySubpicture(display, &subpicture) == Success);
        }
diff --git a/src/gallium/state_trackers/xvmc/tests/testlib.c 
b/src/gallium/state_trackers/xvmc/tests/testlib.c
index 3bae978..a943f6b 100644
--- a/src/gallium/state_trackers/xvmc/tests/testlib.c
+++ b/src/gallium/state_trackers/xvmc/tests/testlib.c
@@ -85,7 +85,7 @@ int GetPort
                                        {
                                                for (k = 0; k < num_mc_types && 
!found_port; ++k)
                                                {
-                                                       if 
(surface_info[j].mc_type == mc_types[k])
+                                                       if 
((surface_info[j].mc_type & mc_types[k]) == mc_types[k])
                                                        {
                                                                for (l = 0; l < 
adaptor_info[i].num_ports && !found_port; ++l)
                                                                {
-- 
1.8.3.2

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to