Use VBVMR_GetParameterStringW instead of VBVMR_GetParameterStringA

update struct result definition

fixes bug with unknown parameters
This commit is contained in:
onyx-and-iris 2024-06-27 23:26:46 +01:00
parent accab93fba
commit 3c46b3d9f3
3 changed files with 6 additions and 6 deletions

View File

@ -20,7 +20,7 @@ long version(T_VBVMR_INTERFACE *iVMR, long *version);
bool is_pdirty(T_VBVMR_INTERFACE *iVMR); bool is_pdirty(T_VBVMR_INTERFACE *iVMR);
long get_parameter_float(T_VBVMR_INTERFACE *iVMR, char *param, float *f); long get_parameter_float(T_VBVMR_INTERFACE *iVMR, char *param, float *f);
long get_parameter_string(T_VBVMR_INTERFACE *iVMR, char *param, char *s); long get_parameter_string(T_VBVMR_INTERFACE *iVMR, char *param, unsigned short *s);
long set_parameter_float(T_VBVMR_INTERFACE *iVMR, char *param, float val); long set_parameter_float(T_VBVMR_INTERFACE *iVMR, char *param, float val);
long set_parameter_string(T_VBVMR_INTERFACE *iVMR, char *param, char *s); long set_parameter_string(T_VBVMR_INTERFACE *iVMR, char *param, char *s);
long set_parameters(T_VBVMR_INTERFACE *iVMR, char *command); long set_parameters(T_VBVMR_INTERFACE *iVMR, char *command);

View File

@ -96,10 +96,10 @@ long get_parameter_float(T_VBVMR_INTERFACE *vmr, char *param, float *f)
return vmr->VBVMR_GetParameterFloat(param, f); return vmr->VBVMR_GetParameterFloat(param, f);
} }
long get_parameter_string(T_VBVMR_INTERFACE *vmr, char *param, char *s) long get_parameter_string(T_VBVMR_INTERFACE *vmr, char *param, unsigned short *s)
{ {
log_trace("VBVMR_GetParameterStringA(%s, <char> *s)", param, s); log_trace("VBVMR_GetParameterStringW(%s, <unsigned short> *s)", param, s);
return vmr->VBVMR_GetParameterStringA(param, s); return vmr->VBVMR_GetParameterStringW(param, s);
} }
long set_parameter_float(T_VBVMR_INTERFACE *vmr, char *param, float val) long set_parameter_float(T_VBVMR_INTERFACE *vmr, char *param, float val)

View File

@ -21,7 +21,7 @@ struct result
union val union val
{ {
float f; float f;
char s[MAX_LINE]; wchar_t s[MAX_LINE];
} val; } val;
}; };
@ -243,7 +243,7 @@ void parse_command(T_VBVMR_INTERFACE *vmr, char *command)
printf("%.1f\n", res.val.f); printf("%.1f\n", res.val.f);
break; break;
case STRING_T: case STRING_T:
puts(res.val.s); printf("%ls\n", res.val.s);
break; break;
default: default:
break; break;