This project is mirrored from https://github.com/libretro/libretro-lutro.git. Pull mirroring updated .
  1. 24 Sep, 2022 2 commits
  2. 04 Aug, 2022 1 commit
  3. 02 Aug, 2022 1 commit
    • Gregory Hainaut's avatar
      Greg/crash fixes (#16) · 4bc90735
      Gregory Hainaut authored and Jean-Andre Santoni's avatar Jean-Andre Santoni committed
      * font: avoid malloc when rendering small string
      
      * image: set a null pointer when fail to load an image
      
      Rather to keep a random pointer
      
      * font: add a reference counter to font_t object
      
      It would be better to design a generic solution of reference counter object
      that can be used everywhere
      
      Note: this commit isn't thread safe
      
      * don't draw when the bitmap doesn't contain any data
      
      For example if the asset failed to load
      
      * font: report an error when getFont is called before setFont
      
      * font: give atlas data ownership when loading font from bitmap
      
      * graphic: skip canvas allocation on new game but keep the lua reference
      4bc90735
  4. 01 Aug, 2022 1 commit
    • Gregory Hainaut's avatar
      font: support UTF8 rendering (#15) · e027ca50
      Gregory Hainaut authored and Jean-Andre Santoni's avatar Jean-Andre Santoni committed
      The code relies on utf8_conv_utf32 from libretro-common
      
      On linux LUA string are UTF8, others OSes weren't tested
      If the string isn't utf8, utf8_conv_utf32 call must be replaced
      
      Extra: if the glyph isn't found on the atlas, the glyph rendering is
      now skipped (rather than random behavior/crash)
      
      I didn't update the 256 glyph limits, I believe it would be better
      to have proper malloc/free here
      e027ca50
  5. 29 Jul, 2022 3 commits
    • Jean-Andre Santoni's avatar
      Fix the number of buttons (#14) · 33ae1060
      Jean-Andre Santoni authored
      * Fix the number of buttons
      
      * Clean
      33ae1060
    • Gregory Hainaut's avatar
      Greg/trace allocation (#13) · b1f85d16
      Gregory Hainaut authored and Jean-Andre Santoni's avatar Jean-Andre Santoni committed
      
      
      * unref stopped sound when doing deinit
      
      Fix the memory leak on exit
      
      * add C allocation wrapper
      
      You can trace the allocation with the help of TRACE_ALLOCATION
      define.
      
      It also replaces STB allocation to trace malloc from stb and free on lutro
      
      * use new C memory allocator wrapper
      
      * fix filesystem memory leak
      
      * move canvas free method in the garbage collector of the object
      
      First it makes more sense
      Then it will free all canvas rather than only 1
      Finally it will free both the framebuffer object and the data buffer
      
      * free image data when the object is garbage collected
      
      * fix font atlas memory leak + add various comments
      
      Note code is very tricky, I added some comments but
      maybe code need to be revisited
      
      A pattern like
      * Allocate buffer in LUA
      * Populate LUA buffer with info
      
      Rather than
      * Allocate buffer in C
      * Populate C buffer with info
      * Allocate buffer in LUA
      * Copy C-data into LUA-buffer
      * Free C buffer
      
      Would save 1 calloc + 1 copy + 1 free
      
      * lutro: print a count of allocation and improve logging message
      
      * Makefile part
      Co-authored-by: Jean-Andre Santoni's avatarJean-André Santoni <jean.andre.santoni@gmail.com>
      b1f85d16
    • Gregory Hainaut's avatar
      input: add support of 8 joysticks (#12) · 9d5e9c3c
      Gregory Hainaut authored and Jean-Andre Santoni's avatar Jean-Andre Santoni committed
      add some error checking on joystick_isDown to avoid a crash
      
      v2: check invalid negative value
      9d5e9c3c
  6. 06 Jul, 2022 1 commit
  7. 05 Jul, 2022 1 commit
  8. 25 May, 2022 1 commit
  9. 22 May, 2022 1 commit
  10. 13 May, 2022 1 commit
  11. 05 May, 2022 1 commit
  12. 27 Apr, 2022 1 commit
  13. 06 Mar, 2022 1 commit
  14. 13 Feb, 2022 1 commit
  15. 02 Jan, 2022 2 commits
  16. 31 Dec, 2021 1 commit
  17. 20 Nov, 2021 1 commit
  18. 04 Sep, 2021 1 commit
  19. 02 Sep, 2021 1 commit
  20. 22 Jul, 2021 2 commits
  21. 21 Jul, 2021 3 commits
  22. 20 Jul, 2021 2 commits
  23. 06 Jul, 2021 1 commit
  24. 25 Jun, 2021 1 commit
  25. 23 Jun, 2021 1 commit
  26. 18 Jun, 2021 1 commit
  27. 05 May, 2021 5 commits
  28. 04 May, 2021 1 commit