Thread Rating:
  • 0 Vote(s) - 0 Average
Unsupported protocol(plugin) errors
#1
My plugin is generating a crap load of these:

Code:
21:01:07 T:3444 WARNING: XFILE::CFileFactory::CreateLoader - Unsupported protocol(plugin) in plugin://plugin.program.xsqueezechooser/folder.jpg?url=&mode=1&name=New+Music+%28latest+50+albums%29&album=&artist=&artistID=&genreID=&year=

...note my plugin is an odd one in that it doesn't actually pass any media to XBMC as such, it actually triggers event on a external music player...hence the perhaps funky parameters.

Is there anything I can do to stop these errors being triggered as they make for a messy log....
Sorry, no help w/out a *full debug log*
Reply
#2
only fixable through c++.
Reply
#3
Ok well log spew it is then! Smile
Sorry, no help w/out a *full debug log*
Reply
#4
Create it as a folder, in the function that it directs to, execute your external code, then use Container.Update to redraw the items. That seems like it should work
Reply
#5
I am not sure I follow to be honest....I do currently at the items raising this error as a folder item..and the handler for this mode (when these things are clicked) - then exectues the external stuff and adds some non folder nodes to indicate what has happened....

But it seems like adding any node using the sys.argv[0] reference raises the error as that uses plugin:// as the protocol....which I need to do so the plugin items re-invoke the plugin when clicked, right?
Sorry, no help w/out a *full debug log*
Reply
#6
Try creating the result nodes as folder item pointing pack to the previous level's mode handler. That should eliminate the errors above, but now the window history is jacked up and you have to hit back like 30 times to go up a level. So use Container.Update to add the nodes instead of the normal addDirectoryItem()
Reply
#7
Sorry, I am probably dense, but I can't see how to add a noce with Container.Update - can you post an example?

Perhaps you mean add the nodes and then call container.update to somehow fix the path? I can't find a good example of container.update's use....

Sorry, no help w/out a *full debug log*
Reply
#8
Code:
    url = addon.build_plugin_url({'mode':'GetFilteredResults', 'section':section, 'genre':genre, 'letter':letter, 'sort':sort, 'page':index+1})
    builtin = 'Container.Update(%s)' %url
    xbmc.executebuiltin(builtin)

url should come back as something like plugin://script.video.something/?mode=GetFilteredResults&section=AZ&someparam=somevalue

When that plugin:// string is executed, it should call a function which adds the nodes to the container (as folders since you always want to add nodes after taking action)
Reply



Unsupported protocol(plugin) errors00