diff options
author | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2012-05-03 23:06:37 +0000 |
---|---|---|
committer | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2012-05-03 23:06:37 +0000 |
commit | aaf45d80e084cf715374b0b6a8833a8d938c7585 (patch) | |
tree | 4ec150b3a36e11bdf27370c1f17f51125cbeb2bb /NxWidgets | |
parent | 7fb45f7b0753769e803bf5de5b2df638b41d07d6 (diff) | |
download | nuttx-aaf45d80e084cf715374b0b6a8833a8d938c7585.tar.gz nuttx-aaf45d80e084cf715374b0b6a8833a8d938c7585.tar.bz2 nuttx-aaf45d80e084cf715374b0b6a8833a8d938c7585.zip |
Fix a positioning problem in CRlePaletteBitmap
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4694 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'NxWidgets')
-rwxr-xr-x | NxWidgets/ChangeLog.txt | 2 | ||||
-rw-r--r-- | NxWidgets/UnitTests/nxwm/main.cxx | 2 | ||||
-rw-r--r-- | NxWidgets/libnxwidgets/src/crlepalettebitmap.cxx | 12 |
3 files changed, 14 insertions, 2 deletions
diff --git a/NxWidgets/ChangeLog.txt b/NxWidgets/ChangeLog.txt index 18bbffd6c..000fe2cda 100755 --- a/NxWidgets/ChangeLog.txt +++ b/NxWidgets/ChangeLog.txt @@ -20,3 +20,5 @@ out in the 1.0 release but is verfied functional in 1.1. * CRlePalettBitmap: Fix an error in the text that determines if we need to "rewind" to the beginning of the image. +* CRlePalettBitmap: Fixe a positioning problem. It was actually losing + the last row of every image! diff --git a/NxWidgets/UnitTests/nxwm/main.cxx b/NxWidgets/UnitTests/nxwm/main.cxx index c202e6443..6a6266141 100644 --- a/NxWidgets/UnitTests/nxwm/main.cxx +++ b/NxWidgets/UnitTests/nxwm/main.cxx @@ -274,7 +274,7 @@ int MAIN_NAME(int argc, char *argv[]) delete g_nxwmtest.taskbar; return EXIT_FAILURE; } - showTestCaseMemory("After initializing memory menager"); + showTestCaseMemory("After initializing window manager"); // Create the start window. The general sequence for setting up the start window is: // diff --git a/NxWidgets/libnxwidgets/src/crlepalettebitmap.cxx b/NxWidgets/libnxwidgets/src/crlepalettebitmap.cxx index 31e300269..4c781e2c9 100644 --- a/NxWidgets/libnxwidgets/src/crlepalettebitmap.cxx +++ b/NxWidgets/libnxwidgets/src/crlepalettebitmap.cxx @@ -242,12 +242,22 @@ void CRlePaletteBitmap::startOfImage(void) bool CRlePaletteBitmap::advancePosition(nxgl_coord_t npixels) { + // Advance to the next column after consuming 'npixels' on this colum int newcol = m_col + npixels; + // Have we consumed the entire row? + while (newcol >= m_bitmap->width) { + // Advance to the next row + newcol -= m_bitmap->width; - if (++m_row >= m_bitmap->height) + m_row++; + + // If we still have pixels to account for but we have exceeded the + // the size of the bitmap, then return false + + if (newcol > 0 && m_row >= m_bitmap->height) { return false; } |