mirror of
https://github.com/yusing/godoxy.git
synced 2026-03-27 19:41:11 +01:00
fix(homepage): logic error in ListAvailableIcons, ensure the cache is ready in GetHomepageMeta
This commit is contained in:
@@ -132,7 +132,7 @@ func ListAvailableIcons() (*Cache, error) {
|
||||
|
||||
iconsCache.RLock()
|
||||
if time.Since(iconsCache.LastUpdate) < updateInterval {
|
||||
if len(iconsCache.Icons) == 0 {
|
||||
if len(iconsCache.Icons) > 0 {
|
||||
iconsCache.RUnlock()
|
||||
return iconsCache, nil
|
||||
}
|
||||
@@ -239,9 +239,15 @@ type HomepageMeta struct {
|
||||
}
|
||||
|
||||
func GetHomepageMeta(ref string) (HomepageMeta, bool) {
|
||||
iconsCache.RLock()
|
||||
defer iconsCache.RUnlock()
|
||||
meta, ok := iconsCache.Icons[NewIconKey(IconSourceSelfhSt, ref)]
|
||||
cache, err := ListAvailableIcons()
|
||||
if err != nil { // sliently ignore
|
||||
return HomepageMeta{}, false
|
||||
}
|
||||
meta, ok := cache.Icons[NewIconKey(IconSourceSelfhSt, ref)]
|
||||
// these info is not available in walkxcode
|
||||
// if !ok {
|
||||
// meta, ok = iconsCache.Icons[NewIconKey(IconSourceWalkXCode, ref)]
|
||||
// }
|
||||
if !ok {
|
||||
return HomepageMeta{}, false
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user