Giter Site home page Giter Site logo

Comments (5)

mrjimenez avatar mrjimenez commented on June 3, 2024

Hi,

The problem here is that you cannot dereference info. You must use one of the accessing functions. In this case, you should use something like this:

int ret; ret = UpnpFileInfo_set_ContentType(info, db->getTrackMIME(db->getTrackId(0, 0, 0, m_path, NULL )));

Notice that I have removed the strdup() because that would leak memory since set functions copy memory contents to their own managed buffers. By the way, avoiding those memory leaks is the reason the new API has been created.

The key to understand this relative mess, is to look at these files:

./upnp/inc/FileInfo.h
./upnp/inc/TemplateInclude.h
./upnp/inc/TemplateSource.h

Also note that DOMString is defined in ixml.h to be char *

Once you get used to it, it is really not that confuse.

Best regards,
Marcelo.

from pupnp.

gone-bush avatar gone-bush commented on June 3, 2024

Thank you for your prompt and informative reply - I am now able to compile against 1.8.4.

But, and for the record, where are these setters/getters documented (I managed to guess the ones I needed)?

Cheers,
Kevin

from pupnp.

mrjimenez avatar mrjimenez commented on June 3, 2024

Hi Kevin,

Now you hit a key point: unfortunately, they are not formally documented. :( The best we can do now would be to write a text file and explain how it works and for the people to look at the appropriate include files.

When I created the templates, I tried to auto-document them using Doxygen. I believe that this work can succeed, but I currently have no time resources to dedicate to it.

All this template generated code is a C pre-processor hack. The original idea was to get the result of the pre-processor and pass it through Doxygen. If I recall correctly, the Doxygen stuff is mostly already there.

Hopefully, we can still do that one day.

Best regards,
Marcelo.

from pupnp.

Vollstrecker avatar Vollstrecker commented on June 3, 2024

I think documenting the removed templates isn't needed anymore. Unfortunately I can't close anything here.

from pupnp.

mrjimenez avatar mrjimenez commented on June 3, 2024

The templates are gone, but the API is now documented, at least I think it is.

As for closing issues, @Vollstrecker , you can do it if you want.

from pupnp.

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.