Erro ao adicionar marcador no mapa utilizando Firebase

Estou com problema para adicionar marcadores no mapa, o código abaixo funciona apenas o Log.v que mostra para mim no logcat todas as latitudes e longitudes que estão no database. Quero que os dados sejam recuperados e adicionados como marcadores no mapa, só que ao abrir o app ele fecha logo em seguida e dá o erro abaixo. O que está faltando para funcionar?

java.lang.NullPointerException: Attempt to invoke virtual method 'double java.lang.Double.doubleValue()' on a null object reference
                                                                              at com.chico.uploadimage.ShowMap$1.onDataChange(ShowMap.java:90)
                                                                              at com.google.android.gms.internal.zzbpx.zza(Unknown Source)
                                                                              at com.google.android.gms.internal.zzbqx.zzZS(Unknown Source)
                                                                              at com.google.android.gms.internal.zzbra$1.run(Unknown Source)
                                                                              at android.os.Handler.handleCallback(Handler.java:739)
                                                                              at android.os.Handler.dispatchMessage(Handler.java:95)
                                                                              at android.os.Looper.loop(Looper.java:158)
                                                                              at android.app.ActivityThread.main(ActivityThread.java:7230)
                                                                              at java.lang.reflect.Method.invoke(Native Method)
                                                                              at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
                                                                              at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)

public void onDataChange(DataSnapshot dataSnapshot) {

                if (dataSnapshot.exists()) {
                    for (DataSnapshot postSnapshot : dataSnapshot.getChildren()) {
                    double latitude = postSnapshot.child("latitude").getValue(Double.class);
                    double longitude = postSnapshot.child("longitude").getValue(Double.class);
                    LatLng local = new LatLng(latitude, longitude);
                        Log.v("log","" + local);
                    mMap.addMarker(new MarkerOptions().position(local).title("Novo Marcador"));
                    mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(local, 18));
                    Log.v("log", "" + postSnapshot.getKey()); 
                    Log.v("log", "" + postSnapshot.child("latitude").getValue() + ", " + postSnapshot.child("longitude").getValue()  );}
            }