summaryrefslogtreecommitdiff
path: root/src/libostree/ostree-soup-form.c
Commit message (Collapse)AuthorAgeFilesLines
* lib/repo: Add (transfer) annotations to various GHashTable argumentsPhilip Withnall2017-11-141-1/+1
| | | | | | | | | | | | | | | | | | | | | By default, unless it’s const, an (out) GHashTable will be assumed to be (transfer full). That means the binding needs to free all the items in the hash table, plus the table itself. However, all the GHashTables we use have free functions set already, so freeing the hash table will free its items. This results in a double-free. Fix that by ensuring we annotate such (out) hash tables as (transfer container). Also annotate some other hash tables as (transfer none) where appropriate, for clarity. This fixes OSTree.Repo.list_collection_refs() in the Python bindings. Signed-off-by: Philip Withnall <withnall@endlessm.com> Closes: #1341 Approved by: dbnicholson
* libcurl backendColin Walters2017-02-091-0/+140
For rpm-ostree, we already link to libcurl indirectly via librepo, and only having one HTTP library in process makes sense. Further, libcurl is (I think) more popular in the embedded space. It also supports HTTP/2.0 today, which is a *very* nice to have for OSTree. This seems to be working fairly well for me in my local testing, but it's obviously brand new nontrivial code, so it's going to need some soak time. The ugliest part of this is having to vendor in the soup-url code. With Oxidation we could follow the path of Firefox and use the [Servo URL parser](https://github.com/servo/rust-url). Having to redo cookie parsing also sucked, and that would also be a good oxidation target. But that's for the future. Closes: #641 Approved by: jlebon