I think this can be cleaned up a bit by using DbUrl::IsValid().

```
CMusicDbUrl itemUrl;
if (!strMusicDBbasePath.IsEmpty())
  itemUrl.FromString(strMusicDBbasePath);

...

if (itemUrl.IsValid())
```

@Montellese: If the MusicDbUrl is not valid, we seem to return items without a path?  Does this suggest that perhaps we should be early returning before then anyway?