Fixes [https://github.com/wavetermdev/waveterm/security/code-scanning/50](https://github.com/wavetermdev/waveterm/security/code-scanning/50) To fix the problem, we need to ensure that the size computation for the allocation does not overflow. This can be achieved by validating the length of `barr` before performing the arithmetic operation. We will set a maximum allowable size for `barr` to ensure that the sum of `oscPrefixLen(oscNum)` and `len(barr)` does not exceed the maximum value for an `int`. 1. Define a maximum allowable size for `barr` (e.g., 64 MB). 2. Check the length of `barr` against this maximum size before performing the allocation. 3. If `barr` exceeds the maximum size, return an error. _Suggested fixes powered by Copilot Autofix. Review carefully before merging._ --------- Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> |
||
---|---|---|
.github | ||
.storybook | ||
.vscode | ||
assets | ||
build | ||
cmd | ||
db | ||
emain | ||
frontend | ||
pkg | ||
public | ||
testdriver | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.prettierignore | ||
.yarnrc.yml | ||
ACKNOWLEDGEMENTS.md | ||
BUILD.md | ||
CNAME | ||
CODE_OF_CONDUCT.md | ||
CONTRIBUTING.md | ||
electron-builder.config.cjs | ||
electron.vite.config.ts | ||
eslint.config.js | ||
go.mod | ||
go.sum | ||
index.html | ||
LICENSE | ||
NOTICE | ||
package.json | ||
prettier.config.cjs | ||
README.md | ||
RELEASES.md | ||
SECURITY.md | ||
Taskfile.yml | ||
tsconfig.json | ||
version.cjs | ||
vitest.config.ts | ||
yarn.lock |
Wave Terminal
Wave is an open-source terminal that can launch graphical widgets, controlled and integrated directly with the CLI. It includes a base terminal, directory browser, file previews (images, media, markdown), a graphical editor (for code/text files), a web browser, and integrated AI chat.
Wave isn't just another terminal emulator; it's a rethink on how terminals are built. For too long there has been a disconnect between the CLI and the web. If you want fast, keyboard-accessible, easy-to-write applications, you use the CLI, but if you want graphical interfaces, native widgets, copy/paste, scrolling, variable font sizes, then you'd have to turn to the web. Wave's goal is to bridge that gap.
Installation
Wave Terminal works on macOS, Linux, and Windows.
Install Wave Terminal from: www.waveterm.dev/download
Also available as a Homebrew Cask for macOS:
brew install --cask wave
Minimum requirements
Wave Terminal and WSH run on the following platforms:
- macOS 10.15 or later (arm64, x64)
- Windows 10 1809 or later (x64)
- Linux based on glibc-2.28 or later (Debian 10, RHEL 8, Ubuntu 20.04, etc.) (arm64, x64)
Links
- Homepage — https://www.waveterm.dev
- Download Page — https://www.waveterm.dev/download
- Documentation — https://docs.waveterm.dev
- Legacy Documentation — https://legacydocs.waveterm.dev
- Blog — https://blog.waveterm.dev
- Discord Community — https://discord.gg/XfvZ334gwU
Building from Source
Contributing
Wave uses GitHub Issues for issue tracking.
Find more information in our Contributions Guide, which includes:
Activity
License
Wave Terminal is licensed under the Apache-2.0 License. For more information on our dependencies, see here.