ruffle-rs / ruffle

A Flash Player emulator written in Rust
https://ruffle.rs
Other
15.65k stars 813 forks source link

Stack overflow in Bloons TD 5 (Kongregate version) #11642

Closed n0samu closed 4 months ago

n0samu commented 1 year ago

Describe the bug

Link to SWF: https://chat.kongregate.com/gamez/0015/1730/live/btd5.swf

Increasing the stack size fixed the older versions of Bloons Tower Defense 5 on sites like Newgrounds and Gameflare, but the Kongregate version of the game is still crashing due to a stack overflow: thread 'main' has overflowed its stack

This problem started in nightly 2023-06-10 due to #11261.

Expected behavior

The game should load.

Affected platform

Desktop app

Operating system

Windows 10

Browser

No response

Additional information

No response

CreaZyp154 commented 1 year ago

Works on June 1 nightly desktop (8b257ef6da5fa5b36c83eed3496c455511649dad) but not on the latest as of writing this comment

n0samu commented 1 year ago

I already mentioned that it stopped working in the 2023-06-10 build. That means it works in 2023-06-09 and some earlier versions.

Lord-McSweeney commented 1 year ago

Debug info, so anyone can match the uncompressed lengths to determine which issue to close as a duplicate of:


# Player Info
Allows script access: false
Renderer: wgpu
Adapter Backend: Gl
Adapter Name: "ANGLE (AMD, AMD Radeon R3 Graphics (stoney LLVM 15.0.7 DRM 3.42 5.10.194-23407-g26023e48e1d4), OpenGL ES 3.2)"
Adapter Device Type: Other
Adapter Driver Name: ""
Adapter Driver Info: ""
Enabled features: Features(TEXTURE_COMPRESSION_BC | TEXTURE_ADAPTER_SPECIFIC_FORMAT_FEATURES | PUSH_CONSTANTS | SHADER_UNUSED_VERTEX_OUTPUT)
Available features: Features(TEXTURE_COMPRESSION_ETC2 | TEXTURE_COMPRESSION_ASTC | CLEAR_TEXTURE)
Current limits: Limits { max_texture_dimension_1d: 16384, max_texture_dimension_2d: 16384, max_texture_dimension_3d: 2048, max_texture_array_layers: 256, max_bind_groups: 4, max_bindings_per_bind_group: 1000, max_dynamic_uniform_buffers_per_pipeline_layout: 8, max_dynamic_storage_buffers_per_pipeline_layout: 0, max_sampled_textures_per_shader_stage: 16, max_samplers_per_shader_stage: 16, max_storage_buffers_per_shader_stage: 0, max_storage_textures_per_shader_stage: 0, max_uniform_buffers_per_shader_stage: 11, max_uniform_buffer_binding_size: 16384, max_storage_buffer_binding_size: 0, max_vertex_buffers: 8, max_buffer_size: 268435456, max_vertex_attributes: 16, max_vertex_buffer_array_stride: 255, min_uniform_buffer_offset_alignment: 32, min_storage_buffer_offset_alignment: 256, max_inter_stage_shader_components: 60, max_compute_workgroup_storage_size: 0, max_compute_invocations_per_workgroup: 0, max_compute_workgroup_size_x: 0, max_compute_workgroup_size_y: 0, max_compute_workgroup_size_z: 0, max_compute_workgroups_per_dimension: 0, max_push_constant_size: 96 }
Surface quality: high
Surface samples: 4
Surface size: Extent3d { width: 550, height: 400, depth_or_array_layers: 1 }

# Page Info
Page URL: https://ruffle-regressions.github.io/

# Browser Info
User Agent: Mozilla/5.0 (X11; CrOS x86_64 14541.0.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36
Platform: Linux x86_64
Has touch support: true

# Ruffle Info
Version: 0.1.0
Name: nightly 2023-11-05
Channel: nightly
Built: 2023-11-05T00:22:28.791Z
Commit: fca17a0061d30342ab06f4b0443212ca93d1c3f8
Is extension: false

# Metadata
width: 800
height: 620
frameRate: 30
numFrames: 1
swfVersion: 18
backgroundColor: undefined
isActionScript3: true
uncompressedLength: 23943335
n0samu commented 4 months ago

This seems to be fixed now!