Giter VIP home page Giter VIP logo

Comments (5)

GoogleCodeExporter avatar GoogleCodeExporter commented on July 30, 2024
I believe the STD vector collecton automatically frees the memory after 
execution. Is this not correct? Try running valgrind to look for memory leaks, 
to which I believe there are none at the moment...

Original comment by [email protected] on 14 Dec 2011 at 3:01

from poly2tri.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 30, 2024
EDIT: Google is your friend; stackoverflow.com answers the same exact question.

STD::vector does destruct its elements when it goes out of scope. The problem 
here is that your elements are pointers to data type Point, not Point structs 
themselves. If you instead did something like this:

vector<A> vec;
vec.push_back(A(1));
vec.push_back(A(2));

...then things would work as you expect.

Original comment by [email protected] on 14 Dec 2011 at 3:13

  • Changed state: Invalid

from poly2tri.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 30, 2024
a vector<Point> would indeed free the Point but a vector<Point *> (which is the 
CDT constructor argument) will not. It's just that I can't tell whether the 
library is meant to free it for you. 

I have been freeing my lists when I finish with them and I am not getting any 
double-free errors. 

Not a big deal, really. 

Thanks for your work on this algorithm. It's quite fast :)

Original comment by [email protected] on 14 Dec 2011 at 9:31

from poly2tri.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 30, 2024
I added code to the testbed example to free the points. I believe this should 
be the user's responsibility, not poly2tri per se.

Thanks for pointing this out; improves the example code.

Original comment by [email protected] on 4 Feb 2012 at 9:04

  • Changed state: Fixed

from poly2tri.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 30, 2024
Yup I'm glad you took a look at this a second time. It certainly is the user's 
responsibility to free the points, and the testbed is meant to demonstrate what 
the user is supposed to do. 

Thanks

Original comment by [email protected] on 4 Feb 2012 at 9:19

from poly2tri.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.