widl: Use symbolic names for some of the context handle attributes.

oldstable
Rob Shearman 2008-01-07 13:27:19 +00:00 committed by Alexandre Julliard
parent 06ed169bc5
commit a3040cea58
1 changed files with 7 additions and 6 deletions

View File

@ -2061,7 +2061,7 @@ static size_t write_contexthandle_tfs(FILE *file, const type_t *type,
unsigned char flags = 0; unsigned char flags = 0;
if (is_attr(current_iface->attrs, ATTR_STRICTCONTEXTHANDLE)) if (is_attr(current_iface->attrs, ATTR_STRICTCONTEXTHANDLE))
flags |= 0x08 /* strict */; flags |= NDR_STRICT_CONTEXT_HANDLE;
if (is_ptr(type)) if (is_ptr(type))
flags |= 0x80; flags |= 0x80;
@ -2069,20 +2069,21 @@ static size_t write_contexthandle_tfs(FILE *file, const type_t *type,
{ {
flags |= 0x40; flags |= 0x40;
if (!is_attr(var->attrs, ATTR_OUT)) if (!is_attr(var->attrs, ATTR_OUT))
flags |= 0x01; flags |= NDR_CONTEXT_HANDLE_CANNOT_BE_NULL;
} }
if (is_attr(var->attrs, ATTR_OUT)) if (is_attr(var->attrs, ATTR_OUT))
flags |= 0x20; flags |= 0x20;
WRITE_FCTYPE(file, FC_BIND_CONTEXT, *typeformat_offset); WRITE_FCTYPE(file, FC_BIND_CONTEXT, *typeformat_offset);
print_file(file, 2, "0x%x,\t/* Context flags: ", flags); print_file(file, 2, "0x%x,\t/* Context flags: ", flags);
if (((flags & 0x21) != 0x21) && (flags & 0x01)) /* return and can't be null values overlap */
if (((flags & 0x21) != 0x21) && (flags & NDR_CONTEXT_HANDLE_CANNOT_BE_NULL))
print_file(file, 0, "can't be null, "); print_file(file, 0, "can't be null, ");
if (flags & 0x02) if (flags & NDR_CONTEXT_HANDLE_SERIALIZE)
print_file(file, 0, "serialize, "); print_file(file, 0, "serialize, ");
if (flags & 0x04) if (flags & NDR_CONTEXT_HANDLE_NO_SERIALIZE)
print_file(file, 0, "no serialize, "); print_file(file, 0, "no serialize, ");
if (flags & 0x08) if (flags & NDR_STRICT_CONTEXT_HANDLE)
print_file(file, 0, "strict, "); print_file(file, 0, "strict, ");
if ((flags & 0x21) == 0x20) if ((flags & 0x21) == 0x20)
print_file(file, 0, "out, "); print_file(file, 0, "out, ");