Comments (5)
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.
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.
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.
I think documenting the removed templates isn't needed anymore. Unfortunately I can't close anything here.
from pupnp.
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)
- UpnpExtraHeaders.h missing from cmake build in branch-1.14x HOT 6
- tv_device runs into error "free(): double free detected in tcache 2" HOT 4
- Unable to limit HTTP POST data
- Question regarding MSG_DONTROUTE during HTTP download
- Android API<24 does not implement `getifaddrs`
- How to Know the Source Port for gSsdpReqSocket?
- Wrong `strncpy` to `strncpy_s` aliasing HOT 6
- XML with leading UTF-8 BOM cannot be parsed
- Windows build manual significantly out of date HOT 4
- Simple quickstart required and suggested
- Release tarball missing files HOT 9
- Libupnp fails on amule with some routers HOT 2
- Crash in httpreadwrite.c HOT 14
- memory leak in upnpapi.c ? HOT 13
- heap-buffer-overflow
- gtest directory missing in tarball HOT 2
- Memory leak in function TvDeviceSetContrast HOT 1
- The mini server socket lost packets。 miniserver.c HOT 8
- Continuously sending A large number of SUBSCRIBE packet with random callback, leads to memory resources exhausted.
- 1.14.19: pkgconfig integration contains no version HOT 11
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pupnp.