Issue #15116 has been updated by jaruga (Jun Aruga).


Thank you for clarifying it!

By the way, I saw your commit for the fix.

https://github.com/ruby/ruby/commit/eddd630

```
-    close(slave);
+    if (slave < 0 && slave > 2) (void)!close(slave);
```

It seems that the `close` is never executed.
That is `if (slave < 0 || slave > 2) (void)!close(slave);`, isn't it?




----------------------------------------
Bug #15116: Fixing issues detected by an Analysis tool.
https://bugs.ruby-lang.org/issues/15116#change-74082

* Author: jaruga (Jun Aruga)
* Status: Closed
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: 
* Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN
----------------------------------------
When running a code analysis tool including several sub tools (mainly Coverty [1]), some issues were detected by it.
You can refer attached issues_report.txt for detail.

Some issues in the issues_report.txt might be false positive.
(Those might be wrongly detected.)

I tried to fix those by below 2 pull-requests.
https://github.com/ruby/ruby/pull/1956
https://github.com/ruby/net-telnet/pull/15

The summary is
* Fix leaked storage in addr2line.c.
* Fix passing freed pointer as an argument in gc.c.
* Fix leaked handle variable "n" in process.c.
* Fix for "top_root" leaking the resource.

After above patches, the issues were not detected.
But I need your help to check if my code is valid.

Thank you.

[1] https://scan.coverity.com/


---Files--------------------------------
issues_report.txt (7.74 KB)


-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>