|
Lines 341-347
FontFileOpenFont (pointer client, FontPa
Link Here
|
| 341 |
entry = FontFileFindNameInScalableDir (&dir->scalable, &tmpName, &vals); |
341 |
entry = FontFileFindNameInScalableDir (&dir->scalable, &tmpName, &vals); |
| 342 |
if (entry) |
342 |
if (entry) |
| 343 |
{ |
343 |
{ |
| 344 |
strcpy(lowerName, entry->name.name); |
344 |
strncpy(lowerName, entry->name.name, sizeof(lowerName)-1); |
|
|
345 |
lowerName[sizeof(lowerName)-1] = '\0'; |
| 345 |
tmpName.name = lowerName; |
346 |
tmpName.name = lowerName; |
| 346 |
tmpName.length = entry->name.length; |
347 |
tmpName.length = entry->name.length; |
| 347 |
tmpName.ndashes = entry->name.ndashes; |
348 |
tmpName.ndashes = entry->name.ndashes; |
|
Lines 424-431
FontFileOpenFont (pointer client, FontPa
Link Here
|
| 424 |
vals.ranges = ranges; |
425 |
vals.ranges = ranges; |
| 425 |
vals.nranges = nranges; |
426 |
vals.nranges = nranges; |
| 426 |
|
427 |
|
| 427 |
strcpy (fileName, dir->directory); |
428 |
strncpy (fileName, dir->directory, sizeof(fileName)-1); |
| 428 |
strcat (fileName, scalable->fileName); |
429 |
fileName[sizeof(fileName)-1] = '\0'; |
|
|
430 |
strncat (fileName, scalable->fileName, sizeof(fileName)-strlen(fileName)-1); |
| 429 |
ret = (*scalable->renderer->OpenScalable) (fpe, pFont, |
431 |
ret = (*scalable->renderer->OpenScalable) (fpe, pFont, |
| 430 |
flags, entry, fileName, &vals, format, fmask, |
432 |
flags, entry, fileName, &vals, format, fmask, |
| 431 |
non_cachable_font); |
433 |
non_cachable_font); |
|
Lines 497-504
FontFileOpenBitmapNCF (FontPathElementPt
Link Here
|
| 497 |
|
499 |
|
| 498 |
dir = (FontDirectoryPtr) fpe->private; |
500 |
dir = (FontDirectoryPtr) fpe->private; |
| 499 |
bitmap = &entry->u.bitmap; |
501 |
bitmap = &entry->u.bitmap; |
| 500 |
strcpy (fileName, dir->directory); |
502 |
strncpy (fileName, dir->directory, sizeof(fileName)-1); |
| 501 |
strcat (fileName, bitmap->fileName); |
503 |
fileName[sizeof(fileName)-1] = '\0'; |
|
|
504 |
strncat (fileName, scalable->fileName, sizeof(fileName)-strlen(fileName)-1); |
| 502 |
ret = (*bitmap->renderer->OpenBitmap) |
505 |
ret = (*bitmap->renderer->OpenBitmap) |
| 503 |
(fpe, pFont, flags, entry, fileName, format, fmask, |
506 |
(fpe, pFont, flags, entry, fileName, format, fmask, |
| 504 |
non_cachable_font); |
507 |
non_cachable_font); |
|
Lines 530-537
FontFileGetInfoBitmap (FontPathElementPt
Link Here
|
| 530 |
|
533 |
|
| 531 |
dir = (FontDirectoryPtr) fpe->private; |
534 |
dir = (FontDirectoryPtr) fpe->private; |
| 532 |
bitmap = &entry->u.bitmap; |
535 |
bitmap = &entry->u.bitmap; |
| 533 |
strcpy (fileName, dir->directory); |
536 |
strncpy (fileName, dir->directory, sizeof(fileName)-1); |
| 534 |
strcat (fileName, bitmap->fileName); |
537 |
fileName[sizeof(fileName)-1] = '\0'; |
|
|
538 |
strncat (fileName, scalable->fileName, sizeof(fileName)-strlen(fileName)-1); |
| 535 |
ret = (*bitmap->renderer->GetInfoBitmap) (fpe, pFontInfo, entry, fileName); |
539 |
ret = (*bitmap->renderer->GetInfoBitmap) (fpe, pFontInfo, entry, fileName); |
| 536 |
return ret; |
540 |
return ret; |
| 537 |
} |
541 |
} |
|
Lines 556-562
_FontFileAddScalableNames(FontNamesPtr n
Link Here
|
| 556 |
{ |
560 |
{ |
| 557 |
--*max; |
561 |
--*max; |
| 558 |
|
562 |
|
| 559 |
strcpy (nameChars, scaleNames->names[i]); |
563 |
strncpy (nameChars, scaleNames->names[i], sizeof(nameChars)-1); |
|
|
564 |
nameChars[sizeof(nameChars)-1] = '\0'; |
| 560 |
if ((vals->values_supplied & PIXELSIZE_MASK) || |
565 |
if ((vals->values_supplied & PIXELSIZE_MASK) || |
| 561 |
!(vals->values_supplied & PIXELSIZE_WILDCARD) || |
566 |
!(vals->values_supplied & PIXELSIZE_WILDCARD) || |
| 562 |
vals->y == 0) |
567 |
vals->y == 0) |
|
Lines 659-665
_FontFileListFonts (pointer client, Font
Link Here
|
| 659 |
int mark_aliases) |
664 |
int mark_aliases) |
| 660 |
{ |
665 |
{ |
| 661 |
FontDirectoryPtr dir; |
666 |
FontDirectoryPtr dir; |
| 662 |
char lowerChars[MAXFONTNAMELEN], zeroChars[MAXFONTNAMELEN]; |
667 |
char lowerChars[MAXFONTNAMELEN] = {0}, zeroChars[MAXFONTNAMELEN] = {0}; |
| 663 |
FontNameRec lowerName; |
668 |
FontNameRec lowerName; |
| 664 |
FontNameRec zeroName; |
669 |
FontNameRec zeroName; |
| 665 |
FontNamesPtr scaleNames; |
670 |
FontNamesPtr scaleNames; |
|
Lines 679-685
_FontFileListFonts (pointer client, Font
Link Here
|
| 679 |
|
684 |
|
| 680 |
/* Match XLFD patterns */ |
685 |
/* Match XLFD patterns */ |
| 681 |
|
686 |
|
| 682 |
strcpy (zeroChars, lowerChars); |
687 |
strncpy (zeroChars, lowerChars, sizeof(zeroChars)-1); |
|
|
688 |
zeroChars[sizeof(zeroChars)-1] = '\0'; |
| 689 |
|
| 683 |
if (lowerName.ndashes == 14 && |
690 |
if (lowerName.ndashes == 14 && |
| 684 |
FontParseXLFDName (zeroChars, &vals, FONT_XLFD_REPLACE_ZERO)) |
691 |
FontParseXLFDName (zeroChars, &vals, FONT_XLFD_REPLACE_ZERO)) |
| 685 |
{ |
692 |
{ |
|
Lines 891-898
FontFileListOneFontWithInfo (pointer cli
Link Here
|
| 891 |
vals.ranges = FontParseRanges(origName, &vals.nranges); |
898 |
vals.ranges = FontParseRanges(origName, &vals.nranges); |
| 892 |
ranges = vals.ranges; |
899 |
ranges = vals.ranges; |
| 893 |
/* Make a new scaled instance */ |
900 |
/* Make a new scaled instance */ |
| 894 |
strcpy (fileName, dir->directory); |
901 |
strncpy (fileName, dir->directory, sizeof(fileName)-1); |
| 895 |
strcat (fileName, scalable->fileName); |
902 |
fileName[sizeof(fileName)-1] = '\0'; |
|
|
903 |
strncat (fileName, scalable->fileName, sizeof(fileName)-strlen(fileName)-1); |
| 896 |
ret = (*scalable->renderer->GetInfoScalable) |
904 |
ret = (*scalable->renderer->GetInfoScalable) |
| 897 |
(fpe, *pFontInfo, entry, &tmpName, fileName, &vals); |
905 |
(fpe, *pFontInfo, entry, &tmpName, fileName, &vals); |
| 898 |
if (ranges) xfree(ranges); |
906 |
if (ranges) xfree(ranges); |
|
Lines 931-938
FontFileListOneFontWithInfo (pointer cli
Link Here
|
| 931 |
bc = &entry->u.bc; |
939 |
bc = &entry->u.bc; |
| 932 |
entry = bc->entry; |
940 |
entry = bc->entry; |
| 933 |
/* Make a new scaled instance */ |
941 |
/* Make a new scaled instance */ |
| 934 |
strcpy (fileName, dir->directory); |
942 |
strncpy (fileName, dir->directory, sizeof(fileName)-1); |
| 935 |
strcat (fileName, scalable->fileName); |
943 |
fileName[sizeof(fileName)-1] = '\0'; |
|
|
944 |
strncat (fileName, scalable->fileName, sizeof(fileName)-strlen(fileName)-1); |
| 936 |
ret = (*scalable->renderer->GetInfoScalable) |
945 |
ret = (*scalable->renderer->GetInfoScalable) |
| 937 |
(fpe, *pFontInfo, entry, tmpName, fileName, &bc->vals); |
946 |
(fpe, *pFontInfo, entry, tmpName, fileName, &bc->vals); |
| 938 |
break; |
947 |
break; |