{"id":24794140,"url":"https://github.com/chris-cozy/leakguard-pro","last_synced_at":"2025-06-12T23:05:37.367Z","repository":{"id":188733364,"uuid":"433652571","full_name":"chris-cozy/LeakGuard-Pro","owner":"chris-cozy","description":"LeakGuard-Pro is a memory leak detection tool designed to help software developers identify and analyze memory leaks in their programs. It provides a mechanism to track memory allocations and deallocations during program execution, allowing you to identify potential memory leaks and their associated sizes.","archived":false,"fork":false,"pushed_at":"2023-08-16T15:43:28.000Z","size":14,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-02T09:34:24.745Z","etag":null,"topics":["c","memory-leak"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chris-cozy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2021-12-01T02:12:13.000Z","updated_at":"2025-05-27T21:59:33.000Z","dependencies_parsed_at":"2023-08-16T18:04:06.196Z","dependency_job_id":null,"html_url":"https://github.com/chris-cozy/LeakGuard-Pro","commit_stats":null,"previous_names":["chris-cozy/leakguard-pro"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/chris-cozy/LeakGuard-Pro","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chris-cozy%2FLeakGuard-Pro","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chris-cozy%2FLeakGuard-Pro/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chris-cozy%2FLeakGuard-Pro/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chris-cozy%2FLeakGuard-Pro/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chris-cozy","download_url":"https://codeload.github.com/chris-cozy/LeakGuard-Pro/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chris-cozy%2FLeakGuard-Pro/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259546443,"owners_count":22874564,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","memory-leak"],"created_at":"2025-01-29T22:33:27.705Z","updated_at":"2025-06-12T23:05:37.339Z","avatar_url":"https://github.com/chris-cozy.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# **LeakGuard-Pro**\n\nLeakGuard-Pro is a memory leak detection tool designed to help software developers identify and analyze memory leaks in their programs. It provides a mechanism to track memory allocations and deallocations during program execution, allowing you to identify potential memory leaks and their associated sizes.\n\n## **Features**\n\n- **Memory Leak Detection:** LeakGuard-Pro intercepts calls to memory allocation functions (**`malloc`**, **`calloc`**, **`realloc`**) and memory deallocation function (**`free`**) using a dynamic library. It tracks memory allocations and deallocations during program execution.\n- **Automatic Leak Reporting:** After the target program completes its execution, LeakGuard-Pro analyzes the memory usage and identifies any memory leaks that occurred during the program's runtime. It calculates the total number of leaks and the cumulative size of memory leaks.\n- **Intuitive Usage:** LeakGuard-Pro is designed to be easy to integrate into your development workflow. It uses a dynamic library to intercept memory-related function calls, making it non-intrusive and easy to apply to existing codebases.\n- **Flexibility:** LeakGuard-Pro supports a variety of programming languages and platforms, as long as they use standard memory allocation functions. This allows you to use LeakGuard-Pro in a wide range of projects.\n\n## **Getting Started**\n\n### **Prerequisites**\n\n- C Compiler (e.g., GCC, Clang)\n- Linux or Unix-like environment\n\n### **Installation**\n\n1. Clone this repository:\n\n   ```bash\n   git clone https://github.com/yourusername/LeakGuard-Pro.git\n   cd LeakGuard-Pro\n   ```\n\n2. Build LeakGuard-Pro:\n\n   ```bash\n   make all\n   ```\n\n### **Usage**\n\n1. Compile your target program with LeakGuard-Pro's dynamic library:\n\n   ```bash\n   gcc -o myprogram myprogram.c -L. -lmemory_shim -ldl\n   ```\n\n2. Run your program using the **`leakcount`** executable:\n\n   ```bash\n   ./leakcount ./myprogram [program_arguments]\n   ```\n\n3. After your program finishes execution, LeakGuard-Pro will report any memory leaks detected, including the number of leaks and the cumulative leak size.\n\n### **Example**\n\n```c\n#include \u003cstdio.h\u003e\n#include \u003cstdlib.h\u003e\nint main() {\n    void *memory_leak = malloc(1024);  // This allocation will cause a leak\n\n    printf(\"Hello, LeakGuard-Pro!\\n\");\n\n    return 0;\n}\n```\n\n### **Cleaning Up**\n\nTo clean up compiled files, run:\n\n```bash\nmake clean\n```\n\n## **Contributing**\n\nContributions are welcome! If you find any issues or have suggestions for improvements, please open an issue or a pull request.\n\n## **License**\n\nThis project is licensed under the MIT License - see the **[LICENSE](https://opensource.org/license/mit/)** file for details.\n\n## **Acknowledgments**\n\nLeakGuard-Pro was inspired by the need for an easy-to-use memory leak detection tool for software developers. It aims to simplify the process of identifying memory leaks in various projects.\n\n## **Contact**\n\nFor questions, suggestions, or support, please contact [cjsanders100@gmail.com](mailto:cjsanders100@gmail.com).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchris-cozy%2Fleakguard-pro","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchris-cozy%2Fleakguard-pro","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchris-cozy%2Fleakguard-pro/lists"}