Module: vkd3d
Branch: master
Commit: 866c5d953159b2b497561a4e39d93c6e8edb97af
URL: https://gitlab.winehq.org/wine/vkd3d/-/commit/866c5d953159b2b497561a4e39d93…
Author: Francisco Casas <fcasas(a)codeweavers.com>
Date: Fri Jan 20 20:37:15 2023 -0300
vkd3d-shader/hlsl: Check is_uniform instead of HLSL_STORAGE_UNIFORM when validating object refs.
We are using the hlsl_ir_var.is_uniform flag to indicate when an object
is a uniform copy created from a variable with the HLSL_STORAGE_UNIFORM
modifier.
We should be checking for this instead of the HLSL_STORAGE_UNIFORM flag
which is also set to 1 for the original variables, and there should be
no reason to use this flag instead of "is_uniform" after the uniform
copies and combined/separated samplers are created.
---
libs/vkd3d-shader/hlsl_codegen.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/libs/vkd3d-shader/hlsl_codegen.c b/libs/vkd3d-shader/hlsl_codegen.c
index 8242c193..7406cda9 100644
--- a/libs/vkd3d-shader/hlsl_codegen.c
+++ b/libs/vkd3d-shader/hlsl_codegen.c
@@ -1690,7 +1690,7 @@ static bool validate_static_object_references(struct hlsl_ctx *ctx, struct hlsl_
{
struct hlsl_ir_resource_load *load = hlsl_ir_resource_load(instr);
- if (!(load->resource.var->storage_modifiers & HLSL_STORAGE_UNIFORM))
+ if (!load->resource.var->is_uniform)
{
hlsl_error(ctx, &instr->loc, VKD3D_SHADER_ERROR_HLSL_NON_STATIC_OBJECT_REF,
"Loaded resource must have a single uniform source.");
@@ -1705,7 +1705,7 @@ static bool validate_static_object_references(struct hlsl_ctx *ctx, struct hlsl_
if (load->sampler.var)
{
- if (!(load->sampler.var->storage_modifiers & HLSL_STORAGE_UNIFORM))
+ if (!load->sampler.var->is_uniform)
{
hlsl_error(ctx, &instr->loc, VKD3D_SHADER_ERROR_HLSL_NON_STATIC_OBJECT_REF,
"Resource load sampler must have a single uniform source.");
@@ -1723,7 +1723,7 @@ static bool validate_static_object_references(struct hlsl_ctx *ctx, struct hlsl_
{
struct hlsl_ir_resource_store *store = hlsl_ir_resource_store(instr);
- if (!(store->resource.var->storage_modifiers & HLSL_STORAGE_UNIFORM))
+ if (!store->resource.var->is_uniform)
{
hlsl_error(ctx, &instr->loc, VKD3D_SHADER_ERROR_HLSL_NON_STATIC_OBJECT_REF,
"Accessed resource must have a single uniform source.");
Module: vkd3d
Branch: master
Commit: 8f8c7a02ee0744c6203e742c3a9616a3b96d6a85
URL: https://gitlab.winehq.org/wine/vkd3d/-/commit/8f8c7a02ee0744c6203e742c3a961…
Author: Francisco Casas <fcasas(a)codeweavers.com>
Date: Fri May 26 20:10:39 2023 -0400
vkd3d-shader/tpf: Introduce struct extern_resource.
This struct is required for handling both whole-variable resources for
SM < 5 and single-component resources for SM 5 in the same way, when
writting the RDEF block and resource declarations within the shader.
---
libs/vkd3d-shader/tpf.c | 147 +++++++++++++++++++++++++++++++-----------------
1 file changed, 94 insertions(+), 53 deletions(-)
Module: vkd3d
Branch: master
Commit: ae6bc398d6f2d90bc6bf87bdfc8e5096df7669f7
URL: https://gitlab.winehq.org/wine/vkd3d/-/commit/ae6bc398d6f2d90bc6bf87bdfc8e5…
Author: Francisco Casas <fcasas(a)codeweavers.com>
Date: Mon May 29 17:34:03 2023 -0400
vkd3d-shader/hlsl: Allow derefs to provide the data_type.
After lowering the derefs path to a single offset node, there was no way
of knowing the type of the referenced part of the variable. This little
modification allows to avoid having to pass the data type everywhere and
it is required for supporting instructions that reference objects
components within struct types.
Since deref->data_type allows us to retrieve the type of the deref,
deref->offset_regset is no longer necessary.
---
libs/vkd3d-shader/hlsl.c | 4 ++-
libs/vkd3d-shader/hlsl.h | 6 ++--
libs/vkd3d-shader/hlsl_codegen.c | 14 +++++----
libs/vkd3d-shader/tpf.c | 61 ++++++++++++++++++++--------------------
4 files changed, 46 insertions(+), 39 deletions(-)
Module: wine
Branch: master
Commit: 710eec8fac7952679e2ddb4eba54367b50c47930
URL: https://gitlab.winehq.org/wine/wine/-/commit/710eec8fac7952679e2ddb4eba5436…
Author: Tim Clem <tclem(a)codeweavers.com>
Date: Thu Jul 13 10:27:20 2023 -0700
shell32: Don't fall back to $HOME for missing user special folders.
Fall through in create_link and allow SHGetFolderPathAndSubDirW to
create an empty folder in place if the alternatives are not available.
Creating a link back to $HOME makes a recursive directory structure,
which results in crashes in programs that naively search %USERPROFILE%
(e.g. Quicken).
---
dlls/shell32/shellpath.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/dlls/shell32/shellpath.c b/dlls/shell32/shellpath.c
index 5dd9f4b6310..8328477fc2c 100644
--- a/dlls/shell32/shellpath.c
+++ b/dlls/shell32/shellpath.c
@@ -2767,10 +2767,7 @@ static void create_link( const WCHAR *path, const char *xdg_name, const char *de
{
if (link_folder( mgr, &nt_name, target )) goto done;
}
- if (link_folder( mgr, &nt_name, default_name )) goto done;
-
- /* fall back to HOME */
- link_folder( mgr, &nt_name, "$HOME" );
+ link_folder( mgr, &nt_name, default_name );
done:
RtlFreeUnicodeString( &nt_name );