It is a bit more permissive than it should be, hyphens should be allowed
in resource names, but not in filenames.
Signed-off-by: Józef Kucia <jkucia(a)codeweavers.com>
---
I need it to add tests for vulkan-1. I would like to add some tests for
structure conversion bugs.
---
tools/wrc/parser.l | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/wrc/parser.l b/tools/wrc/parser.l
index 32a231b5a2ea..0f46670288ce 100644
--- a/tools/wrc/parser.l
+++ b/tools/wrc/parser.…
[View More]l
@@ -402,7 +402,7 @@ static unsigned long xstrtoul(const char *nptr, char **endptr, int base)
0[oO][0-7]+[lL]? { parser_lval.num = xstrtoul(yytext+2, 0, 8);
return (yytext[yyleng-1] == 'L' || yytext[yyleng-1] == 'l') ? tLNUMBER : tNUMBER; }
-[A-Za-z_0-9./\\]+ {
+[A-Za-z_0-9./\\][A-Za-z_0-9./\\\-]* {
struct keyword *tok = iskeyword(yytext);
if(tok)
--
2.16.4
[View Less]
This corresponds to 652ec646ad3 affecting widl.
Signed-off-by: Zebediah Figura <z.figura12(a)gmail.com>
---
dlls/oleaut32/typelib.c | 2 +-
dlls/oleaut32/typelib.h | 17 ++++++++---------
2 files changed, 9 insertions(+), 10 deletions(-)
diff --git a/dlls/oleaut32/typelib.c b/dlls/oleaut32/typelib.c
index 4ee6aa540d..9b1c782e8d 100644
--- a/dlls/oleaut32/typelib.c
+++ b/dlls/oleaut32/typelib.c
@@ -2675,7 +2675,7 @@ static ITypeInfoImpl * MSFT_DoTypeInfo(
ptiRet->typeattr.…
[View More]wMajorVerNum = LOWORD(tiBase.version);
ptiRet->typeattr.wMinorVerNum = HIWORD(tiBase.version);
ptiRet->typeattr.cImplTypes = tiBase.cImplTypes;
- ptiRet->typeattr.cbSizeVft = tiBase.cbSizeVft; /* FIXME: this is only the non inherited part */
+ ptiRet->typeattr.cbSizeVft = tiBase.cbSizeVft;
if (ptiRet->typeattr.typekind == TKIND_ALIAS) {
TYPEDESC tmp;
MSFT_GetTdesc(pcx, tiBase.datatype1, &tmp);
diff --git a/dlls/oleaut32/typelib.h b/dlls/oleaut32/typelib.h
index c404b3d311..7699a9a1f3 100644
--- a/dlls/oleaut32/typelib.h
+++ b/dlls/oleaut32/typelib.h
@@ -142,11 +142,11 @@ typedef struct tagMSFT_TypeInfoBase {
INT helpcontext; /* */
INT oCustData; /* offset in customer data table */
#ifdef WORDS_BIGENDIAN
- INT16 cbSizeVft; /* virtual table size, not including inherits */
+ INT16 cbSizeVft; /* virtual table size, including inherits */
INT16 cImplTypes; /* nr of implemented interfaces */
#else
INT16 cImplTypes; /* nr of implemented interfaces */
- INT16 cbSizeVft; /* virtual table size, not including inherits */
+ INT16 cbSizeVft; /* virtual table size, including inherits */
#endif
/*050*/ INT size; /* size in bytes, at least for structures */
/* FIXME: name of this field */
@@ -155,10 +155,8 @@ typedef struct tagMSFT_TypeInfoBase {
/* if coclass: offset in reftable */
/* if interface: reference to inherited if */
/* if module: offset to dllname in name table */
- INT datatype2; /* if 0x8000, entry above is valid */
- /* actually dunno */
- /* else it is zero? */
- /* if interface: inheritance level | no of inherited funcs */
+ INT datatype2; /* for interfaces: hiword is num of inherited funcs */
+ /* loword is num of inherited interfaces */
INT res18; /* always? 0 */
/*060*/ INT res19; /* always? -1 */
} MSFT_TypeInfoBase;
@@ -281,9 +279,10 @@ typedef struct {
to the typeinfo itself or to a member of
the typeinfo */
INT next_hash; /* offset to next name in the hash bucket */
- INT namelen; /* only lower 8 bits are valid,
- lower-middle 8 bits are unknown (flags?),
- upper 16 bits are hash code */
+ INT namelen; /* only lower 8 bits are valid */
+ /* 0x1000 if name is only used once as a variable name */
+ /* 0x2000 if name is a variable in an enumeration */
+ /* 0x3800 if name is typeinfo name */
} MSFT_NameIntro;
/* the custom data table directory has entries like this */
typedef struct {
--
2.17.0
[View Less]
Hi,
This is an updated version of the previous patchset with a few improvements
to unify some of the logic better across Linux and Mac.
The overall issue is that on Linux we report each logical core as a physical
core, so on SMT systems we report twice the number of cores. In addition we
don't properly report SMT capabilities.
The main issues are in the Linux sysfs code for parsing the CPU topology.
We use a common helper function (logical_proc_info_add_by_id) among Linux
and Mac. This is …
[View More]were some of the fixes need to be implemented for not
adding cores twice. (We do something similar in logical_proc_info_add_cache
in relation to parsing shared_cpu_map.)
However we use logical_proc_info_add_by_id in an inconsistent manner between
Linux and Mac code. On Linux we use different ID values (core and package),
but on Mac we re-use the package ID. The early patches rectify this and
thanks Andrew Eikum for helping to test this. The later patches fix the
Linux issues and then add proper SMT reporting flags.
Thanks,
Roderick
Roderick Colenbrander (5):
ntdll: Derive number of logical CPU cores from core mask.
ntdll: store core information by core on apple.
ntdll: Report physical cores once with proper thread mask.
ntdll: GetLogicalProcessorInformationEx report LTP_PC_SMT for SMT
cores.
ntdll: GetLogicalProcessorInformation report LPT_PC_SMT for SMT cores.
dlls/ntdll/nt.c | 75 +++++++++++++++++++++++++++++++++++++++++++++------------
include/winnt.h | 2 ++
2 files changed, 61 insertions(+), 16 deletions(-)
--
2.14.4
[View Less]
Hi All,
I've been hacking away at K32EnumDeviceDrivers trying to get it to properly
handle calls, and have made some decent progress that maybe some of you who
are experts can finish. The reason why I am trying to implement
K32EnumDeviceDrivers is that Creative's E-MU Emulator X3 crashes when
trying to call it. I've managed to get the app one step closer to
launching with this K32EnumDeviceDrivers implementation, which does in fact
enumerate the devices, and am now stuck on a different error.…
[View More] I hope this
patch is of some utility to you all.
[View Less]