Quote:
Originally Posted by PeterT
I sense there is some problem with davidfor's Kobo Utilities and it's function for retrieving and storing last read data from Kobo
...
|
I am glad to hear that, because I don't see any reasonable way to protect the rest of calibre (in my case the wireless driver) from bad entries in field_metadata. The only thing I can think of is to loop through the dictionary and remove any values before trying to use it. In the case of the wireless driver the performance hit is minimal because the operation is done once at connect or when the library changes while connecting. However to do something like this to protect all of calibre would require removing the value every time FM is fetched, which is a *lot* of times.
As you have a work-around and as you and davidfor work together frequently, I will put this on a back burner until you tell me that it cannot be fixed in any other way.
BTW: I was the original implementer of the field_metadata stuff. Feel free to ask questions or discuss alternatives.