gbookmarkfile: Don't crash if we're not visited

Rewrite bookmark_item_dump to not crash if any of
the timestamps is NULL. Also, avoid some of the gratitious
extra string copying.
17 jobs for bookmarkfile-crash in 12 minutes and 42 seconds (queued for 1 second)
latest
Status Job ID Name Coverage
  Style Check
passed #743178
check-todos

00:01:10

failed #743177
allowed to fail
style-check-diff

00:00:56

 
  Build
passed #743183
cross-android_api21_arm64

00:01:21

passed #743184
cross-android_api28_arm64

00:02:52

passed #743185
cross-mingw64

00:09:55

failed #743180
debian-stable-x86_64

00:02:01

failed #743179
fedora-x86_64

00:07:36

failed #743188
freebsd-11
freebsd-11-x86_64

00:05:26

failed #743189
freebsd-12
freebsd-12-x86_64

00:05:12

failed #743182
G_DISABLE_ASSERT

00:02:13

failed #743181
installed-tests

00:11:31

passed #743190
macos
macos

00:04:25

passed #743186
win32-ps
msys2-mingw32

00:10:36

passed #743187
win32-ps
vs2017-x64

00:07:58

 
  Coverage
skipped #743191
coverage
 
  Analysis
skipped #743193
scan-build
skipped #743192
allowed to fail
valgrind
 
Name Stage Failure
failed
installed-tests Build
Running after_script
Uploading artifacts for failed job
Uploading artifacts...
_build/config.h: found 1 matching files

_build/glib/glibconfig.h: found 1 matching files

_build/meson-logs: found 3 matching files

_build/installed-tests-report/: found 6 matching files

Uploading artifacts to coordinator... ok
id=743181 responseStatus=201 Created token=3x3bVgWQ
ERROR: Job failed: exit code 1
failed
fedora-x86_64 Build
_build/docs/reference/gio/gio-undocumented.txt: found 1 matching files 
_build/docs/reference/gio/gio-unused.txt: found 1 matching files

_build/fedora-x86_64-report.xml: found 1 matching files

_coverage: found 2 matching files

Uploading artifacts to coordinator... ok
id=743179 responseStatus=201 Created token=GerjxhiD
Uploading artifacts...
_build/fedora-x86_64-report.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=743179 responseStatus=201 Created token=GerjxhiD
ERROR: Job failed: exit code 1
failed
freebsd-11-x86_64 Build
_build/glib/glibconfig.h: found 1 matching files   
_build/meson-logs: found 4 matching files

_build/freebsd-11-x86_64-report.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=743188 responseStatus=201 Created token=MzZd4_jH
Uploading artifacts...
Runtime platform
arch=amd64 os=freebsd pid=91821 revision=ac8e767a version=12.6.0
_build/freebsd-11-x86_64-report.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=743188 responseStatus=201 Created token=MzZd4_jH
ERROR: Job failed: exit status 1
failed
freebsd-12-x86_64 Build
_build/glib/glibconfig.h: found 1 matching files   
_build/meson-logs: found 4 matching files

_build/freebsd-12-x86_64-report.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=743189 responseStatus=201 Created token=cZCBrVUG
Uploading artifacts...
Runtime platform
arch=amd64 os=freebsd pid=91809 revision=ac8e767a version=12.6.0
_build/freebsd-12-x86_64-report.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=743189 responseStatus=201 Created token=cZCBrVUG
ERROR: Job failed: exit status 1
failed
G_DISABLE_ASSERT Build
_build/config.h: found 1 matching files            
_build/glib/glibconfig.h: found 1 matching files

_build/meson-logs: found 4 matching files

_build/G_DISABLE_ASSERT-report.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=743182 responseStatus=201 Created token=SHRWAiLE
Uploading artifacts...
_build/G_DISABLE_ASSERT-report.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=743182 responseStatus=201 Created token=SHRWAiLE
ERROR: Job failed: exit code 1
failed
debian-stable-x86_64 Build
_build/config.h: found 1 matching files            
_build/glib/glibconfig.h: found 1 matching files

_build/meson-logs: found 4 matching files

_build/debian-stable-x86_64-report.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=743180 responseStatus=201 Created token=U6zWcVci
Uploading artifacts...
_build/debian-stable-x86_64-report.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=743180 responseStatus=201 Created token=U6zWcVci
ERROR: Job failed: exit code 1
failed
style-check-diff Style Check
-          g_string_append (retval, "    " "</" XBEL_INFO_ELEMENT ">\n");
+ g_string_append (retval, " "
+ "</" XBEL_INFO_ELEMENT ">\n");

g_free (metadata);
}
Running after_script
Uploading artifacts for failed job
ERROR: Job failed: exit code 1