diff options
author | Alan Coopersmith <alan.coopersmith@oracle.com> | 2012-08-28 23:35:37 -0700 |
---|---|---|
committer | Alan Coopersmith <alan.coopersmith@oracle.com> | 2012-09-06 23:22:47 -0700 |
commit | af1df9c1e21c7d2c11a43a3dbfe5ff1eacb3d5af (patch) | |
tree | 28a4b764c7825e10ac8f4200a528dabe7a51e0a8 /decode_render.c | |
parent | 51be9ed1dae5615a10dd2bd959c267859b375ed2 (diff) |
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Diffstat (limited to 'decode_render.c')
-rw-r--r-- | decode_render.c | 33 |
1 files changed, 31 insertions, 2 deletions
diff --git a/decode_render.c b/decode_render.c index 12149e9..b02a092 100644 --- a/decode_render.c +++ b/decode_render.c @@ -538,8 +538,8 @@ InitializeRENDER(const unsigned char *buf) DefineType(TRIANGLE, RECORD, "TRIANGLE", PrintTRIANGLE); DefineType(TRAPEZOID, RECORD, "TRAPEZOID", PrintTRAPEZOID); DefineType(FILTERALIAS, BUILTIN, "FILTERALIAS", PrintFILTERALIAS); - DefineType(RENDERTRANSFORM, BUILTIN, "RENDERTRANSFORM", - PrintRENDERTRANSFORM); + + InitializeCommonRenderTypes(); InitializeExtensionDecoder(RENDERRequest, render_decode_req, render_decode_reply); @@ -548,3 +548,32 @@ InitializeRENDER(const unsigned char *buf) InitializeExtensionErrorDecoder(errcode, render_decode_error); } } + +/* + Types originally defined by Render but now shared with other extensions + which may need to initialize the definitions even if the client hasn't + made any Render extension calls +*/ +void +InitializeCommonRenderTypes(void) +{ + static Boolean initialized; + TYPE p; + + if (initialized) + return; + initialized = true; + + DefineType(RENDERTRANSFORM, BUILTIN, "RENDERTRANSFORM", + PrintRENDERTRANSFORM); + + /* Subpixel orders included in 0.6 */ + p = DefineType(SUBPIXEL, ENUMERATED, "SUBPIXEL", + (PrintProcType) PrintENUMERATED); + DefineEValue(p, 0L, "Unknown"); + DefineEValue(p, 1L, "SubPixelHorizontalRGB"); + DefineEValue(p, 2L, "SubPixelHorizontalBGR"); + DefineEValue(p, 3L, "SubPixelVerticalRGB"); + DefineEValue(p, 4L, "SubPixelVerticalBGR"); + DefineEValue(p, 5L, "SubPixelNone"); +} |