Skip to content

Crashes when clicking on a KML placemark without title #1623

@eppelpajen

Description

@eppelpajen

Summary

Crashes when clicking on a KML placemark without title

Expected behavior

No crash

Observed behavior

Having a KML with two placemarks, one with a <name> tag and another without causes a Null Pointer Exception when clicking on the placemark without the <name> tag.

Environment details

  1. Samsung
  2. Android 15
  3. com.google.maps.android:android-maps-utils:3.19.0

Steps to reproduce

  1. Unzip the attached KMZ file and add it to the map
  2. Placemarks are located at lat 57.8058312, lon 14.1979174
  3. Click the placemark to the right
  4. Observe crash

Code example

placemarks.zip

Stack trace

# java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.length()' on a null object reference
at java.io.StringReader.<init>(StringReader.java:50)
at android.text.HtmlToSpannedConverter.convert(Html.java:751)
at android.text.Html.fromHtml(Html.java:246)
at android.text.Html.fromHtml(Html.java:189)
at com.google.maps.android.data.Renderer$1.getInfoContents(Renderer.java:1163)
at com.google.maps.android.collections.MarkerManager.getInfoContents(MarkerManager.java:75)
at com.google.android.gms.maps.zzf.zzb(com.google.android.gms:play-services-maps@@19.0.0:1)
at com.google.android.gms.maps.internal.zzh.zza(com.google.android.gms:play-services-maps@@19.0.0:3)
at com.google.android.gms.internal.maps.zzb.onTransact(com.google.android.gms:play-services-maps@@19.0.0:3)
at android.os.Binder.transact(Binder.java:1381)
at m140.bas.b(:com.google.android.gms.policy_maps_core_dynamite@253425407@253425402025.797495247.797495247:8)
at com.google.maps.api.android.lib6.impl.cp.b(:com.google.android.gms.policy_maps_core_dynamite@253425407@253425402025.797495247.797495247:69)
at com.google.maps.api.android.lib6.impl.cp.a(:com.google.android.gms.policy_maps_core_dynamite@253425407@253425402025.797495247.797495247:1)
at com.google.maps.api.android.lib6.phoenix.an.c(:com.google.android.gms.policy_maps_core_dynamite@253425407@253425402025.797495247.797495247:32)
at com.google.maps.api.android.lib6.phoenix.ds.q(:com.google.android.gms.policy_maps_core_dynamite@253425407@253425402025.797495247.797495247:34)
at com.google.maps.api.android.lib6.phoenix.dm.b(:com.google.android.gms.policy_maps_core_dynamite@253425407@253425402025.797495247.797495247:68)
at com.google.maps.api.android.lib6.phoenix.dm.g(:com.google.android.gms.policy_maps_core_dynamite@253425407@253425402025.797495247.797495247:75)
at com.google.maps.api.android.lib6.impl.fa.c(:com.google.android.gms.policy_maps_core_dynamite@253425407@253425402025.797495247.797495247:19)
at com.google.maps.api.android.lib6.impl.er.Y(:com.google.android.gms.policy_maps_core_dynamite@253425407@253425402025.797495247.797495247:8)
at com.google.maps.api.android.lib6.impl.fa.l(:com.google.android.gms.policy_maps_core_dynamite@253425407@253425402025.797495247.797495247:129)
at com.google.maps.api.android.lib6.phoenix.dl.a(:com.google.android.gms.policy_maps_core_dynamite@253425407@253425402025.797495247.797495247:109)
at m140.bbr.run(:com.google.android.gms.policy_maps_core_dynamite@253425407@253425402025.797495247.797495247:16)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:487)
at m140.bpp$a.run(:com.google.android.gms.policy_maps_core_dynamite@253425407@253425402025.797495247.797495247:23)
at android.os.Handler.handleCallback(Handler.java:959)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loopOnce(Looper.java:257)
at android.os.Looper.loop(Looper.java:342)
at android.app.ActivityThread.main(ActivityThread.java:9638)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:619)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:929)

Metadata

Metadata

Assignees

No one assigned

    Labels

    releasedtriage meI really want to be triaged.type: bugError or flaw in code with unintended results or allowing sub-optimal usage patterns.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions