add: TFB_DrawImage_FixScaling (img, scale);
context: TFB_DrawCanvas_Image (TFB_Image *img, int x, int y, int scale, TFB_Palette *palette, TFB_Canvas target){	SDL_Rect targetRect;	SDL_Surface *surf;	if (img == 0)	{		fprintf (stderr, "ERROR: TFB_DrawCanvas_Image passed null image ptr\n");		return;	}	LockMutex (img->mutex);	targetRect.x = x;	targetRect.y = y;	if (scale != 0 && scale != 256)	{		// TFB_DrawImage_FixScaling (img, scale);		surf = img->ScaledImg;	}	else		surf = img->NormalImg;		if (surf->format->palette)	{		if (palette)		{			SDL_SetColors (surf, (SDL_Color*)palette, 0, 256);		}		else		{			SDL_SetColors (surf, (SDL_Color*)img->Palette, 0, 256);		}	}		SDL_BlitSurface(surf, NULL, (NativeCanvas) target, &targetRect);	UnlockMutex (img->mutex);}