yade-dev team mailing list archive
-
yade-dev team
-
Mailing list archive
-
Message #08675
Re: [Bug 803774] Re: Saving, loading simulation with erased bodies crash.
OK, I had to do a clean scons but now it works fine so I confirm the fix was appropriate. Thanks, Anton.
Chiara
On 15 Jun 2012, at 10:37, Anton Gladky wrote:
> 2012/6/15 Chiara Modenese <c.modenese@xxxxxxxxx>:
>> OK, I see, thank you very much. Is the body deleted then? The length of
>> the container is still the same when I delete something, even after the
>> fix.
>
> That is right. By this way we are trying to escape memory leaks, using
> for newly created bodies the "places" of previously deleted ones.
>
>> Before sending you the script, do you think it makes any difference
>> if I rerun the test with the new compilation? It will take a bit of time
>> for me if I have to rerun it.
>
> Yes.
> It would be better if you minimize the script as much as possible.
> The best is just 1-2 bodies.
>
> Anton
>
> --
> You received this bug notification because you are a member of Yade
> developers, which is the registrant for Yade.
> https://bugs.launchpad.net/bugs/803774
>
> Title:
> Saving, loading simulation with erased bodies crash.
>
> Status in Yet Another Dynamic Engine:
> Fix Released
>
> Bug description:
> Here is the bug :
>
> - launch yade (for example without any script)
> - add a sphere : O.bodies.append(utils.sphere((0.2,0.2,0.2),0.006))
> - delete it : O.bodies.erase(0)
> - save yade's universe : O.save("./test")
> - quit yade
> - launch yade
> - load the file : O.load("./test")
> ->segmentation fault
>
> I think it's because when you erase something the size of O.bodies (etc...) doesn't change and now contains an empty value. (the c++ array may not be dynamic ?)
> So when the O.load() function is called, yade try to load a non-existant body ?
>
> Maybe this can be fixed by changing the load() method ?
>
> I joined the debug output.
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/yade/+bug/803774/+subscriptions
>
> _______________________________________________
> Mailing list: https://launchpad.net/~yade-dev
> Post to : yade-dev@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~yade-dev
> More help : https://help.launchpad.net/ListHelp
--
You received this bug notification because you are a member of Yade
developers, which is the registrant for Yade.
https://bugs.launchpad.net/bugs/803774
Title:
Saving, loading simulation with erased bodies crash.
Status in Yet Another Dynamic Engine:
Fix Released
Bug description:
Here is the bug :
- launch yade (for example without any script)
- add a sphere : O.bodies.append(utils.sphere((0.2,0.2,0.2),0.006))
- delete it : O.bodies.erase(0)
- save yade's universe : O.save("./test")
- quit yade
- launch yade
- load the file : O.load("./test")
->segmentation fault
I think it's because when you erase something the size of O.bodies (etc...) doesn't change and now contains an empty value. (the c++ array may not be dynamic ?)
So when the O.load() function is called, yade try to load a non-existant body ?
Maybe this can be fixed by changing the load() method ?
I joined the debug output.
To manage notifications about this bug go to:
https://bugs.launchpad.net/yade/+bug/803774/+subscriptions
References
-
[Bug 803774] [NEW] Saving, loading simulation with erased bodies crash.
From: Kneib François, 2011-06-30
-
[Bug 803774] Re: Saving, loading simulation with erased bodies crash.
From: Anton Gladky, 2011-07-02
-
Re: [Bug 803774] Re: Saving, loading simulation with erased bodies crash.
From: Chiara Modenese, 2012-06-15
-
Re: [Bug 803774] Re: Saving, loading simulation with erased bodies crash.
From: Anton Gladky, 2012-06-15
-
Re: [Bug 803774] Re: Saving, loading simulation with erased bodies crash.
From: Chiara Modenese, 2012-06-15
-
Re: [Bug 803774] Re: Saving, loading simulation with erased bodies crash.
From: Anton Gladky, 2012-06-15