Giter Site home page Giter Site logo

andrewimm / wasm-gb Goto Github PK

View Code? Open in Web Editor NEW
77.0 77.0 4.0 73 KB

Game Boy emulator in WebAssembly and WebGL 2.0

Home Page: https://andrewimm.github.io/wasm-gb/

License: BSD 3-Clause "New" or "Revised" License

Makefile 0.15% HTML 1.26% JavaScript 21.22% Rust 76.00% CSS 1.37%

wasm-gb's People

Contributors

andrewimm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

wasm-gb's Issues

Double free in mir will violate exception safety in this crate.

We detected several double free bugs in your crate via static analysis.
Double free will appear when these function unwind, mainly caused by Box::from_raw & mem::forget.
In Rust Mir, inserting code between Box::from_raw & mem::forget will violate exception safety. Because when these code unwind, the Box generated will drop as well as the entity which ptr pointed to.

let mut vm = Box::from_raw(raw);

let mut vm = Box::from_raw(raw);

let mut vm = Box::from_raw(raw);

let mut vm = Box::from_raw(raw);

let mut vm = Box::from_raw(raw);

soc

I fixed it by using 'mem::ManuallyDrop' instead of mem::forget, and everything works fine:

update

Initial Hello / Contributing

Hello! I am also working on a wasm GB emulator over on the wasmBoy repo, and just wanted to say hi! ๐Ÿ‘‹

I've been following your emulator over twitter, and just wanted to chat and offer help! Is there any guide to contributing to the project at all? Though I don't want to steal your personal project from you either haha!

Also, there is a active community of GB Game Devs, and GB Emu Devs from the awesome gb-dev list. There is a discord if you are interested in saying hi! If not no worries, would still love to help out with the project.

Thanks! ๐Ÿ˜„

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.