История изменений
Исправление vova7890, (текущая версия) :
В общем, собрал чуток, вроде даже рисует http://ompldr.org/vZ2tidQ... Токо чот она мне не нравится, беглым взглядом говнокод попадается часто %) Например:
for (i = 0; (i < sy); i++)
{
im->tpixels[i] = (int *) gdCalloc (sx, sizeof (int));
if (!im->tpixels[i]) {
...
pixel_data = gdMalloc (sizeof (int *) * sy * sx);
for (i = 0; (i < sy); i++)
{
im->tpixels[i] = (int *)(pixel_data + ( sizeof (int *) * sx * i ));
Исходная версия vova7890, :
В общем, собрал чуток, вроде даже рисует http://ompldr.org/vZ2tidQ... Токо чот она мне не нравится, беглым взглядом говнокод попадается часто %) Например:
for (i = 0; (i < sy); i++)
{
/* Row-major ever since gd 1.3 */
im->pixels[i] = (unsigned char *) gdCalloc (sx, sizeof (unsigned char));
if (!im->pixels[i])
{
for (--i ; i >= 0; i--)
{
gdFree(im->pixels[i]);
}
...
pixel_data = gdMalloc (sizeof (int *) * sy * sx);
for (i = 0; (i < sy); i++)
{
im->tpixels[i] = (int *)(pixel_data + ( sizeof (int *) * sx * i ));