davinci
davinci copied to clipboard
Bug: does not return image not found error
hello dear friends when i request to load unavailable image, davinci does not return error and returns Image has been loaded.
here is my code
Davinci.get() .load(imgUrl) .into(into) .setErrorPlaceholder(errorSprite) .setFadeTime(0) // 0 for disable fading .withStartAction(() => { H.log(TAG, "Download has been started."); }) .withDownloadProgressChangedAction((progress) => { H.log(TAG, "Download progress: " + progress); }) .withDownloadedAction(() => { H.log(TAG, "Download has been completed."); }) .withLoadedAction(() => { H.log(TAG, "Image has been loaded."); // //H.log("into.sprit:" + into.sprite ); if(!avatarHistory.ContainsKey(avatarName)){ avatarHistory.Add(avatarName, into.sprite); } }) .withErrorAction((error) => { H.log(TAG, "loadAvatarImage error:" + error); if(gender == 0){ into.sprite = Resources.Load<Sprite>("avatar_boy"); }else{ into.sprite = Resources.Load<Sprite>("avatar_girl"); } }) .withEndAction(() => { H.log(TAG, "Operation has been finished."); }) .start();
simple resolve: but maybe not good:
i added this codes to private IEnumerator Downloader() method:
string response = System.Text.Encoding.ASCII.GetString(www.bytes);
Debug.Log("[Davinci] urlResponse : " + response);
if(response.ToLower().Contains("not found")){
error("Not Found");
yield return null;
}else{
if (www.error == null)
File.WriteAllBytes(filePath + uniqueHash, www.bytes);
www.Dispose();
www = null;
if (onDownloadedAction != null)
onDownloadedAction.Invoke();
loadSpriteToImage();
underProcessDavincies.Remove(uniqueHash);
}