davinci icon indicating copy to clipboard operation
davinci copied to clipboard

Bug: does not return image not found error

Open hdev72 opened this issue 3 years ago • 1 comments

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();

hdev72 avatar Jul 02 '22 08:07 hdev72

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);
    }

hdev72 avatar Jul 02 '22 09:07 hdev72