| OLD | NEW |
| 1 | 1 |
| 2 /* | 2 /* |
| 3 * Copyright 2011 Google Inc. | 3 * Copyright 2011 Google Inc. |
| 4 * | 4 * |
| 5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
| 6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
| 7 */ | 7 */ |
| 8 #include "Test.h" | 8 #include "Test.h" |
| 9 #include "SkBitmap.h" | 9 #include "SkBitmap.h" |
| 10 #include "SkRect.h" | 10 #include "SkRect.h" |
| (...skipping 397 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 408 default: | 408 default: |
| 409 break; | 409 break; |
| 410 } | 410 } |
| 411 if (sizeFail) { | 411 if (sizeFail) { |
| 412 SkString str; | 412 SkString str; |
| 413 str.printf("getSafeSize64() wrong size: %s", | 413 str.printf("getSafeSize64() wrong size: %s", |
| 414 getSkConfigName(tstSafeSize)); | 414 getSkConfigName(tstSafeSize)); |
| 415 reporter->reportFailed(str); | 415 reporter->reportFailed(str); |
| 416 } | 416 } |
| 417 | 417 |
| 418 size_t subW, subH; | 418 int subW, subH; |
| 419 // Set sizes to be height = 2 to force the last row of the | 419 // Set sizes to be height = 2 to force the last row of the |
| 420 // source to be used, thus verifying correct operation if | 420 // source to be used, thus verifying correct operation if |
| 421 // the bitmap is an extracted subset. | 421 // the bitmap is an extracted subset. |
| 422 if (gPairs[i].fConfig == SkBitmap::kA1_Config) { | 422 if (gPairs[i].fConfig == SkBitmap::kA1_Config) { |
| 423 // If one-bit per pixel, use 9 pixels to force more than | 423 // If one-bit per pixel, use 9 pixels to force more than |
| 424 // one byte per row. | 424 // one byte per row. |
| 425 subW = 9; | 425 subW = 9; |
| 426 subH = 2; | 426 subH = 2; |
| 427 } else { | 427 } else { |
| 428 // All other configurations are at least one byte per pixel, | 428 // All other configurations are at least one byte per pixel, |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 465 srcReady = src.copyTo(&subset, src.getConfig()); | 465 srcReady = src.copyTo(&subset, src.getConfig()); |
| 466 } | 466 } |
| 467 | 467 |
| 468 // Not all configurations will generate a valid 'subset'. | 468 // Not all configurations will generate a valid 'subset'. |
| 469 if (srcReady) { | 469 if (srcReady) { |
| 470 | 470 |
| 471 // Allocate our target buffer 'buf' for all copies. | 471 // Allocate our target buffer 'buf' for all copies. |
| 472 // To simplify verifying correctness of copies attach | 472 // To simplify verifying correctness of copies attach |
| 473 // buf to a SkBitmap, but copies are done using the | 473 // buf to a SkBitmap, but copies are done using the |
| 474 // raw buffer pointer. | 474 // raw buffer pointer. |
| 475 const uint32_t bufSize = subH * | 475 const size_t bufSize = subH * |
| 476 SkBitmap::ComputeRowBytes(src.getConfig(), subW) * 2; | 476 SkBitmap::ComputeRowBytes(src.getConfig(), subW) * 2; |
| 477 SkAutoMalloc autoBuf (bufSize); | 477 SkAutoMalloc autoBuf (bufSize); |
| 478 uint8_t* buf = static_cast<uint8_t*>(autoBuf.get()); | 478 uint8_t* buf = static_cast<uint8_t*>(autoBuf.get()); |
| 479 | 479 |
| 480 SkBitmap bufBm; // Attach buf to this bitmap. | 480 SkBitmap bufBm; // Attach buf to this bitmap. |
| 481 bool successExpected; | 481 bool successExpected; |
| 482 | 482 |
| 483 // Set up values for each pixel being copied. | 483 // Set up values for each pixel being copied. |
| 484 Coordinates coords(subW * subH); | 484 Coordinates coords(subW * subH); |
| 485 for (size_t x = 0; x < subW; ++x) | 485 for (int x = 0; x < subW; ++x) |
| 486 for (size_t y = 0; y < subH; ++y) | 486 for (int y = 0; y < subH; ++y) |
| 487 { | 487 { |
| 488 int index = y * subW + x; | 488 int index = y * subW + x; |
| 489 SkASSERT(index < coords.length); | 489 SkASSERT(index < coords.length); |
| 490 coords[index]->fX = x; | 490 coords[index]->fX = x; |
| 491 coords[index]->fY = y; | 491 coords[index]->fY = y; |
| 492 } | 492 } |
| 493 | 493 |
| 494 writeCoordPixels(subset, coords); | 494 writeCoordPixels(subset, coords); |
| 495 | 495 |
| 496 // Test #1 //////////////////////////////////////////// | 496 // Test #1 //////////////////////////////////////////// |
| (...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 595 false); | 595 false); |
| 596 | 596 |
| 597 #endif | 597 #endif |
| 598 } | 598 } |
| 599 } // for (size_t copyCase ... | 599 } // for (size_t copyCase ... |
| 600 } | 600 } |
| 601 } | 601 } |
| 602 | 602 |
| 603 #include "TestClassDef.h" | 603 #include "TestClassDef.h" |
| 604 DEFINE_TESTCLASS("BitmapCopy", TestBitmapCopyClass, TestBitmapCopy) | 604 DEFINE_TESTCLASS("BitmapCopy", TestBitmapCopyClass, TestBitmapCopy) |
| OLD | NEW |