[SRU] Valgrind complains about conditonal jumps depending on uninitialized value when running the IDE
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
ecere-sdk (Ubuntu) |
Fix Released
|
Undecided
|
Jerome St-Louis | ||
Quantal |
Won't Fix
|
Medium
|
Unassigned |
Bug Description
Valgrind complains about conditional jumps based on uninitialized value on the IDE
The root of the problem was in the virtual method table for eC objects.
The logic has been re-evaluated and code fixed accordingly.
[Test Case]
Run the IDE through valgrind, and notice the following:
==15572== Conditional jump or move depends on uninitialised value(s)
==15572== at 0x41C355B: ??? (in /usr/lib/
==15572== by 0x41C4E15: __ecereNameSpac
==15572== by 0x419E458: ??? (in /usr/lib/
==15572== by 0x41D3739: __ecereDll_Load (in /usr/lib/
==15572== by 0x41C42A2: ??? (in /usr/lib/
==15572== by 0x4CBC49D: __ecereDll_Load (in /usr/lib/
==15572== by 0x41C42A2: ??? (in /usr/lib/
==15572== by 0x8049B6B: ??? (in /usr/bin/ide)
==15572== by 0x43AA4D2: (below main) (libc-start.c:226)
==18707== Warning: invalid file descriptor -1 in syscall close()
==18707== Warning: invalid file descriptor -1 in syscall close()
==18707== Warning: invalid file descriptor -1 in syscall close()
==18707== Warning: invalid file descriptor -1 in syscall close()
[Regression Potential]
The dynamic class inheritance logic is quite complex, and so it is easy to go wrong.
However this fix has been improved and tested over a few months and with several different projects and scenarios, and has proven to be solid.
This could only affect eC applications.
Changed in ecere-sdk (Ubuntu): | |
assignee: | nobody → Jerome St-Louis (jerstlouis) |
Changed in ecere-sdk (Ubuntu): | |
status: | New → Confirmed |
summary: |
- [SRU] Valgrind complains about uninitialized value when building eC - source + [SRU] Valgrind complains about uninitialized value when running the IDE |
summary: |
- [SRU] Valgrind complains about uninitialized value when running the IDE + [SRU] Valgrind complains about conditonal jumps depending on + uninitialized value when running the IDE |
description: | updated |
description: | updated |
Changed in ecere-sdk (Ubuntu): | |
status: | Confirmed → Fix Released |
Changed in ecere-sdk (Ubuntu Quantal): | |
status: | New → Confirmed |
importance: | Undecided → Medium |
Fixed by http:// bazaar. launchpad. net/~jerstlouis /ecere/ quantal_ sru/revision/ 808
.debdiff can be found in bug https:/ /bugs.launchpad .net/ubuntu/ +source/ ecere-sdk/ +bug/1107774