MCPcopy Create free account
hub / github.com/DentonW/DevIL / ilLoadActPal

Function ilLoadActPal

DevIL/src-IL/src/il_pal.cpp:449–490  ·  view source on GitHub ↗

Loads an .act palette file.

Source from the content-addressed store, hash-verified

447
448//! Loads an .act palette file.
449ILboolean ilLoadActPal(ILconst_string FileName)
450{
451 ILHANDLE ActFile;
452
453 if (!iCheckExtension(FileName, IL_TEXT("act"))) {
454 ilSetError(IL_INVALID_EXTENSION);
455 return IL_FALSE;
456 }
457
458 if (iCurImage == NULL) {
459 ilSetError(IL_ILLEGAL_OPERATION);
460 return IL_FALSE;
461 }
462
463 ActFile = iopenr(FileName);
464 if (ActFile == NULL) {
465 ilSetError(IL_COULD_NOT_OPEN_FILE);
466 return IL_FALSE;
467 }
468
469 if (iCurImage->Pal.Palette && iCurImage->Pal.PalSize > 0 && iCurImage->Pal.PalType != IL_PAL_NONE) {
470 ifree(iCurImage->Pal.Palette);
471 iCurImage->Pal.Palette = NULL;
472 }
473
474 iCurImage->Pal.PalType = IL_PAL_RGB24;
475 iCurImage->Pal.PalSize = 768;
476 iCurImage->Pal.Palette = (ILubyte*)ialloc(768);
477 if (!iCurImage->Pal.Palette) {
478 icloser(ActFile);
479 return IL_FALSE;
480 }
481
482 if (iread(iCurImage->Pal.Palette, 1, 768) != 768) {
483 icloser(ActFile);
484 return IL_FALSE;
485 }
486
487 icloser(ActFile);
488
489 return IL_TRUE;
490}
491
492
493//! Loads an .plt palette file.

Callers 1

ILAPIENTRY ilLoadPalFunction · 0.85

Calls 2

iCheckExtensionFunction · 0.85
ilSetErrorFunction · 0.85

Tested by

no test coverage detected