[PATCH 0/1] MR1618: Draft: gdiplus: improve performance of GdipScaleMatrix
From: Bartosz Kosiorek <gang65(a)poczta.onet.pl> --- dlls/gdiplus/tests/matrix.c | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/dlls/gdiplus/tests/matrix.c b/dlls/gdiplus/tests/matrix.c index 5ca0209f6a9..7ae91780192 100644 --- a/dlls/gdiplus/tests/matrix.c +++ b/dlls/gdiplus/tests/matrix.c @@ -110,6 +110,38 @@ static void test_transform(void) GdipDeleteMatrix(matrix); } +static void test_scale(void) +{ + GpStatus status; + GpMatrix *matrix = NULL; + GpMatrix *expected_matrix = NULL; + BOOL equal = FALSE; + + GdipCreateMatrix2(1.0, -2.0, 30.0, 40.0, -500.0, 600.0, &matrix); + + status = GdipScaleMatrix(NULL, 3, 2, MatrixOrderAppend); + expect(InvalidParameter, status); + status = GdipScaleMatrix(matrix, 3, 2, MatrixOrderAppend); + expect(Ok, status); + + GdipCreateMatrix2(3.0, -6.0, 60.0, 80.0, 0.0, 0.0, &expected_matrix); + expect(Ok, status); + GdipIsMatrixEqual(matrix, expected_matrix, &equal); + expect(TRUE, equal); + GdipDeleteMatrix(matrix); + + GdipCreateMatrix2(1.0, -2.0, 30.0, 40.0, -500.0, 600.0, &matrix); + + status = GdipScaleMatrix(matrix, 3, 2, MatrixOrderPrepend); + expect(Ok, status); + + GdipCreateMatrix2(3.0, -4.0, 90.0, 80.0, -1500.0, 1200.0, &expected_matrix); + expect(Ok, status); + GdipIsMatrixEqual(matrix, expected_matrix, &equal); + expect(TRUE, equal); + GdipDeleteMatrix(matrix); +} + static void test_isinvertible(void) { GpStatus status; @@ -390,6 +422,7 @@ START_TEST(matrix) GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL); test_constructor_destructor(); + test_scale(); test_transform(); test_isinvertible(); test_invert(); -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/1618
Hi, It looks like your patch introduced the new failures shown below. Please investigate and fix them before resubmitting your patch. If they are not new, fixing them anyway would help a lot. Otherwise please ask for the known failures list to be updated. The full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=127038 Your paranoid android. === w7u_2qxl (32 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w7u_adm (32 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w7u_el (32 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w8 (32 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w8adm (32 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w864 (32 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w1064v1507 (32 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w1064v1809 (32 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w1064_tsign (32 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w10pro64 (32 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w864 (64 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w1064v1507 (64 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w1064v1809 (64 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w1064_2qxl (64 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w1064_adm (64 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w1064_tsign (64 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w10pro64 (64 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w10pro64_en_AE_u8 (64 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w10pro64_ar (64 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w10pro64_ja (64 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === w10pro64_zh_CN (64 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === debian11 (32 bit report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === debian11 (32 bit ar:MA report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === debian11 (32 bit de report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === debian11 (32 bit fr report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === debian11 (32 bit he:IL report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === debian11 (32 bit hi:IN report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === debian11 (32 bit ja:JP report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === debian11 (32 bit zh:CN report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === debian11b (32 bit WoW report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000 === debian11b (64 bit WoW report) === gdiplus: matrix.c:130: Test failed: Expected 00000001, got 00000000 matrix.c:141: Test failed: Expected 00000001, got 00000000
participants (3)
-
Bartosz Kosiorek -
Bartosz Kosiorek (@gang65) -
Marvin