View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001238 | Ecere SDK | public | 2021-02-25 00:14 | 2021-02-25 17:04 | |
Reporter | dcaraffini | Assigned To | |||
Priority | normal | Severity | crash | Reproducibility | have not tried |
Status | new | Resolution | open | ||
Platform | x86:linux | OS | Debian | OS Version | - |
Summary | 0001238: Incorrect Class generated for class deriving from Map in MemoryGuard configuration | ||||
Description | Instances of classes of the form class OwnerMap : Map can have a wrong type specification stored in the _class member, resulting in a crash when assignigng a value as in myMap["id"] = ProcessInfo {}; { when adding ~OwnerMap() { Free(); } } Is expected to be used as; OwnwerMap<String, Processinfo> myMap {}; | ||||
Steps To Reproduce | - 1: from the command line (on linux: adapt to your OS): cd $GNOSIS_SDK_SRC git checkout 35b1ee4c5d1b0cbd619d7fabdab06d626af453e6 ecere-ide - 2:open the mapServer project. - 3: compile gnosis3 in MemoryGuard configuration. - 4: run mapSerever from the ide. - 5: visit url http://localhost:8080/ogcapi/processes. -6: observethe issue. | ||||
Additional Information | The issue was observed in file src/processing/processExecution.ec commit 35b1ee4c5d1b0cbd619d7fabdab06d626af453e6 from branch newSyntax of gnosis3 and attempts to recreate it in a minimal example were unsuccessful. The workaround is to include the types of key and value in the class declaration like so: OwnedInfoMap : Map<String, ProcessInfo> { ~OwnedInfoMap() { Free(); } } | ||||
Tags | No tags attached. | ||||
|
The commit inquestion has been tagged as mantis-1238 for easyer retrieval and to preserve it in case of rebases. |
Date Modified | Username | Field | Change |
---|---|---|---|
2021-02-25 00:14 | dcaraffini | New Issue | |
2021-02-25 00:28 | dcaraffini | Note Added: 0001494 | |
2021-02-25 17:04 | jerome | Project | Acovel Media Player => Ecere SDK |