Mercurial > hg > dmlib
diff tools/xm2jss.c @ 1232:10cb3c400451
Cleanup.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Fri, 06 Mar 2015 13:02:54 +0200 |
parents | a275b7382ffa |
children | d4b373d53a64 |
line wrap: on
line diff
--- a/tools/xm2jss.c Fri Mar 06 12:34:35 2015 +0200 +++ b/tools/xm2jss.c Fri Mar 06 13:02:54 2015 +0200 @@ -499,29 +499,36 @@ JSSERROR(DMERR_MALLOC, DMERR_MALLOC, "Error allocating memory for pattern compression buffer.\n"); - - // Write patterns + // Convert and write patterns for (totalSize = pattern = 0; pattern < m->npatterns; pattern++) { + JSSPattern *pat = m->patterns[pattern]; JSSMODPattern patHead; size_t finalSize = 0; + if (pat == NULL) + JSSERROR(DMERR_NULLPTR, DMERR_NULLPTR, + "Pattern #%d was NULL.\n", pattern); + if (pat->nrows > jsetMaxRows) + JSSERROR(DMERR_INVALID_DATA, DMERR_INVALID_DATA, + "Pattern #%d has %d rows > %d max.\n", + pattern, pat->nrows, jsetMaxRows); switch (patMode) { case PATMODE_RAW_HORIZ: - i = jssConvertPatternRawHoriz(patBuf, patBufSize, &finalSize, m->patterns[pattern]); + i = jssConvertPatternRawHoriz(patBuf, patBufSize, &finalSize, pat); break; case PATMODE_COMP_HORIZ: - i = jssConvertPatternCompHoriz(patBuf, patBufSize, &finalSize, m->patterns[pattern]); + i = jssConvertPatternCompHoriz(patBuf, patBufSize, &finalSize, pat); break; case PATMODE_RAW_VERT: - i = jssConvertPatternRawVert(patBuf, patBufSize, &finalSize, m->patterns[pattern]); + i = jssConvertPatternRawVert(patBuf, patBufSize, &finalSize, pat); break; case PATMODE_COMP_VERT: - i = jssConvertPatternCompVert(patBuf, patBufSize, &finalSize, m->patterns[pattern]); + i = jssConvertPatternCompVert(patBuf, patBufSize, &finalSize, pat); break; case PATMODE_RAW_ELEM: - i = jssConvertPatternRawElem(patBuf, patBufSize, &finalSize, m->patterns[pattern]); + i = jssConvertPatternRawElem(patBuf, patBufSize, &finalSize, pat); break; default: dmFree(patBuf); @@ -536,7 +543,7 @@ } dmMsg(3, " - Pattern %d size %d bytes\n", pattern, finalSize); - patHead.nrows = m->patterns[pattern]->nrows; + patHead.nrows = pat->nrows; patHead.size = finalSize; totalSize += finalSize + sizeof(patHead);