Piwigo / Piwigo-Android

Piwigo Native Android App
GNU General Public License v3.0
141 stars 43 forks source link

Crash after editing existing account #149

Closed Valou447 closed 4 years ago

Valou447 commented 4 years ago

Describe the bug and how to reproduce Modifiy an existing account and provide neither http or https.

Expected behavior The URLHelper should go grab the good protocol, but doesn't..

Smartphone (please complete the following information):

Additional context

2019-10-08 10:33:59.133 7967-7967/org.piwigo.android.debug E/AndroidRuntime: FATAL EXCEPTION: main
    Process: org.piwigo.android.debug, PID: 7967
    java.lang.IllegalArgumentException: Expected URL scheme 'http' or 'https' but no colon was found
        at okhttp3.HttpUrl$Builder.parse(HttpUrl.java:1333)
        at okhttp3.HttpUrl.get(HttpUrl.java:916)
        at retrofit2.Retrofit$Builder.baseUrl(Retrofit.java:470)
        at org.piwigo.io.RestServiceFactory.buildRetrofit(RestServiceFactory.java:88)
        at org.piwigo.io.RestServiceFactory.createForAccount(RestServiceFactory.java:58)
        at org.piwigo.io.repository.CategoriesRepository.getCategories(CategoriesRepository.java:45)
        at org.piwigo.ui.main.AlbumsViewModel.loadAlbums(AlbumsViewModel.java:102)
        at org.piwigo.ui.main.AlbumsFragment.onActivityCreated(AlbumsFragment.java:120)
        at androidx.fragment.app.Fragment.performActivityCreated(Fragment.java:2619)
        at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:904)
        at androidx.fragment.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManagerImpl.java:1238)
        at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:1303)
        at androidx.fragment.app.BackStackRecord.executeOps(BackStackRecord.java:439)
        at androidx.fragment.app.FragmentManagerImpl.executeOps(FragmentManagerImpl.java:2079)
        at androidx.fragment.app.FragmentManagerImpl.executeOpsTogether(FragmentManagerImpl.java:1869)
        at androidx.fragment.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManagerImpl.java:1824)
        at androidx.fragment.app.FragmentManagerImpl.execPendingActions(FragmentManagerImpl.java:1727)
        at androidx.fragment.app.FragmentManagerImpl.dispatchStateChange(FragmentManagerImpl.java:2663)
        at androidx.fragment.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManagerImpl.java:2613)
        at androidx.fragment.app.FragmentController.dispatchActivityCreated(FragmentController.java:246)
        at androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:542)
        at androidx.appcompat.app.AppCompatActivity.onStart(AppCompatActivity.java:201)
        at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1425)
        at android.app.Activity.performStart(Activity.java:7825)
        at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3294)
        at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:221)
        at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:201)
        at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:173)
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2016)
        at android.os.Handler.dispatchMessage(Handler.java:107)
        at android.os.Looper.loop(Looper.java:214)
        at android.app.ActivityThread.main(ActivityThread.java:7356)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
ramack commented 4 years ago

I can chaeck that, as I am anyhow on that code right now for #145 and I have a related issue with empty password

Valou447 commented 4 years ago

Then go for it :) 👍

Valou447 commented 4 years ago

I closed this issue as we expect #147 to fix it, if not, we may just want to reopen it.

ramack commented 4 years ago

I think it did not. If I remember correctly I gave it a quick try and it still occurs. I'll take a look.