Trying to make sdl renderer crashes

I am trying to make a sdl renderer dynamicly using new but It crashes.

// Renderer cache
tor_sdl2_renderer_renderer_cache                           : map[u8] ^tor_sdl2_renderer

// Instance
tor_sdl2_renderer                                          :: struct
{
    state                                                  : u8,    
    renderer                                               : ^sdl2.Renderer,
    clear_color                                            : [4]u8,
    draw_color                                             : [4]u8,
    draw_color_sdl                                         :  sdl2.Color,
    bound_texture                                          : ^sdl2.Texture,
    bound_font                                             : ^sdl2_tff.Font,
    viewport_rects                                         : [TOR_SDL2_RENDERER_VIEWPORT_COUNT] tor_sdl2_rect,
    texture_cache                                          : map[u8] ^sdl2.Texture,
    ttf_font_cache                                         : map[u8] ^sdl2_tff.Font,
    ttf_text_static_texture_cache                          : map[tor_sdl2_renderer_text_tff_static_key] tor_sdl2_renderer_text_tff_static_value
}
renderer_create :: proc(sdl2_window : rawptr) -> u8
{
    // Validate
    assert(sdl2_window != nil, "Renderer (SDL) : SDL Window is undefined")
     
    // Enable batching
    sdl2.SetHint(sdl2.HINT_RENDER_BATCHING,"1")

    // Create renderer
    renderer_id := u8(0)
    for i := 1; i < 255; i+=1
    {
        if (tor_sdl2_renderer_renderer_cache[u8(i)] == nil)
        {
            // ID
            renderer_id = u8(i)
            
            // Create renderer
            tor_sdl2_renderer_renderer_cache[renderer_id] = new(tor_sdl2_renderer)
            renderer.renderer = sdl2.CreateRenderer((^sdl2.Window)(sdl2_window),-1,sdl2.RENDERER_ACCELERATED)
                        
            // Default
            //renderer_set_to_defaults()

            // Return
            return renderer_id
        }
    }

    return 0
}

Run it in a debugger while compiling with -debug to see where it crashes, and then reason and try to understand why, and try to fix it.

If you can’t figure it out try to help us help you by providing a minimal example that we can run and see the crash happening.

I am a bozo. It was me using old renderer to create sld2 renderer

renderer.renderer = sdl2.CreateRenderer((^sdl2.Window)(sdl2_window),-1,sdl2.RENDERER_ACCELERATED)

Should have been

 renderer.renderer = sdl2.CreateRenderer((^sdl2.Window)(sdl2_window),-1,sdl2.RENDERER_ACCELERATED)