diff options
author | dec05eba <dec05eba@protonmail.com> | 2021-07-03 16:23:36 +0200 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2021-07-03 18:34:37 +0200 |
commit | 611d22bf269672ba56f98e12eb6b2a40efdaa5b9 (patch) | |
tree | 5dfd3e98fd08fa7cb6cb82c565b538cc891b6b98 /src/plugins/Soundcloud.cpp | |
parent | 496f71413df2468a9d3329355ffef08280219808 (diff) |
Remove dependency on tidy, fix ph, support all 4chan markup
Go back to previous page when failing to fetch number of pages
Diffstat (limited to 'src/plugins/Soundcloud.cpp')
-rw-r--r-- | src/plugins/Soundcloud.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/plugins/Soundcloud.cpp b/src/plugins/Soundcloud.cpp index abc8c18..7079e46 100644 --- a/src/plugins/Soundcloud.cpp +++ b/src/plugins/Soundcloud.cpp @@ -345,16 +345,17 @@ namespace QuickMedia { if(client_id.empty()) { std::vector<std::string> script_sources; QuickMediaHtmlSearch html_search; - int result = quickmedia_html_search_init(&html_search, website_data.c_str()); + int result = quickmedia_html_search_init(&html_search, website_data.c_str(), website_data.size()); if(result != 0) goto cleanup; result = quickmedia_html_find_nodes_xpath(&html_search, "//script", - [](QuickMediaHtmlNode *node, void *userdata) { + [](QuickMediaMatchNode *node, void *userdata) { std::vector<std::string> *script_sources = (std::vector<std::string>*)userdata; - const char *src = quickmedia_html_node_get_attribute_value(node, "src"); - if(src) - script_sources->push_back(strip(src)); + QuickMediaStringView src = quickmedia_html_node_get_attribute_value(node, "src"); + if(src.data) + script_sources->push_back(std::string(src.data, src.size)); + return 0; }, &script_sources); cleanup: |