Skip to main navigation Skip to search Skip to main content

Repairing Leaks in Resource Wrappers

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

A resource leak occurs when a program fails to release a finite resource like a socket, file descriptor or database connection. While sound static analysis tools can detect all leaks, automatically repairing them remains challenging. Prior work took the output of a detection tool and attempted to repair only leaks from a hard-coded list of library resource types. That approach limits the scope of repairable leaks: real-world code uses resource wrappers that store a resource in a field and must themselves be closed.This paper makes four key contributions to improve resource leak repair in the presence of wrappers. (1) It integrates inference of resource management specifications into the repair pipeline, enabling extant fixing approaches to reason about wrappers. (2) It transforms programs into variants that are easier to analyze, making inference, detection, and fixing tools more effective; for instance, it makes detection tools report problems closer to the root cause, often in a client of a resource wrapper rather than within the wrapper class itself. (3) A novel field containment analysis reasons about resource lifetimes, enabling repair of more leaks involving resources stored in fields. (4) It introduces a new repair pattern and more precise reasoning to better handle resources stored in non-final fields.Prior work fixed 41% of resource leak warnings in the NJR benchmark suite; our implementation Arodnap fixes 68%.

Original languageEnglish (US)
Title of host publicationProceedings - 2025 40th IEEE/ACM International Conference on Automated Software Engineering, ASE 2025
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages828-840
Number of pages13
ISBN (Electronic)9798350357332
DOIs
StatePublished - 2025
Event2025 40th IEEE/ACM International Conference on Automated Software Engineering, ASE 2025 - Seoul, Korea, Republic of
Duration: Nov 16 2025Nov 20 2025

Publication series

NameProceedings - 2025 40th IEEE/ACM International Conference on Automated Software Engineering, ASE 2025

Conference

Conference2025 40th IEEE/ACM International Conference on Automated Software Engineering, ASE 2025
Country/TerritoryKorea, Republic of
CitySeoul
Period11/16/2511/20/25

All Science Journal Classification (ASJC) codes

  • Software
  • Safety, Risk, Reliability and Quality
  • Control and Optimization

Keywords

  • Program repair
  • resource leaks

Fingerprint

Dive into the research topics of 'Repairing Leaks in Resource Wrappers'. Together they form a unique fingerprint.

Cite this