Skip to content

Avoid nested structs in the types used to pass data from vertex to fragment shader functions#1

Merged
as-cii merged 1 commit intomasterfrom
catalina-mps-compatibility
Mar 29, 2021
Merged

Avoid nested structs in the types used to pass data from vertex to fragment shader functions#1
as-cii merged 1 commit intomasterfrom
catalina-mps-compatibility

Conversation

@maxbrunsfeld
Copy link
Collaborator

@maxbrunsfeld maxbrunsfeld commented Mar 29, 2021

This seems to be required in order for the shaders to compile successfully on macOS versions <= 10.15 (Catalina). In these versions, when nested structs are used, we get errors like this:

for vertex function return types:

  metal shader compilation failed:
  ./src/platform/mac/shaders/shaders.metal:40:8: error: invalid return type 'QuadFragmentInput' for vertex function
  vertex QuadFragmentInput quad_vertex(
         ^
  ./src/platform/mac/shaders/shaders.metal:37:5: note: field of illegal type 'GPUIQuad' declared here
      GPUIQuad quad;
      ^

for fragment function inputs:

  ./src/platform/mac/shaders/shaders.metal:59:5: error: invalid type 'QuadFragmentInput' of input declaration with attribute 'stage_in' in a fragment function
      QuadFragmentInput input [[stage_in]]
      ^
  ./src/platform/mac/shaders/shaders.metal:37:5: note: field of illegal type 'GPUIQuad' declared here
      GPUIQuad quad;
      ^

This is required to compile successfully on macos versions <= 10.15 (catalina)
@as-cii as-cii merged commit a949959 into master Mar 29, 2021
@as-cii as-cii deleted the catalina-mps-compatibility branch March 29, 2021 07:16
@as-cii
Copy link
Member

as-cii commented Mar 29, 2021

Pretty weird error but excellent work figuring this out! ⚡

leizaf pushed a commit to leizaf/zed that referenced this pull request Jan 26, 2024
gabydd pushed a commit to gabydd/zed that referenced this pull request Feb 26, 2024
linux/x11: Move from dedicated thread to fd source for event loop
@JosephTLyons JosephTLyons mentioned this pull request Mar 5, 2024
1 task
d1y pushed a commit to d1y/zed1 that referenced this pull request Jun 25, 2024
Set up ground work for debugger config files
@BayoumiBytes BayoumiBytes mentioned this pull request Jul 12, 2024
1 task
This was referenced Aug 11, 2024
rtfeldman added a commit that referenced this pull request Feb 5, 2026
…uting

- Fix #1: Both tools previously created filesystem tasks before authorization.
  GPUI tasks execute immediately when created, so the file operation could
  complete before the user even sees the permission prompt.
- Now follows the delete_path_tool pattern: authorize.await runs first inside
  cx.spawn, then the filesystem task is created only after authorization succeeds.
- Also fixes silent error discarding: removed let _ = on result.with_context()
rtfeldman added a commit that referenced this pull request Feb 5, 2026
- always_confirm_works_for_file_tools: verifies always_confirm patterns work for
  edit_file, delete_path, fetch (not just terminal), including precedence rules
- test_create_directory_tool_deny_rule_blocks_creation: integration test for
  create_directory deny rules (was the only permission-using tool without one)
- test_copy_path_tool_deny_by_user: verifies filesystem unchanged when user denies
  copy permission (validates race condition fix #1)
- test_move_path_tool_deny_by_user: same for move_path tool
rtfeldman added a commit that referenced this pull request Feb 5, 2026
…ver match

build_permission_options now splits the 'source -> destination' input_value
and extracts the pattern from only the destination path for copy_path and
move_path. This ensures saved Always Allow patterns actually match on
subsequent invocations, since decide_permission_from_settings evaluates
each path independently.
Caio-Ze pushed a commit to Caio-Ze/postprod-ide that referenced this pull request Feb 14, 2026
V1 workspace-centric config: move config files to assets/config/,
resolve tool paths with dir_has_content() to handle empty dirs,
add package-protools build script.

Bug fixes:
- Empty directories no longer break tool path resolution (zed-industries#2)
- Global hotkeys now call spawn_tool_entry() directly (zed-industries#5)
- Hotkey config only re-registers when file content changes (zed-industries#1)
- Remove redundant Plus (+) shortcut button (zed-industries#6)
- Fix button text alignment to left (zed-industries#7)

New feature: recent folders list below Pasta Ativa with click-to-switch
and persistent storage in .pastas_recentes file.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants