Commit f9978516 authored by Nikolay Sivov's avatar Nikolay Sivov Committed by Alexandre Julliard

fontsub: Improve CreateFontPackage() stub for TTFCFP_SUBSET case.

parent 179137c2
...@@ -50,5 +50,16 @@ ULONG __cdecl CreateFontPackage(const unsigned char *src, const ULONG src_len, u ...@@ -50,5 +50,16 @@ ULONG __cdecl CreateFontPackage(const unsigned char *src, const ULONG src_len, u
written, flags, face_index, format, lang, platform, encoding, keep_list, keep_len, allocproc, written, flags, face_index, format, lang, platform, encoding, keep_list, keep_len, allocproc,
reallocproc, freeproc, reserved); reallocproc, freeproc, reserved);
return ERR_GENERIC; if (format != TTFCFP_SUBSET)
return ERR_GENERIC;
*dest = allocproc(src_len);
if (!*dest)
return ERR_MEM;
memcpy(*dest, src, src_len);
*dest_len = src_len;
*written = src_len;
return NO_ERROR;
} }
...@@ -27,14 +27,36 @@ typedef void *(__cdecl *CFP_ALLOCPROC)(size_t); ...@@ -27,14 +27,36 @@ typedef void *(__cdecl *CFP_ALLOCPROC)(size_t);
typedef void *(__cdecl *CFP_REALLOCPROC)(void *, size_t); typedef void *(__cdecl *CFP_REALLOCPROC)(void *, size_t);
typedef void (__cdecl *CFP_FREEPROC)(void *); typedef void (__cdecl *CFP_FREEPROC)(void *);
#define TTFCFP_SUBSET 0
#define TTFCFP_SUBSET1 1
#define TTFCFP_DELTA 2
#define TTFCFP_UNICODE_PLATFORMID 0
#define TTFCFP_APPLE_PLATFORMID 1
#define TTFCFP_ISO_PLATFORMID 2
#define TTFCFP_MS_PLATFORMID 3
#define TTFCFP_STD_MAC_CHAR_SET 0
#define TTFCFP_SYMBOL_CHAR_SET 0
#define TTFCFP_UNICODE_CHAR_SET 1
#define TTFCFP_DONT_CARE 0xffff
#define TTFCFP_LANG_KEEP_ALL 0
#define TTFCFP_FLAGS_SUBSET 0x0001
#define TTFCFP_FLAGS_COMPRESS 0x0002
#define TTFCFP_FLAGS_TTC 0x0004
#define TTFCFP_FLAGS_GLYPHLIST 0x0008
#define ERR_GENERIC 1000
#define ERR_MEM 1005
ULONG __cdecl CreateFontPackage(const unsigned char *src, const ULONG src_len, unsigned char **dest, ULONG __cdecl CreateFontPackage(const unsigned char *src, const ULONG src_len, unsigned char **dest,
ULONG *dest_len, ULONG *written, const unsigned short flags, const unsigned short face_index, ULONG *dest_len, ULONG *written, const unsigned short flags, const unsigned short face_index,
const unsigned short format, const unsigned short lang, const unsigned short platform, const unsigned short format, const unsigned short lang, const unsigned short platform,
const unsigned short encoding, const unsigned short *keep_list, const unsigned short keep_len, const unsigned short encoding, const unsigned short *keep_list, const unsigned short keep_len,
CFP_ALLOCPROC allocproc, CFP_REALLOCPROC reallocproc, CFP_FREEPROC freeproc, void *reserved); CFP_ALLOCPROC allocproc, CFP_REALLOCPROC reallocproc, CFP_FREEPROC freeproc, void *reserved);
#define ERR_GENERIC 1000
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment