summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarol Lewandowski <k.lewandowsk@samsung.com>2024-01-03 15:59:40 +0100
committerKarol Lewandowski <k.lewandowsk@samsung.com>2024-01-03 15:59:40 +0100
commit1b11ff8d06ac53ccc79aa7595e2cd7b7972507f3 (patch)
tree77b766225dc9a54292b9a2ceece11041f64cc5d9
parentcbef7bb66192abf9d98aba079fe5236a8fb54e6f (diff)
downloadglib-1b11ff8d06ac53ccc79aa7595e2cd7b7972507f3.tar.gz
glib-1b11ff8d06ac53ccc79aa7595e2cd7b7972507f3.tar.bz2
glib-1b11ff8d06ac53ccc79aa7595e2cd7b7972507f3.zip
Imported Upstream version 2.72.3
-rw-r--r--.editorconfig17
-rw-r--r--.gitlab-ci.yml193
-rw-r--r--.gitlab-ci/android-ndk.Dockerfile18
-rwxr-xr-x.gitlab-ci/android-setup-env.sh15
-rwxr-xr-x.gitlab-ci/coverage-docker.sh3
-rw-r--r--.gitlab-ci/coverity.Dockerfile4
-rw-r--r--.gitlab-ci/cross_file_mingw64.txt5
-rw-r--r--.gitlab-ci/debian-stable.Dockerfile10
-rw-r--r--.gitlab-ci/fedora.Dockerfile9
-rw-r--r--.gitlab-ci/mingw.Dockerfile5
-rwxr-xr-x.gitlab-ci/run-style-check-diff.sh2
-rw-r--r--.gitlab-ci/test-msvc.bat13
-rwxr-xr-x.gitlab-ci/test-msys2.sh2
-rw-r--r--INSTALL.in10
-rw-r--r--NEWS535
-rw-r--r--README.md45
-rw-r--r--docs/reference/gio/gdbus-codegen.xml32
-rw-r--r--docs/reference/gio/gdbus.xml1
-rw-r--r--docs/reference/gio/gio-docs.xml6
-rw-r--r--docs/reference/gio/gio-sections-common.txt34
-rw-r--r--docs/reference/gio/glib-compile-resources.xml10
-rw-r--r--docs/reference/gio/meson.build4
-rw-r--r--docs/reference/gio/overview.xml24
-rw-r--r--docs/reference/glib/glib-docs.xml4
-rw-r--r--docs/reference/glib/glib-sections.txt28
-rw-r--r--docs/reference/glib/gvariant-varargs.xml10
-rw-r--r--docs/reference/gobject/gobject-docs.xml6
-rw-r--r--docs/reference/gobject/gobject-sections.txt40
-rw-r--r--docs/reference/gobject/tut_gsignal.xml10
-rw-r--r--docs/reference/meson.build2
-rw-r--r--fuzzing/fuzz_paths.c2
-rw-r--r--fuzzing/fuzz_resolver.c53
-rw-r--r--fuzzing/meson.build1
-rw-r--r--gio/fam/meson.build6
-rw-r--r--gio/gappinfo.c62
-rw-r--r--gio/gappinfo.h4
-rw-r--r--gio/gapplicationcommandline.c8
-rw-r--r--gio/gcontenttype-win32.c44
-rw-r--r--gio/gcontenttype.c53
-rw-r--r--gio/gcredentials.c45
-rw-r--r--gio/gcredentialsprivate.h12
-rw-r--r--gio/gdbus-2.0/codegen/.flake84
-rw-r--r--gio/gdbus-2.0/codegen/codegen.py2
-rw-r--r--gio/gdbus-2.0/codegen/codegen_docbook.py18
-rw-r--r--gio/gdbus-2.0/codegen/codegen_main.py17
-rw-r--r--gio/gdbus-2.0/codegen/codegen_rst.py332
-rw-r--r--gio/gdbus-2.0/codegen/meson.build1
-rw-r--r--gio/gdbus-2.0/codegen/parser.py13
-rw-r--r--gio/gdbus-tool.c15
-rw-r--r--gio/gdbusaddress.c16
-rw-r--r--gio/gdbusauthmechanismexternal.c27
-rw-r--r--gio/gdbusauthmechanismsha1.c46
-rw-r--r--gio/gdbusconnection.c34
-rw-r--r--gio/gdbuserror.c2
-rw-r--r--gio/gdbusmessage.c12
-rw-r--r--gio/gdbusmethodinvocation.c53
-rw-r--r--gio/gdbusobjectmanagerclient.c10
-rw-r--r--gio/gdbusobjectmanagerserver.c34
-rw-r--r--gio/gdbusprivate.c199
-rw-r--r--gio/gdbusproxy.c18
-rw-r--r--gio/gdbusutils.c30
-rw-r--r--gio/gdebugcontroller.c119
-rw-r--r--gio/gdebugcontroller.h79
-rw-r--r--gio/gdebugcontrollerdbus.c709
-rw-r--r--gio/gdebugcontrollerdbus.h69
-rw-r--r--gio/gdesktopappinfo.c204
-rw-r--r--gio/gdrive.c2
-rw-r--r--gio/gdtlsconnection.c33
-rw-r--r--gio/gfile.c720
-rw-r--r--gio/gfile.h32
-rw-r--r--gio/gfileenumerator.c22
-rw-r--r--gio/gfilemonitor.c2
-rw-r--r--gio/ginputstream.c4
-rw-r--r--gio/gio-querymodules.c2
-rw-r--r--gio/gio-tool-set.c10
-rw-r--r--gio/gio.h2
-rw-r--r--gio/gioenums.h39
-rw-r--r--gio/giomodule.c51
-rw-r--r--gio/giomodule.h4
-rw-r--r--gio/giowin32-afunix.h40
-rw-r--r--gio/glib-compile-resources.c145
-rw-r--r--gio/glib-compile-schemas.c20
-rw-r--r--gio/glistmodel.c33
-rw-r--r--gio/glocalfileinfo.h12
-rw-r--r--gio/glocalfilemonitor.c35
-rw-r--r--gio/glocalfileoutputstream.c14
-rw-r--r--gio/gmemorymonitorwin32.c261
-rw-r--r--gio/gmemoryoutputstream.c12
-rw-r--r--gio/gnetworkservice.c18
-rw-r--r--gio/gopenuriportal.c4
-rw-r--r--gio/goutputstream.c2
-rw-r--r--gio/gpowerprofilemonitor.c6
-rw-r--r--gio/gproxyaddressenumerator.c40
-rw-r--r--gio/gregistrysettingsbackend.c10
-rw-r--r--gio/gresolver.c65
-rw-r--r--gio/gresource-tool.c6
-rw-r--r--gio/gresource.c4
-rw-r--r--gio/gresourcefile.c4
-rw-r--r--gio/gsettings-tool.c16
-rw-r--r--gio/gsettings.c36
-rw-r--r--gio/gsettings.h2
-rw-r--r--gio/gsettingsbackend.c9
-rw-r--r--gio/gsettingsschema.c42
-rw-r--r--gio/gsimpleasyncresult.c6
-rw-r--r--gio/gsimpleproxyresolver.c4
-rw-r--r--gio/gsocket.c51
-rw-r--r--gio/gsocketaddress.c6
-rw-r--r--gio/gsocketclient.c69
-rw-r--r--gio/gsocketclient.h4
-rw-r--r--gio/gsocketconnection.c2
-rw-r--r--gio/gsubprocess.c7
-rw-r--r--gio/gsubprocesslauncher-private.h1
-rw-r--r--gio/gtask.c38
-rw-r--r--gio/gthreadedresolver.c218
-rw-r--r--gio/gthreadedresolver.h13
-rw-r--r--gio/gtlscertificate.c218
-rw-r--r--gio/gtlscertificate.h10
-rw-r--r--gio/gtlsclientconnection.c29
-rw-r--r--gio/gtlsclientconnection.h4
-rw-r--r--gio/gtlsconnection.c35
-rw-r--r--gio/gtlsdatabase.c32
-rw-r--r--gio/gtrashportal.c8
-rw-r--r--gio/gunixconnection.c23
-rw-r--r--gio/gunixcredentialsmessage.c10
-rw-r--r--gio/gunixmounts.c34
-rw-r--r--gio/gunixsocketaddress.c13
-rw-r--r--gio/gvolume.c6
-rw-r--r--gio/gwin32appinfo.c31
-rwxr-xr-xgio/gwin32packageparser.c4
-rw-r--r--gio/gwin32sid.c234
-rw-r--r--gio/gwin32sid.h40
-rw-r--r--gio/meson.build59
-rw-r--r--gio/tests/actions.c123
-rw-r--r--gio/tests/appmonitor.c5
-rw-r--r--gio/tests/cert-tests/key-cert-password-123.p12bin0 -> 1717 bytes
-rw-r--r--gio/tests/codegen.py96
-rw-r--r--gio/tests/contenttype.c80
-rw-r--r--gio/tests/converter-stream.c100
-rw-r--r--gio/tests/credentials.c24
-rw-r--r--gio/tests/cxx.cpp26
-rw-r--r--gio/tests/debugcontroller.c396
-rw-r--r--gio/tests/desktop-app-info.c41
-rw-r--r--gio/tests/file.c106
-rw-r--r--gio/tests/g-file-info-filesystem-readonly.c29
-rw-r--r--gio/tests/g-file-info.c4
-rw-r--r--gio/tests/gdbus-auth.c4
-rw-r--r--gio/tests/gdbus-connection-flush.c37
-rw-r--r--gio/tests/gdbus-connection.c2
-rw-r--r--gio/tests/gdbus-export.c52
-rw-r--r--gio/tests/gdbus-method-invocation.c406
-rw-r--r--gio/tests/gdbus-non-socket.c2
-rw-r--r--gio/tests/gdbus-object-manager-example/meson.build21
-rw-r--r--gio/tests/gdbus-proxy.c91
-rw-r--r--gio/tests/gdbus-test-codegen.c23
-rw-r--r--gio/tests/gdbus-threading.c17
-rw-r--r--gio/tests/gio-du.c1
-rw-r--r--gio/tests/gsettings.c30
-rw-r--r--gio/tests/gsubprocess-testprog.c53
-rw-r--r--gio/tests/gsubprocess.c259
-rw-r--r--gio/tests/memory-monitor.c22
-rw-r--r--gio/tests/memory-output-stream.c20
-rw-r--r--gio/tests/meson.build87
-rw-r--r--gio/tests/mock-resolver.c113
-rw-r--r--gio/tests/modules/symbol-visibility.h14
-rw-r--r--gio/tests/network-address.c40
-rw-r--r--gio/tests/proxy-test.c154
-rw-r--r--gio/tests/resolver-parsing.c879
-rw-r--r--gio/tests/resolver.c54
-rw-r--r--gio/tests/resources.c128
-rw-r--r--gio/tests/socket.c198
-rw-r--r--gio/tests/testfilemonitor.c81
-rw-r--r--gio/tests/tls-certificate.c45
-rw-r--r--gio/win32/gwin32fsmonitorutils.c4
-rw-r--r--gio/win32/gwinhttpfile.c2
-rw-r--r--gio/win32/gwinhttpvfs.c4
-rw-r--r--gio/xdgmime/meson.build3
-rw-r--r--gio/xdgmime/xdgmime.c54
-rw-r--r--gio/xdgmime/xdgmime.h18
-rw-r--r--gio/xdgmime/xdgmimealias.c12
-rw-r--r--gio/xdgmime/xdgmimealias.h7
-rw-r--r--gio/xdgmime/xdgmimecache.c137
-rw-r--r--gio/xdgmime/xdgmimecache.h10
-rw-r--r--gio/xdgmime/xdgmimeglob.c17
-rw-r--r--gio/xdgmime/xdgmimeglob.h6
-rw-r--r--gio/xdgmime/xdgmimeicon.c11
-rw-r--r--gio/xdgmime/xdgmimeicon.h6
-rw-r--r--gio/xdgmime/xdgmimeint.c10
-rw-r--r--gio/xdgmime/xdgmimeint.h4
-rw-r--r--gio/xdgmime/xdgmimemagic.c20
-rw-r--r--gio/xdgmime/xdgmimemagic.h4
-rw-r--r--gio/xdgmime/xdgmimeparent.c11
-rw-r--r--gio/xdgmime/xdgmimeparent.h6
-rw-r--r--glib.supp11
-rw-r--r--glib/deprecated/gcompletion.c3
-rw-r--r--glib/deprecated/gthread-deprecated.c12
-rw-r--r--glib/docs.c88
-rw-r--r--glib/galloca.h31
-rw-r--r--glib/garray.c88
-rw-r--r--glib/gatomic.h16
-rw-r--r--glib/gbacktrace.c12
-rw-r--r--glib/gbookmarkfile.c64
-rw-r--r--glib/gcharset.c8
-rw-r--r--glib/gconstructor.h37
-rw-r--r--glib/gconvert.c8
-rw-r--r--glib/gdataset.c2
-rw-r--r--glib/gdate.c33
-rw-r--r--glib/gdatetime.c13
-rw-r--r--glib/genviron.c6
-rw-r--r--glib/gerror.h2
-rw-r--r--glib/gfileutils.c60
-rw-r--r--glib/ghash.c27
-rw-r--r--glib/ghash.h2
-rw-r--r--glib/ghmac.c4
-rw-r--r--glib/ghostutils.c7
-rw-r--r--glib/giochannel.c6
-rw-r--r--glib/giowin32.c26
-rw-r--r--glib/gkeyfile.c241
-rw-r--r--glib/glib-init.c89
-rw-r--r--glib/glib-init.h2
-rw-r--r--glib/glib-object.h2
-rw-r--r--glib/glib-private.c1
-rw-r--r--glib/glib-private.h36
-rw-r--r--glib/glib-unix.c4
-rw-r--r--glib/glib-unix.h2
-rw-r--r--glib/glibconfig.h.in2
-rw-r--r--glib/gmacros.h3
-rw-r--r--glib/gmain.c52
-rw-r--r--glib/gmain.h36
-rw-r--r--glib/gmappedfile.c2
-rw-r--r--glib/gmarkup.c2
-rw-r--r--glib/gmem.c157
-rw-r--r--glib/gmem.h11
-rw-r--r--glib/gmessages.c48
-rw-r--r--glib/gmessages.h6
-rw-r--r--glib/gmirroringtable.h264
-rw-r--r--glib/goption.c5
-rw-r--r--glib/goption.h2
-rw-r--r--glib/gosxutils.m4
-rw-r--r--glib/gpoll.c14
-rw-r--r--glib/gprintf.c11
-rw-r--r--glib/gqsort.c7
-rw-r--r--glib/gqueue.c4
-rw-r--r--glib/gregex.c44
-rw-r--r--glib/gregex.h16
-rw-r--r--glib/gscanner.c8
-rw-r--r--glib/gscripttable.h164
-rw-r--r--glib/gsequence.c56
-rw-r--r--glib/gshell.c10
-rw-r--r--glib/gslice.c70
-rw-r--r--glib/gspawn-win32-helper.c139
-rw-r--r--glib/gspawn-win32.c87
-rw-r--r--glib/gspawn.c147
-rw-r--r--glib/gstdio.c4
-rw-r--r--glib/gstdio.h2
-rw-r--r--glib/gstrfuncs.c34
-rw-r--r--glib/gstring.c32
-rw-r--r--glib/gstringchunk.c37
-rw-r--r--glib/gtester.c4
-rw-r--r--glib/gtestutils.c63
-rw-r--r--glib/gtestutils.h1
-rw-r--r--glib/gthread-win32.c26
-rw-r--r--glib/gtimer.c10
-rw-r--r--glib/gtimezone.c123
-rw-r--r--glib/gtypes.h66
-rw-r--r--glib/gunibreak.h1370
-rw-r--r--glib/gunichartables.h1663
-rw-r--r--glib/gunicode.h18
-rw-r--r--glib/gunicollate.c6
-rw-r--r--glib/gunidecomp.h2924
-rw-r--r--glib/guniprop.c20
-rw-r--r--glib/guri.c2
-rw-r--r--glib/gutf8.c28
-rw-r--r--glib/gutils.c232
-rw-r--r--glib/gutils.h2
-rw-r--r--glib/gutilsprivate.h24
-rw-r--r--glib/gvariant-parser.c2
-rw-r--r--glib/gvariant.c62
-rw-r--r--glib/gvariant.h18
-rw-r--r--glib/gversionmacros.h44
-rw-r--r--glib/gwin32-private.c10
-rw-r--r--glib/gwin32.c131
-rw-r--r--glib/meson.build61
-rw-r--r--glib/tests/642026.c19
-rw-r--r--glib/tests/array-test.c62
-rw-r--r--glib/tests/asyncqueue.c254
-rw-r--r--glib/tests/casefold.txt (renamed from tests/casefold.txt)0
-rw-r--r--glib/tests/casemap.txt (renamed from tests/casemap.txt)0
-rw-r--r--glib/tests/completion.c (renamed from tests/completion-test.c)64
-rw-r--r--glib/tests/cxx.cpp42
-rw-r--r--glib/tests/dataset.c14
-rw-r--r--glib/tests/date.c1180
-rw-r--r--glib/tests/environment.c160
-rw-r--r--glib/tests/fileutils.c645
-rw-r--r--glib/tests/gdatetime.c90
-rwxr-xr-xglib/tests/gen-casefold-txt.py (renamed from tests/gen-casefold-txt.py)0
-rwxr-xr-xglib/tests/gen-casemap-txt.py (renamed from tests/gen-casemap-txt.py)0
-rw-r--r--glib/tests/hash.c82
-rw-r--r--glib/tests/io-channel.c141
-rw-r--r--glib/tests/iochannel-test-infile (renamed from tests/iochannel-test-infile)0
-rw-r--r--glib/tests/keyfile.c134
-rw-r--r--glib/tests/list.c30
-rw-r--r--glib/tests/logging.c4
-rw-r--r--glib/tests/mainloop.c344
-rw-r--r--glib/tests/mem-overflow.c21
-rw-r--r--glib/tests/memchunk.c64
-rw-r--r--glib/tests/meson.build46
-rw-r--r--glib/tests/node.c127
-rw-r--r--glib/tests/option-argv0.c1
-rw-r--r--glib/tests/option-context.c9
-rw-r--r--glib/tests/private.c13
-rw-r--r--glib/tests/protocol.c15
-rw-r--r--glib/tests/relation.c (renamed from tests/relation-test.c)78
-rw-r--r--glib/tests/search-utils.c2
-rw-r--r--glib/tests/sequence.c24
-rw-r--r--glib/tests/slice-color.c133
-rw-r--r--glib/tests/slice-concurrent.c (renamed from tests/slice-concurrent.c)62
-rw-r--r--glib/tests/sort.c25
-rw-r--r--glib/tests/spawn-multithreaded.c218
-rw-r--r--glib/tests/spawn-path-search.c33
-rw-r--r--glib/tests/spawn-singlethread.c36
-rw-r--r--glib/tests/strfuncs.c7
-rw-r--r--glib/tests/string.c39
-rw-r--r--glib/tests/test-printf.c48
-rw-r--r--glib/tests/test-spawn-sleep.c32
-rw-r--r--glib/tests/testing-helper.c18
-rw-r--r--glib/tests/testing.c56
-rw-r--r--glib/tests/timer.c56
-rw-r--r--glib/tests/tree.c230
-rw-r--r--glib/tests/types.c (renamed from tests/type-test.c)80
-rw-r--r--glib/tests/unicode.c113
-rw-r--r--glib/tests/utf8-misc.c4
-rw-r--r--glib/tests/utf8-validate.c6
-rw-r--r--glib/tests/utils.c314
-rw-r--r--glib/win_iconv.c5
-rw-r--r--gmodule/gmodule.c4
-rw-r--r--gmodule/meson.build15
-rw-r--r--gmodule/tests/cxx.cpp26
-rw-r--r--gmodule/tests/meson.build45
-rw-r--r--gobject/gbindinggroup.c679
-rw-r--r--gobject/gbindinggroup.h85
-rw-r--r--gobject/gboxed.c2
-rw-r--r--gobject/glib-types.h2
-rw-r--r--gobject/gobject-query.c2
-rw-r--r--gobject/gobject.c185
-rw-r--r--gobject/gobject.h13
-rw-r--r--gobject/gparam.c4
-rw-r--r--gobject/gsignal.c53
-rw-r--r--gobject/gsignal.h8
-rw-r--r--gobject/gsignalgroup.c912
-rw-r--r--gobject/gsignalgroup.h93
-rw-r--r--gobject/gtype.c68
-rw-r--r--gobject/gtype.h59
-rw-r--r--gobject/gvaluecollector.h4
-rw-r--r--gobject/gvaluetypes.h2
-rw-r--r--gobject/meson.build18
-rw-r--r--gobject/tests/bindinggroup.c694
-rw-r--r--gobject/tests/cxx.cpp26
-rw-r--r--gobject/tests/meson.build5
-rw-r--r--gobject/tests/mkenums.py2
-rw-r--r--gobject/tests/param.c349
-rw-r--r--gobject/tests/reference.c177
-rw-r--r--gobject/tests/signalgroup.c650
-rw-r--r--gobject/tests/threadtests.c168
-rw-r--r--gobject/tests/value.c386
-rw-r--r--meson.build112
-rw-r--r--po/POTFILES.in1
-rw-r--r--po/bg.po5069
-rw-r--r--po/ca.po1213
-rw-r--r--po/cs.po848
-rw-r--r--po/da.po1062
-rw-r--r--po/de.po985
-rw-r--r--po/en_GB.po1067
-rw-r--r--po/es.po894
-rw-r--r--po/eu.po1029
-rw-r--r--po/fa.po5814
-rw-r--r--po/fr.po990
-rw-r--r--po/fur.po1958
-rw-r--r--po/gl.po1077
-rw-r--r--po/he.po1029
-rw-r--r--po/hr.po1163
-rw-r--r--po/hu.po846
-rw-r--r--po/id.po968
-rw-r--r--po/it.po962
-rw-r--r--po/kk.po994
-rw-r--r--po/ko.po990
-rw-r--r--po/lt.po954
-rw-r--r--po/lv.po887
-rw-r--r--po/ne.po2411
-rw-r--r--po/pl.po952
-rw-r--r--po/pt.po1014
-rw-r--r--po/pt_BR.po983
-rw-r--r--po/ro.po841
-rw-r--r--po/ru.po1027
-rw-r--r--po/sk.po1760
-rw-r--r--po/sl.po979
-rw-r--r--po/sr.po897
-rw-r--r--po/sv.po951
-rw-r--r--po/tr.po1030
-rw-r--r--po/uk.po960
-rw-r--r--po/zh_CN.po979
-rw-r--r--subprojects/pcre.wrap7
-rw-r--r--subprojects/proxy-libintl.wrap2
-rw-r--r--subprojects/zlib.wrap9
-rw-r--r--tests/asyncqueue-test.c244
-rw-r--r--tests/bit-test.c145
-rw-r--r--tests/child-test.c198
-rw-r--r--tests/cxx-test.cpp10
-rw-r--r--tests/datetime.c42
-rw-r--r--tests/dirname-test.c117
-rw-r--r--tests/env-test.c109
-rw-r--r--tests/file-test.c233
-rw-r--r--tests/gio-test.c4
-rw-r--r--tests/gobject/gvalue-test.c398
-rw-r--r--tests/gobject/meson.build2
-rw-r--r--tests/gobject/paramspec-test.c366
-rw-r--r--tests/iochannel-test.c172
-rw-r--r--tests/mapping-test.c32
-rw-r--r--tests/meson.build29
-rw-r--r--tests/module-test.c4
-rw-r--r--tests/qsort-test.c33
-rwxr-xr-xtests/run-collate-tests.sh36
-rw-r--r--tests/slice-color.c177
-rw-r--r--tests/slice-test.c5
-rw-r--r--tests/sources.c185
-rw-r--r--tests/testgdate.c513
-rw-r--r--tests/testgdateparser.c98
-rw-r--r--tests/testglib.c1923
-rw-r--r--tests/unicode-caseconv.c131
-rw-r--r--tests/unicode-collate.c124
429 files changed, 49774 insertions, 31146 deletions
diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 000000000..d433576e7
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,17 @@
+root = true
+
+[*]
+charset = utf-8
+end_of_line = lf
+
+[*.[ch]]
+indent_size = 2
+indent_style = space
+insert_final_newline = true
+# For the legacy tabs which still exist in the code:
+tab_width = 8
+
+[meson.build]
+indent_size = 2
+indent_style = space
+
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 7106a97e2..b44008ab0 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -10,11 +10,11 @@ cache:
- _ccache/
variables:
- FEDORA_IMAGE: "registry.gitlab.gnome.org/gnome/glib/fedora:v11"
- COVERITY_IMAGE: "registry.gitlab.gnome.org/gnome/glib/coverity:v1"
- DEBIAN_IMAGE: "registry.gitlab.gnome.org/gnome/glib/debian-stable:v8"
- ANDROID_IMAGE: "registry.gitlab.gnome.org/gnome/glib/android-ndk:v4"
- MINGW_IMAGE: "registry.gitlab.gnome.org/gnome/glib/mingw:v3"
+ FEDORA_IMAGE: "registry.gitlab.gnome.org/gnome/glib/fedora:v13"
+ COVERITY_IMAGE: "registry.gitlab.gnome.org/gnome/glib/coverity:v3"
+ DEBIAN_IMAGE: "registry.gitlab.gnome.org/gnome/glib/debian-stable:v9"
+ ANDROID_IMAGE: "registry.gitlab.gnome.org/gnome/glib/android-ndk:v6"
+ MINGW_IMAGE: "registry.gitlab.gnome.org/gnome/glib/mingw:v5"
MESON_TEST_TIMEOUT_MULTIPLIER: 2
G_MESSAGES_DEBUG: all
MESON_COMMON_OPTIONS_NO_WARNING: "--buildtype debug --wrap-mode=nodownload"
@@ -26,19 +26,29 @@ variables:
except:
- tags
-.build:
- extends: .only-default
- before_script:
- - bash .gitlab-ci/show-execution-environment.sh
- - cp -r $HOME/subprojects/* subprojects/
+# Some jobs run on CI runners which don’t have good isolation between CI jobs,
+# and don’t have much available resource. Limit those jobs to only ones on the
+# origin repository (GNOME/glib), rather than people’s forks. Code in the origin
+# repository can be trusted.
+.only-origin:
+ only:
+ - branches@GNOME/glib
+ except:
+ - tags
# Some jobs take a long time and are unlikely to find failures (or will find
# failures which are not merge-blockers to fix), so they’re executed on a weekly
# schedule in order to save CI resources and speed up branch pipelines.
-.build-only-schedules:
- extends: .build
+.only-schedules:
only:
- schedules
+ except:
+ - tags
+
+.build-linux:
+ before_script:
+ - bash .gitlab-ci/show-execution-environment.sh
+ - cp -r $HOME/subprojects/* subprojects/
style-check-diff:
extends: .only-default
@@ -60,7 +70,9 @@ check-todos:
- .gitlab-ci/run-check-todos.sh
fedora-x86_64:
- extends: .build
+ extends:
+ - .build-linux
+ - .only-default
image: $FEDORA_IMAGE
stage: build
needs: []
@@ -68,7 +80,7 @@ fedora-x86_64:
CFLAGS: "-coverage -ftest-coverage -fprofile-arcs"
script:
# FIXME: Cannot use MESON_COMMON_OPTIONS here because meson warns about gtkdoc
- # feature introduced in 0.52 but we only depends on 0.49. So we cannot build
+ # feature fully functional in 0.54, but we only depend on 0.52. So we cannot build
# with --fatal-meson-warnings.
- meson ${MESON_COMMON_OPTIONS_NO_WARNING}
--werror
@@ -78,7 +90,6 @@ fedora-x86_64:
--libdir=lib
-Dsystemtap=true
-Ddtrace=true
- -Dfam=true
-Dinstalled_tests=true
-Dgtk_doc=true
_build
@@ -109,7 +120,9 @@ fedora-x86_64:
- "_coverage"
debian-stable-x86_64:
- extends: .build
+ extends:
+ - .build-linux
+ - .only-default
image: $DEBIAN_IMAGE
stage: build
needs: []
@@ -139,7 +152,9 @@ debian-stable-x86_64:
- "_build/${CI_JOB_NAME}-report.xml"
installed-tests:
- extends: .build-only-schedules
+ extends:
+ - .build-linux
+ - .only-schedules
image: $FEDORA_IMAGE
stage: build
needs: []
@@ -148,7 +163,6 @@ installed-tests:
- meson ${MESON_COMMON_OPTIONS}
--werror
--prefix=/usr --libdir=/usr/lib64
- -Dfam=true
-Dinstalled_tests=true
-Ddefault_library=both
-Ddtrace=false
@@ -158,24 +172,6 @@ installed-tests:
# Remove old headers, possibly present in current installation
- sudo rm -f /usr/include/glib-2.0/glib/gurifuncs.h
- sudo chown -R `id -un`:`id -gn` _build/
- # FIXME Install newer xdg-desktop-portal with
- # GMemoryMonitor support, see:
- # https://github.com/flatpak/xdg-desktop-portal/pull/365
- - git clone --branch 1.6.0 --depth 1 --no-tags https://github.com/flatpak/xdg-desktop-portal.git
- - cd xdg-desktop-portal
- - ./autogen.sh --prefix=/usr --libdir=/usr/lib64 --disable-libportal --disable-dependency-tracking
- - make
- - sudo make install
- - cd ..
- # FIXME install newer gobject-introspection
- # with GMemoryMonitor support, see:
- # https://gitlab.gnome.org/GNOME/gobject-introspection/merge_requests/193
- - git clone --single-branch --depth 1 --no-tags https://gitlab.gnome.org/GNOME/gobject-introspection.git
- - cd gobject-introspection
- - /usr/bin/meson _build --prefix=/usr --libdir=/usr/lib64
- - ninja -C _build
- - sudo ninja -C _build install
- - cd ..
# Work-around https://gitlab.gnome.org/GNOME/gnome-desktop-testing/merge_requests/2
- mkdir -p _build/installed-tests-report/logs/
- GLIB_TEST_COMPILATION=1 gnome-desktop-testing-runner
@@ -193,7 +189,9 @@ installed-tests:
- "_build/installed-tests-report/"
G_DISABLE_ASSERT:
- extends: .build-only-schedules
+ extends:
+ - .build-linux
+ - .only-schedules
image: $FEDORA_IMAGE
stage: build
needs: []
@@ -202,7 +200,6 @@ G_DISABLE_ASSERT:
--werror
-Dsystemtap=true
-Ddtrace=true
- -Dfam=true
-Dinstalled_tests=true
-Dglib_assert=false
_build
@@ -220,7 +217,9 @@ G_DISABLE_ASSERT:
- "_build/${CI_JOB_NAME}-report.xml"
valgrind:
- extends: .build-only-schedules
+ extends:
+ - .build-linux
+ - .only-schedules
image: $FEDORA_IMAGE
stage: analysis
needs: []
@@ -231,7 +230,6 @@ valgrind:
--werror
-Dsystemtap=true
-Ddtrace=true
- -Dfam=true
-Dinstalled_tests=true
_build
- ninja -C _build
@@ -253,8 +251,8 @@ valgrind:
- "_build/glib/glibconfig.h"
- "_build/meson-logs"
-.cross-template: &cross-template
- extends: .build
+.cross-build-linux:
+ extends: .build-linux
stage: build
needs: []
artifacts:
@@ -263,40 +261,38 @@ valgrind:
paths:
- "_build/meson-logs"
-cross-android_api21_arm64:
- <<: *cross-template
- image: $ANDROID_IMAGE
- script:
- # FIXME: add --werror
- # We use -Diconv=auto to test that we successfully detect that iconv is not
- # provided by android api 21, and detect the external iconv instead.
- # FIXME: Work around a bug in Meson 0.49 where --wrap-mode=nodownload also
- # disables fallback subprojects, by passing --wrap-mode=default. Fixed in
- # Meson commit 47b9c1a564756ac48a55da9a7c4d91787399c645
- - meson ${MESON_COMMON_OPTIONS} --cross-file=/opt/cross_file_android_arm64_21.txt -Diconv=auto --wrap-mode=default _build
- - ninja -C _build
-
cross-android_api28_arm64:
- <<: *cross-template
+ extends:
+ - .cross-build-linux
+ - .only-default
image: $ANDROID_IMAGE
script:
# FIXME: add --werror
- # FIXME: Work around a bug in Meson 0.49 where --wrap-mode=nodownload also
- # disables fallback subprojects, by passing --wrap-mode=default. Fixed in
- # Meson commit 47b9c1a564756ac48a55da9a7c4d91787399c645
- - meson ${MESON_COMMON_OPTIONS} --cross-file=/opt/cross_file_android_arm64_28.txt --wrap-mode=default _build
+ - meson ${MESON_COMMON_OPTIONS} --cross-file=/opt/cross_file_android_arm64_28.txt _build
- ninja -C _build
cross-mingw64:
- <<: *cross-template
+ extends:
+ - .cross-build-linux
+ - .only-default
image: $MINGW_IMAGE
script:
# FIXME: Add --werror
- # FIXME: Work around a bug in Meson 0.49 where --wrap-mode=nodownload also
- # disables fallback subprojects, by passing --wrap-mode=default. Fixed in
- # Meson commit 47b9c1a564756ac48a55da9a7c4d91787399c645
- - meson ${MESON_COMMON_OPTIONS} --cross-file=/opt/cross_file_mingw64.txt --wrap-mode=default _build
+ - meson ${MESON_COMMON_OPTIONS} --cross-file=/opt/cross_file_mingw64.txt _build
- ninja -C _build
+ artifacts:
+ reports:
+ junit: "_build/${env:CI_JOB_NAME}-report.xml"
+ name: "glib-${env:CI_JOB_NAME}-${env:CI_COMMIT_REF_NAME}"
+ when: always
+ paths:
+ - _build/meson-logs
+ - "_build/${env:CI_JOB_NAME}-report.xml"
+ - _build/glib/libglib-2.0-0.dll
+ - _build/gio/libgio-2.0-0.dll
+ - _build/gmodule/libgmodule-2.0-0.dll
+ - _build/gthread/libgthread-2.0-0.dll
+ - _build/gobject/libgobject-2.0-0.dll
msys2-mingw32:
extends: .only-default
@@ -328,7 +324,33 @@ vs2017-x64:
- win32-ps
needs: []
script:
- - .gitlab-ci/test-msvc.bat
+ # FIXME: These should use --wrap-mode=nodownload but the Windows CI machines
+ # aren’t currently set up for that.
+ - .gitlab-ci/test-msvc.bat ${MESON_COMMON_OPTIONS} --wrap-mode=default
+ artifacts:
+ reports:
+ junit: "_build/${env:CI_JOB_NAME}-report.xml"
+ name: "glib-${env:CI_JOB_NAME}-${env:CI_COMMIT_REF_NAME}"
+ when: always
+ paths:
+ - _build/meson-logs
+ - "_build/${env:CI_JOB_NAME}-report.xml"
+ - _build/glib/libglib-2.0-0.dll
+ - _build/gio/libgio-2.0-0.dll
+ - _build/gmodule/libgmodule-2.0-0.dll
+ - _build/gthread/libgthread-2.0-0.dll
+ - _build/gobject/libgobject-2.0-0.dll
+
+vs2017-x64-static:
+ extends: .only-default
+ stage: build
+ tags:
+ - win32-ps
+ needs: []
+ script:
+ # FIXME: These should use --wrap-mode=nodownload but the Windows CI machines
+ # aren’t currently set up for that.
+ - .gitlab-ci/test-msvc.bat ${MESON_COMMON_OPTIONS} --wrap-mode=default --default-library=static
artifacts:
reports:
junit: "_build/${env:CI_JOB_NAME}-report.xml"
@@ -339,9 +361,11 @@ vs2017-x64:
- "_build/${env:CI_JOB_NAME}-report.xml"
freebsd-12-x86_64:
+ # The FreeBSD 13 build is run on each commit, so the FreeBSD 12 build can be
+ # run less regularly to save CI resources. The chance of a regression on
+ # FreeBSD 12 and not FreeBSD 13 is tiny.
+ extends: .only-schedules
stage: build
- only:
- - branches@GNOME/glib
tags:
# To run a FreeBSD builder, install gitlab-runner package and start both
# gitlab-runner and dbus service because we need /var/lib/dbus/machine-id.
@@ -370,8 +394,6 @@ freebsd-12-x86_64:
- meson ${MESON_COMMON_OPTIONS} --localstatedir=/var -Db_lundef=false -Diconv=external -Dxattr=false _build
- ninja -C _build
- bash -x ./.gitlab-ci/run-tests.sh
- except:
- - tags
artifacts:
reports:
junit: "_build/${CI_JOB_NAME}-report.xml"
@@ -384,9 +406,8 @@ freebsd-12-x86_64:
- "_build/${CI_JOB_NAME}-report.xml"
freebsd-13-x86_64:
+ extends: .only-origin
stage: build
- only:
- - branches@GNOME/glib
tags:
- freebsd-13
needs: []
@@ -400,8 +421,6 @@ freebsd-13-x86_64:
- meson ${MESON_COMMON_OPTIONS} --localstatedir=/var -Db_lundef=false -Diconv=external -Dxattr=false _build
- ninja -C _build
- bash -x ./.gitlab-ci/run-tests.sh
- except:
- - tags
artifacts:
reports:
junit: "_build/${CI_JOB_NAME}-report.xml"
@@ -414,20 +433,17 @@ freebsd-13-x86_64:
- "_build/${CI_JOB_NAME}-report.xml"
macos:
- extends: .only-default
+ extends: .only-origin
stage: build
- only:
- - branches@GNOME/glib
tags:
- macos
needs: []
before_script:
- bash .gitlab-ci/show-execution-environment.sh
- - pip3 install --user meson==0.49.2
+ - pip3 install --user meson==0.60.1
- pip3 install --user ninja
- export PATH=/Users/gitlabrunner/Library/Python/3.7/bin:$PATH
script:
- # FIXME: Add --werror
# FIXME: Use --wrap-mode=default so we download dependencies each time,
# until the macOS runner is a VM where we can use a pre-made image which
# already contains the dependencies. See:
@@ -435,10 +451,10 @@ macos:
# - https://gitlab.gnome.org/Infrastructure/Infrastructure/issues/225
- meson ${MESON_COMMON_OPTIONS}
--wrap-mode=default
+ --werror
_build
- ninja -C _build
- # FIXME: Multiple unit tests currently fails
- - .gitlab-ci/run-tests.sh || true
+ - .gitlab-ci/run-tests.sh
artifacts:
reports:
junit: "_build/${CI_JOB_NAME}-report.xml"
@@ -466,7 +482,9 @@ coverage:
coverage: '/^\s+lines\.+:\s+([\d.]+\%)\s+/'
scan-build:
- extends: .build-only-schedules
+ extends:
+ - .build-linux
+ - .only-schedules
image: $FEDORA_IMAGE
stage: analysis
needs: []
@@ -479,7 +497,6 @@ scan-build:
--libdir=lib
-Dsystemtap=true
-Ddtrace=true
- -Dfam=true
-Dinstalled_tests=true
_scan_build
- ninja -C _scan_build scan-build
@@ -490,7 +507,9 @@ scan-build:
- "_scan_build/meson-logs/scanbuild"
coverity:
- extends: .build-only-schedules
+ extends:
+ - .build-linux
+ - .only-schedules
image: $COVERITY_IMAGE
stage: analysis
needs: []
@@ -506,7 +525,6 @@ coverity:
--libdir=lib
-Dsystemtap=true
-Ddtrace=true
- -Dfam=true
-Dinstalled_tests=true
_coverity_build
- $HOME/cov-analysis-linux64-*/bin/cov-build --dir cov-int ninja -C _coverity_build
@@ -538,8 +556,9 @@ dist-job:
only:
- tags
script:
- # FIXME: Cannot use --fatal-meson-warnings here because meson warns about gtkdoc
- # feature introduced in 0.52 but we only depends on 0.49.
+ # FIXME: Cannot use MESON_COMMON_OPTIONS here because meson warns about gtkdoc
+ # feature fully functional in 0.54, but we only depend on 0.52. So we cannot build
+ # with --fatal-meson-warnings.
- meson ${MESON_COMMON_OPTIONS_NO_WARNING} --buildtype release -Dgtk_doc=true -Dman=true _build
- cd _build
- ninja dist
diff --git a/.gitlab-ci/android-ndk.Dockerfile b/.gitlab-ci/android-ndk.Dockerfile
index 90b95826d..1ea3622e7 100644
--- a/.gitlab-ci/android-ndk.Dockerfile
+++ b/.gitlab-ci/android-ndk.Dockerfile
@@ -1,4 +1,4 @@
-FROM fedora:31
+FROM fedora:34
RUN dnf -y install \
autoconf \
@@ -10,7 +10,6 @@ RUN dnf -y install \
elfutils-libelf-devel \
findutils \
fuse \
- gamin-devel \
gcc \
gcc-c++ \
gettext \
@@ -60,11 +59,20 @@ ENV ANDROID_NDK_PATH /opt/android-ndk
COPY android-download-ndk.sh .
RUN ./android-download-ndk.sh
COPY android-setup-env.sh .
-RUN ./android-setup-env.sh arm64 21
RUN ./android-setup-env.sh arm64 28
-RUN rm -rf $ANDROID_NDK_PATH
+# Explicitly remove some directories first to fix symlink traversal problems
+RUN rm -rf \
+ $ANDROID_NDK_PATH/sources/third_party/vulkan/src/tests/layers \
+ $ANDROID_NDK_PATH/sources/cxx-stl/llvm-libc++/test/std/containers/unord/unord.multimap/unord.multimap.modifiers \
+ $ANDROID_NDK_PATH/sources/cxx-stl/llvm-libc++/test/std/containers/unord/unord.multiset/unord.multiset.cnstr \
+ $ANDROID_NDK_PATH/sources/cxx-stl/llvm-libc++/test/std/iterators/predef.iterators/reverse.iterators/reverse.iter.ops/reverse.iter.opsum \
+ $ANDROID_NDK_PATH/sources/cxx-stl/llvm-libc++/test/std/experimental/filesystem/fs.op.funcs/fs.op.create_directory_symlink \
+ $ANDROID_NDK_PATH/sources/cxx-stl/llvm-libc++/test/std/experimental/filesystem/fs.op.funcs/fs.op.is_directory \
+ $ANDROID_NDK_PATH/sources/cxx-stl/llvm-libc++/test/std/experimental/filesystem/fs.op.funcs/fs.op.create_hard_link \
+ $ANDROID_NDK_PATH/sources/cxx-stl/llvm-libc++/test/std/experimental/filesystem/fs.op.funcs/fs.op.create_directory \
+ $ANDROID_NDK_PATH
-RUN pip3 install meson==0.49.2
+RUN pip3 install meson==0.52.0
ARG HOST_USER_ID=5555
ENV HOST_USER_ID ${HOST_USER_ID}
diff --git a/.gitlab-ci/android-setup-env.sh b/.gitlab-ci/android-setup-env.sh
index 42620cca4..f6b26e563 100755
--- a/.gitlab-ci/android-setup-env.sh
+++ b/.gitlab-ci/android-setup-env.sh
@@ -38,21 +38,6 @@ export LD=$target_host-ld
export STRIP=$target_host-strip
export PATH=$PATH:$toolchain_path/bin
-# Cross build libiconv when using API level <= 28.
-# Newer Android has it in its libc already.
-if [ "$api" -lt "28" ]; then
- wget --quiet http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.15.tar.gz
- echo "1233fe3ca09341b53354fd4bfe342a7589181145a1232c9919583a8c9979636855839049f3406f253a9d9829908816bb71fd6d34dd544ba290d6f04251376b1a libiconv-1.15.tar.gz" | sha512sum -c
- tar xzf libiconv-1.15.tar.gz
- pushd libiconv-1.15
- ./configure --host="${target_host}" --prefix="${prefix_path}" --libdir="${prefix_path}/lib64"
- make
- make install
- popd
- rm libiconv-1.15.tar.gz
- rm -r libiconv-1.15
-fi
-
# Cross build libffi
wget --quiet https://github.com/libffi/libffi/releases/download/v3.3-rc0/libffi-3.3-rc0.tar.gz
echo "e6e695d32cd6eb7d65983f32986fccdfc786a593d2ea18af30ce741f58cfa1eb264b1a8d09df5084cb916001aea15187b005c2149a0620a44397a4453b6137d4 libffi-3.3-rc0.tar.gz" | sha512sum -c
diff --git a/.gitlab-ci/coverage-docker.sh b/.gitlab-ci/coverage-docker.sh
index bf795619a..a80b3beeb 100755
--- a/.gitlab-ci/coverage-docker.sh
+++ b/.gitlab-ci/coverage-docker.sh
@@ -30,3 +30,6 @@ cat >index.html <<EOL
</body>
</html>
EOL
+
+# Print a handy link to the coverage report
+echo "Coverage report at: https://${CI_PROJECT_NAMESPACE}.pages.gitlab.gnome.org/-/${CI_PROJECT_NAME}/-/jobs/${CI_BUILD_ID}/artifacts/_coverage/coverage/index.html"
diff --git a/.gitlab-ci/coverity.Dockerfile b/.gitlab-ci/coverity.Dockerfile
index 7c13d2d3c..2585711c5 100644
--- a/.gitlab-ci/coverity.Dockerfile
+++ b/.gitlab-ci/coverity.Dockerfile
@@ -1,9 +1,9 @@
-FROM registry.gitlab.gnome.org/gnome/glib/fedora:v9
+FROM registry.gitlab.gnome.org/gnome/glib/fedora:v13
ARG COVERITY_SCAN_PROJECT_NAME
ARG COVERITY_SCAN_TOKEN
-RUN curl https://scan.coverity.com/download/linux64 \
+RUN curl https://scan.coverity.com/download/cxx/linux64 \
-o /tmp/cov-analysis-linux64.tgz \
--form project="${COVERITY_SCAN_PROJECT_NAME}" \
--form token="${COVERITY_SCAN_TOKEN}" \
diff --git a/.gitlab-ci/cross_file_mingw64.txt b/.gitlab-ci/cross_file_mingw64.txt
index 7c9176b01..38d2c6703 100644
--- a/.gitlab-ci/cross_file_mingw64.txt
+++ b/.gitlab-ci/cross_file_mingw64.txt
@@ -4,9 +4,12 @@ cpu_family = 'x86_64'
cpu = 'x86_64'
endian = 'little'
+# Fedora builds GCC with --enable-default-ssp by default, but mingw64 puts its
+# stack-protected functions in a separate library which needs to be linked
+# explicitly, hence this flag.
[properties]
c_args = []
-c_link_args = []
+c_link_args = ['-fstack-protector']
[binaries]
c = 'x86_64-w64-mingw32-gcc'
diff --git a/.gitlab-ci/debian-stable.Dockerfile b/.gitlab-ci/debian-stable.Dockerfile
index 38758fc9e..224003ba0 100644
--- a/.gitlab-ci/debian-stable.Dockerfile
+++ b/.gitlab-ci/debian-stable.Dockerfile
@@ -1,11 +1,11 @@
-FROM debian:buster
+FROM debian:bullseye
RUN apt-get update -qq && apt-get install --no-install-recommends -qq -y \
bindfs \
black \
clang \
- clang-tools-7 \
- clang-format-7 \
+ clang-tools \
+ clang-format \
dbus \
desktop-file-utils \
elfutils \
@@ -26,7 +26,7 @@ RUN apt-get update -qq && apt-get install --no-install-recommends -qq -y \
libffi-dev \
libgamin-dev \
libmount-dev \
- libpcre2-dev \
+ libpcre3-dev \
libselinux1-dev \
libxml2-utils \
libxslt1-dev \
@@ -66,7 +66,7 @@ RUN locale-gen de_DE.UTF-8 \
ENV LANG=C.UTF-8 LANGUAGE=C.UTF-8 LC_ALL=C.UTF-8
-RUN pip3 install meson==0.49.2
+RUN pip3 install meson==0.52.0
ARG HOST_USER_ID=5555
ENV HOST_USER_ID ${HOST_USER_ID}
diff --git a/.gitlab-ci/fedora.Dockerfile b/.gitlab-ci/fedora.Dockerfile
index 139d87fb8..deaa7c74e 100644
--- a/.gitlab-ci/fedora.Dockerfile
+++ b/.gitlab-ci/fedora.Dockerfile
@@ -1,7 +1,4 @@
-FROM fedora:31
-
-# Set /etc/machine-id as it’s needed for some D-Bus tests
-RUN systemd-machine-id-setup
+FROM fedora:34
RUN dnf -y update \
&& dnf -y install \
@@ -14,7 +11,6 @@ RUN dnf -y update \
elfutils-libelf-devel \
findutils \
fuse \
- gamin-devel \
gcc \
gcc-c++ \
gettext \
@@ -79,6 +75,9 @@ RUN dnf -y update \
RUN pip3 install meson==0.52.1
+# Set /etc/machine-id as it’s needed for some D-Bus tests
+RUN systemd-machine-id-setup
+
# Enable sudo for wheel users
RUN sed -i -e 's/# %wheel/%wheel/' -e '0,/%wheel/{s/%wheel/# %wheel/}' /etc/sudoers
diff --git a/.gitlab-ci/mingw.Dockerfile b/.gitlab-ci/mingw.Dockerfile
index 2928b562c..eb773e0f1 100644
--- a/.gitlab-ci/mingw.Dockerfile
+++ b/.gitlab-ci/mingw.Dockerfile
@@ -1,4 +1,4 @@
-FROM fedora:31
+FROM fedora:34
RUN dnf -y install \
bindfs \
@@ -8,7 +8,6 @@ RUN dnf -y install \
elfutils-libelf-devel \
findutils \
fuse \
- gamin-devel \
gcc \
gcc-c++ \
gettext \
@@ -58,7 +57,7 @@ RUN dnf -y install \
WORKDIR /opt
COPY cross_file_mingw64.txt /opt
-RUN pip3 install meson==0.49.2
+RUN pip3 install meson==0.52.0
ARG HOST_USER_ID=5555
ENV HOST_USER_ID ${HOST_USER_ID}
diff --git a/.gitlab-ci/run-style-check-diff.sh b/.gitlab-ci/run-style-check-diff.sh
index 929cf28a4..2bd6f386e 100755
--- a/.gitlab-ci/run-style-check-diff.sh
+++ b/.gitlab-ci/run-style-check-diff.sh
@@ -9,7 +9,7 @@ ancestor_horizon=28 # days (4 weeks)
source .gitlab-ci/search-common-ancestor.sh
-git diff -U0 --no-color "${newest_common_ancestor_sha}" | ./clang-format-diff.py -binary "clang-format-7" -p1
+git diff -U0 --no-color "${newest_common_ancestor_sha}" | ./clang-format-diff.py -binary "clang-format-11" -p1
)
exit_status=$?
diff --git a/.gitlab-ci/test-msvc.bat b/.gitlab-ci/test-msvc.bat
index 6cc6d80ca..1a6924bd2 100644
--- a/.gitlab-ci/test-msvc.bat
+++ b/.gitlab-ci/test-msvc.bat
@@ -2,11 +2,18 @@
:: vcvarsall.bat sets various env vars like PATH, INCLUDE, LIB, LIBPATH for the
:: specified build architecture
call "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Auxiliary\Build\vcvarsall.bat" x64
-@echo on
+
+:: Remove quotes from script args
+setlocal enabledelayedexpansion
+set args=
+for %%x in (%*) do (
+ set args=!args! %%~x
+)
+set args=%args:~1%
:: FIXME: make warnings fatal
-pip3 install --upgrade --user meson==0.49.2 || goto :error
-meson _build || goto :error
+pip3 install --upgrade --user meson==0.52.0 || goto :error
+meson %args% _build || goto :error
ninja -C _build || goto :error
:: FIXME: dont ignore test errors
diff --git a/.gitlab-ci/test-msys2.sh b/.gitlab-ci/test-msys2.sh
index 1950443d8..0d1815593 100755
--- a/.gitlab-ci/test-msys2.sh
+++ b/.gitlab-ci/test-msys2.sh
@@ -31,7 +31,7 @@ CCACHE_BASEDIR="$(pwd)"
CCACHE_DIR="${CCACHE_BASEDIR}/_ccache"
export CCACHE_BASEDIR CCACHE_DIR
-pip3 install --upgrade --user meson==0.49.2
+pip3 install --upgrade --user meson==0.52.0
PATH="$(cygpath "$USERPROFILE")/.local/bin:$HOME/.local/bin:$PATH"
CFLAGS="-coverage -ftest-coverage -fprofile-arcs"
diff --git a/INSTALL.in b/INSTALL.in
index 12774c30e..c5b551cba 100644
--- a/INSTALL.in
+++ b/INSTALL.in
@@ -96,13 +96,10 @@ use of these flags is not tested.
One particular detail to note, is that the architecture-dependent
include file glibconfig.h is installed in:
- $exec_prefix/lib/glib/include/
-
-if you have a version in $prefix/include, this is out of date
-and should be deleted.
+ $libdir/glib-2.0/include/
.pc files for the various libraries are installed in
-$exec_prefix/lib/pkgconfig to provide information when compiling
+$libdir/pkgconfig to provide information when compiling
other packages that depend on GLib. If you set PKG_CONFIG_PATH
so that it points to this directory, then you can get the
correct include flags and library flags for compiling a GLib
@@ -111,6 +108,9 @@ application with:
pkg-config --cflags glib-2.0
pkg-config --libs glib-2.0
+This is the only supported way of determining the include and library flags
+for building against GLib.
+
Cross-compiling GLib
====================
diff --git a/NEWS b/NEWS
index 66c593c69..4a233fcb9 100644
--- a/NEWS
+++ b/NEWS
@@ -1,81 +1,377 @@
-Overview of changes in GLib 2.70.5
+Overview of changes in GLib 2.72.3
+==================================
+
+* Bugs fixed:
+ - #1941 disposing a non-cancelled inotify GFileMonitor causes deadlocks
+ - #2597 Crash in g_socket_client_enumerator_callback when proxy resolving
+ - #2639 xdgmime update breaks webkit2gtk file:// requests
+ - #2670 Growing memory when using cancellable in g_socket_client_connect_async
+ - !2703 glocalfilemonitor: Avoid file monitor destruction from event thread
+ - !2709 Backport !2707 “credentials: macos: check for existence of LOCAL_PEERPID†to glib-2-72
+ - !2720 Backport !2708 “xdgmime: Fix broken file:// content type lookups for webkitgtk†to glib-2-72
+ - !2750 Backport !2745 “gsocketclient: Fix still-reachable references to cancellables†to glib-2-72
+ - !2787 Backport !2742 “proxyaddressenumerator: set error parameter more thoughtfully†to glib-2-72
+
+
+Overview of changes in GLib 2.72.2
+==================================
+
+* Bugs fixed:
+ - #2640 UWP warnings about extensions and verbs with glib 2.72.1
+ - !2605 Backport !2449 and !2600 mingw test fixes to glib-2-72
+ - !2616 Backport !2615 “Meson: Fix gio-windows-2.0 override name†to glib-2-72
+ - !2629 Backport !2626, !2627 minor leak fixes to glib-2-72
+ - !2643 Backport !2642 “meson: Check rres.compiled() before calling rres.returncode()†to glib-2-72
+ - !2644 Backport !2631 “Cast to guintptr instead of subtracting by null†to glib-2-72
+ - !2662 Backport !2654 “gtask: use g_strconcat() in g_task_return() only if needed†to glib-2-72
+ - !2691 Backport !2661 “win32appinfo: change log level from warning to debug†to glib-2-72
+
+* Translation updates:
+ - Croatian
+ - Danish
+ - English (United Kingdom)
+ - French
+ - Galician
+ - German
+ - Nepali
+ - Portuguese (Brazil)
+
+
+Overview of changes in GLib 2.72.1
+==================================
+
+* Fix building projects which use g_warning_once() with clang++ (#2625)
+
+* Fix `g_file_trash()` not deleting directories via the portals backend (work by Matthias Clasen) (#2629)
+
+* A number more compiler warnings fixed for MSVC (work by Loïc Le Page) (!2495)
+
+* Fix detection of broken `poll()` function on macOS (work by Haruka Ma) (!2571)
+
+* Fix spawning subprocesses from GUI programs on Windows (work by Marc-André Lureau) (!2582)
+
+* Bugs fixed:
+ - #2312 gdbus-test-codegen tests leak GWeakRef objects
+ - #2625 g_warning_once fails to build with clang++
+ - #2629 g_file_trash() does not work on directories inside a sandbox
+ - !2495 Cleanup warnings split 6
+ - !2499 Various contenttype-related test fixes on win32
+ - !2534 gpowerprofilemonitor: Tweak wording of documentation to make more sense
+ - !2540 Various win32 tests skip & fixes
+ - !2541 meson: simplify lookup of python command
+ - !2543 ci: Update the Fedora CI image to Fedora 34
+ - !2556 gdbusconnection: Use g_strv_contains() rather than a home-grown version
+ - !2557 gdbusmethodinvocation: Fix a leak on an early return path
+ - !2558 Move unit test on g_basename() function to glib/tests/fileutils.c
+ - !2559 Move tests/relation-test.c to glib/tests/relation.c
+ - !2560 ci: Update Coverity, mingw and Android CI images to Fedora 34
+ - !2563 glib: Format GDateTime ISO8601 years as %C%y
+ - !2564 Move test files on slices from tests/ to glib/tests/
+ - !2566 tests: Add more tests for GResolver response parsing
+ - !2573 Backport translation fixes and !2571 “meson: Set BROKEN_POLL in macOS builds†to glib-2-72
+ - !2574 Backport !2565 “Revert "meson: simplify lookup of python command"†to glib-2-72
+ - !2587 Backport !2583 “Fix trashing sandboxed directories†to glib-2-72
+ - !2588 Backport !2582 “glib/win32: fix spawn from GUI regression†to glib-2-72
+ - !2590 Backport !2589 “tests: Don’t exit gdbus-method-invocation test early on connection close†to glib-2-72
+ - !2593 Backport !2578 “gatomic: Add a C++ variant of g_atomic_int_compare_and_exchange()†to glib-2-72
+
+* Translation updates:
+ - Bulgarian
+ - Catalan
+ - Indonesian
+ - Italian
+ - Lithuanian
+ - Polish
+ - Portuguese
+ - Russian
+ - Slovenian
+ - Swedish
+ - Turkish
+ - Ukrainian
+
+
+Overview of changes in GLib 2.72.0
==================================
* Bugs fixed:
- #2620 g_time_zone_new_offset() assertion failure if offset >= 25 hours
- - !2537 Backport !2451 “glib: fix buffer overflow in g_canonicalize_filename()†to glib-2-70
- - !2555 Backport !2554 “gtimezone: Fix assertion failure when called with a huge offset†to glib-2-70
+ - !2538 Various unit test fixes
+ - !2542 fuzzing: Fix test failure with G_DISABLE_ASSERT
+ - !2547 gprintf: Fix a memory leak with an invalid format in g_vasprintf()
+ - !2548 tests: Various fixes to gdbus-auth, gdbus-non-socket, gdbus-connection-flush, spawn-multithreaded tests
+ - !2551 tests: More flaky test fixes to converter-stream and test-printf
+ - !2552 gtlsconnection: fix typo in docs
+
+* Translation updates:
+ - Czech
+ - French
+ - Friulian
+ - Hebrew
+ - Hungarian
+ - Italian
+ - Kazakh
+ - Polish
+ - Romanian
+ - Serbian
+ - Swedish
+
+
+Overview of changes in GLib 2.71.3
+==================================
+
+* Fix flaky `GDebugController` tests (!2504)
+
+* Numerous small documentation updates
+
+* Bugs fixed:
+ - #517 g_utf8_collate returns 0 on U+C5D0 vs U+CD94
+ - #1929 gdbus-connection-flush: setup_client_cb: Exhausted all available authentication mechanisms (tried: EXTERNAL, DBUS_COOKIE_SHA1)
+ - #2589 Hash sign misinterpreted as heading
+ - #2598 g_main_loop_run() may leak a GMainLoop reference
+ - #2609 Clarify documentation for g_log_set_debug_enabled()
+ - #2611 Unspecified options considered present
+ - #2612 side effects of ensure_valid_dict result used in g_return_if_fail macro
+ - #2613 Naked magic literal in gvariant.h
+ - !1707 Add cache to g_unix_mount_points_get()
+ - !2424 Remove old test file tests/testglib.c
+ - !2451 glib: fix buffer overflow in g_canonicalize_filename()
+ - !2466 Various minor fixes for empty argv handling
+ - !2480 Various glib/tests/date fixes on win32
+ - !2485 Various spawn-related test fixes on win32
+ - !2490 Cleanup warnings split 1
+ - !2491 Cleanup warnings split 2
+ - !2492 Cleanup warnings split 3
+ - !2493 Cleanup warnings split 4
+ - !2501 glib-compile-resources: Fix a memory leak of the compiler option
+ - !2502 tests: Merge iochannel-test into io-channel tests in glib directory
+ - !2503 gbacktrace: Fix a set-but-not-used variable
+ - !2504 gdebugcontrollerdbus: Track pending tasks with weak refs
+ - !2505 tests: Stop ignoring test failures on macOS
+ - !2506 gresource-tool: Fix unused-but-set-variable warn with G_DISABLE_ASSERT
+ - !2507 ci: Drop custom dependency builds from installed-tests
+ - !2508 codegen: Reformat parser.py according to black
+ - !2509 tests: Fix various small memory leaks
+ - !2510 gdesktopappinfo: Fix a leak when launching URIs over D-Bus
+ - !2512 doc: Extend a bit G_DECLARE_* documentation example
+ - !2513 gmain: Expand documentation about GSource priorities a little
+ - !2514 ci: Various cleanups and moving Android API 21 and FreeBSD 12 to scheduled run
+ - !2515 gmessages: Fix typo in docs
+ - !2516 glocalfileinfo: Always define _g_stat_mtim_nsec, etc.
+ - !2517 meson: Add schemasdir and giomoduledir to gio dependency
+ - !2518 meson: Set GIO_EXTRA_MODULES in devenv
+ - !2519 gdebugcontrollerdbus: Mark a variable as G_GNUC_UNUSED
+ - !2520 tests: Remove threads from mock-resolver/network-address test
+ - !2523 Add handling of NULL time_t* pointer as argument
+ - !2524 Revert "meson: Add schemasdir and giomoduledir to gio dependency"
+ - !2525 meson: Add schemasdir and giomoduledir to gio dependency
+ - !2526 Remove unused test tests/testgdateparser.c
+ - !2527 Move tests/type-test.c to glib/tests/types.c
+ - !2528 meson: Add PYTHONPATH to load GDB helper module
+ - !2531 gtask: Document that task name is set by g_task_set_source_tag()
* Translation updates:
+ - Basque
- Catalan
+ - Chinese (China)
+ - Croatian
+ - Danish
- German
- - Hungarian
+ - Hebrew
+ - Indonesian
+ - Korean
- Lithuanian
- Romanian
- - Serbian
+ - Russian
+ - Spanish
- Turkish
-Overview of changes in GLib 2.70.4
+Overview of changes in GLib 2.71.2
==================================
-* Bugs fixed:
- - !2462 Backport !2461 “Fix memory leak in gio/gdbusauthmechanismsha1.c†to glib-2-70
+* Rework `glib-compile-resources` to output compiler-specific files to reduce
+ compilation time; see the new `--compiler` option (work by Emmanuele Bassi) (#2492)
+
+* Add a cross-platform API for aligned memory allocations (`g_aligned_alloc()`,
+ `g_aligned_alloc0()` and `g_aligned_free()`) (work by Emmanuele Bassi) (#2574)
+
+* Deprecate `force_posix_threads` configure option, since it was a workaround
+ for static linking on Windows (#2592)
+
+* Add `GBindingGroup` and `GSignalGroup` APIs (work by Christian Hergert and
+ Garrett Regier) (!2235)
+
+* Implement FD remapping support for `g_spawn_async_with_pipes_and_fds()` on
+ Windows (work by Marc-André Lureau) (!2458)
+
+* Add an async file move API, `g_file_move_async()` (work by Lucas Schwiderski) (!2469)
+
+* Bugs fixed:
+ - #1190 gapplication: Add an org.gtk.Debugging interface
+ - #2329 GApplication CLI parsing of DOUBLE type failure
+ - #2492 glib-compile-resources contains resource data twice and creates large output files
+ - #2563 g_test_build_filename and friends not safe to call after g_test_run() has finished
+ - #2574 Add API for aligned allocations
+ - #2592 Consider deprecating 'force_posix_threads' build option
+ - #2601 Missing <para> tag in generated files
+ - !2235 Add GBindingGroup and GSignalGroup
+ - !2378 gtestutils: Mention the unit used for the test timer
+ - !2404 File tests
+ - !2433 Remove tests/testgdate.c from tests
+ - !2458 Implement fd passing for Windows spawn
+ - !2464 Amend g_bus_get* documentation regarding private connection
+ - !2465 gi: expose some files as variable for gobject-introspection
+ - !2467 ci: Add link to Coverage output at end of coverage job
+ - !2468 gfile: resolve_relative_path isn't nullable
+ - !2469 Implement async file movement
+ - !2471 Fix test on the date format for FreeBSD and MacOS X.
+ - !2472 Fix test date (again)...
+ - !2473 Fix glib/test/date.c for FreeBSD/OpenBSD/MacOS X
+ - !2476 Add G_UNICODE_SCRIPT_MATH to GUnicodeScript
+ - !2477 Improve coverage of two digit years in gdate tests
+ - !2481 Fix glib/tests/fileutils on win32
+ - !2482 Fix unit test on date format '%Z' which is too versatile to be trustable
+ - !2483 Fix glib/tests/gdatetime on win32
+ - !2484 tests: Use g_test_skip() to skip a test on Windows
+ - !2487 gconstructor.h: Visual Studio: Only include gslist.h if needed
+ - !2488 Fix some problems with g_aligned_alloc() tests
* Translation updates:
+ - Basque
+ - Catalan
+ - Chinese (China)
- Czech
- French
+ - Galician
- Indonesian
- Japanese
- Polish
+ - Portuguese
- Portuguese (Brazil)
- Russian
- Slovenian
- Spanish
- - Swedish
- Ukrainian
-Overview of changes in GLib 2.70.3
+Overview of changes in GLib 2.71.1
==================================
-* Several important fixes to FD handling in gspawn (#2503, #2506, #2580)
+* Basic support for static builds on Windows (work by Loïc Le Page,
+ Marc-André Lureau, with contributions from Xavier Claessens, Nirbheek Chauhan,
+ Charlie Barto, Luca Bacci, Amos Wenger) (#692, #2585, !2442)
+
+* Add `GDebugController` and a D-Bus implementation which exposes whether
+ debug output is enabled in a process using the `org.gtk.Debugging` D-Bus
+ interface (work by Philip Withnall) (#1190)
+
+* Support for `AF_UNIX` sockets on Windows 10 (and later) (work by Marc-André Lureau) (#2487)
+
+* Several important fixes to GDBus message and GVariant parsing of invalid data (work by Sebastian Wilhelmi) (#2557, #2572)
+
+* Fix potential data loss due to missing fsync when saving files on btrfs (work by Sebastian Keller) (!2425)
+
+* Fix potential buffer overflows in `garray.c` for very large `GArray`s and `GPtrArray`s (work by Tobias Stoeckmann) (#2578)
+
+* Fix FDs in gspawn not being closed and causing process hangs if `close_range()` fails unexpectedly (work by Dan Nicholson) (#2580)
-* Several important fixes to GDBus message and GVariant parsing of invalid data (#2557, #2572)
+* Fix `g_find_program_in_path()` not returning an absolute path if `$PATH` is relative (work by Christoph Niethammer) (#2586)
-* Fix potential data loss due to missing fsync when saving files on btrfs (!2437)
+* Add support for loading PKCS#12 encrypted files in `GTlsCertificate` (work by Patrick Griffis) (!2239)
+
+* A number of improvements to unit tests (work by Emmanuel Fleury, Charlie Barto) (!2399, !2400, !2402, !2403, !2428, !2431, !2432, !2434)
+
+* Support `LOCAL_PEERPID` on macOS, giving partial support for PIDs in
+ `GCredentials` on that platform (work by Ignacio Casal Quinteiro) (!2362)
+
+* Add `g_get_user_state_dir()` to support `XDG_STATE_HOME` (work by Sophie Herold) (!2395)
+
+* Add `g_hash_table_new_similar()` to copy a hash table and its hash/equal functions without its data (work by Jonas Ã…dahl) (!2405)
+
+* Support D-Bus client authentication with `EXTERNAL` on Windows (work by Marc-André Lureau) (!2429)
+
+* Add a reStructuredText documentation generator to `gdbus-codegen` (work by Emmanuele Bassi) (!2448)
+
+* Add a Windows implementation of `GMemoryMonitor` (work by Marc-André Lureau) (!2452)
* Bugs fixed:
- - #2503 gspawn.c may clobber target fds
- - #2506 gspawn.c fails to close child_err_report_fd if it is duped to avoid conflation with one of the target_fds
+ - #692 meta: Fix static build on Windows
+ - #1190 gapplication: Add an org.gtk.Debugging interface
+ - #2487 Add support for native unix domain sockets on WIN32 to GLib.Socket and related classes
+ - #2550 possible GDateTime issue with localtime on Illumos/Solaris
- #2557 Arrays of zero-element tuples with non-zero length lead to infinite loops in g_dbus_message_new_from_blob
+ - #2559 2.71.0: compile and link time warnings
+ - #2560 Link error xdgmime.c: unresolved external symbol S_ISREG when building with VS2022
+ - #2564 Hangul Jamo Extended-B should be 0-width
+ - #2565 Build glib-2.71.0 failed in Windows using MSYS2-MINGW64
+ - #2571 Cross build error "undefined reference to `_g_binary_test1_resource_data'" when building tests for Windows on openSUSE Leap
- #2572 Check for GVariant recursion depth before recursing
+ - #2578 buffer overflows in garray.c
+ - #2579 Outdated paths in INSTALL.in
- #2580 gspawn doesn't set CLOEXEC if close_range fails unexpectedly
- - !2394 Backport !1968 “gspawn: Fix file descriptor conflation issues†to glib-2-70
- - !2415 Backport !2412 “paramspec: fix unref annotation†to glib-2-70
- - !2437 Backport !2425 “gfileutils: Remove outdated BTRFS fsync optimization from set_contents†to glib-2-70
- - !2444 Backport !2435 “gspawn: Report errors with closing file descriptors between fork/exec†to glib-2-70
- - !2455 Backport !2454 gdbusmessage and gvariant fixes to glib-2-70
+ - #2582 glib 2.71.0 muslc - build error missing sentinel in function call
+ - #2585 Static link issue on Windows due to resource files being linked in twice
+ - #2586 g_find_program_in_path not returning an absolute path
+ - !2239 gtlscertificate: Add ability to load PKCS#12 encrypted files
+ - !2362 credentials: support the local peerpid on macos
+ - !2384 meson: Fix linking with static library in Windows
+ - !2395 utils: Add XDG_STATE_HOME support
+ - !2399 Move tests/env-test.c into glib/tests/environment.c
+ - !2400 Prevent gtest tests from popping up dialog boxes
+ - !2402 Improving glib/tests/environment.c
+ - !2403 Improve test coverage of glib/tests/asyncqueue.c
+ - !2405 ghash: Add g_hash_table_new_similar
+ - !2407 tests: Fix environment test on FreeBSD
+ - !2411 annotate `g_content_type_guess` parameter as filename
+ - !2412 paramspec: fix unref annotation
+ - !2413 Use meson dependency to link against apple framework
+ - !2414 docs: Improve docs for gdbusutils.c
+ - !2417 gtestutils: Fix minor typos in the g_test_get_filename() docs
+ - !2423 Make clear in doc that signals are emitted synchroniously
+ - !2425 gfileutils: Remove outdated BTRFS fsync optimization from set_contents
+ - !2426 gdbus-codegen: Fix a typo in a comment
+ - !2428 Merge tests/gobject/gvalue-test.c with gobject/tests/value.c
+ - !2429 gdbus: make client work with EXTERNAL on Windows
+ - !2431 Merge tests/gobject/paramspec-test.c into gobject/tests/param.c
+ - !2432 Merge test/unicode-caseconv.c into glib/tests/unicode.c
+ - !2434 Remove a disabled test case that was covered by glib/tests/collate.c
+ - !2440 Improve g_ascii_formatd docs and preconditions
+ - !2441 Reduce the amount of compile-time warnings
+ - !2442 Fix tests with static build on Windows
+ - !2447 giowin32: use gint64 and _lseeki64
+ - !2448 Add reStructuredText documentation generator for gdbus-codegen
+ - !2452 gio/win32: add GMemoryMonitorWin32
+ - !2453 Add `(array length)` annotation to `g_tls_certificate_new_from_pkcs12()`
+ - !2454 gdbusmessage, gvariant and garray fixes
+ - !2456 tests: Pass --internal and -z noexecstack to glib-compile-resources tests
+ - !2459 gio: add missing zlib dependency in gio-windows-2.0.pc
+ - !2461 Fix memory leak in gio/gdbusauthmechanismsha1.c
+ - !2463 Revert "Merge branch 'fix-windows-pc' into 'main'"
* Translation updates:
+ - Catalan
+ - Chinese (China)
- Czech
+ - Galician
+ - Hebrew
- Indonesian
- - Italian
- Lithuanian
- Polish
- Portuguese
- - Romanian
- - Serbian
- - Slovenian
+ - Portuguese (Brazil)
+ - Russian
- Spanish
- - Swedish
- - Turkish
- Ukrainian
-Overview of changes in GLib 2.70.2
+Overview of changes in GLib 2.71.0
==================================
+* Fix network changes not being signalled from NetworkManager (work by
+ Julian Andres Klode) (#2505)
+
+* Fix build when building with --fatal-meson-warnings (work by Eli Schwartz) (!2304)
+
* Fix use of the default log writer with journald namespaces (diagnosis by Ilya Basin) (#2530)
* Fix hang in `dbus-daemon` under `GTestDBus` when `G_MESSAGES_DEBUG=all` is set (work by Marco Trevisan) (#2537)
@@ -92,65 +388,172 @@ Overview of changes in GLib 2.70.2
* Improve correctness of version information returned by `g_get_os_info()` for Windows 10/Server 2019+ (work by Chun-wei Fan) (#2443)
+* Various fixes to GWeakRef cleanup (#865, #2390) and toggle refs (#2394) (work by Marco Trevisan)
+
+* Add `G_DBUS_PROXY_FLAGS_NO_MATCH_RULE` flag for disabling match rules when creating a `GDBusProxy` (#1109)
+
+* Fix FD remapping in `g_spawn_async_with_pipes_and_fds()` with certain values of target FDs (#2503, #2506) (work by Michael Catanzaro)
+
+* Make `GDBusProxy::g-signal` signal detailed with D-Bus signal names (#2536) (work by Aleksandr Mezin)
+
+* Emit `launched` signal for D-Bus activation of apps with `GDesktopAppInfo` (!2227) (work by Guido Günther)
+
+* Fix IDs of `GDesktopAppInfo`s which are constructed from a `.desktop` file in a subdirectory (!2283) (work by Ivalyo Dimitrov)
+
+* Add `--interactive` option to `gdbus call` (!2329)
+
+* Add `G_SUBPROCESS_FLAGS_SEARCH_PATH_FROM_ENVP` to `GSubprocess` (!2333) (work by Hristo Venev)
+
* Bugs fixed:
+ - #475 Add g_alloca0() and g_newa0()
+ - #847 g_set_prgname() should be thread-safe
+ - #865 GWeakRefs not cleared by g_object_run_dispose()
+ - #1109 [PATCH] GDBusProxy: add G_DBUS_PROXY_FLAGS_NO_MATCH_RULE flag
+ - #1231 gobject declare macros cause alignment warnings on armhf/armhf/mipsel
+ - #1331 GArray with 10 million items overflows index arithmetic
+ - #1735 Get back to a -werror build
+ - #1781 Sort output of gsettings command-line tool
+ - #2310 contenttype test leaks xdg-mime internal data
+ - #2390 GWeakRef's aren't cleared again on finalization (and not fully thread-safe)
+ - #2394 Toggle refs notification may not handle multiple threads correctly
- #2400 Use-after-free in invoke_set_property_in_idle_cb()
+ - #2401 GDBus runtime warning from remove_interfaces()
+ - #2404 GTask: clarify that GTask assumes are running mainloop
- #2426 GSettings delayed apply generates runtime warnings
+ - #2443 Add Windows 11 support to get_windows_version()
+ - #2468 GSequence pessimizes itself and slows down
+ - #2471 g_output_stream_write_all_async prints error when count == 0 and content == NULL
+ - #2488 Unix password unit test fails on FreeBSD 13
+ - #2489 Add a (diagnostic) warning for finalized objects with floating refs
+ - #2490 Upgrade to Unicode Character Database 14.0
+ - #2496 Wrong parameter type for g_simple_proxy_resolver_set_ignore_hosts
+ - #2498 GIR: Remove non-existing IOModule methods `load`, `unload`
+ - #2500 Able to export object manager and object on root path, but not other paths
+ - #2503 gspawn.c may clobber target fds
+ - #2505 g_network_monitor_nm never updates on connection change (listens for signal on wrong dbus interface)
+ - #2506 gspawn.c fails to close child_err_report_fd if it is duped to avoid conflation with one of the target_fds
+ - #2507 Strange behavior of GFileEnumerator with GVfs locations
+ - #2514 test suite failure in glib/tests/gdatetime.c if German locale de_DE.ISO-8859-1 is available
+ - #2518 Misleading message when privileged program starts G_BUS_TYPE_SESSION
+ - #2520 g_date_new_ functions return NULL on invalid input
+ - #2523 MacOS generates warnings for g_size_checked_mul()
+ - #2526 fuzz_uri_parse failure
+ - #2527 Error storing dictionary with string keys as GSettings on macOS
- #2528 g_dbus_message_new_from_blob goes into infinite loop for certain inputs
+ - #2529 load_user_special_dirs returns NULL in certain cases
- #2530 g_log_writer_is_journald fails if a Journal Namespace is used
+ - #2536 GDBusProxy: make g-signal detailed
- #2537 GTestDBus dbus daemon causes child process to hang when using verbose output
- #2541 g_canonicalize_filename should work in linear time complexity
- - !2312 Backport !2265 “gdbusconnection: Fix race between method calls and object unregistration†to glib-2-70
- - !2313 Backport !2260 “GWin32AppInfo: Remove assertion on the opened registry key†to glib-2-70
- - !2314 Backport !2308 “gthread-win32: Remove an unnecessary volatile qualifier†to glib-2-70
- - !2316 Backport !2309 “Rename libpcre.wrap to pcre.wrap†to glib-2-70
- - !2320 Backport !2161 “gdelayedsettingsbackend: Fix applying after calling g_settings_reset()†to glib-2-70
- - !2335 Backport !2324 “Fix link to pcre-8.37.tar.bz2†to glib-2-70
- - !2337 Backport !2325 “Fix GSettings dict error macOS†to glib-2-70
- - !2340 Backport !2338 “gmessages: Support namespaced journals†to glib-2-70
- - !2344 Backport !2327 “guri: Improve performance of remove_dot_segments() algorithm†to glib-2-70
- - !2356 Backport !2355 “gdbusmessage: Add more bounds checking when parsing D-Bus messages†to glib-2-70
- - !2359 gutils.c: Improve g_get_os_info() for Windows 10/Server 2019+
- - !2361 Backport !2354 “gtestdbus: Print the dbus address on a specific FD intead of stdout†to glib-2-70
- - !2363 Backport !2360 “meson: specify when commands need to succeed in run_command†to glib-2-70
- - !2366 Backport !2364 “tests: Allow `objcopy --help` to fail, because it fails on FreeBSD†to glib-2-70
- - !2375 Backport !2374 “gfileutils: Improve performance of g_canonicalize_filename()†to glib-2-70
- - !2383 Backport !2382 “gfileutils: Correctly reset start value when canonicalising paths†to glib-2-70
+ - #2553 Consider not depending on strtoull_l and strtoll_l as much
+ - !1960 Add g_main_context_new_with_flags() and ownerless polling option
+ - !1968 gspawn: Implement fd remapping for posix_spawn codepath, and fix file descriptor conflation issues
+ - !1991 Keyfile parsing performance improvements
+ - !2029 Updating xdgmime
+ - !2064 gobject: Cleanup GWeakRef locations on object finalization
+ - !2114 Coerce type cast to void* because it causes compiler warnings
+ - !2191 docs: Add .editorconfig file
+ - !2214 Document potential footgun with GTlsCertificateFlags and deprecate certain usages
+ - !2223 Better detection of the cleanup attribute.
+ - !2227 gdesktopappinfo: Emit "launched" signal for D-Bus activation too
+ - !2242 gsettings: Add various missing (nullable) or (not nullable) annotations
+ - !2244 gutils: Avoid segfault in g_get_user_database_entry
+ - !2245 gdesktopappinfo: Do not call xterm when it does not exist, inform the caller the launch failed
+ - !2246 gobject: Document it’s unsafe to call g_object_ref() from GWeakNotify
+ - !2249 Add version macros for GLib 2.72 and bump version to 2.71.0
+ - !2251 GString: Bump minimum size
+ - !2254 Small optimization for g_object_set
+ - !2255 gobject: Clarify behaviour of adding weak refs during disposal
+ - !2257 Fix documentation for g_dbus_object_manager_get_object().
+ - !2260 GWin32AppInfo: Do not assert about successful open'ing of registry keys
+ - !2261 Provide built DLLs as Gitlab-CI artifacts
+ - !2266 fix uninitial variable
+ - !2273 Fix more (Windows) warnings
+ - !2277 Revert "Don't compile some unused functions in gio/xdgmime/"
+ - !2283 GDesktopAppInfo: Try to always correctly set id
+ - !2284 update the proxy-libintl subproject to the latest release
+ - !2285 fix issues found by svace static code analyzer
+ - !2286 meson: fix warnings for extract_all_objects function
+ - !2287 ci: Update CI images to latest stable Debian and Fedora, bump Meson dependency to 0.52
+ - !2288 Update g_source_remove doc comment: the function doesn't always return TRUE
+ - !2289 Update g_source_remove documentation for the returned value
+ - !2290 mkdir path specified by XDG_RUNTIME_DIR
+ - !2292 Fix cast from pointer to integer of different size warning in gio/gwin32appinfo.c
+ - !2293 glib-private: Fix MSVC build with AddressSanitizer
+ - !2294 Fix windows warnings
+ - !2295 gutf8: Document that out args from g_utf16_to_utf8() are non-negative
+ - !2303 Fix more windows warnings
+ - !2305 gio: document GFile API when relative path is absolute
+ - !2306 gunixmounts: Drop references to pamconsole mount option
+ - !2308 gthread-win32: Remove an unnecessary volatile qualifier
+ - !2309 Rename libpcre.wrap to pcre.wrap
+ - !2310 tests: Fix a typo in a test message in gdatetime.c
+ - !2311 Fix always true comparison warning in glib/garray.c
+ - !2319 docs: Fix the GListModel description
+ - !2323 Fix final warnings in Windows code
+ - !2324 Fix link to pcre-8.37.tar.bz2
+ - !2326 Improve some documentation related to GTlsDatabase
+ - !2328 gutf8: add string length check when ending character offset is -1
+ - !2329 gdbus: Add --interactive option to `gdbus call`
+ - !2332 Changed gendered terms to be gender-neutral
+ - !2333 gsubprocess: Add G_SUBPROCESS_FLAGS_SEARCH_PATH_FROM_ENVP
+ - !2336 tests: Drop arbitrary and flaky waits from actions tests
+ - !2339 ci: Bump Meson version to 0.60.1 on macOS
+ - !2341 tests: Wait for gdbus-testserver to die when killing it
+ - !2342 tests: Reformat mkenums.py slightly to make run-black.sh happy
+ - !2345 gutils: Disable some dead code on macOS
+ - !2347 Removing tests/asyncqueue-test.c from tests/
+ - !2348 gio/tests/codegen.py: bump timeout to 100 seconds
+ - !2349 Annotate `g_getenv()` and `g_environ_getenv()` return value as `nullable`
+ - !2352 tests: Fix a flaky wait in converter-stream
+ - !2353 Address some oddities around GResolver::reload
+ - !2357 ci: Upgrade to clang-format-11 from clang-format-7
+ - !2360 meson: specify when commands need to succeed in run_command
+ - !2364 tests: Allow `objcopy --help` to fail, because it fails on FreeBSD
+ - !2365 Add vfunc checks in gappinfo.c
+ - !2368 De-duplicate g_nearest_pow() implementation and add some overflow protections to g_ptr_array_maybe_expand(), g_string_maybe_expand() and g_string_chunk_insert_len()
+ - !2370 gqsort: Move test to glib/tests/
+ - !2371 Freeze notification during object destruction
+ - !2372 docs: Improve GVariant docs
+ - !2373 glib.supp: Suppress one-time allocation in g_get_home_dir()
+ - !2376 GSource: move test to glib/tests/
+ - !2379 Merging tests/bit-test.c into glib/tests/utils.c
+ - !2381 tests: Test the function forms of g_bit_*() APIs too
+ - !2382 gfileutils: Correctly reset start value when canonicalising paths
+ - !2385 gfileutils: Fix transfer annotation and whitespace issues
+ - !2386 docs: Add API documentation links to the README
+ - !2387 docs: Update the README a little
+ - !2390 Merging tests/child-test.c into glib/tests/spawn-multithreaded.c
+ - !2391 Removing redundant cxx test tests/cxx-test.cpp
+ - !2392 Move tests/completion-test.c to glib/tests/completion.c
+ - !2393 Removing unnecessary test on gdatetime.c
+ - !2396 fuzzing: Add a fuzz test for parsing DNS records
+ - !2397 Moving tests/dirname-test.c to glib/tests/fileutils.c
+ - !2398 fix /list/position test
* Translation updates:
- Croatian
+ - Friulian
+ - Galician
+ - Hebrew
+ - Indonesian
- Italian
+ - Latvian
+ - Lithuanian
- Occitan (post 1500)
+ - Persian
- Polish
- Portuguese
- Portuguese (Brazil)
+ - Romanian
- Russian
+ - Serbian
+ - Slovak
+ - Spanish
- Swedish
- Ukrainian
-Overview of changes in GLib 2.70.1
-==================================
-
-* Fix network changes not being signalled from NetworkManager (work by
- Julian Andres Klode) (#2505)
-
-* Fix build when building with --fatal-meson-warnings (work by Eli Schwartz) (!2304)
-
-* Bugs fixed:
- - #2505 g_network_monitor_nm never updates on connection change (listens for signal on wrong dbus interface)
- - !2245 gdesktopappinfo: Do not call xterm when it does not exist, inform the caller the launch failed
- - !2253 Backport !2251 “GString: Bump minimum size†to glib-2-70
- - !2256 Backport !2254 “Small optimization for g_object_set†to glib-2-70
- - !2259 Backport !2257 “Fix documentation for g_dbus_object_manager_get_object().†to glib-2-70
- - !2262 Backport !2244 “gutils: Avoid segfault in g_get_user_database_entry†to glib-2-70
- - !2271 Backport !2266 “fix uninitial variable†to glib-2-70
- - !2276 Backport !2274 “Do not try to access errno after calling getpwnam_r.†to glib-2-70
- - !2300 Backport !2285 “fix issues found by svace static code analyzer†to glib-2-70
- - !2301 Backport !2293 “glib-private: Fix MSVC build with AddressSanitizer†to glib-2-70
- - !2302 Backport !2291 “gnetworkmonitornm: Stop using removed PropertiesChanged signal†to glib-2-70
- - !2304 meson: fix warnings for extract_all_objects function
-
-
Overview of changes in GLib 2.70.0
==================================
diff --git a/README.md b/README.md
index df480d1d0..7b436b562 100644
--- a/README.md
+++ b/README.md
@@ -23,13 +23,31 @@ which may be exploitable security vulnerabilities.
See [SECURITY.md](SECURITY.md) for more details.
-## How to report bugs
+## Documentation
-Bugs should be reported to the GNOME issue tracking system.
-(<https://gitlab.gnome.org/GNOME/glib/issues/new>). You will need
-to create an account for yourself.
+API documentation is available online for GLib for the:
+ * [GLib](https://docs.gtk.org/glib/)
+ * [GObject](https://docs.gtk.org/gobject/)
+ * [GModule](https://docs.gtk.org/gmodule/)
+ * [GIO](https://docs.gtk.org/gio/)
-In the bug report please include:
+## Discussion
+
+If you have a question about how to use GLib, seek help on [GNOME’s Discourse
+instance](https://discourse.gnome.org/tags/glib). Alternatively, ask a question
+on [StackOverflow and tag it `glib`](https://stackoverflow.com/questions/tagged/glib).
+
+## Reporting bugs
+
+Bugs should be [reported to the GNOME issue tracking system](https://gitlab.gnome.org/GNOME/glib/issues/new).
+You will need to create an account for yourself. You may also submit bugs by
+e-mail (without an account) by e-mailing <incoming+gnome-glib-658-issue-@gitlab.gnome.org>,
+but this will give you a degraded experience.
+
+Bugs are for reporting problems in GLib itself, not for asking questions about
+how to use it. To ask questions, use one of our [discussion forums](#discussion).
+
+In bug reports please include:
* Information about your system. For instance:
* What operating system and version
@@ -37,7 +55,7 @@ In the bug report please include:
* And anything else you think is relevant.
* How to reproduce the bug.
* If you can reproduce it with one of the test programs that are built
- in the tests/ subdirectory, that will be most convenient. Otherwise,
+ in the `tests/` subdirectory, that will be most convenient. Otherwise,
please include a short test program that exhibits the behavior.
As a last resort, you can also provide a pointer to a larger piece
of software that can be downloaded.
@@ -46,14 +64,19 @@ In the bug report please include:
* Further information such as stack traces may be useful, but
is not necessary.
-## Patches
+## Contributing to GLib
+
+Please follow the [contribution guide](./CONTRIBUTING.md) to know how to
+start contributing to GLib.
-Patches should also be submitted as merge requests to gitlab.gnome.org. If the
-patch fixes an existing issue, please refer to the issue in your commit message
-with the following notation (for issue 123):
+Patches should be [submitted as merge requests](https://gitlab.gnome.org/GNOME/glib/-/merge_requests/new)
+to gitlab.gnome.org. If the patch fixes an existing issue, please refer to the
+issue in your commit message with the following notation (for issue 123):
+```
Closes: #123
+```
-Otherwise, create a new merge request that introduces the change, filing a
+Otherwise, create a new merge request that introduces the change. Filing a
separate issue is not required.
## Default branch renamed to `main`
diff --git a/docs/reference/gio/gdbus-codegen.xml b/docs/reference/gio/gdbus-codegen.xml
index 960b5ffa0..5860fed97 100644
--- a/docs/reference/gio/gdbus-codegen.xml
+++ b/docs/reference/gio/gdbus-codegen.xml
@@ -35,6 +35,7 @@
<arg><option>--c-generate-autocleanup</option> none|objects|all</arg>
<arg><option>--output-directory</option> <replaceable>OUTDIR</replaceable></arg>
<arg><option>--generate-docbook</option> <replaceable>OUTFILES</replaceable></arg>
+ <arg><option>--generate-rst</option> <replaceable>OUTFILES</replaceable></arg>
<arg><option>--pragma-once</option></arg>
<arg><option>--xml-files</option> <replaceable>FILE</replaceable></arg>
<arg><option>--header</option></arg>
@@ -169,6 +170,16 @@
</refsect1>
<refsect1>
+ <title>Generating reStructuredText documentation</title>
+ <para>
+ Each generated reStructuredText file (see the
+ <option>--generate-rst</option> option for details) is a plain text
+ <ulink url="https://docutils.sourceforge.io/rst.html">reStructuredText</ulink>
+ document describing the D-Bus interface.
+ </para>
+</refsect1>
+
+<refsect1>
<title>Options</title>
<para>
The following options are supported:
@@ -212,8 +223,25 @@
<listitem>
<para>
Generate Docbook Documentation for each D-Bus interface and
- put it in <filename>OUTFILES-NAME.xml</filename> where
- <literal>NAME</literal> is a place-holder for the interface
+ put it in <filename><replaceable>OUTFILES</replaceable>-<replaceable>NAME</replaceable>.xml</filename>
+ where <literal>NAME</literal> is a place-holder for the interface
+ name, e.g. <literal>net.Corp.FooBar</literal> and so on.
+ </para>
+ <para>
+ Pass <option>--output-directory</option> to specify the directory
+ to put the output files in. By default the current directory
+ will be used.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--generate-rst</option> <replaceable>OUTFILES</replaceable></term>
+ <listitem>
+ <para>
+ Generate reStructuredText Documentation for each D-Bus interface and
+ put it in <filename><replaceable>OUTFILES</replaceable>-<replaceanle>NAME</replaceanle>.rst</filename>
+ where <literal>NAME</literal> is a place-holder for the interface
name, e.g. <literal>net.Corp.FooBar</literal> and so on.
</para>
<para>
diff --git a/docs/reference/gio/gdbus.xml b/docs/reference/gio/gdbus.xml
index 77fdfebed..60c172e05 100644
--- a/docs/reference/gio/gdbus.xml
+++ b/docs/reference/gio/gdbus.xml
@@ -71,6 +71,7 @@
<arg choice="plain">--method <replaceable>org.project.InterfaceName.MethodName</replaceable></arg>
<group>
<arg choice="plain">--timeout <replaceable>seconds</replaceable></arg>
+ <arg choice="plain">--interactive</arg>
</group>
<arg choice="plain">ARG1</arg>
<arg choice="plain" rep="repeat">ARG2</arg>
diff --git a/docs/reference/gio/gio-docs.xml b/docs/reference/gio/gio-docs.xml
index b1537baf6..76057e897 100644
--- a/docs/reference/gio/gio-docs.xml
+++ b/docs/reference/gio/gio-docs.xml
@@ -232,6 +232,8 @@
<xi:include href="xml/gremoteactiongroup.xml"/>
<xi:include href="xml/gactiongroupexporter.xml"/>
<xi:include href="xml/gdbusactiongroup.xml"/>
+ <xi:include href="xml/gdebugcontroller.xml"/>
+ <xi:include href="xml/gdebugcontrollerdbus.xml"/>
<xi:include href="xml/gmemorymonitor.xml"/>
<xi:include href="xml/gmenumodel.xml"/>
<xi:include href="xml/gmenu.xml"/>
@@ -394,6 +396,10 @@
<title>Index of new symbols in 2.70</title>
<xi:include href="xml/api-index-2.70.xml"><xi:fallback /></xi:include>
</index>
+ <index id="api-index-2-72" role="2.72">
+ <title>Index of new symbols in 2.72</title>
+ <xi:include href="xml/api-index-2.72.xml"><xi:fallback /></xi:include>
+ </index>
<xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
diff --git a/docs/reference/gio/gio-sections-common.txt b/docs/reference/gio/gio-sections-common.txt
index 137737260..4e88a597e 100644
--- a/docs/reference/gio/gio-sections-common.txt
+++ b/docs/reference/gio/gio-sections-common.txt
@@ -149,6 +149,8 @@ g_file_copy
g_file_copy_async
g_file_copy_finish
g_file_move
+g_file_move_async
+g_file_move_finish
g_file_make_directory
g_file_make_directory_async
g_file_make_directory_finish
@@ -3715,7 +3717,9 @@ g_tls_backend_get_type
<TITLE>GTlsCertificate</TITLE>
GTlsCertificate
g_tls_certificate_new_from_pem
+g_tls_certificate_new_from_pkcs12
g_tls_certificate_new_from_file
+g_tls_certificate_new_from_file_with_password
g_tls_certificate_new_from_files
g_tls_certificate_new_from_pkcs11_uris
g_tls_certificate_list_new_from_file
@@ -4206,6 +4210,36 @@ GDBusObjectManagerServerPrivate
</SECTION>
<SECTION>
+<FILE>gdebugcontroller</FILE>
+<TITLE>GDebugController</TITLE>
+GDebugController
+GDebugControllerInterface
+G_DEBUG_CONTROLLER_EXTENSION_POINT_NAME
+g_debug_controller_get_debug_enabled
+g_debug_controller_set_debug_enabled
+<SUBSECTION Standard>
+g_debug_controller_get_type
+G_TYPE_DEBUG_CONTROLLER
+G_DEBUG_CONTROLLER
+G_IS_DEBUG_CONTROLLER
+G_DEBUG_CONTROLLER_GET_INTERFACE
+</SECTION>
+
+<SECTION>
+<FILE>gdebugcontrollerdbus</FILE>
+<TITLE>GDebugControllerDBus</TITLE>
+GDebugControllerDBus
+g_debug_controller_dbus_new
+g_debug_controller_dbus_stop
+<SUBSECTION Standard>
+g_debug_controller_dbus_get_type
+G_TYPE_DEBUG_CONTROLLER_DBUS
+G_DEBUG_CONTROLLER_DBUS
+G_IS_DEBUG_CONTROLLER_DBUS
+G_DEBUG_CONTROLLER_DBUS_GET_CLASS
+</SECTION>
+
+<SECTION>
<FILE>gmemorymonitor</FILE>
<TITLE>GMemoryMonitor</TITLE>
GMemoryMonitor
diff --git a/docs/reference/gio/glib-compile-resources.xml b/docs/reference/gio/glib-compile-resources.xml
index a85f6003c..7ab36f5a9 100644
--- a/docs/reference/gio/glib-compile-resources.xml
+++ b/docs/reference/gio/glib-compile-resources.xml
@@ -200,6 +200,16 @@ be used with <literal>make</literal>.
</para></listitem>
</varlistentry>
+<varlistentry>
+<term><option>--compiler=<replaceable>NAME</replaceable></option></term>
+<listitem><para>
+Generate code that is going to target the given compiler <replaceable>NAME</replaceable>.
+The current two compiler modes are "gcc", for all GCC-compatible toolchains; and "msvc",
+for the Microsoft Visual C Compiler. If this option isn't set, then the default will be
+taken from the <envar>CC</envar> environment variable.
+</para></listitem>
+</varlistentry>
+
</variablelist>
</refsect1>
diff --git a/docs/reference/gio/meson.build b/docs/reference/gio/meson.build
index 9aaafeed5..bb14e6923 100644
--- a/docs/reference/gio/meson.build
+++ b/docs/reference/gio/meson.build
@@ -38,6 +38,7 @@ if get_option('gtk_doc')
'ghttpproxy.h',
'giomodule-priv.h',
'gioprivate.h',
+ 'giowin32-afunix.h',
'giowin32-priv.h',
'gio_probes.h',
'gio_trace.h',
@@ -107,14 +108,11 @@ if get_option('gtk_doc')
if host_system == 'windows'
ignore_headers += [
'gfiledescriptorbased.h',
- 'gunixconnection.h',
- 'gunixcredentialsmessage.h',
'gunixmounts.h',
'gunixfdlist.h',
'gunixfdmessage.h',
'gunixinputstream.h',
'gunixoutputstream.h',
- 'gunixsocketaddress.h',
'gdesktopappinfo.h',
'gosxappinfo.h',
]
diff --git a/docs/reference/gio/overview.xml b/docs/reference/gio/overview.xml
index 816afb9d3..f30b14215 100644
--- a/docs/reference/gio/overview.xml
+++ b/docs/reference/gio/overview.xml
@@ -161,7 +161,7 @@
<para>
The GIO model of I/O is stateful: if an application establishes e.g.
a SFTP connection to a server, it becomes available to all applications
- in the session; the user does not have to enter his password over
+ in the session; the user does not have to enter their password over
and over again.
</para>
<para>
@@ -279,7 +279,7 @@ excellent book on this topic,
When using GIO in code that runs with elevated privileges, you have to
be careful. GIO has extension points whose implementations get loaded
from modules (executable code in shared objects), which could allow
-an attacker to sneak his own code into your application by tricking it
+an attacker to sneak their own code into your application by tricking it
into loading the code as a module. However, GIO will never load modules
from your home directory except when explicitly asked to do so via an
environment variable.
@@ -390,9 +390,9 @@ Gvfs is also heavily distributed and relies on a session bus to be present.
This variable can be set to the name of a #GFileMonitor
implementation to override the default for debugging purposes.
The #GFileMonitor implementation for local files that is included
- in GIO on Linux has the name "inotify", others that are built
+ in GIO on Linux has the name <literal>inotify</literal>, others that are built
are built as modules (depending on the platform) are called
- "fam" and "fen".
+ <literal>fam</literal> and <literal>fen</literal>.
</para><para>
The special value <literal>help</literal> can be used to print a list of
available implementations to standard output.
@@ -670,22 +670,6 @@ Gvfs is also heavily distributed and relies on a session bus to be present.
</formalpara>
<formalpara>
- <title>G_LOCAL_DIRECTORY_MONITOR_EXTENSION_POINT_NAME</title>
-
- <para>
- Allows to override the directory monitor implementation for
- local files. Implementations of this extension point must be
- derived from #GLocalDirectoryMonitor. GIO uses the implementation
- with the highest priority that is supported, as determined by the
- is_supported() vfunc in #GLocalDirectoryMonitorClass.
- </para>
- <para>
- GIO uses this extension point internally, to switch between
- its fam-based and inotify-based directory monitoring implementations.
- </para>
- </formalpara>
-
- <formalpara>
<title>G_DESKTOP_APP_INFO_LOOKUP_EXTENSION_POINT_NAME</title>
<para>
diff --git a/docs/reference/glib/glib-docs.xml b/docs/reference/glib/glib-docs.xml
index 2f5de9e31..e642f4e93 100644
--- a/docs/reference/glib/glib-docs.xml
+++ b/docs/reference/glib/glib-docs.xml
@@ -292,6 +292,10 @@
<title>Index of new symbols in 2.70</title>
<xi:include href="xml/api-index-2.70.xml"><xi:fallback /></xi:include>
</index>
+ <index id="api-index-2-72" role="2.72">
+ <title>Index of new symbols in 2.72</title>
+ <xi:include href="xml/api-index-2.72.xml"><xi:fallback /></xi:include>
+ </index>
<xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
diff --git a/docs/reference/glib/glib-sections.txt b/docs/reference/glib/glib-sections.txt
index efb261bfd..97dcf1f70 100644
--- a/docs/reference/glib/glib-sections.txt
+++ b/docs/reference/glib/glib-sections.txt
@@ -139,6 +139,7 @@ GLIB_VERSION_2_64
GLIB_VERSION_2_66
GLIB_VERSION_2_68
GLIB_VERSION_2_70
+GLIB_VERSION_2_72
GLIB_VERSION_CUR_STABLE
GLIB_VERSION_PREV_STABLE
GLIB_VERSION_MIN_REQUIRED
@@ -170,6 +171,7 @@ GLIB_AVAILABLE_ENUMERATOR_IN_2_64
GLIB_AVAILABLE_ENUMERATOR_IN_2_66
GLIB_AVAILABLE_ENUMERATOR_IN_2_68
GLIB_AVAILABLE_ENUMERATOR_IN_2_70
+GLIB_AVAILABLE_ENUMERATOR_IN_2_72
GLIB_AVAILABLE_IN_ALL
GLIB_AVAILABLE_IN_2_26
GLIB_AVAILABLE_IN_2_28
@@ -194,6 +196,7 @@ GLIB_AVAILABLE_IN_2_64
GLIB_AVAILABLE_IN_2_66
GLIB_AVAILABLE_IN_2_68
GLIB_AVAILABLE_IN_2_70
+GLIB_AVAILABLE_IN_2_72
GLIB_AVAILABLE_MACRO_IN_2_26
GLIB_AVAILABLE_MACRO_IN_2_28
GLIB_AVAILABLE_MACRO_IN_2_30
@@ -217,6 +220,7 @@ GLIB_AVAILABLE_MACRO_IN_2_64
GLIB_AVAILABLE_MACRO_IN_2_66
GLIB_AVAILABLE_MACRO_IN_2_68
GLIB_AVAILABLE_MACRO_IN_2_70
+GLIB_AVAILABLE_MACRO_IN_2_72
GLIB_AVAILABLE_STATIC_INLINE_IN_2_44
GLIB_AVAILABLE_STATIC_INLINE_IN_2_60
GLIB_AVAILABLE_STATIC_INLINE_IN_2_62
@@ -224,6 +228,7 @@ GLIB_AVAILABLE_STATIC_INLINE_IN_2_64
GLIB_AVAILABLE_STATIC_INLINE_IN_2_66
GLIB_AVAILABLE_STATIC_INLINE_IN_2_68
GLIB_AVAILABLE_STATIC_INLINE_IN_2_70
+GLIB_AVAILABLE_STATIC_INLINE_IN_2_72
GLIB_AVAILABLE_TYPE_IN_2_26
GLIB_AVAILABLE_TYPE_IN_2_28
GLIB_AVAILABLE_TYPE_IN_2_30
@@ -247,6 +252,7 @@ GLIB_AVAILABLE_TYPE_IN_2_64
GLIB_AVAILABLE_TYPE_IN_2_66
GLIB_AVAILABLE_TYPE_IN_2_68
GLIB_AVAILABLE_TYPE_IN_2_70
+GLIB_AVAILABLE_TYPE_IN_2_72
GLIB_DEPRECATED_ENUMERATOR
GLIB_DEPRECATED_ENUMERATOR_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_26
@@ -295,6 +301,8 @@ GLIB_DEPRECATED_ENUMERATOR_IN_2_68
GLIB_DEPRECATED_ENUMERATOR_IN_2_68_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_70
GLIB_DEPRECATED_ENUMERATOR_IN_2_70_FOR
+GLIB_DEPRECATED_ENUMERATOR_IN_2_72
+GLIB_DEPRECATED_ENUMERATOR_IN_2_72_FOR
GLIB_DEPRECATED_IN_2_26
GLIB_DEPRECATED_IN_2_26_FOR
GLIB_DEPRECATED_IN_2_28
@@ -341,6 +349,8 @@ GLIB_DEPRECATED_IN_2_68
GLIB_DEPRECATED_IN_2_68_FOR
GLIB_DEPRECATED_IN_2_70
GLIB_DEPRECATED_IN_2_70_FOR
+GLIB_DEPRECATED_IN_2_72
+GLIB_DEPRECATED_IN_2_72_FOR
GLIB_DEPRECATED_MACRO
GLIB_DEPRECATED_MACRO_FOR
GLIB_DEPRECATED_MACRO_IN_2_26
@@ -389,6 +399,8 @@ GLIB_DEPRECATED_MACRO_IN_2_68
GLIB_DEPRECATED_MACRO_IN_2_68_FOR
GLIB_DEPRECATED_MACRO_IN_2_70
GLIB_DEPRECATED_MACRO_IN_2_70_FOR
+GLIB_DEPRECATED_MACRO_IN_2_72
+GLIB_DEPRECATED_MACRO_IN_2_72_FOR
GLIB_DEPRECATED_TYPE
GLIB_DEPRECATED_TYPE_FOR
GLIB_DEPRECATED_TYPE_IN_2_26
@@ -437,6 +449,8 @@ GLIB_DEPRECATED_TYPE_IN_2_68
GLIB_DEPRECATED_TYPE_IN_2_68_FOR
GLIB_DEPRECATED_TYPE_IN_2_70
GLIB_DEPRECATED_TYPE_IN_2_70_FOR
+GLIB_DEPRECATED_TYPE_IN_2_72
+GLIB_DEPRECATED_TYPE_IN_2_72_FOR
GLIB_VERSION_CUR_STABLE
GLIB_VERSION_PREV_STABLE
</SECTION>
@@ -769,6 +783,7 @@ g_macro__has_attribute_fallthrough
g_macro__has_attribute_may_alias
g_macro__has_attribute___noinline__
g_macro__has_attribute_warn_unused_result
+g_macro__has_attribute_cleanup
</SECTION>
<SECTION>
@@ -827,7 +842,9 @@ G_SOURCE_REMOVE
<SUBSECTION>
GMainContext
+GMainContextFlags
g_main_context_new
+g_main_context_new_with_flags
g_main_context_ref
g_main_context_unref
g_main_context_default
@@ -1372,7 +1389,14 @@ g_mem_gc_friendly
<SUBSECTION>
g_alloca
+g_alloca0
g_newa
+g_newa0
+
+<SUBSECTION>
+g_aligned_alloc
+g_aligned_alloc0
+g_aligned_free
<SUBSECTION>
g_memmove
@@ -1518,6 +1542,8 @@ g_log_set_always_fatal
g_log_set_fatal_mask
g_log_default_handler
g_log_set_default_handler
+g_log_get_debug_enabled
+g_log_set_debug_enabled
<SUBSECTION>
g_log_structured
@@ -2190,6 +2216,7 @@ g_get_real_name
g_get_user_cache_dir
g_get_user_data_dir
g_get_user_config_dir
+g_get_user_state_dir
g_get_user_runtime_dir
GUserDirectory
g_get_user_special_dir
@@ -2831,6 +2858,7 @@ g_trash_stack_height
GHashTable
g_hash_table_new
g_hash_table_new_full
+g_hash_table_new_similar
GHashFunc
GEqualFunc
g_hash_table_insert
diff --git a/docs/reference/glib/gvariant-varargs.xml b/docs/reference/glib/gvariant-varargs.xml
index bab12e31e..f60eabb11 100644
--- a/docs/reference/glib/gvariant-varargs.xml
+++ b/docs/reference/glib/gvariant-varargs.xml
@@ -658,6 +658,7 @@ g_variant_builder_unref (builder);
gchar *str;
g_variant_get (value, "as", &iter);
+ /* No need to free 'str' unless breaking out of the loop */
while (g_variant_iter_loop (iter, "s", &str))
g_print ("%s\n", str);
g_variant_iter_free (iter);
@@ -878,7 +879,10 @@ value2 = g_variant_new ("(@(iii)*)", value1, g_variant_new_string ("foo"));
g_variant_get (value2, "(rs)", NULL, &string); /* or "(@(iii)s)" */
g_print ("i only got the string: %s\n", string);
g_free (string);
-}]]></programlisting></informalexample>
+}
+
+/* no need to free 'value1' as 'value2' has consumed its floating reference */
+g_variant_unref (value2);]]></programlisting></informalexample>
</refsect3>
</refsect2>
@@ -917,7 +921,7 @@ dict = g_variant_builder_end (b);]]></programlisting></informalexample>
gint value = 1;
gint max = 3;
-/* type (oa{sa{sv}) */
+/* type (oa{sa{sv}}) */
data = g_variant_new_parsed ("(%o, {'brightness': {'value': <%i>, 'max': <%i>}})",
"/object/path", value, max);
{
@@ -928,10 +932,12 @@ data = g_variant_new_parsed ("(%o, {'brightness': {'value': <%i>, 'max': <%i>}})
g_variant_get (data, "(o@a{?*})", &obj, &params);
g_print ("object_path: %s\n", obj);
+ g_free (obj);
p_brightness = g_variant_lookup_value (params, "brightness", G_VARIANT_TYPE_VARDICT);
g_variant_lookup (p_brightness, "max", "i", &p_max);
g_print ("max: %d\n", p_max);
+ g_variant_unref (params);
}]]></programlisting></informalexample>
</refsect3>
diff --git a/docs/reference/gobject/gobject-docs.xml b/docs/reference/gobject/gobject-docs.xml
index e8e7c76d9..aa5a9c722 100644
--- a/docs/reference/gobject/gobject-docs.xml
+++ b/docs/reference/gobject/gobject-docs.xml
@@ -81,9 +81,11 @@
<xi:include href="xml/gparamspec.xml" />
<xi:include href="xml/value_collection.xml" />
<xi:include href="xml/signals.xml" />
+ <xi:include href="xml/gsignalgroup.xml" />
<xi:include href="xml/gclosure.xml" />
<xi:include href="xml/value_arrays.xml" />
<xi:include href="xml/gbinding.xml" />
+ <xi:include href="xml/gbindinggroup.xml" />
</reference>
<reference label="III">
<title>Tools Reference</title>
@@ -212,6 +214,10 @@
<title>Index of new symbols in 2.70</title>
<xi:include href="xml/api-index-2.70.xml"><xi:fallback /></xi:include>
</index>
+ <index id="api-index-2-72" role="2.72">
+ <title>Index of new symbols in 2.72</title>
+ <xi:include href="xml/api-index-2.72.xml"><xi:fallback /></xi:include>
+ </index>
<xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
diff --git a/docs/reference/gobject/gobject-sections.txt b/docs/reference/gobject/gobject-sections.txt
index 25ecd3aec..cbab92406 100644
--- a/docs/reference/gobject/gobject-sections.txt
+++ b/docs/reference/gobject/gobject-sections.txt
@@ -1006,3 +1006,43 @@ G_IS_BINDING
g_binding_flags_get_type
g_binding_get_type
</SECTION>
+
+<SECTION>
+<FILE>gbindinggroup</FILE>
+GBindingGroup
+g_binding_group_new
+g_binding_group_dup_source
+g_binding_group_set_source
+g_binding_group_bind
+g_binding_group_bind_full
+g_binding_group_bind_with_closures
+<SUBSECTION Standard>
+G_TYPE_BINDING_GROUP
+G_TYPE_BINDING_GROUP_CLASS
+G_BINDING_GROUP
+G_IS_BINDING_GROUP
+<SUBSECTION Private>
+g_binding_group_get_type
+</SECTION>
+
+<SECTION>
+<FILE>gsignalgroup</FILE>
+GSignalGroup
+g_signal_group_block
+g_signal_group_connect
+g_signal_group_connect_after
+g_signal_group_connect_data
+g_signal_group_connect_object
+g_signal_group_connect_swapped
+g_signal_group_dup_target
+g_signal_group_get_type
+g_signal_group_new
+g_signal_group_set_target
+g_signal_group_unblock
+<SUBSECTION Standard>
+G_IS_SIGNAL_GROUP
+G_SIGNAL_GROUP
+G_TYPE_SIGNAL_GROUP
+<SUBSECTION Private>
+g_signal_group_get_type
+</SECTION>
diff --git a/docs/reference/gobject/tut_gsignal.xml b/docs/reference/gobject/tut_gsignal.xml
index 4ed4211fa..5559673cb 100644
--- a/docs/reference/gobject/tut_gsignal.xml
+++ b/docs/reference/gobject/tut_gsignal.xml
@@ -187,10 +187,10 @@ g_cclosure_marshal_VOID__INT (GClosure *closure,
<para>
Each signal is registered in the type system together with the type on which
it can be emitted: users of the type are said to <emphasis>connect</emphasis>
- to the signal on a given type instance when they register a closure to be
- invoked upon the signal emission. Users can also emit the signal by themselves
- or stop the emission of the signal from within one of the closures connected
- to the signal.
+ to the signal on a given type instance when they register a closure to be
+ invoked upon the signal emission. The closure will be called synchronously on emission.
+ Users can also emit the signal by themselves or stop the emission of the signal from
+ within one of the closures connected to the signal.
</para>
<para>
@@ -352,7 +352,7 @@ void g_signal_emitv (const GValue *instance_and_params,
</para>
<para>
- Signal emission can be decomposed in 5 steps:
+ Signal emission is done synchronously and can be decomposed in 5 steps:
<orderedlist>
<listitem><para>
<literal>RUN_FIRST</literal>: if the
diff --git a/docs/reference/meson.build b/docs/reference/meson.build
index 53ca12ff8..8128e21bf 100644
--- a/docs/reference/meson.build
+++ b/docs/reference/meson.build
@@ -7,7 +7,7 @@
stable_2_series_versions = [
'26', '28', '30', '32', '34', '36', '38',
'40', '42', '44', '46', '48', '50', '52', '54', '56', '58',
- '60', '62', '64', '66', '68', '70',
+ '60', '62', '64', '66', '68', '70', '72',
]
ignore_decorators = [
diff --git a/fuzzing/fuzz_paths.c b/fuzzing/fuzz_paths.c
index fbed84771..948159430 100644
--- a/fuzzing/fuzz_paths.c
+++ b/fuzzing/fuzz_paths.c
@@ -4,7 +4,7 @@ int
LLVMFuzzerTestOneInput (const unsigned char *data, size_t size)
{
unsigned char *nul_terminated_data = NULL;
- const gchar *skipped_root;
+ const gchar *skipped_root G_GNUC_UNUSED /* when compiling with G_DISABLE_ASSERT */;
gchar *basename = NULL, *dirname = NULL;
fuzz_set_logging_func ();
diff --git a/fuzzing/fuzz_resolver.c b/fuzzing/fuzz_resolver.c
new file mode 100644
index 000000000..d4ba4b8ba
--- /dev/null
+++ b/fuzzing/fuzz_resolver.c
@@ -0,0 +1,53 @@
+#include "fuzz.h"
+#include "gio/gnetworking.h"
+
+#include "../gio/gthreadedresolver.h"
+
+static void
+test_for_rrtype (const guint8 *data,
+ gsize data_len,
+ gint rrtype)
+{
+ /* g_resolver_records_from_res_query() is only available on Unix */
+#ifdef G_OS_UNIX
+ GList *record_list = NULL;
+
+ /* Data too long? */
+ if (data_len > G_MAXSSIZE)
+ return;
+
+ /* rrname is only used in error messages, so doesn’t need to vary.
+ * herr is used similarly, so is just set to zero. */
+ record_list = g_resolver_records_from_res_query ("rrname",
+ rrtype,
+ data,
+ data_len,
+ 0,
+ NULL);
+
+ g_list_free_full (record_list, (GDestroyNotify) g_variant_unref);
+#endif /* G_OS_UNIX */
+}
+
+int
+LLVMFuzzerTestOneInput (const unsigned char *data, size_t size)
+{
+ const gint rrtypes_to_test[] =
+ {
+ /* See https://en.wikipedia.org/wiki/List_of_DNS_record_types */
+ 33 /* SRV */,
+ 15 /* MX */,
+ 6 /* SOA */,
+ 2 /* NS */,
+ 16 /* TXT */,
+ 999, /* not currently a valid rrtype, to test the ‘unknown’ code path */
+ };
+ gsize i;
+
+ fuzz_set_logging_func ();
+
+ for (i = 0; i < G_N_ELEMENTS (rrtypes_to_test); i++)
+ test_for_rrtype (data, size, rrtypes_to_test[i]);
+
+ return 0;
+}
diff --git a/fuzzing/meson.build b/fuzzing/meson.build
index c60dcf446..259c6d91d 100644
--- a/fuzzing/meson.build
+++ b/fuzzing/meson.build
@@ -11,6 +11,7 @@ fuzz_targets = [
'fuzz_network_address_parse',
'fuzz_network_address_parse_uri',
'fuzz_paths',
+ 'fuzz_resolver',
'fuzz_uri_escape',
'fuzz_uri_parse',
'fuzz_uri_parse_params',
diff --git a/gio/fam/meson.build b/gio/fam/meson.build
index 8019fe5c4..e3f57037c 100644
--- a/gio/fam/meson.build
+++ b/gio/fam/meson.build
@@ -34,3 +34,9 @@ module = shared_module('giofam', 'gfamfilemonitor.c',
if not meson.is_cross_build()
meson.add_install_script('../gio-querymodules-wrapper.py', gio_querymodules.full_path(), glib_giomodulesdir)
endif
+
+if meson.version().version_compare('>=0.58')
+ env = environment()
+ env.prepend('GIO_EXTRA_MODULES', meson.current_build_dir())
+ meson.add_devenv(env)
+endif \ No newline at end of file
diff --git a/gio/gappinfo.c b/gio/gappinfo.c
index eff18da83..3f0332825 100644
--- a/gio/gappinfo.c
+++ b/gio/gappinfo.c
@@ -326,7 +326,12 @@ g_app_info_set_as_default_for_type (GAppInfo *appinfo,
iface = G_APP_INFO_GET_IFACE (appinfo);
- return (* iface->set_as_default_for_type) (appinfo, content_type, error);
+ if (iface->set_as_default_for_type)
+ return (* iface->set_as_default_for_type) (appinfo, content_type, error);
+
+ g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+ _("Setting default applications not supported yet"));
+ return FALSE;
}
/**
@@ -354,7 +359,12 @@ g_app_info_set_as_last_used_for_type (GAppInfo *appinfo,
iface = G_APP_INFO_GET_IFACE (appinfo);
- return (* iface->set_as_last_used_for_type) (appinfo, content_type, error);
+ if (iface->set_as_last_used_for_type)
+ return (* iface->set_as_last_used_for_type) (appinfo, content_type, error);
+
+ g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+ _("Setting application as last used for type not supported yet"));
+ return FALSE;
}
/**
@@ -1103,6 +1113,7 @@ g_app_info_delete (GAppInfo *appinfo)
enum {
LAUNCH_FAILED,
+ LAUNCH_STARTED,
LAUNCHED,
LAST_SIGNAL
};
@@ -1147,7 +1158,7 @@ g_app_launch_context_class_init (GAppLaunchContextClass *klass)
* @context: the object emitting the signal
* @startup_notify_id: the startup notification id for the failed launch
*
- * The ::launch-failed signal is emitted when a #GAppInfo launch
+ * The #GAppLaunchContext::launch-failed signal is emitted when a #GAppInfo launch
* fails. The startup notification id is provided, so that the launcher
* can cancel the startup notification.
*
@@ -1161,16 +1172,55 @@ g_app_launch_context_class_init (GAppLaunchContextClass *klass)
G_TYPE_NONE, 1, G_TYPE_STRING);
/**
+ * GAppLaunchContext::launch-started:
+ * @context: the object emitting the signal
+ * @info: the #GAppInfo that is about to be launched
+ * @platform_data: (nullable): additional platform-specific data for this launch
+ *
+ * The #GAppLaunchContext::launch-started signal is emitted when a #GAppInfo is
+ * about to be launched. If non-null the @platform_data is an
+ * GVariant dictionary mapping strings to variants (ie `a{sv}`), which
+ * contains additional, platform-specific data about this launch. On
+ * UNIX, at least the `startup-notification-id` keys will be
+ * present.
+ *
+ * The value of the `startup-notification-id` key (type `s`) is a startup
+ * notification ID corresponding to the format from the [startup-notification
+ * specification](https://specifications.freedesktop.org/startup-notification-spec/startup-notification-0.1.txt).
+ * It allows tracking the progress of the launchee through startup.
+ *
+ * It is guaranteed that this signal is followed by either a #GAppLaunchContext::launched or
+ * #GAppLaunchContext::launch-failed signal.
+ *
+ * Since: 2.72
+ */
+ signals[LAUNCH_STARTED] = g_signal_new (I_("launch-started"),
+ G_OBJECT_CLASS_TYPE (object_class),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (GAppLaunchContextClass, launch_started),
+ NULL, NULL,
+ _g_cclosure_marshal_VOID__OBJECT_VARIANT,
+ G_TYPE_NONE, 2,
+ G_TYPE_APP_INFO, G_TYPE_VARIANT);
+ g_signal_set_va_marshaller (signals[LAUNCH_STARTED],
+ G_TYPE_FROM_CLASS (klass),
+ _g_cclosure_marshal_VOID__OBJECT_VARIANTv);
+
+ /**
* GAppLaunchContext::launched:
* @context: the object emitting the signal
* @info: the #GAppInfo that was just launched
* @platform_data: additional platform-specific data for this launch
*
- * The ::launched signal is emitted when a #GAppInfo is successfully
+ * The #GAppLaunchContext::launched signal is emitted when a #GAppInfo is successfully
* launched. The @platform_data is an GVariant dictionary mapping
- * strings to variants (ie a{sv}), which contains additional,
+ * strings to variants (ie `a{sv}`), which contains additional,
* platform-specific data about this launch. On UNIX, at least the
- * "pid" and "startup-notification-id" keys will be present.
+ * `pid` and `startup-notification-id` keys will be present.
+ *
+ * Since 2.72 the `pid` may be 0 if the process id wasn't known (for
+ * example if the process was launched via D-Bus). The `pid` may not be
+ * set at all in subsequent releases.
*
* Since: 2.36
*/
diff --git a/gio/gappinfo.h b/gio/gappinfo.h
index d26d048a5..ad3068e31 100644
--- a/gio/gappinfo.h
+++ b/gio/gappinfo.h
@@ -293,12 +293,14 @@ struct _GAppLaunchContextClass
void (* launched) (GAppLaunchContext *context,
GAppInfo *info,
GVariant *platform_data);
+ void (* launch_started) (GAppLaunchContext *context,
+ GAppInfo *info,
+ GVariant *platform_data);
/* Padding for future expansion */
void (*_g_reserved1) (void);
void (*_g_reserved2) (void);
void (*_g_reserved3) (void);
- void (*_g_reserved4) (void);
};
GLIB_AVAILABLE_IN_ALL
diff --git a/gio/gapplicationcommandline.c b/gio/gapplicationcommandline.c
index 741aa97f1..d7be108bf 100644
--- a/gio/gapplicationcommandline.c
+++ b/gio/gapplicationcommandline.c
@@ -106,7 +106,7 @@
* The complete example can be found here:
* [gapplication-example-cmdline.c](https://gitlab.gnome.org/GNOME/glib/-/blob/HEAD/gio/tests/gapplication-example-cmdline.c)
*
- * In more complicated cases, the handling of the comandline can be
+ * In more complicated cases, the handling of the commandline can be
* split between the launcher and the primary instance.
* |[<!-- language="C" -->
* static gboolean
@@ -119,6 +119,12 @@
*
* argv = *arguments;
*
+ * if (argv[0] == NULL)
+ * {
+ * *exit_status = 0;
+ * return FALSE;
+ * }
+ *
* i = 1;
* while (argv[i])
* {
diff --git a/gio/gcontenttype-win32.c b/gio/gcontenttype-win32.c
index 2f07fa36e..9b6f69ece 100644
--- a/gio/gcontenttype-win32.c
+++ b/gio/gcontenttype-win32.c
@@ -59,7 +59,7 @@ get_registry_classes_key (const char *subdir,
if (key_type == REG_EXPAND_SZ)
{
wchar_t dummy[1];
- int len = ExpandEnvironmentStringsW (wc_temp, dummy, 1);
+ DWORD len = ExpandEnvironmentStringsW (wc_temp, dummy, 1);
if (len > 0)
{
wchar_t *wc_temp_expanded = g_new (wchar_t, len);
@@ -128,7 +128,8 @@ g_content_type_is_a (const gchar *type,
const gchar *supertype)
{
gboolean res;
- char *value_utf8;
+ char *perceived_type;
+ char *perceived_supertype;
g_return_val_if_fail (type != NULL, FALSE);
g_return_val_if_fail (supertype != NULL, FALSE);
@@ -136,12 +137,15 @@ g_content_type_is_a (const gchar *type,
if (g_content_type_equals (type, supertype))
return TRUE;
- res = FALSE;
- value_utf8 = get_registry_classes_key (type, L"PerceivedType");
- if (value_utf8 && strcmp (value_utf8, supertype) == 0)
- res = TRUE;
- g_free (value_utf8);
-
+ perceived_type = get_registry_classes_key (type, L"PerceivedType");
+ perceived_supertype = get_registry_classes_key (supertype, L"PerceivedType");
+
+ res = perceived_type && perceived_supertype &&
+ strcmp (perceived_type, perceived_supertype) == 0;
+
+ g_free (perceived_type);
+ g_free (perceived_supertype);
+
return res;
}
@@ -342,7 +346,8 @@ g_content_type_from_mime_type (const gchar *mime_type)
content_type = get_registry_classes_key (key, L"Extension");
g_free (key);
- return content_type;
+
+ return content_type ? g_steal_pointer (&content_type) : g_strdup ("*");
}
gchar *
@@ -354,6 +359,7 @@ g_content_type_guess (const gchar *filename,
char *basename;
char *type;
char *dot;
+ size_t i;
type = NULL;
@@ -366,11 +372,21 @@ g_content_type_guess (const gchar *filename,
if (filename)
{
- basename = g_path_get_basename (filename);
- dot = strrchr (basename, '.');
- if (dot)
- type = g_strdup (dot);
- g_free (basename);
+ i = strlen (filename);
+ if (i > 0 && filename[i - 1] == G_DIR_SEPARATOR)
+ {
+ type = g_strdup ("inode/directory");
+ if (result_uncertain)
+ *result_uncertain = TRUE;
+ }
+ else
+ {
+ basename = g_path_get_basename (filename);
+ dot = strrchr (basename, '.');
+ if (dot)
+ type = g_strdup (dot);
+ g_free (basename);
+ }
}
if (type)
diff --git a/gio/gcontenttype.c b/gio/gcontenttype.c
index 83075fcb6..3c9522bc6 100644
--- a/gio/gcontenttype.c
+++ b/gio/gcontenttype.c
@@ -32,6 +32,7 @@
#include "gfileenumerator.h"
#include "gfileinfo.h"
#include "glibintl.h"
+#include "glib-private.h"
/**
@@ -57,7 +58,12 @@
static void tree_magic_schedule_reload (void);
-/* We lock this mutex whenever we modify global state in this module. */
+/* We lock this mutex whenever we modify global state in this module.
+ * Taking and releasing this lock should always be associated with a pair of
+ * g_begin_ignore_leaks()/g_end_ignore_leaks() calls, as any call into xdgmime
+ * could trigger xdg_mime_init(), which makes a number of one-time allocations
+ * which GLib can never free as it doesn’t know when is suitable to call
+ * xdg_mime_shutdown(). */
G_LOCK_DEFINE_STATIC (gio_xdgmime);
gsize
@@ -66,7 +72,9 @@ _g_unix_content_type_get_sniff_len (void)
gsize size;
G_LOCK (gio_xdgmime);
+ g_begin_ignore_leaks ();
size = xdg_mime_get_max_buffer_extents ();
+ g_end_ignore_leaks ();
G_UNLOCK (gio_xdgmime);
return size;
@@ -78,7 +86,9 @@ _g_unix_content_type_unalias (const gchar *type)
gchar *res;
G_LOCK (gio_xdgmime);
+ g_begin_ignore_leaks ();
res = g_strdup (xdg_mime_unalias_mime_type (type));
+ g_end_ignore_leaks ();
G_UNLOCK (gio_xdgmime);
return res;
@@ -95,6 +105,7 @@ _g_unix_content_type_get_parents (const gchar *type)
array = g_ptr_array_new ();
G_LOCK (gio_xdgmime);
+ g_begin_ignore_leaks ();
umime = xdg_mime_unalias_mime_type (type);
@@ -106,6 +117,7 @@ _g_unix_content_type_get_parents (const gchar *type)
free (parents);
+ g_end_ignore_leaks ();
G_UNLOCK (gio_xdgmime);
g_ptr_array_add (array, NULL);
@@ -233,7 +245,9 @@ g_content_type_equals (const gchar *type1,
g_return_val_if_fail (type2 != NULL, FALSE);
G_LOCK (gio_xdgmime);
+ g_begin_ignore_leaks ();
res = xdg_mime_mime_type_equal (type1, type2);
+ g_end_ignore_leaks ();
G_UNLOCK (gio_xdgmime);
return res;
@@ -259,7 +273,9 @@ g_content_type_is_a (const gchar *type,
g_return_val_if_fail (supertype != NULL, FALSE);
G_LOCK (gio_xdgmime);
+ g_begin_ignore_leaks ();
res = xdg_mime_mime_type_subclass (type, supertype);
+ g_end_ignore_leaks ();
G_UNLOCK (gio_xdgmime);
return res;
@@ -472,7 +488,9 @@ g_content_type_get_description (const gchar *type)
g_return_val_if_fail (type != NULL, NULL);
G_LOCK (gio_xdgmime);
+ g_begin_ignore_leaks ();
type = xdg_mime_unalias_mime_type (type);
+ g_end_ignore_leaks ();
if (type_comment_cache == NULL)
type_comment_cache = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free);
@@ -528,7 +546,9 @@ g_content_type_get_icon_internal (const gchar *type,
g_return_val_if_fail (type != NULL, NULL);
G_LOCK (gio_xdgmime);
+ g_begin_ignore_leaks ();
xdg_icon = xdg_mime_get_icon (type);
+ g_end_ignore_leaks ();
G_UNLOCK (gio_xdgmime);
if (xdg_icon)
@@ -619,7 +639,9 @@ g_content_type_get_generic_icon_name (const gchar *type)
g_return_val_if_fail (type != NULL, NULL);
G_LOCK (gio_xdgmime);
+ g_begin_ignore_leaks ();
xdg_icon_name = xdg_mime_get_generic_icon (type);
+ g_end_ignore_leaks ();
G_UNLOCK (gio_xdgmime);
if (!xdg_icon_name)
@@ -703,8 +725,10 @@ g_content_type_from_mime_type (const gchar *mime_type)
g_return_val_if_fail (mime_type != NULL, NULL);
G_LOCK (gio_xdgmime);
+ g_begin_ignore_leaks ();
/* mime type and content type are same on unixes */
umime = g_strdup (xdg_mime_unalias_mime_type (mime_type));
+ g_end_ignore_leaks ();
G_UNLOCK (gio_xdgmime);
return umime;
@@ -712,7 +736,7 @@ g_content_type_from_mime_type (const gchar *mime_type)
/**
* g_content_type_guess:
- * @filename: (nullable): a string, or %NULL
+ * @filename: (nullable) (type filename): a path, or %NULL
* @data: (nullable) (array length=data_size): a stream of data, or %NULL
* @data_size: the size of @data
* @result_uncertain: (out) (optional): return location for the certainty
@@ -751,11 +775,12 @@ g_content_type_guess (const gchar *filename,
g_return_val_if_fail (data_size != (gsize) -1, g_strdup (XDG_MIME_TYPE_UNKNOWN));
G_LOCK (gio_xdgmime);
+ g_begin_ignore_leaks ();
if (filename)
{
i = strlen (filename);
- if (filename[i - 1] == '/')
+ if (i > 0 && filename[i - 1] == '/')
{
name_mimetypes[0] = "inode/directory";
name_mimetypes[1] = NULL;
@@ -775,6 +800,7 @@ g_content_type_guess (const gchar *filename,
if (n_name_mimetypes == 1)
{
gchar *s = g_strdup (name_mimetypes[0]);
+ g_end_ignore_leaks ();
G_UNLOCK (gio_xdgmime);
return s;
}
@@ -843,6 +869,7 @@ g_content_type_guess (const gchar *filename,
}
}
+ g_end_ignore_leaks ();
G_UNLOCK (gio_xdgmime);
return mimetype;
@@ -997,6 +1024,8 @@ parse_header (gchar *line)
line[len - 1] = 0;
s = strchr (line, ':');
+ if (s == NULL)
+ return NULL;
match = g_slice_new0 (TreeMatch);
match->priority = atoi (line + 1);
@@ -1025,9 +1054,13 @@ parse_match_line (gchar *line,
{
*depth = atoi (line);
s = strchr (line, '>');
+ if (s == NULL)
+ goto handle_error;
}
s += 2;
p = strchr (s, '"');
+ if (p == NULL)
+ goto handle_error;
*p = 0;
matchlet->path = g_strdup (s);
@@ -1058,6 +1091,10 @@ parse_match_line (gchar *line,
g_strfreev (parts);
return matchlet;
+
+handle_error:
+ g_slice_free (TreeMatchlet, matchlet);
+ return NULL;
}
static gint
@@ -1119,7 +1156,7 @@ read_tree_magic_from_directory (const gchar *prefix)
gchar *text;
gsize len;
gchar **lines;
- gint i;
+ gsize i;
TreeMatch *match;
TreeMatchlet *matchlet;
gint depth;
@@ -1134,14 +1171,18 @@ read_tree_magic_from_directory (const gchar *prefix)
match = NULL;
for (i = 0; lines[i] && lines[i][0]; i++)
{
- if (lines[i][0] == '[')
+ if (lines[i][0] == '[' && (match = parse_header (lines[i])) != NULL)
{
- match = parse_header (lines[i]);
insert_match (match);
}
else if (match != NULL)
{
matchlet = parse_match_line (lines[i], &depth);
+ if (matchlet == NULL)
+ {
+ g_warning ("%s: body corrupt; skipping", filename);
+ break;
+ }
insert_matchlet (match, matchlet, depth);
}
else
diff --git a/gio/gcredentials.c b/gio/gcredentials.c
index ebbc2cc5b..17378e881 100644
--- a/gio/gcredentials.c
+++ b/gio/gcredentials.c
@@ -72,6 +72,9 @@
* On Solaris (including OpenSolaris and its derivatives), the native
* credential type is a `ucred_t`. This corresponds to
* %G_CREDENTIALS_TYPE_SOLARIS_UCRED.
+ *
+ * Since GLib 2.72, on Windows, the native credentials may contain the PID of a
+ * process. This corresponds to %G_CREDENTIALS_TYPE_WIN32_PID.
*/
/**
@@ -91,6 +94,7 @@ struct _GCredentials
struct ucred native;
#elif G_CREDENTIALS_USE_APPLE_XUCRED
struct xucred native;
+ pid_t pid;
#elif G_CREDENTIALS_USE_FREEBSD_CMSGCRED
struct cmsgcred native;
#elif G_CREDENTIALS_USE_NETBSD_UNPCBID
@@ -99,6 +103,8 @@ struct _GCredentials
struct sockpeercred native;
#elif G_CREDENTIALS_USE_SOLARIS_UCRED
ucred_t *native;
+#elif G_CREDENTIALS_USE_WIN32_PID
+ DWORD native;
#else
#ifdef __GNUC__
#pragma GCC diagnostic push
@@ -170,6 +176,8 @@ g_credentials_init (GCredentials *credentials)
* For now we fill it with -1 (meaning "no data"). */
for (i = 1; i < NGROUPS; i++)
credentials->native.cr_groups[i] = -1;
+
+ credentials->pid = -1;
#elif G_CREDENTIALS_USE_FREEBSD_CMSGCRED
memset (&credentials->native, 0, sizeof (struct cmsgcred));
credentials->native.cmcred_pid = getpid ();
@@ -185,6 +193,8 @@ g_credentials_init (GCredentials *credentials)
credentials->native.gid = getegid ();
#elif G_CREDENTIALS_USE_SOLARIS_UCRED
credentials->native = ucred_get (P_MYID);
+#elif G_CREDENTIALS_USE_WIN32_PID
+ credentials->native = GetCurrentProcessId ();
#endif
}
@@ -290,6 +300,8 @@ g_credentials_to_string (GCredentials *credentials)
if (ret->str[ret->len - 1] == ',')
ret->str[ret->len - 1] = '\0';
}
+#elif G_CREDENTIALS_USE_WIN32_PID
+ g_string_append_printf (ret, "win32-pid:pid=%lu", credentials->native);
#else
g_string_append (ret, "unknown");
#endif
@@ -569,8 +581,7 @@ g_credentials_get_unix_user (GCredentials *credentials,
*
* This operation can fail if #GCredentials is not supported on the
* OS or if the native credentials type does not contain information
- * about the UNIX process ID (for example this is the case for
- * %G_CREDENTIALS_TYPE_APPLE_XUCRED).
+ * about the UNIX process ID.
*
* Returns: The UNIX process ID, or `-1` if @error is set.
*
@@ -598,13 +609,21 @@ g_credentials_get_unix_pid (GCredentials *credentials,
ret = credentials->native.pid;
#elif G_CREDENTIALS_USE_SOLARIS_UCRED
ret = ucred_getpid (credentials->native);
+#elif G_CREDENTIALS_USE_WIN32_PID
+ ret = credentials->native;
+#else
+
+#if G_CREDENTIALS_USE_APPLE_XUCRED
+ ret = credentials->pid;
#else
- /* this case includes G_CREDENTIALS_USE_APPLE_XUCRED */
ret = -1;
- g_set_error_literal (error,
- G_IO_ERROR,
- G_IO_ERROR_NOT_SUPPORTED,
- _("GCredentials does not contain a process ID on this OS"));
+#endif
+
+ if (ret == -1)
+ g_set_error_literal (error,
+ G_IO_ERROR,
+ G_IO_ERROR_NOT_SUPPORTED,
+ _("GCredentials does not contain a process ID on this OS"));
#endif
return ret;
@@ -671,4 +690,16 @@ g_credentials_set_unix_user (GCredentials *credentials,
return ret;
}
+#ifdef __APPLE__
+void
+_g_credentials_set_local_peerid (GCredentials *credentials,
+ pid_t pid)
+{
+ g_return_if_fail (G_IS_CREDENTIALS (credentials));
+ g_return_if_fail (pid >= 0);
+
+ credentials->pid = pid;
+}
+#endif /* __APPLE__ */
+
#endif /* G_OS_UNIX */
diff --git a/gio/gcredentialsprivate.h b/gio/gcredentialsprivate.h
index 13d3bf327..c09f9eceb 100644
--- a/gio/gcredentialsprivate.h
+++ b/gio/gcredentialsprivate.h
@@ -40,6 +40,7 @@
#undef G_CREDENTIALS_USE_OPENBSD_SOCKPEERCRED
#undef G_CREDENTIALS_USE_SOLARIS_UCRED
#undef G_CREDENTIALS_USE_APPLE_XUCRED
+#undef G_CREDENTIALS_USE_WIN32_PID
/*
* G_CREDENTIALS_NATIVE_TYPE:
@@ -168,6 +169,17 @@
#define G_CREDENTIALS_SPOOFING_SUPPORTED 1
#define G_CREDENTIALS_HAS_PID 0
+void _g_credentials_set_local_peerid (GCredentials *credentials,
+ pid_t pid);
+
+#elif defined(_WIN32)
+#define G_CREDENTIALS_SUPPORTED 1
+#define G_CREDENTIALS_USE_WIN32_PID 1
+#define G_CREDENTIALS_NATIVE_TYPE G_CREDENTIALS_TYPE_WIN32_PID
+#define G_CREDENTIALS_NATIVE_SIZE (sizeof (DWORD))
+#define G_CREDENTIALS_SOCKET_GET_CREDENTIALS_SUPPORTED 1
+#define G_CREDENTIALS_HAS_PID 1
+
#endif
#endif /* __G_CREDENTIALS_PRIVATE_H__ */
diff --git a/gio/gdbus-2.0/codegen/.flake8 b/gio/gdbus-2.0/codegen/.flake8
new file mode 100644
index 000000000..9450a2832
--- /dev/null
+++ b/gio/gdbus-2.0/codegen/.flake8
@@ -0,0 +1,4 @@
+[flake8]
+# We are generating long lines through templates
+max-line-length = 120
+exclude = __pycache__
diff --git a/gio/gdbus-2.0/codegen/codegen.py b/gio/gdbus-2.0/codegen/codegen.py
index 9d28cb77d..d8d9a8521 100644
--- a/gio/gdbus-2.0/codegen/codegen.py
+++ b/gio/gdbus-2.0/codegen/codegen.py
@@ -2101,7 +2101,7 @@ class CodeGenerator:
" *\n"
" * Signal emitted when a remote caller is invoking the %s.%s() D-Bus method.\n"
" *\n"
- " * If a signal handler returns %%TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call %s_complete_%s() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %%G_DBUS_ERROR_UNKNOWN_METHOD error is returned.\n"
+ " * If a signal handler returns %%TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call %s_complete_%s() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %%G_DBUS_ERROR_UNKNOWN_METHOD error is returned.\n"
" *\n"
" * Returns: %%G_DBUS_METHOD_INVOCATION_HANDLED or %%TRUE if the invocation was handled, %%G_DBUS_METHOD_INVOCATION_UNHANDLED or %%FALSE to let other signal handlers run.\n"
% (i.name, m.name, i.name_lower, m.name_lower),
diff --git a/gio/gdbus-2.0/codegen/codegen_docbook.py b/gio/gdbus-2.0/codegen/codegen_docbook.py
index 4b69e2927..b7280e306 100644
--- a/gio/gdbus-2.0/codegen/codegen_docbook.py
+++ b/gio/gdbus-2.0/codegen/codegen_docbook.py
@@ -25,10 +25,6 @@ from os import path
from . import utils
-# Disable line length warnings as wrapping the Docbook templates would be hard
-# flake8: noqa: E501
-
-
# ----------------------------------------------------------------------------------------------------
@@ -345,9 +341,17 @@ class DocbookCodeGenerator:
def expand_paras(self, s, expandParamsAndConstants):
s = self.expand(s, expandParamsAndConstants).strip()
- if not s.startswith("<para"):
- s = "<para>%s</para>" % s
- return s
+ res = []
+ if not s.startswith("<para>"):
+ res.append("<para>")
+ for line in s.split("\n"):
+ line = line.strip()
+ if not line:
+ line = "</para><para>"
+ res.append(line)
+ if not s.endswith("</para>"):
+ res.append("</para>")
+ return "\n".join(res)
def generate_expand_dicts(self):
self.expand_member_dict = {}
diff --git a/gio/gdbus-2.0/codegen/codegen_main.py b/gio/gdbus-2.0/codegen/codegen_main.py
index 238d7dd12..194800c78 100644
--- a/gio/gdbus-2.0/codegen/codegen_main.py
+++ b/gio/gdbus-2.0/codegen/codegen_main.py
@@ -30,6 +30,7 @@ from . import dbustypes
from . import parser
from . import codegen
from . import codegen_docbook
+from . import codegen_rst
from .utils import print_error, print_warning
@@ -212,6 +213,11 @@ def codegen_main():
help="Generate Docbook in OUTFILES-org.Project.IFace.xml",
)
arg_parser.add_argument(
+ "--generate-rst",
+ metavar="OUTFILES",
+ help="Generate reStructuredText in OUTFILES-org.Project.IFace.rst",
+ )
+ arg_parser.add_argument(
"--pragma-once",
action="store_true",
help='Use "pragma once" as the inclusion guard',
@@ -287,10 +293,12 @@ def codegen_main():
)
if (
- args.generate_c_code is not None or args.generate_docbook is not None
+ args.generate_c_code is not None
+ or args.generate_docbook is not None
+ or args.generate_rst is not None
) and args.output is not None:
print_error(
- "Using --generate-c-code or --generate-docbook and "
+ "Using --generate-c-code or --generate-docbook or --generate-rst and "
"--output at the same time is not allowed"
)
@@ -420,6 +428,11 @@ def codegen_main():
if docbook:
docbook_gen.generate(docbook, args.output_directory)
+ rst = args.generate_rst
+ rst_gen = codegen_rst.RstCodeGenerator(all_ifaces)
+ if rst:
+ rst_gen.generate(rst, args.output_directory)
+
if args.header:
with open(h_file, "w") as outfile:
gen = codegen.HeaderCodeGenerator(
diff --git a/gio/gdbus-2.0/codegen/codegen_rst.py b/gio/gdbus-2.0/codegen/codegen_rst.py
new file mode 100644
index 000000000..51da2d572
--- /dev/null
+++ b/gio/gdbus-2.0/codegen/codegen_rst.py
@@ -0,0 +1,332 @@
+# SPDX-FileCopyrightText: 2022 Emmanuele Bassi
+#
+# SPDX-License-Identifier: LGPL-2.1-or-later
+
+import os
+import re
+
+from . import utils
+
+# Disable line length warnings as wrapping the templates would be hard
+# flake8: noqa: E501
+
+
+class RstCodeGenerator:
+ """Generates documentation in reStructuredText format."""
+
+ def __init__(self, ifaces):
+ self.ifaces = ifaces
+ self._generate_expand_dicts()
+
+ def _expand(self, s, expandParamsAndConstants):
+ """Expands parameters and constant literals."""
+ res = []
+ for line in s.split("\n"):
+ line = line.strip()
+ if line == "":
+ res.append("")
+ continue
+ for key in self._expand_member_dict_keys:
+ line = line.replace(key, self._expand_member_dict[key])
+ for key in self._expand_iface_dict_keys:
+ line = line.replace(key, self._expand_iface_dict[key])
+ if expandParamsAndConstants:
+ # replace @foo with ``foo``
+ line = re.sub(
+ "@[a-zA-Z0-9_]*",
+ lambda m: "``" + m.group(0)[1:] + "``",
+ line,
+ )
+ # replace e.g. %TRUE with ``TRUE``
+ line = re.sub(
+ "%[a-zA-Z0-9_]*",
+ lambda m: "``" + m.group(0)[1:] + "``",
+ line,
+ )
+ res.append(line)
+ return "\n".join(res)
+
+ def _generate_expand_dicts(self):
+ """Generates the dictionaries used to expand gtk-doc sigils."""
+ self._expand_member_dict = {}
+ self._expand_iface_dict = {}
+ for i in self.ifaces:
+ key = f"#{i.name}"
+ value = f"`{i.name}`_"
+ self._expand_iface_dict[key] = value
+
+ for m in i.methods:
+ key = "%s.%s()" % (i.name, m.name)
+ value = f"`{i.name}.{m.name}`_"
+ self._expand_member_dict[key] = value
+
+ for s in i.signals:
+ key = "#%s::%s" % (i.name, s.name)
+ value = f"`{i.name}::{s.name}`_"
+ self._expand_member_dict[key] = value
+
+ for p in i.properties:
+ key = "#%s:%s" % (i.name, p.name)
+ value = f"`{i.name}:{p.name}`_"
+ self._expand_member_dict[key] = value
+
+ # Make sure to expand the keys in reverse order so e.g. #org.foo.Iface:MediaCompat
+ # is evaluated before #org.foo.Iface:Media ...
+ self._expand_member_dict_keys = sorted(
+ self._expand_member_dict.keys(), reverse=True
+ )
+ self._expand_iface_dict_keys = sorted(
+ self._expand_iface_dict.keys(), reverse=True
+ )
+
+ def _generate_header(self, iface):
+ """Generates the header and preamble of the document."""
+ header_len = len(iface.name)
+ res = [
+ f".. _{iface.name}:",
+ "",
+ "=" * header_len,
+ iface.name,
+ "=" * header_len,
+ "",
+ "-----------",
+ "Description",
+ "-----------",
+ "",
+ f".. _{iface.name} Description:",
+ "",
+ iface.doc_string_brief.strip(),
+ "",
+ self._expand(iface.doc_string, True),
+ "",
+ ]
+ if iface.since:
+ res += [
+ f"Interface available since: {iface.since}.",
+ "",
+ ]
+ if iface.deprecated:
+ res += [
+ ".. warning::",
+ "",
+ " This interface is deprecated.",
+ "",
+ "",
+ ]
+ res += [""]
+ return "\n".join(res)
+
+ def _generate_section(self, title, name):
+ """Generates a section with the given title."""
+ res = [
+ "-" * len(title),
+ title,
+ "-" * len(title),
+ "",
+ f".. {name} {title}:",
+ "",
+ "",
+ ]
+ return "\n".join(res)
+
+ def _generate_properties(self, iface):
+ """Generates the properties section."""
+ res = []
+ for p in iface.properties:
+ title = f"{iface.name}:{p.name}"
+ if p.readable and p.writable:
+ access = "readwrite"
+ elif p.writable:
+ access = "writable"
+ else:
+ access = "readable"
+ res += [
+ title,
+ "^" * len(title),
+ "",
+ "::",
+ "",
+ f" {p.name} {access} {p.signature}",
+ "",
+ "",
+ self._expand(p.doc_string, True),
+ "",
+ ]
+ if p.since:
+ res += [
+ f"Property available since: {p.since}.",
+ "",
+ ]
+ if p.deprecated:
+ res += [
+ ".. warning::",
+ "",
+ " This property is deprecated.",
+ "",
+ "",
+ ]
+ res += [""]
+ return "\n".join(res)
+
+ def _generate_method_signature(self, method):
+ """Generates the method signature as a code block."""
+ res = [
+ "::",
+ "",
+ ]
+ n_in_args = len(method.in_args)
+ n_out_args = len(method.out_args)
+ if n_in_args == 0 and n_out_args == 0:
+ res += [
+ f" {method.name} ()",
+ ]
+ else:
+ res += [
+ f" {method.name} (",
+ ]
+ for idx, arg in enumerate(method.in_args):
+ if idx == n_in_args - 1 and n_out_args == 0:
+ res += [
+ f" IN {arg.name} {arg.signature}",
+ ]
+ else:
+ res += [
+ f" IN {arg.name} {arg.signature},",
+ ]
+ for idx, arg in enumerate(method.out_args):
+ if idx == n_out_args - 1:
+ res += [
+ f" OUT {arg.name} {arg.signature}",
+ ]
+ else:
+ res += [
+ f" OUT {arg.name} {arg.signature},",
+ ]
+ res += [
+ " )",
+ "",
+ ]
+ res += [""]
+ return "\n".join(res)
+
+ def _generate_methods(self, iface):
+ """Generates the methods section."""
+ res = []
+ for m in iface.methods:
+ title = f"{iface.name}.{m.name}"
+ res += [
+ title,
+ "^" * len(title),
+ "",
+ self._generate_method_signature(m),
+ "",
+ self._expand(m.doc_string, True),
+ "",
+ ]
+ for a in m.in_args:
+ arg_desc = self._expand(a.doc_string, True)
+ res += [
+ f"{a.name}",
+ f" {arg_desc}",
+ "",
+ ]
+ res += [""]
+ if m.since:
+ res += [
+ f"Method available since: {m.since}.",
+ "",
+ ]
+ if m.deprecated:
+ res += [
+ ".. warning::",
+ "",
+ " This method is deprecated.",
+ "",
+ "",
+ ]
+ res += [""]
+ return "\n".join(res)
+
+ def _generate_signal_signature(self, signal):
+ """Generates the signal signature."""
+ res = [
+ "::",
+ "",
+ ]
+ n_args = len(signal.args)
+ if n_args == 0:
+ res += [
+ f" {signal.name} ()",
+ ]
+ else:
+ res += [
+ f" {signal.name} (",
+ ]
+ for idx, arg in enumerate(signal.args):
+ if idx == n_args - 1:
+ res += [
+ f" {arg.name} {arg.signature}",
+ ]
+ else:
+ res += [
+ f" {arg.name} {arg.signature},",
+ ]
+ res += [
+ " )",
+ "",
+ ]
+ res += [""]
+ return "\n".join(res)
+
+ def _generate_signals(self, iface):
+ """Generates the signals section."""
+ res = []
+ for s in iface.signals:
+ title = f"{iface.name}::{s.name}"
+ res += [
+ title,
+ "^" * len(title),
+ "",
+ self._generate_signal_signature(s),
+ "",
+ self._expand(s.doc_string, True),
+ "",
+ ]
+ for a in s.args:
+ arg_desc = self._expand(a.doc_string, True)
+ res += [
+ f"{a.name}",
+ f" {arg_desc}",
+ "",
+ ]
+ res += [""]
+ if s.since:
+ res += [
+ f"Signal available since: {s.since}.",
+ "",
+ ]
+ if s.deprecated:
+ res += [
+ ".. warning::",
+ "",
+ " This signal is deprecated.",
+ "",
+ "",
+ ]
+ res += [""]
+ return "\n".join(res)
+
+ def generate(self, rst, outdir):
+ """Generates the reStructuredText file for each interface."""
+ for i in self.ifaces:
+ with open(os.path.join(outdir, f"{rst}-{i.name}.rst"), "w") as outfile:
+ outfile.write(self._generate_header(i))
+ if len(i.properties) > 0:
+ outfile.write(self._generate_section("Properties", i.name))
+ outfile.write(self._generate_properties(i))
+ if len(i.methods) > 0:
+ outfile.write(self._generate_section("Methods", i.name))
+ outfile.write(self._generate_methods(i))
+ if len(i.signals) > 0:
+ outfile.write(self._generate_section("Signals", i.name))
+ outfile.write(self._generate_signals(i))
diff --git a/gio/gdbus-2.0/codegen/meson.build b/gio/gdbus-2.0/codegen/meson.build
index c0caf0e50..bf25cdaeb 100644
--- a/gio/gdbus-2.0/codegen/meson.build
+++ b/gio/gdbus-2.0/codegen/meson.build
@@ -3,6 +3,7 @@ gdbus_codegen_files = [
'codegen.py',
'codegen_main.py',
'codegen_docbook.py',
+ 'codegen_rst.py',
'dbustypes.py',
'parser.py',
'utils.py',
diff --git a/gio/gdbus-2.0/codegen/parser.py b/gio/gdbus-2.0/codegen/parser.py
index 45226d540..cf8ea5229 100644
--- a/gio/gdbus-2.0/codegen/parser.py
+++ b/gio/gdbus-2.0/codegen/parser.py
@@ -85,7 +85,7 @@ class DBusXMLParser:
symbol = line[0:colon_index]
rest_of_line = line[colon_index + 2 :].strip()
if len(rest_of_line) > 0:
- body += "<para>" + rest_of_line + "</para>"
+ body += f"{rest_of_line}\n"
comment_state = DBusXMLParser.COMMENT_STATE_PARAMS
elif comment_state == DBusXMLParser.COMMENT_STATE_PARAMS:
if line.startswith("@"):
@@ -93,9 +93,9 @@ class DBusXMLParser:
if colon_index == -1:
comment_state = DBusXMLParser.COMMENT_STATE_BODY
if not in_para:
- body += "<para>"
+ body += "\n"
in_para = True
- body += orig_line + "\n"
+ body += f"{orig_line}\n"
else:
param = line[1:colon_index]
docs = line[colon_index + 2 :]
@@ -104,21 +104,20 @@ class DBusXMLParser:
comment_state = DBusXMLParser.COMMENT_STATE_BODY
if len(line) > 0:
if not in_para:
- body += "<para>"
+ body += "\n"
in_para = True
body += orig_line + "\n"
elif comment_state == DBusXMLParser.COMMENT_STATE_BODY:
if len(line) > 0:
if not in_para:
- body += "<para>"
in_para = True
body += orig_line + "\n"
else:
if in_para:
- body += "</para>"
+ body += "\n"
in_para = False
if in_para:
- body += "</para>"
+ body += "\n"
if symbol != "":
self.doc_comment_last_symbol = symbol
diff --git a/gio/gdbus-tool.c b/gio/gdbus-tool.c
index f44253804..476056b9f 100644
--- a/gio/gdbus-tool.c
+++ b/gio/gdbus-tool.c
@@ -107,7 +107,7 @@ usage (gint *argc, gchar **argv[], gboolean use_stdout)
g_option_context_set_help_enabled (o, FALSE);
/* Ignore parsing result */
g_option_context_parse (o, argc, argv, NULL);
- program_name = g_path_get_basename ((*argv)[0]);
+ program_name = (*argc > 0) ? g_path_get_basename ((*argv)[0]) : g_strdup ("gdbus-tool");
s = g_strdup_printf (_("Commands:\n"
" help Shows this information\n"
" introspect Introspect a remote object\n"
@@ -141,6 +141,7 @@ modify_argv0_for_command (gint *argc, gchar **argv[], const gchar *command)
* 2. save old argv[0] and restore later
*/
+ g_assert (*argc > 1);
g_assert (g_strcmp0 ((*argv)[1], command) == 0);
remove_arg (1, argc, argv);
@@ -887,6 +888,7 @@ static gchar *opt_call_dest = NULL;
static gchar *opt_call_object_path = NULL;
static gchar *opt_call_method = NULL;
static gint opt_call_timeout = -1;
+static gboolean opt_call_interactive = FALSE;
static const GOptionEntry call_entries[] =
{
@@ -894,6 +896,7 @@ static const GOptionEntry call_entries[] =
{ "object-path", 'o', 0, G_OPTION_ARG_STRING, &opt_call_object_path, N_("Object path to invoke method on"), NULL},
{ "method", 'm', 0, G_OPTION_ARG_STRING, &opt_call_method, N_("Method and interface name"), NULL},
{ "timeout", 't', 0, G_OPTION_ARG_INT, &opt_call_timeout, N_("Timeout in seconds"), NULL},
+ { "interactive", 'i', 0, G_OPTION_ARG_NONE, &opt_call_interactive, N_("Allow interactive authorization"), NULL},
G_OPTION_ENTRY_NULL
};
@@ -925,6 +928,7 @@ handle_call (gint *argc,
gboolean skip_dashes;
guint parm;
guint n;
+ GDBusCallFlags flags;
ret = FALSE;
c = NULL;
@@ -1204,6 +1208,11 @@ handle_call (gint *argc,
if (parameters != NULL)
parameters = g_variant_ref_sink (parameters);
+
+ flags = G_DBUS_CALL_FLAGS_NONE;
+ if (opt_call_interactive)
+ flags |= G_DBUS_CALL_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION;
+
#ifdef G_OS_UNIX
result = g_dbus_connection_call_with_unix_fd_list_sync (c,
opt_call_dest,
@@ -1212,7 +1221,7 @@ handle_call (gint *argc,
method_name,
parameters,
NULL,
- G_DBUS_CALL_FLAGS_NONE,
+ flags,
opt_call_timeout > 0 ? opt_call_timeout * 1000 : opt_call_timeout,
fd_list,
NULL,
@@ -1226,7 +1235,7 @@ handle_call (gint *argc,
method_name,
parameters,
NULL,
- G_DBUS_CALL_FLAGS_NONE,
+ flags,
opt_call_timeout > 0 ? opt_call_timeout * 1000 : opt_call_timeout,
NULL,
&error);
diff --git a/gio/gdbusaddress.c b/gio/gdbusaddress.c
index 48c766682..48fdef2f4 100644
--- a/gio/gdbusaddress.c
+++ b/gio/gdbusaddress.c
@@ -40,12 +40,12 @@
#include "gdbusprivate.h"
#include "gstdio.h"
-#ifdef G_OS_UNIX
+#ifdef HAVE_UNISTD_H
#include <unistd.h>
+#endif
#include <sys/stat.h>
#include <sys/types.h>
#include <gio/gunixsocketaddress.h>
-#endif
#ifdef G_OS_WIN32
#include <windows.h>
@@ -66,6 +66,9 @@
*
* TCP D-Bus connections are supported, but accessing them via a proxy is
* currently not supported.
+ *
+ * Since GLib 2.72, `unix:` addresses are supported on Windows with `AF_UNIX`
+ * support (Windows 10).
*/
static gchar *get_session_address_platform_specific (GError **error);
@@ -571,11 +574,7 @@ g_dbus_address_connect (const gchar *address_entry,
ret = NULL;
nonce_file = NULL;
- if (FALSE)
- {
- }
-#ifdef G_OS_UNIX
- else if (g_strcmp0 (transport_name, "unix") == 0)
+ if (g_strcmp0 (transport_name, "unix") == 0)
{
const gchar *path;
const gchar *abstract;
@@ -605,7 +604,6 @@ g_dbus_address_connect (const gchar *address_entry,
g_assert_not_reached ();
}
}
-#endif
else if (g_strcmp0 (transport_name, "tcp") == 0 || g_strcmp0 (transport_name, "nonce-tcp") == 0)
{
const gchar *s;
@@ -1098,7 +1096,7 @@ get_session_address_dbus_launch (GError **error)
if (GLIB_PRIVATE_CALL (g_check_setuid) ())
{
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
- _("Cannot spawn a message bus when setuid"));
+ _("Cannot spawn a message bus when AT_SECURE is set"));
goto out;
}
diff --git a/gio/gdbusauthmechanismexternal.c b/gio/gdbusauthmechanismexternal.c
index 182c57278..b3f21175b 100644
--- a/gio/gdbusauthmechanismexternal.c
+++ b/gio/gdbusauthmechanismexternal.c
@@ -29,6 +29,10 @@
#include "glibintl.h"
+#ifdef G_OS_WIN32
+#include "gwin32sid.h"
+#endif
+
struct _GDBusAuthMechanismExternalPrivate
{
gboolean is_client;
@@ -124,11 +128,17 @@ static gboolean
mechanism_is_supported (GDBusAuthMechanism *mechanism)
{
g_return_val_if_fail (G_IS_DBUS_AUTH_MECHANISM_EXTERNAL (mechanism), FALSE);
+
+#if defined(G_OS_WIN32)
+ /* all that is required is current process SID */
+ return TRUE;
+#else
/* This mechanism is only available if credentials has been exchanged */
if (_g_dbus_auth_mechanism_get_credentials (mechanism) != NULL)
return TRUE;
else
return FALSE;
+#endif
}
static gint
@@ -329,32 +339,39 @@ mechanism_client_initiate (GDBusAuthMechanism *mechanism,
{
GDBusAuthMechanismExternal *m = G_DBUS_AUTH_MECHANISM_EXTERNAL (mechanism);
gchar *initial_response = NULL;
+#if defined(G_OS_UNIX)
GCredentials *credentials;
+#endif
g_return_val_if_fail (G_IS_DBUS_AUTH_MECHANISM_EXTERNAL (mechanism), NULL);
g_return_val_if_fail (!m->priv->is_server && !m->priv->is_client, NULL);
m->priv->is_client = TRUE;
- m->priv->state = G_DBUS_AUTH_MECHANISM_STATE_ACCEPTED;
+ m->priv->state = G_DBUS_AUTH_MECHANISM_STATE_REJECTED;
*out_initial_response_len = 0;
+ /* return the uid */
+#if defined(G_OS_UNIX)
credentials = _g_dbus_auth_mechanism_get_credentials (mechanism);
g_assert (credentials != NULL);
- /* return the uid */
-#if defined(G_OS_UNIX)
initial_response = g_strdup_printf ("%" G_GINT64_FORMAT, (gint64) g_credentials_get_unix_user (credentials, NULL));
- *out_initial_response_len = strlen (initial_response);
#elif defined(G_OS_WIN32)
+ initial_response = _g_win32_current_process_sid_string (NULL);
+#else
#ifdef __GNUC__
#pragma GCC diagnostic push
#pragma GCC diagnostic warning "-Wcpp"
#warning Dont know how to send credentials on this OS. The EXTERNAL D-Bus authentication mechanism will not work.
#pragma GCC diagnostic pop
#endif
- m->priv->state = G_DBUS_AUTH_MECHANISM_STATE_REJECTED;
#endif
+ if (initial_response)
+ {
+ m->priv->state = G_DBUS_AUTH_MECHANISM_STATE_ACCEPTED;
+ *out_initial_response_len = strlen (initial_response);
+ }
return initial_response;
}
diff --git a/gio/gdbusauthmechanismsha1.c b/gio/gdbusauthmechanismsha1.c
index 066ef1ab7..ed5aa3f96 100644
--- a/gio/gdbusauthmechanismsha1.c
+++ b/gio/gdbusauthmechanismsha1.c
@@ -32,11 +32,13 @@
#endif
#ifdef G_OS_WIN32
#include <io.h>
+#include "gwin32sid.h"
#endif
#include "gdbusauthmechanismsha1.h"
#include "gcredentials.h"
#include "gdbuserror.h"
+#include "glocalfileinfo.h"
#include "gioenumtypes.h"
#include "gioerror.h"
#include "gdbusprivate.h"
@@ -508,6 +510,7 @@ _log (const gchar *message,
* and was created successfully) */
static gint
create_lock_exclusive (const gchar *lock_path,
+ gint64 *mtime_nsec,
GError **error)
{
int errsv;
@@ -517,6 +520,16 @@ create_lock_exclusive (const gchar *lock_path,
errsv = errno;
if (ret < 0)
{
+ GLocalFileStat stat_buf;
+
+ /* Get the modification time to distinguish between the lock being stale
+ * or highly contested. */
+ if (mtime_nsec != NULL &&
+ g_local_file_stat (lock_path, G_LOCAL_FILE_STAT_FIELD_MTIME, G_LOCAL_FILE_STAT_FIELD_ALL, &stat_buf) == 0)
+ *mtime_nsec = _g_stat_mtime (&stat_buf) * G_USEC_PER_SEC * 1000 + _g_stat_mtim_nsec (&stat_buf);
+ else if (mtime_nsec != NULL)
+ *mtime_nsec = 0;
+
g_set_error (error,
G_IO_ERROR,
g_io_error_from_errno (errsv),
@@ -537,6 +550,7 @@ keyring_acquire_lock (const gchar *path,
gint ret;
guint num_tries;
int errsv;
+ gint64 lock_mtime_nsec = 0, lock_mtime_nsec_prev = 0;
/* Total possible sleep period = max_tries * timeout_usec = 0.5s */
const guint max_tries = 50;
@@ -564,13 +578,21 @@ keyring_acquire_lock (const gchar *path,
for (num_tries = 0; num_tries < max_tries; num_tries++)
{
+ lock_mtime_nsec_prev = lock_mtime_nsec;
+
/* Ignore the error until the final call. */
- ret = create_lock_exclusive (lock, NULL);
+ ret = create_lock_exclusive (lock, &lock_mtime_nsec, NULL);
if (ret >= 0)
break;
/* sleep 10ms, then try again */
g_usleep (timeout_usec);
+
+ /* If the mtime of the lock file changed, don’t count the retry, as it
+ * seems like there’s contention between processes for the lock file,
+ * rather than a stale lock file from a crashed process. */
+ if (num_tries > 0 && lock_mtime_nsec != lock_mtime_nsec_prev)
+ num_tries--;
}
if (num_tries == max_tries)
@@ -593,7 +615,7 @@ keyring_acquire_lock (const gchar *path,
_log ("Deleted stale lock file '%s'", lock);
/* Try one last time to create it, now that we've deleted the stale one */
- ret = create_lock_exclusive (lock, error);
+ ret = create_lock_exclusive (lock, NULL, error);
if (ret < 0)
goto out;
}
@@ -991,9 +1013,12 @@ mechanism_server_initiate (GDBusAuthMechanism *mechanism,
}
#elif defined(G_OS_WIN32)
gchar *sid;
- sid = _g_dbus_win32_get_user_sid ();
+
+ sid = _g_win32_current_process_sid_string (NULL);
+
if (g_strcmp0 (initial_response, sid) == 0)
m->priv->state = G_DBUS_AUTH_MECHANISM_STATE_HAVE_DATA_TO_SEND;
+
g_free (sid);
#else
#error Please implement for your OS
@@ -1143,20 +1168,25 @@ mechanism_client_initiate (GDBusAuthMechanism *mechanism,
g_return_val_if_fail (!m->priv->is_server && !m->priv->is_client, NULL);
m->priv->is_client = TRUE;
- m->priv->state = G_DBUS_AUTH_MECHANISM_STATE_WAITING_FOR_DATA;
*out_initial_response_len = 0;
#ifdef G_OS_UNIX
initial_response = g_strdup_printf ("%" G_GINT64_FORMAT, (gint64) getuid ());
- *out_initial_response_len = strlen (initial_response);
#elif defined (G_OS_WIN32)
- initial_response = _g_dbus_win32_get_user_sid ();
- *out_initial_response_len = strlen (initial_response);
+ initial_response = _g_win32_current_process_sid_string (NULL);
#else
#error Please implement for your OS
#endif
- g_assert (initial_response != NULL);
+ if (initial_response)
+ {
+ m->priv->state = G_DBUS_AUTH_MECHANISM_STATE_WAITING_FOR_DATA;
+ *out_initial_response_len = strlen (initial_response);
+ }
+ else
+ {
+ m->priv->state = G_DBUS_AUTH_MECHANISM_STATE_REJECTED;
+ }
return initial_response;
}
diff --git a/gio/gdbusconnection.c b/gio/gdbusconnection.c
index 73b5b309a..1159c2db4 100644
--- a/gio/gdbusconnection.c
+++ b/gio/gdbusconnection.c
@@ -282,22 +282,6 @@ call_destroy_notify (GMainContext *context,
/* ---------------------------------------------------------------------------------------------------- */
-static gboolean
-_g_strv_has_string (const gchar* const *haystack,
- const gchar *needle)
-{
- guint n;
-
- for (n = 0; haystack != NULL && haystack[n] != NULL; n++)
- {
- if (g_strcmp0 (haystack[n], needle) == 0)
- return TRUE;
- }
- return FALSE;
-}
-
-/* ---------------------------------------------------------------------------------------------------- */
-
#ifdef G_OS_WIN32
#define CONNECTION_ENSURE_LOCK(obj) do { ; } while (FALSE)
#else
@@ -5268,7 +5252,7 @@ obj_message_func (GDBusConnection *connection,
* #GVariant of incorrect type.
*
* If an existing callback is already registered at @object_path and
- * @interface_name, then @error is set to #G_IO_ERROR_EXISTS.
+ * @interface_name, then @error is set to %G_IO_ERROR_EXISTS.
*
* GDBus automatically implements the standard D-Bus interfaces
* org.freedesktop.DBus.Properties, org.freedesktop.DBus.Introspectable
@@ -6544,7 +6528,7 @@ handle_subtree_introspect (GDBusConnection *connection,
/* Assert existence of object if we are not dynamic */
if (!(es->flags & G_DBUS_SUBTREE_FLAGS_DISPATCH_TO_UNENUMERATED_NODES) &&
- !_g_strv_has_string ((const gchar * const *) children, requested_node))
+ !g_strv_contains ((const gchar * const *) children, requested_node))
goto out;
}
else
@@ -6675,7 +6659,7 @@ handle_subtree_method_invocation (GDBusConnection *connection,
es->object_path,
es->user_data);
- exists = _g_strv_has_string ((const gchar * const *) children, requested_node);
+ exists = g_strv_contains ((const gchar * const *) children, requested_node);
g_strfreev (children);
if (!exists)
@@ -6930,7 +6914,7 @@ subtree_message_func (GDBusConnection *connection,
*
* When handling remote calls into any node in the subtree, first the
* @enumerate function is used to check if the node exists. If the node exists
- * or the #G_DBUS_SUBTREE_FLAGS_DISPATCH_TO_UNENUMERATED_NODES flag is set
+ * or the %G_DBUS_SUBTREE_FLAGS_DISPATCH_TO_UNENUMERATED_NODES flag is set
* the @introspection function is used to check if the node supports the
* requested method. If so, the @dispatch function is used to determine
* where to dispatch the call. The collected #GDBusInterfaceVTable and
@@ -6942,7 +6926,7 @@ subtree_message_func (GDBusConnection *connection,
* of the thread you are calling this method from.
*
* If an existing subtree is already registered at @object_path or
- * then @error is set to #G_IO_ERROR_EXISTS.
+ * then @error is set to %G_IO_ERROR_EXISTS.
*
* Note that it is valid to register regular objects (using
* g_dbus_connection_register_object()) in a subtree registered with
@@ -7450,7 +7434,9 @@ _g_bus_forget_singleton (GBusType bus_type)
* callers of g_bus_get() and g_bus_get_sync() for @bus_type. In the
* event that you need a private message bus connection, use
* g_dbus_address_get_for_bus_sync() and
- * g_dbus_connection_new_for_address().
+ * g_dbus_connection_new_for_address() with
+ * G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_CLIENT and
+ * G_DBUS_CONNECTION_FLAGS_MESSAGE_BUS_CONNECTION flags.
*
* Note that the returned #GDBusConnection object will (usually) have
* the #GDBusConnection:exit-on-close property set to %TRUE.
@@ -7569,7 +7555,9 @@ g_bus_get (GBusType bus_type,
* callers of g_bus_get() and g_bus_get_sync() for @bus_type. In the
* event that you need a private message bus connection, use
* g_dbus_address_get_for_bus_sync() and
- * g_dbus_connection_new_for_address().
+ * g_dbus_connection_new_for_address() with
+ * G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_CLIENT and
+ * G_DBUS_CONNECTION_FLAGS_MESSAGE_BUS_CONNECTION flags.
*
* Note that the returned #GDBusConnection object will (usually) have
* the #GDBusConnection:exit-on-close property set to %TRUE.
diff --git a/gio/gdbuserror.c b/gio/gdbuserror.c
index b3ea28f5a..4cc542c7e 100644
--- a/gio/gdbuserror.c
+++ b/gio/gdbuserror.c
@@ -588,7 +588,7 @@ g_dbus_error_get_remote_error (const GError *error)
* such that it can be recovered with g_dbus_error_get_remote_error().
*
* Otherwise, a #GError with the error code %G_IO_ERROR_DBUS_ERROR
- * in the #G_IO_ERROR error domain is returned. Also, @dbus_error_name is
+ * in the %G_IO_ERROR error domain is returned. Also, @dbus_error_name is
* added to the error message such that it can be recovered with
* g_dbus_error_get_remote_error().
*
diff --git a/gio/gdbusmessage.c b/gio/gdbusmessage.c
index 3415ed613..ecef6cd3c 100644
--- a/gio/gdbusmessage.c
+++ b/gio/gdbusmessage.c
@@ -51,6 +51,7 @@
#include "gseekable.h"
#include "gioerror.h"
#include "gdbusprivate.h"
+#include "gutilsprivate.h"
#ifdef G_OS_UNIX
#include "gunixfdlist.h"
@@ -257,17 +258,6 @@ g_memory_buffer_read_uint64 (GMemoryBuffer *mbuf,
#define MIN_ARRAY_SIZE 128
-static gsize
-g_nearest_pow (gsize num)
-{
- gsize n = 1;
-
- while (n < num && n > 0)
- n <<= 1;
-
- return n;
-}
-
static void
array_resize (GMemoryBuffer *mbuf,
gsize size)
diff --git a/gio/gdbusmethodinvocation.c b/gio/gdbusmethodinvocation.c
index c22e19ef0..705af079f 100644
--- a/gio/gdbusmethodinvocation.c
+++ b/gio/gdbusmethodinvocation.c
@@ -397,14 +397,7 @@ g_dbus_method_invocation_return_value_internal (GDBusMethodInvocation *invocatio
g_return_if_fail ((parameters == NULL) || g_variant_is_of_type (parameters, G_VARIANT_TYPE_TUPLE));
if (g_dbus_message_get_flags (invocation->message) & G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED)
- {
- if (parameters != NULL)
- {
- g_variant_ref_sink (parameters);
- g_variant_unref (parameters);
- }
- goto out;
- }
+ goto out;
if (parameters == NULL)
parameters = g_variant_new_tuple (NULL, 0);
@@ -420,7 +413,7 @@ g_dbus_method_invocation_return_value_internal (GDBusMethodInvocation *invocatio
{
gchar *type_string = g_variant_type_dup_string (type);
- g_warning ("Type of return value is incorrect: expected '%s', got '%s''",
+ g_warning ("Type of return value is incorrect: expected '%s', got '%s'",
type_string, g_variant_get_type_string (parameters));
g_variant_type_free (type);
g_free (type_string);
@@ -431,7 +424,9 @@ g_dbus_method_invocation_return_value_internal (GDBusMethodInvocation *invocatio
/* property_info is only non-NULL if set that way from
* GDBusConnection, so this must be the case of async property
- * handling on either 'Get', 'Set' or 'GetAll'.
+ * handling on either 'Get' or 'Set'.
+ *
+ * property_info is NULL for 'GetAll'.
*/
if (invocation->property_info != NULL)
{
@@ -461,21 +456,6 @@ g_dbus_method_invocation_return_value_internal (GDBusMethodInvocation *invocatio
g_variant_unref (nested);
}
- else if (g_str_equal (invocation->method_name, "GetAll"))
- {
- if (!g_variant_is_of_type (parameters, G_VARIANT_TYPE ("(a{sv})")))
- {
- g_warning ("Type of return value for property 'GetAll' call should be '(a{sv})' but got '%s'",
- g_variant_get_type_string (parameters));
- goto out;
- }
-
- /* Could iterate the list of properties and make sure that all
- * of them are actually on the interface and with the correct
- * types, but let's not do that for now...
- */
- }
-
else if (g_str_equal (invocation->method_name, "Set"))
{
if (!g_variant_is_of_type (parameters, G_VARIANT_TYPE_UNIT))
@@ -489,6 +469,21 @@ g_dbus_method_invocation_return_value_internal (GDBusMethodInvocation *invocatio
else
g_assert_not_reached ();
}
+ else if (g_str_equal (invocation->interface_name, "org.freedesktop.DBus.Properties") &&
+ g_str_equal (invocation->method_name, "GetAll"))
+ {
+ if (!g_variant_is_of_type (parameters, G_VARIANT_TYPE ("(a{sv})")))
+ {
+ g_warning ("Type of return value for property 'GetAll' call should be '(a{sv})' but got '%s'",
+ g_variant_get_type_string (parameters));
+ goto out;
+ }
+
+ /* Could iterate the list of properties and make sure that all
+ * of them are actually on the interface and with the correct
+ * types, but let's not do that for now...
+ */
+ }
if (G_UNLIKELY (_g_dbus_debug_return ()))
{
@@ -508,7 +503,7 @@ g_dbus_method_invocation_return_value_internal (GDBusMethodInvocation *invocatio
}
reply = g_dbus_message_new_method_reply (invocation->message);
- g_dbus_message_set_body (reply, parameters);
+ g_dbus_message_set_body (reply, g_steal_pointer (&parameters));
#ifdef G_OS_UNIX
if (fd_list != NULL)
@@ -525,6 +520,12 @@ g_dbus_method_invocation_return_value_internal (GDBusMethodInvocation *invocatio
g_object_unref (reply);
out:
+ if (parameters != NULL)
+ {
+ g_variant_ref_sink (parameters);
+ g_variant_unref (parameters);
+ }
+
g_object_unref (invocation);
}
diff --git a/gio/gdbusobjectmanagerclient.c b/gio/gdbusobjectmanagerclient.c
index 04c55995d..0d6f5e65c 100644
--- a/gio/gdbusobjectmanagerclient.c
+++ b/gio/gdbusobjectmanagerclient.c
@@ -1689,11 +1689,11 @@ remove_interfaces (GDBusObjectManagerClient *manager,
op = g_hash_table_lookup (manager->priv->map_object_path_to_object_proxy, object_path);
if (op == NULL)
{
- g_warning ("%s: Processing InterfaceRemoved signal for path %s but no object proxy exists",
- G_STRLOC,
- object_path);
+ g_debug ("%s: Processing InterfaceRemoved signal for path %s but no object proxy exists",
+ G_STRLOC,
+ object_path);
g_mutex_unlock (&manager->priv->lock);
- goto out;
+ return;
}
interfaces = g_dbus_object_get_interfaces (G_DBUS_OBJECT (op));
@@ -1730,8 +1730,6 @@ remove_interfaces (GDBusObjectManagerClient *manager,
g_object_unref (op);
}
g_object_unref (manager);
- out:
- ;
}
static void
diff --git a/gio/gdbusobjectmanagerserver.c b/gio/gdbusobjectmanagerserver.c
index a68594765..0b875be30 100644
--- a/gio/gdbusobjectmanagerserver.c
+++ b/gio/gdbusobjectmanagerserver.c
@@ -457,6 +457,34 @@ registration_data_free (RegistrationData *data)
g_free (data);
}
+/* Validate whether an object path is valid as a child of the manager. According
+ * to the specification:
+ * https://dbus.freedesktop.org/doc/dbus-specification.html#standard-interfaces-objectmanager
+ * this means that:
+ * > All returned object paths are children of the object path implementing this
+ * > interface, i.e. their object paths start with the ObjectManager's object
+ * > path plus '/'
+ *
+ * For example, if the manager is at `/org/gnome/Example`, children will be
+ * `/org/gnome/Example/(.+)`.
+ *
+ * It is permissible (but not encouraged) for the manager to be at `/`. If so,
+ * children will be `/(.+)`.
+ */
+static gboolean
+is_valid_child_object_path (GDBusObjectManagerServer *manager,
+ const gchar *child_object_path)
+{
+ /* Historically GDBus accepted @child_object_paths at `/` if the @manager
+ * itself is also at `/". This is not spec-compliant, but making GDBus enforce
+ * the spec more strictly would be an incompatible change.
+ *
+ * See https://gitlab.gnome.org/GNOME/glib/-/issues/2500 */
+ g_warn_if_fail (!g_str_equal (child_object_path, manager->priv->object_path_ending_in_slash));
+
+ return g_str_has_prefix (child_object_path, manager->priv->object_path_ending_in_slash);
+}
+
/* ---------------------------------------------------------------------------------------------------- */
static void
@@ -471,7 +499,7 @@ g_dbus_object_manager_server_export_unlocked (GDBusObjectManagerServer *manager
g_return_if_fail (G_IS_DBUS_OBJECT_MANAGER_SERVER (manager));
g_return_if_fail (G_IS_DBUS_OBJECT (object));
- g_return_if_fail (g_str_has_prefix (object_path, manager->priv->object_path_ending_in_slash));
+ g_return_if_fail (is_valid_child_object_path (manager, object_path));
interface_names = g_ptr_array_new ();
@@ -574,7 +602,7 @@ g_dbus_object_manager_server_export_uniquely (GDBusObjectManagerServer *manager,
g_return_if_fail (G_IS_DBUS_OBJECT_MANAGER_SERVER (manager));
g_return_if_fail (G_IS_DBUS_OBJECT (object));
- g_return_if_fail (g_str_has_prefix (orig_object_path, manager->priv->object_path_ending_in_slash));
+ g_return_if_fail (is_valid_child_object_path (manager, orig_object_path));
g_mutex_lock (&manager->priv->lock);
@@ -650,7 +678,7 @@ g_dbus_object_manager_server_unexport_unlocked (GDBusObjectManagerServer *manag
g_return_val_if_fail (G_IS_DBUS_OBJECT_MANAGER_SERVER (manager), FALSE);
g_return_val_if_fail (g_variant_is_object_path (object_path), FALSE);
- g_return_val_if_fail (g_str_has_prefix (object_path, manager->priv->object_path_ending_in_slash), FALSE);
+ g_return_val_if_fail (is_valid_child_object_path (manager, object_path), FALSE);
ret = FALSE;
diff --git a/gio/gdbusprivate.c b/gio/gdbusprivate.c
index fc58aea06..0b8630ab2 100644
--- a/gio/gdbusprivate.c
+++ b/gio/gdbusprivate.c
@@ -23,27 +23,28 @@
#include <stdlib.h>
#include <string.h>
-#include "giotypes.h"
-#include "gioenumtypes.h"
-#include "gsocket.h"
#include "gdbusauthobserver.h"
-#include "gdbusprivate.h"
-#include "gdbusmessage.h"
#include "gdbusconnection.h"
-#include "gdbusproxy.h"
+#include "gdbusdaemon.h"
#include "gdbuserror.h"
#include "gdbusintrospection.h"
-#include "gdbusdaemon.h"
-#include "giomodule-priv.h"
-#include "gtask.h"
+#include "gdbusmessage.h"
+#include "gdbusprivate.h"
+#include "gdbusproxy.h"
#include "ginputstream.h"
-#include "gmemoryinputstream.h"
+#include "gioenumtypes.h"
+#include "giomodule-priv.h"
#include "giostream.h"
+#include "giotypes.h"
+#include "glib-private.h"
#include "glib/gstdio.h"
+#include "gmemoryinputstream.h"
+#include "gsocket.h"
#include "gsocketaddress.h"
-#include "gsocketcontrolmessage.h"
#include "gsocketconnection.h"
+#include "gsocketcontrolmessage.h"
#include "gsocketoutputstream.h"
+#include "gtask.h"
#ifdef G_OS_UNIX
#include "gunixfdmessage.h"
@@ -55,6 +56,7 @@
#include <windows.h>
#include <io.h>
#include <conio.h>
+#include "gwin32sid.h"
#endif
#include "glibintl.h"
@@ -2010,69 +2012,6 @@ _g_dbus_compute_complete_signature (GDBusArgInfo **args)
#ifdef G_OS_WIN32
-extern BOOL WINAPI ConvertSidToStringSidA (PSID Sid, LPSTR *StringSid);
-
-gchar *
-_g_dbus_win32_get_user_sid (void)
-{
- HANDLE h;
- TOKEN_USER *user;
- DWORD token_information_len;
- PSID psid;
- gchar *sid;
- gchar *ret;
-
- ret = NULL;
- user = NULL;
- h = INVALID_HANDLE_VALUE;
-
- if (!OpenProcessToken (GetCurrentProcess (), TOKEN_QUERY, &h))
- {
- g_warning ("OpenProcessToken failed with error code %d", (gint) GetLastError ());
- goto out;
- }
-
- /* Get length of buffer */
- token_information_len = 0;
- if (!GetTokenInformation (h, TokenUser, NULL, 0, &token_information_len))
- {
- if (GetLastError () != ERROR_INSUFFICIENT_BUFFER)
- {
- g_warning ("GetTokenInformation() failed with error code %d", (gint) GetLastError ());
- goto out;
- }
- }
- user = g_malloc (token_information_len);
- if (!GetTokenInformation (h, TokenUser, user, token_information_len, &token_information_len))
- {
- g_warning ("GetTokenInformation() failed with error code %d", (gint) GetLastError ());
- goto out;
- }
-
- psid = user->User.Sid;
- if (!IsValidSid (psid))
- {
- g_warning ("Invalid SID");
- goto out;
- }
-
- if (!ConvertSidToStringSidA (psid, &sid))
- {
- g_warning ("Invalid SID");
- goto out;
- }
-
- ret = g_strdup (sid);
- LocalFree (sid);
-
-out:
- g_free (user);
- if (h != INVALID_HANDLE_VALUE)
- CloseHandle (h);
- return ret;
-}
-
-
#define DBUS_DAEMON_ADDRESS_INFO "DBusDaemonAddressInfo"
#define DBUS_DAEMON_MUTEX "DBusDaemonMutex"
#define UNIQUE_DBUS_INIT_MUTEX "UniqueDBusInitMutex"
@@ -2337,6 +2276,26 @@ g_win32_run_session_bus (void* hwnd, void* hinst, const char* cmdline, int cmdsh
static gboolean autolaunch_binary_absent = FALSE;
+static wchar_t *
+find_dbus_process_path (void)
+{
+ wchar_t *dbus_path;
+ gchar *exe_path = GLIB_PRIVATE_CALL (g_win32_find_helper_executable_path) ("gdbus.exe", _g_io_win32_get_module ());
+ dbus_path = g_utf8_to_utf16 (exe_path, -1, NULL, NULL, NULL);
+ g_free (exe_path);
+
+ if (dbus_path == NULL)
+ return NULL;
+
+ if (GetFileAttributesW (dbus_path) == INVALID_FILE_ATTRIBUTES)
+ {
+ g_free (dbus_path);
+ return NULL;
+ }
+
+ return dbus_path;
+}
+
gchar *
_g_dbus_win32_get_session_address_dbus_launch (GError **error)
{
@@ -2354,61 +2313,53 @@ _g_dbus_win32_get_session_address_dbus_launch (GError **error)
if (address == NULL && !autolaunch_binary_absent)
{
- wchar_t gio_path[MAX_PATH + 2] = { 0 };
- int gio_path_len = GetModuleFileNameW (_g_io_win32_get_module (), gio_path, MAX_PATH + 1);
-
- /* The <= MAX_PATH check prevents truncated path usage */
- if (gio_path_len > 0 && gio_path_len <= MAX_PATH)
- {
- PROCESS_INFORMATION pi = { 0 };
- STARTUPINFOW si = { 0 };
- BOOL res = FALSE;
- wchar_t exe_path[MAX_PATH + 100] = { 0 };
- /* calculate index of first char of dll file name inside full path */
- int gio_name_index = gio_path_len;
- for (; gio_name_index > 0; --gio_name_index)
- {
- wchar_t prev_char = gio_path[gio_name_index - 1];
- if (prev_char == L'\\' || prev_char == L'/')
- break;
- }
- gio_path[gio_name_index] = L'\0';
- wcscpy (exe_path, gio_path);
- wcscat (exe_path, L"\\gdbus.exe");
-
- if (GetFileAttributesW (exe_path) == INVALID_FILE_ATTRIBUTES)
- {
- /* warning won't be raised another time
- * since autolaunch_binary_absent would be already set.
- */
- autolaunch_binary_absent = TRUE;
- g_warning ("win32 session dbus binary not found: %S", exe_path );
- }
- else
- {
- wchar_t args[MAX_PATH*2 + 100] = { 0 };
- wcscpy (args, L"\"");
- wcscat (args, exe_path);
- wcscat (args, L"\" ");
+ wchar_t *dbus_path = find_dbus_process_path ();
+ if (dbus_path == NULL)
+ {
+ /* warning won't be raised another time
+ * since autolaunch_binary_absent would be already set.
+ */
+ autolaunch_binary_absent = TRUE;
+ g_warning ("win32 session dbus binary not found");
+ }
+ else
+ {
+ PROCESS_INFORMATION pi = { 0 };
+ STARTUPINFOW si = { 0 };
+ BOOL res = FALSE;
+ wchar_t args[MAX_PATH * 2 + 100] = { 0 };
+ wchar_t working_dir[MAX_PATH + 2] = { 0 };
+ wchar_t *p;
+
+ wcscpy (working_dir, dbus_path);
+ p = wcsrchr (working_dir, L'\\');
+ if (p != NULL)
+ *p = L'\0';
+
+ wcscpy (args, L"\"");
+ wcscat (args, dbus_path);
+ wcscat (args, L"\" ");
#define _L_PREFIX_FOR_EXPANDED(arg) L##arg
#define _L_PREFIX(arg) _L_PREFIX_FOR_EXPANDED (arg)
- wcscat (args, _L_PREFIX (_GDBUS_ARG_WIN32_RUN_SESSION_BUS));
+ wcscat (args, _L_PREFIX (_GDBUS_ARG_WIN32_RUN_SESSION_BUS));
#undef _L_PREFIX
#undef _L_PREFIX_FOR_EXPANDED
- res = CreateProcessW (exe_path, args,
- 0, 0, FALSE,
- NORMAL_PRIORITY_CLASS | CREATE_NO_WINDOW | DETACHED_PROCESS,
- 0, gio_path,
- &si, &pi);
- }
- if (res)
- {
- address = read_shm (DBUS_DAEMON_ADDRESS_INFO);
- if (address == NULL)
- g_warning ("%S dbus binary failed to launch bus, maybe incompatible version", exe_path );
- }
- }
+ res = CreateProcessW (dbus_path, args,
+ 0, 0, FALSE,
+ NORMAL_PRIORITY_CLASS | CREATE_NO_WINDOW | DETACHED_PROCESS,
+ 0, working_dir,
+ &si, &pi);
+
+ if (res)
+ {
+ address = read_shm (DBUS_DAEMON_ADDRESS_INFO);
+ if (address == NULL)
+ g_warning ("%S dbus binary failed to launch bus, maybe incompatible version", dbus_path);
+ }
+
+ g_free (dbus_path);
+ }
}
release_mutex (autolaunch_mutex);
diff --git a/gio/gdbusproxy.c b/gio/gdbusproxy.c
index 7a2289bd4..c095bc5fa 100644
--- a/gio/gdbusproxy.c
+++ b/gio/gdbusproxy.c
@@ -593,11 +593,15 @@ g_dbus_proxy_class_init (GDBusProxyClass *klass)
*
* Emitted when a signal from the remote object and interface that @proxy is for, has been received.
*
+ * Since 2.72 this signal supports detailed connections. You can connect to
+ * the detailed signal `g-signal::x` in order to receive callbacks only when
+ * signal `x` is received from the remote object.
+ *
* Since: 2.26
*/
signals[SIGNAL_SIGNAL] = g_signal_new (I_("g-signal"),
G_TYPE_DBUS_PROXY,
- G_SIGNAL_RUN_LAST | G_SIGNAL_MUST_COLLECT,
+ G_SIGNAL_RUN_LAST | G_SIGNAL_DETAILED | G_SIGNAL_MUST_COLLECT,
G_STRUCT_OFFSET (GDBusProxyClass, g_signal),
NULL,
NULL,
@@ -890,7 +894,7 @@ on_signal_received (GDBusConnection *connection,
g_signal_emit (proxy,
signals[SIGNAL_SIGNAL],
- 0,
+ g_quark_try_string (signal_name),
sender_name,
signal_name,
parameters);
@@ -1694,6 +1698,10 @@ static void
async_initable_init_first (GAsyncInitable *initable)
{
GDBusProxy *proxy = G_DBUS_PROXY (initable);
+ GDBusSignalFlags signal_flags = G_DBUS_SIGNAL_FLAGS_NONE;
+
+ if (proxy->priv->flags & G_DBUS_PROXY_FLAGS_NO_MATCH_RULE)
+ signal_flags |= G_DBUS_SIGNAL_FLAGS_NO_MATCH_RULE;
if (!(proxy->priv->flags & G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES))
{
@@ -1705,7 +1713,7 @@ async_initable_init_first (GAsyncInitable *initable)
"PropertiesChanged",
proxy->priv->object_path,
proxy->priv->interface_name,
- G_DBUS_SIGNAL_FLAGS_NONE,
+ signal_flags,
on_properties_changed,
weak_ref_new (G_OBJECT (proxy)),
(GDestroyNotify) weak_ref_free);
@@ -1721,7 +1729,7 @@ async_initable_init_first (GAsyncInitable *initable)
NULL, /* member */
proxy->priv->object_path,
NULL, /* arg0 */
- G_DBUS_SIGNAL_FLAGS_NONE,
+ signal_flags,
on_signal_received,
weak_ref_new (G_OBJECT (proxy)),
(GDestroyNotify) weak_ref_free);
@@ -1737,7 +1745,7 @@ async_initable_init_first (GAsyncInitable *initable)
"NameOwnerChanged", /* signal name */
"/org/freedesktop/DBus", /* path */
proxy->priv->name, /* arg0 */
- G_DBUS_SIGNAL_FLAGS_NONE,
+ signal_flags,
on_name_owner_changed,
weak_ref_new (G_OBJECT (proxy)),
(GDestroyNotify) weak_ref_free);
diff --git a/gio/gdbusutils.c b/gio/gdbusutils.c
index f12e86204..112c24e22 100644
--- a/gio/gdbusutils.c
+++ b/gio/gdbusutils.c
@@ -537,23 +537,23 @@ g_dbus_gvariant_to_gvalue (GVariant *value,
*
* The conversion is using the following rules:
*
- * - #G_TYPE_STRING: 's', 'o', 'g' or 'ay'
- * - #G_TYPE_STRV: 'as', 'ao' or 'aay'
- * - #G_TYPE_BOOLEAN: 'b'
- * - #G_TYPE_UCHAR: 'y'
- * - #G_TYPE_INT: 'i', 'n'
- * - #G_TYPE_UINT: 'u', 'q'
- * - #G_TYPE_INT64 'x'
- * - #G_TYPE_UINT64: 't'
- * - #G_TYPE_DOUBLE: 'd'
- * - #G_TYPE_VARIANT: Any #GVariantType
- *
- * This can fail if e.g. @gvalue is of type #G_TYPE_STRING and @type
- * is ['i'][G-VARIANT-TYPE-INT32:CAPS]. It will also fail for any #GType
- * (including e.g. #G_TYPE_OBJECT and #G_TYPE_BOXED derived-types) not
+ * - `G_TYPE_STRING`: 's', 'o', 'g' or 'ay'
+ * - `G_TYPE_STRV`: 'as', 'ao' or 'aay'
+ * - `G_TYPE_BOOLEAN`: 'b'
+ * - `G_TYPE_UCHAR`: 'y'
+ * - `G_TYPE_INT`: 'i', 'n'
+ * - `G_TYPE_UINT`: 'u', 'q'
+ * - `G_TYPE_INT64`: 'x'
+ * - `G_TYPE_UINT64`: 't'
+ * - `G_TYPE_DOUBLE`: 'd'
+ * - `G_TYPE_VARIANT`: Any #GVariantType
+ *
+ * This can fail if e.g. @gvalue is of type %G_TYPE_STRING and @type
+ * is 'i', i.e. %G_VARIANT_TYPE_INT32. It will also fail for any #GType
+ * (including e.g. %G_TYPE_OBJECT and %G_TYPE_BOXED derived-types) not
* in the table above.
*
- * Note that if @gvalue is of type #G_TYPE_VARIANT and its value is
+ * Note that if @gvalue is of type %G_TYPE_VARIANT and its value is
* %NULL, the empty #GVariant instance (never %NULL) for @type is
* returned (e.g. 0 for scalar types, the empty string for string types,
* '/' for object path types, the empty array for any array type and so on).
diff --git a/gio/gdebugcontroller.c b/gio/gdebugcontroller.c
new file mode 100644
index 000000000..c61561621
--- /dev/null
+++ b/gio/gdebugcontroller.c
@@ -0,0 +1,119 @@
+/* GIO - GLib Input, Output and Streaming Library
+ *
+ * Copyright © 2021 Endless OS Foundation, LLC
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ *
+ * SPDX-License-Identifier: LGPL-2.1-or-later
+ */
+
+#include "config.h"
+#include "glib.h"
+#include "glibintl.h"
+
+#include "gdebugcontroller.h"
+#include "ginitable.h"
+#include "giomodule-priv.h"
+
+/**
+ * SECTION:gdebugcontroller
+ * @title: GDebugController
+ * @short_description: Debugging controller
+ * @include: gio/gio.h
+ *
+ * #GDebugController is an interface to expose control of debugging features and
+ * debug output.
+ *
+ * It is implemented on Linux using #GDebugControllerDBus, which exposes a D-Bus
+ * interface to allow authenticated peers to control debug features in this
+ * process.
+ *
+ * Whether debug output is enabled is exposed as
+ * #GDebugController:debug-enabled. This controls g_log_set_debug_enabled() by
+ * default. Application code may connect to the #GObject::notify signal for it
+ * to control other parts of its debug infrastructure as necessary.
+ *
+ * If your application or service is using the default GLib log writer function,
+ * creating one of the built-in implementations of #GDebugController should be
+ * all that’s needed to dynamically enable or disable debug output.
+ *
+ * Since: 2.72
+ */
+
+G_DEFINE_INTERFACE_WITH_CODE (GDebugController, g_debug_controller, G_TYPE_OBJECT,
+ g_type_interface_add_prerequisite (g_define_type_id, G_TYPE_INITABLE))
+
+static void
+g_debug_controller_default_init (GDebugControllerInterface *iface)
+{
+ /**
+ * GDebugController:debug-enabled:
+ *
+ * %TRUE if debug output should be exposed (for example by forwarding it to
+ * the journal), %FALSE otherwise.
+ *
+ * Since: 2.72
+ */
+ g_object_interface_install_property (iface,
+ g_param_spec_boolean ("debug-enabled",
+ "Debug Enabled",
+ "Whether to expose debug output",
+ FALSE,
+ G_PARAM_READWRITE |
+ G_PARAM_STATIC_STRINGS |
+ G_PARAM_EXPLICIT_NOTIFY));
+}
+
+/**
+ * g_debug_controller_get_debug_enabled:
+ * @self: a #GDebugController
+ *
+ * Get the value of #GDebugController:debug-enabled.
+ *
+ * Returns: %TRUE if debug output should be exposed, %FALSE otherwise
+ * Since: 2.72
+ */
+gboolean
+g_debug_controller_get_debug_enabled (GDebugController *self)
+{
+ gboolean enabled;
+
+ g_return_val_if_fail (G_IS_DEBUG_CONTROLLER (self), FALSE);
+
+ g_object_get (G_OBJECT (self),
+ "debug-enabled", &enabled,
+ NULL);
+
+ return enabled;
+}
+
+/**
+ * g_debug_controller_set_debug_enabled:
+ * @self: a #GDebugController
+ * @debug_enabled: %TRUE if debug output should be exposed, %FALSE otherwise
+ *
+ * Set the value of #GDebugController:debug-enabled.
+ *
+ * Since: 2.72
+ */
+void
+g_debug_controller_set_debug_enabled (GDebugController *self,
+ gboolean debug_enabled)
+{
+ g_return_if_fail (G_IS_DEBUG_CONTROLLER (self));
+
+ g_object_set (G_OBJECT (self),
+ "debug-enabled", debug_enabled,
+ NULL);
+}
diff --git a/gio/gdebugcontroller.h b/gio/gdebugcontroller.h
new file mode 100644
index 000000000..ca3a2d29d
--- /dev/null
+++ b/gio/gdebugcontroller.h
@@ -0,0 +1,79 @@
+/* GIO - GLib Input, Output and Streaming Library
+ *
+ * Copyright © 2021 Endless OS Foundation, LLC
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ *
+ * SPDX-License-Identifier: LGPL-2.1-or-later
+ */
+
+#ifndef __G_DEBUG_CONTROLLER_H__
+#define __G_DEBUG_CONTROLLER_H__
+
+#if !defined (__GIO_GIO_H_INSIDE__) && !defined (GIO_COMPILATION)
+#error "Only <gio/gio.h> can be included directly."
+#endif
+
+#include <gio/giotypes.h>
+
+G_BEGIN_DECLS
+
+/**
+ * G_DEBUG_CONTROLLER_EXTENSION_POINT_NAME:
+ *
+ * Extension point for debug control functionality.
+ * See [Extending GIO][extending-gio].
+ *
+ * Since: 2.72
+ */
+#define G_DEBUG_CONTROLLER_EXTENSION_POINT_NAME "gio-debug-controller"
+
+/**
+ * GDebugController:
+ *
+ * #GDebugController is an interface to expose control of debugging features and
+ * debug output.
+ *
+ * Since: 2.72
+ */
+#define G_TYPE_DEBUG_CONTROLLER (g_debug_controller_get_type ())
+GLIB_AVAILABLE_IN_2_72
+G_DECLARE_INTERFACE(GDebugController, g_debug_controller, g, debug_controller, GObject)
+
+#define G_DEBUG_CONTROLLER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), G_TYPE_DEBUG_CONTROLLER, GDebugController))
+#define G_IS_DEBUG_CONTROLLER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), G_TYPE_DEBUG_CONTROLLER))
+#define G_DEBUG_CONTROLLER_GET_INTERFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), G_TYPE_DEBUG_CONTROLLER, GDebugControllerInterface))
+
+/**
+ * GDebugControllerInterface:
+ * @g_iface: The parent interface.
+ *
+ * The virtual function table for #GDebugController.
+ *
+ * Since: 2.72
+ */
+struct _GDebugControllerInterface {
+ /*< private >*/
+ GTypeInterface g_iface;
+};
+
+GLIB_AVAILABLE_IN_2_72
+gboolean g_debug_controller_get_debug_enabled (GDebugController *self);
+GLIB_AVAILABLE_IN_2_72
+void g_debug_controller_set_debug_enabled (GDebugController *self,
+ gboolean debug_enabled);
+
+G_END_DECLS
+
+#endif /* __G_DEBUG_CONTROLLER_H__ */
diff --git a/gio/gdebugcontrollerdbus.c b/gio/gdebugcontrollerdbus.c
new file mode 100644
index 000000000..3c0ee007e
--- /dev/null
+++ b/gio/gdebugcontrollerdbus.c
@@ -0,0 +1,709 @@
+/* GIO - GLib Input, Output and Streaming Library
+ *
+ * Copyright © 2021 Endless OS Foundation, LLC
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ *
+ * SPDX-License-Identifier: LGPL-2.1-or-later
+ */
+
+#include "config.h"
+
+#include <gio/gio.h>
+#include "gdebugcontroller.h"
+#include "gdebugcontrollerdbus.h"
+#include "giomodule-priv.h"
+#include "gi18n.h"
+#include "gio/gdbusprivate.h"
+#include "gio/gmarshal-internal.h"
+
+/**
+ * SECTION:gdebugcontrollerdbus
+ * @title: GDebugControllerDBus
+ * @short_description: Debugging controller D-Bus implementation
+ * @include: gio/gio.h
+ *
+ * #GDebugControllerDBus is an implementation of #GDebugController which exposes
+ * debug settings as a D-Bus object.
+ *
+ * It is a #GInitable object, and will register an object at
+ * `/org/gtk/Debugging` on the bus given as
+ * #GDebugControllerDBus:connection once it’s initialized. The object will be
+ * unregistered when the last reference to the #GDebugControllerDBus is dropped.
+ *
+ * This D-Bus object can be used by remote processes to enable or disable debug
+ * output in this process. Remote processes calling
+ * `org.gtk.Debugging.SetDebugEnabled()` will affect the value of
+ * #GDebugController:debug-enabled and, by default, g_log_get_debug_enabled().
+ * default.
+ *
+ * By default, all processes will be able to call `SetDebugEnabled()`. If this
+ * process is privileged, or might expose sensitive information in its debug
+ * output, you may want to restrict the ability to enable debug output to
+ * privileged users or processes.
+ *
+ * One option is to install a D-Bus security policy which restricts access to
+ * `SetDebugEnabled()`, installing something like the following in
+ * `$datadir/dbus-1/system.d/`:
+ * |[<!-- language="XML" -->
+ * <?xml version="1.0"?> <!--*-nxml-*-->
+ * <!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
+ * "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
+ * <busconfig>
+ * <policy user="root">
+ * <allow send_destination="com.example.MyService" send_interface="org.gtk.Debugging"/>
+ * </policy>
+ * <policy context="default">
+ * <deny send_destination="com.example.MyService" send_interface="org.gtk.Debugging"/>
+ * </policy>
+ * </busconfig>
+ * ]|
+ *
+ * This will prevent the `SetDebugEnabled()` method from being called by all
+ * except root. It will not prevent the `DebugEnabled` property from being read,
+ * as it’s accessed through the `org.freedesktop.DBus.Properties` interface.
+ *
+ * Another option is to use polkit to allow or deny requests on a case-by-case
+ * basis, allowing for the possibility of dynamic authorisation. To do this,
+ * connect to the #GDebugControllerDBus::authorize signal and query polkit in
+ * it:
+ * |[<!-- language="C" -->
+ * g_autoptr(GError) child_error = NULL;
+ * g_autoptr(GDBusConnection) connection = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, NULL);
+ * gulong debug_controller_authorize_id = 0;
+ *
+ * // Set up the debug controller.
+ * debug_controller = G_DEBUG_CONTROLLER (g_debug_controller_dbus_new (priv->connection, NULL, &child_error));
+ * if (debug_controller == NULL)
+ * {
+ * g_error ("Could not register debug controller on bus: %s"),
+ * child_error->message);
+ * }
+ *
+ * debug_controller_authorize_id = g_signal_connect (debug_controller,
+ * "authorize",
+ * G_CALLBACK (debug_controller_authorize_cb),
+ * self);
+ *
+ * static gboolean
+ * debug_controller_authorize_cb (GDebugControllerDBus *debug_controller,
+ * GDBusMethodInvocation *invocation,
+ * gpointer user_data)
+ * {
+ * g_autoptr(PolkitAuthority) authority = NULL;
+ * g_autoptr(PolkitSubject) subject = NULL;
+ * g_autoptr(PolkitAuthorizationResult) auth_result = NULL;
+ * g_autoptr(GError) local_error = NULL;
+ * GDBusMessage *message;
+ * GDBusMessageFlags message_flags;
+ * PolkitCheckAuthorizationFlags flags = POLKIT_CHECK_AUTHORIZATION_FLAGS_NONE;
+ *
+ * message = g_dbus_method_invocation_get_message (invocation);
+ * message_flags = g_dbus_message_get_flags (message);
+ *
+ * authority = polkit_authority_get_sync (NULL, &local_error);
+ * if (authority == NULL)
+ * {
+ * g_warning ("Failed to get polkit authority: %s", local_error->message);
+ * return FALSE;
+ * }
+ *
+ * if (message_flags & G_DBUS_MESSAGE_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION)
+ * flags |= POLKIT_CHECK_AUTHORIZATION_FLAGS_ALLOW_USER_INTERACTION;
+ *
+ * subject = polkit_system_bus_name_new (g_dbus_method_invocation_get_sender (invocation));
+ *
+ * auth_result = polkit_authority_check_authorization_sync (authority,
+ * subject,
+ * "com.example.MyService.set-debug-enabled",
+ * NULL,
+ * flags,
+ * NULL,
+ * &local_error);
+ * if (auth_result == NULL)
+ * {
+ * g_warning ("Failed to get check polkit authorization: %s", local_error->message);
+ * return FALSE;
+ * }
+ *
+ * return polkit_authorization_result_get_is_authorized (auth_result);
+ * }
+ * ]|
+ *
+ * Since: 2.72
+ */
+
+static const gchar org_gtk_Debugging_xml[] =
+ "<node>"
+ "<interface name='org.gtk.Debugging'>"
+ "<property name='DebugEnabled' type='b' access='read'/>"
+ "<method name='SetDebugEnabled'>"
+ "<arg type='b' name='debug-enabled' direction='in'/>"
+ "</method>"
+ "</interface>"
+ "</node>";
+
+static GDBusInterfaceInfo *org_gtk_Debugging;
+
+#define G_DEBUG_CONTROLLER_DBUS_GET_INITABLE_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), G_TYPE_INITABLE, GInitable))
+
+static void g_debug_controller_dbus_iface_init (GDebugControllerInterface *iface);
+static void g_debug_controller_dbus_initable_iface_init (GInitableIface *iface);
+static gboolean g_debug_controller_dbus_authorize_default (GDebugControllerDBus *self,
+ GDBusMethodInvocation *invocation);
+
+typedef enum
+{
+ PROP_CONNECTION = 1,
+ /* Overrides: */
+ PROP_DEBUG_ENABLED,
+} GDebugControllerDBusProperty;
+
+static GParamSpec *props[PROP_CONNECTION + 1] = { NULL, };
+
+typedef enum
+{
+ SIGNAL_AUTHORIZE,
+} GDebugControllerDBusSignal;
+
+static guint signals[SIGNAL_AUTHORIZE + 1] = {0};
+
+typedef struct
+{
+ GObject parent_instance;
+
+ GCancellable *cancellable; /* (owned) */
+ GDBusConnection *connection; /* (owned) */
+ guint object_id;
+ GPtrArray *pending_authorize_tasks; /* (element-type GWeakRef) (owned) (nullable) */
+
+ gboolean debug_enabled;
+} GDebugControllerDBusPrivate;
+
+G_DEFINE_TYPE_WITH_CODE (GDebugControllerDBus, g_debug_controller_dbus, G_TYPE_OBJECT,
+ G_ADD_PRIVATE (GDebugControllerDBus)
+ G_IMPLEMENT_INTERFACE (G_TYPE_INITABLE,
+ g_debug_controller_dbus_initable_iface_init)
+ G_IMPLEMENT_INTERFACE (G_TYPE_DEBUG_CONTROLLER,
+ g_debug_controller_dbus_iface_init)
+ _g_io_modules_ensure_extension_points_registered ();
+ g_io_extension_point_implement (G_DEBUG_CONTROLLER_EXTENSION_POINT_NAME,
+ g_define_type_id,
+ "dbus",
+ 30))
+
+static void
+g_debug_controller_dbus_init (GDebugControllerDBus *self)
+{
+ GDebugControllerDBusPrivate *priv = g_debug_controller_dbus_get_instance_private (self);
+
+ priv->cancellable = g_cancellable_new ();
+}
+
+static void
+set_debug_enabled (GDebugControllerDBus *self,
+ gboolean debug_enabled)
+{
+ GDebugControllerDBusPrivate *priv = g_debug_controller_dbus_get_instance_private (self);
+
+ if (g_cancellable_is_cancelled (priv->cancellable))
+ return;
+
+ if (debug_enabled != priv->debug_enabled)
+ {
+ GVariantBuilder builder;
+
+ priv->debug_enabled = debug_enabled;
+
+ /* Change the default log writer’s behaviour in GLib. */
+ g_log_set_debug_enabled (debug_enabled);
+
+ /* Notify internally and externally of the property change. */
+ g_object_notify (G_OBJECT (self), "debug-enabled");
+
+ g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}"));
+ g_variant_builder_add (&builder, "{sv}", "DebugEnabled", g_variant_new_boolean (priv->debug_enabled));
+
+ g_dbus_connection_emit_signal (priv->connection,
+ NULL,
+ "/org/gtk/Debugging",
+ "org.freedesktop.DBus.Properties",
+ "PropertiesChanged",
+ g_variant_new ("(sa{sv}as)",
+ "org.gtk.Debugging",
+ &builder,
+ NULL),
+ NULL);
+
+ g_debug ("Debug output %s", debug_enabled ? "enabled" : "disabled");
+ }
+}
+
+/* Called in the #GMainContext which was default when the #GDebugControllerDBus
+ * was initialised. */
+static GVariant *
+dbus_get_property (GDBusConnection *connection,
+ const gchar *sender,
+ const gchar *object_path,
+ const gchar *interface_name,
+ const gchar *property_name,
+ GError **error,
+ gpointer user_data)
+{
+ GDebugControllerDBus *self = user_data;
+ GDebugControllerDBusPrivate *priv = g_debug_controller_dbus_get_instance_private (self);
+
+ if (g_str_equal (property_name, "DebugEnabled"))
+ return g_variant_new_boolean (priv->debug_enabled);
+
+ g_assert_not_reached ();
+
+ return NULL;
+}
+
+static GWeakRef *
+weak_ref_new (GObject *obj)
+{
+ GWeakRef *weak_ref = g_new0 (GWeakRef, 1);
+
+ g_weak_ref_init (weak_ref, obj);
+
+ return g_steal_pointer (&weak_ref);
+}
+
+static void
+weak_ref_free (GWeakRef *weak_ref)
+{
+ g_weak_ref_clear (weak_ref);
+ g_free (weak_ref);
+}
+
+/* Called in the #GMainContext which was default when the #GDebugControllerDBus
+ * was initialised. */
+static void
+garbage_collect_weak_refs (GDebugControllerDBus *self)
+{
+ GDebugControllerDBusPrivate *priv = g_debug_controller_dbus_get_instance_private (self);
+ guint i;
+
+ if (priv->pending_authorize_tasks == NULL)
+ return;
+
+ /* Iterate in reverse order so that if we remove an element the hole won’t be
+ * filled by an element we haven’t checked yet. */
+ for (i = priv->pending_authorize_tasks->len; i > 0; i--)
+ {
+ GWeakRef *weak_ref = g_ptr_array_index (priv->pending_authorize_tasks, i - 1);
+ GObject *obj = g_weak_ref_get (weak_ref);
+
+ if (obj == NULL)
+ g_ptr_array_remove_index_fast (priv->pending_authorize_tasks, i - 1);
+ else
+ g_object_unref (obj);
+ }
+
+ /* Don’t need to keep the array around any more if it’s empty. */
+ if (priv->pending_authorize_tasks->len == 0)
+ g_clear_pointer (&priv->pending_authorize_tasks, g_ptr_array_unref);
+}
+
+/* Called in a worker thread. */
+static void
+authorize_task_cb (GTask *task,
+ gpointer source_object,
+ gpointer task_data,
+ GCancellable *cancellable)
+{
+ GDebugControllerDBus *self = G_DEBUG_CONTROLLER_DBUS (source_object);
+ GDBusMethodInvocation *invocation = G_DBUS_METHOD_INVOCATION (task_data);
+ gboolean authorized = TRUE;
+
+ g_signal_emit (self, signals[SIGNAL_AUTHORIZE], 0, invocation, &authorized);
+
+ g_task_return_boolean (task, authorized);
+}
+
+/* Called in the #GMainContext which was default when the #GDebugControllerDBus
+ * was initialised. */
+static void
+authorize_cb (GObject *object,
+ GAsyncResult *result,
+ gpointer user_data)
+{
+ GDebugControllerDBus *self = G_DEBUG_CONTROLLER_DBUS (object);
+ GDebugControllerDBusPrivate *priv G_GNUC_UNUSED /* when compiling with G_DISABLE_ASSERT */;
+ GTask *task = G_TASK (result);
+ GDBusMethodInvocation *invocation = g_task_get_task_data (task);
+ GVariant *parameters = g_dbus_method_invocation_get_parameters (invocation);
+ gboolean enabled = FALSE;
+ gboolean authorized;
+
+ priv = g_debug_controller_dbus_get_instance_private (self);
+ authorized = g_task_propagate_boolean (task, NULL);
+
+ if (!authorized)
+ {
+ GError *local_error = g_error_new (G_DBUS_ERROR, G_DBUS_ERROR_ACCESS_DENIED,
+ _("Not authorized to change debug settings"));
+ g_dbus_method_invocation_take_error (invocation, g_steal_pointer (&local_error));
+ }
+ else
+ {
+ /* Update the property value. */
+ g_variant_get (parameters, "(b)", &enabled);
+ set_debug_enabled (self, enabled);
+
+ g_dbus_method_invocation_return_value (invocation, NULL);
+ }
+
+ /* The GTask will stay alive for a bit longer as the worker thread is
+ * potentially still in the process of dropping its reference to it. */
+ g_assert (priv->pending_authorize_tasks != NULL && priv->pending_authorize_tasks->len > 0);
+}
+
+/* Called in the #GMainContext which was default when the #GDebugControllerDBus
+ * was initialised. */
+static void
+dbus_method_call (GDBusConnection *connection,
+ const gchar *sender,
+ const gchar *object_path,
+ const gchar *interface_name,
+ const gchar *method_name,
+ GVariant *parameters,
+ GDBusMethodInvocation *invocation,
+ gpointer user_data)
+{
+ GDebugControllerDBus *self = user_data;
+ GDebugControllerDBusPrivate *priv = g_debug_controller_dbus_get_instance_private (self);
+ GDebugControllerDBusClass *klass = G_DEBUG_CONTROLLER_DBUS_GET_CLASS (self);
+
+ /* Only on the org.gtk.Debugging interface */
+ if (g_str_equal (method_name, "SetDebugEnabled"))
+ {
+ GTask *task = NULL;
+
+ task = g_task_new (self, priv->cancellable, authorize_cb, NULL);
+ g_task_set_source_tag (task, dbus_method_call);
+ g_task_set_task_data (task, g_object_ref (invocation), (GDestroyNotify) g_object_unref);
+
+ /* Track the pending #GTask with a weak ref as its final strong ref could
+ * be dropped from this thread or an arbitrary #GTask worker thread. The
+ * weak refs will be evaluated in g_debug_controller_dbus_stop(). */
+ if (priv->pending_authorize_tasks == NULL)
+ priv->pending_authorize_tasks = g_ptr_array_new_with_free_func ((GDestroyNotify) weak_ref_free);
+ g_ptr_array_add (priv->pending_authorize_tasks, weak_ref_new (G_OBJECT (task)));
+
+ /* Take the opportunity to clean up a bit. */
+ garbage_collect_weak_refs (self);
+
+ /* Check the calling peer is authorised to change the debug mode. So that
+ * the signal handler can block on checking polkit authorisation (which
+ * definitely involves D-Bus calls, and might involve user interaction),
+ * emit the #GDebugControllerDBus::authorize signal in a worker thread, so
+ * that handlers can synchronously block it. This is similar to how
+ * #GDBusInterfaceSkeleton::g-authorize-method works.
+ *
+ * If no signal handlers are connected, don’t bother running the worker
+ * thread, and just return a default value of %FALSE. Fail closed. */
+ if (g_signal_has_handler_pending (self, signals[SIGNAL_AUTHORIZE], 0, FALSE) ||
+ klass->authorize != g_debug_controller_dbus_authorize_default)
+ g_task_run_in_thread (task, authorize_task_cb);
+ else
+ g_task_return_boolean (task, FALSE);
+
+ g_clear_object (&task);
+ }
+ else
+ g_assert_not_reached ();
+}
+
+static gboolean
+g_debug_controller_dbus_initable_init (GInitable *initable,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GDebugControllerDBus *self = G_DEBUG_CONTROLLER_DBUS (initable);
+ GDebugControllerDBusPrivate *priv = g_debug_controller_dbus_get_instance_private (self);
+ static const GDBusInterfaceVTable vtable = {
+ dbus_method_call,
+ dbus_get_property,
+ NULL /* set_property */,
+ { 0 }
+ };
+
+ if (org_gtk_Debugging == NULL)
+ {
+ GError *local_error = NULL;
+ GDBusNodeInfo *info;
+
+ info = g_dbus_node_info_new_for_xml (org_gtk_Debugging_xml, &local_error);
+ if G_UNLIKELY (info == NULL)
+ g_error ("%s", local_error->message);
+ org_gtk_Debugging = g_dbus_node_info_lookup_interface (info, "org.gtk.Debugging");
+ g_assert (org_gtk_Debugging != NULL);
+ g_dbus_interface_info_ref (org_gtk_Debugging);
+ g_dbus_node_info_unref (info);
+ }
+
+ priv->object_id = g_dbus_connection_register_object (priv->connection,
+ "/org/gtk/Debugging",
+ org_gtk_Debugging,
+ &vtable, self, NULL, error);
+ if (priv->object_id == 0)
+ return FALSE;
+
+ return TRUE;
+}
+
+static void
+g_debug_controller_dbus_get_property (GObject *object,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
+{
+ GDebugControllerDBus *self = G_DEBUG_CONTROLLER_DBUS (object);
+ GDebugControllerDBusPrivate *priv = g_debug_controller_dbus_get_instance_private (self);
+
+ switch ((GDebugControllerDBusProperty) prop_id)
+ {
+ case PROP_CONNECTION:
+ g_value_set_object (value, priv->connection);
+ break;
+ case PROP_DEBUG_ENABLED:
+ g_value_set_boolean (value, priv->debug_enabled);
+ break;
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+ break;
+ }
+}
+
+static void
+g_debug_controller_dbus_set_property (GObject *object,
+ guint prop_id,
+ const GValue *value,
+ GParamSpec *pspec)
+{
+ GDebugControllerDBus *self = G_DEBUG_CONTROLLER_DBUS (object);
+ GDebugControllerDBusPrivate *priv = g_debug_controller_dbus_get_instance_private (self);
+
+ switch ((GDebugControllerDBusProperty) prop_id)
+ {
+ case PROP_CONNECTION:
+ /* Construct only */
+ g_assert (priv->connection == NULL);
+ priv->connection = g_value_dup_object (value);
+ break;
+ case PROP_DEBUG_ENABLED:
+ set_debug_enabled (self, g_value_get_boolean (value));
+ break;
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+ break;
+ }
+}
+
+static void
+g_debug_controller_dbus_dispose (GObject *object)
+{
+ GDebugControllerDBus *self = G_DEBUG_CONTROLLER_DBUS (object);
+ GDebugControllerDBusPrivate *priv = g_debug_controller_dbus_get_instance_private (self);
+
+ g_debug_controller_dbus_stop (self);
+ g_assert (priv->pending_authorize_tasks == NULL);
+ g_clear_object (&priv->connection);
+ g_clear_object (&priv->cancellable);
+
+ G_OBJECT_CLASS (g_debug_controller_dbus_parent_class)->dispose (object);
+}
+
+static gboolean
+g_debug_controller_dbus_authorize_default (GDebugControllerDBus *self,
+ GDBusMethodInvocation *invocation)
+{
+ return TRUE;
+}
+
+static void
+g_debug_controller_dbus_class_init (GDebugControllerDBusClass *klass)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+
+ gobject_class->get_property = g_debug_controller_dbus_get_property;
+ gobject_class->set_property = g_debug_controller_dbus_set_property;
+ gobject_class->dispose = g_debug_controller_dbus_dispose;
+
+ klass->authorize = g_debug_controller_dbus_authorize_default;
+
+ /**
+ * GDebugControllerDBus:connection:
+ *
+ * The D-Bus connection to expose the debugging interface on.
+ *
+ * Typically this will be the same connection (to the system or session bus)
+ * which the rest of the application or service’s D-Bus objects are registered
+ * on.
+ *
+ * Since: 2.72
+ */
+ props[PROP_CONNECTION] =
+ g_param_spec_object ("connection", "D-Bus Connection",
+ "The D-Bus connection to expose the debugging interface on.",
+ G_TYPE_DBUS_CONNECTION,
+ G_PARAM_READWRITE |
+ G_PARAM_CONSTRUCT_ONLY |
+ G_PARAM_STATIC_STRINGS);
+
+ g_object_class_install_properties (gobject_class, G_N_ELEMENTS (props), props);
+
+ g_object_class_override_property (gobject_class, PROP_DEBUG_ENABLED, "debug-enabled");
+
+ /**
+ * GDebugControllerDBus::authorize:
+ * @controller: The #GDebugControllerDBus emitting the signal.
+ * @invocation: A #GDBusMethodInvocation.
+ *
+ * Emitted when a D-Bus peer is trying to change the debug settings and used
+ * to determine if that is authorized.
+ *
+ * This signal is emitted in a dedicated worker thread, so handlers are
+ * allowed to perform blocking I/O. This means that, for example, it is
+ * appropriate to call `polkit_authority_check_authorization_sync()` to check
+ * authorization using polkit.
+ *
+ * If %FALSE is returned then no further handlers are run and the request to
+ * change the debug settings is rejected.
+ *
+ * Otherwise, if %TRUE is returned, signal emission continues. If no handlers
+ * return %FALSE, then the debug settings are allowed to be changed.
+ *
+ * Signal handlers must not modify @invocation, or cause it to return a value.
+ *
+ * The default class handler just returns %TRUE.
+ *
+ * Returns: %TRUE if the call is authorized, %FALSE otherwise.
+ *
+ * Since: 2.72
+ */
+ signals[SIGNAL_AUTHORIZE] =
+ g_signal_new ("authorize",
+ G_TYPE_DEBUG_CONTROLLER_DBUS,
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (GDebugControllerDBusClass, authorize),
+ _g_signal_accumulator_false_handled,
+ NULL,
+ _g_cclosure_marshal_BOOLEAN__OBJECT,
+ G_TYPE_BOOLEAN,
+ 1,
+ G_TYPE_DBUS_METHOD_INVOCATION);
+ g_signal_set_va_marshaller (signals[SIGNAL_AUTHORIZE],
+ G_TYPE_FROM_CLASS (klass),
+ _g_cclosure_marshal_BOOLEAN__OBJECTv);
+}
+
+static void
+g_debug_controller_dbus_iface_init (GDebugControllerInterface *iface)
+{
+}
+
+static void
+g_debug_controller_dbus_initable_iface_init (GInitableIface *iface)
+{
+ iface->init = g_debug_controller_dbus_initable_init;
+}
+
+/**
+ * g_debug_controller_dbus_new:
+ * @connection: a #GDBusConnection to register the debug object on
+ * @cancellable: (nullable): a #GCancellable, or %NULL
+ * @error: return location for a #GError, or %NULL
+ *
+ * Create a new #GDebugControllerDBus and synchronously initialize it.
+ *
+ * Initializing the object will export the debug object on @connection. The
+ * object will remain registered until the last reference to the
+ * #GDebugControllerDBus is dropped.
+ *
+ * Initialization may fail if registering the object on @connection fails.
+ *
+ * Returns: (nullable) (transfer full): a new #GDebugControllerDBus, or %NULL
+ * on failure
+ * Since: 2.72
+ */
+GDebugControllerDBus *
+g_debug_controller_dbus_new (GDBusConnection *connection,
+ GCancellable *cancellable,
+ GError **error)
+{
+ g_return_val_if_fail (G_IS_DBUS_CONNECTION (connection), NULL);
+ g_return_val_if_fail (cancellable == NULL || G_IS_CANCELLABLE (cancellable), NULL);
+ g_return_val_if_fail (error == NULL || *error == NULL, NULL);
+
+ return g_initable_new (G_TYPE_DEBUG_CONTROLLER_DBUS,
+ cancellable,
+ error,
+ "connection", connection,
+ NULL);
+}
+
+/**
+ * g_debug_controller_dbus_stop:
+ * @self: a #GDebugControllerDBus
+ *
+ * Stop the debug controller, unregistering its object from the bus.
+ *
+ * Any pending method calls to the object will complete successfully, but new
+ * ones will return an error. This method will block until all pending
+ * #GDebugControllerDBus::authorize signals have been handled. This is expected
+ * to not take long, as it will just be waiting for threads to join. If any
+ * #GDebugControllerDBus::authorize signal handlers are still executing in other
+ * threads, this will block until after they have returned.
+ *
+ * This method will be called automatically when the final reference to the
+ * #GDebugControllerDBus is dropped. You may want to call it explicitly to know
+ * when the controller has been fully removed from the bus, or to break
+ * reference count cycles.
+ *
+ * Calling this method from within a #GDebugControllerDBus::authorize signal
+ * handler will cause a deadlock and must not be done.
+ *
+ * Since: 2.72
+ */
+void
+g_debug_controller_dbus_stop (GDebugControllerDBus *self)
+{
+ GDebugControllerDBusPrivate *priv = g_debug_controller_dbus_get_instance_private (self);
+
+ g_cancellable_cancel (priv->cancellable);
+
+ if (priv->object_id != 0)
+ {
+ g_dbus_connection_unregister_object (priv->connection, priv->object_id);
+ priv->object_id = 0;
+ }
+
+ /* Wait for any pending authorize tasks to finish. These will just be waiting
+ * for threads to join at this point, as the D-Bus object has been
+ * unregistered and the cancellable cancelled.
+ *
+ * The loop will never terminate if g_debug_controller_dbus_stop() is
+ * called from within an ::authorize callback.
+ *
+ * See discussion in https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2486 */
+ while (priv->pending_authorize_tasks != NULL)
+ {
+ garbage_collect_weak_refs (self);
+ g_thread_yield ();
+ }
+}
diff --git a/gio/gdebugcontrollerdbus.h b/gio/gdebugcontrollerdbus.h
new file mode 100644
index 000000000..5e54bbfa1
--- /dev/null
+++ b/gio/gdebugcontrollerdbus.h
@@ -0,0 +1,69 @@
+/* GIO - GLib Input, Output and Streaming Library
+ *
+ * Copyright © 2021 Endless OS Foundation, LLC
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ *
+ * SPDX-License-Identifier: LGPL-2.1-or-later
+ */
+
+#ifndef __G_DEBUG_CONTROLLER_DBUS_H__
+#define __G_DEBUG_CONTROLLER_DBUS_H__
+
+#include <glib.h>
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+/**
+ * GDebugControllerDBus:
+ *
+ * #GDebugControllerDBus is an implementation of #GDebugController over D-Bus.
+ *
+ * Since: 2.72
+ */
+#define G_TYPE_DEBUG_CONTROLLER_DBUS (g_debug_controller_dbus_get_type ())
+GLIB_AVAILABLE_IN_2_72
+G_DECLARE_DERIVABLE_TYPE (GDebugControllerDBus, g_debug_controller_dbus, G, DEBUG_CONTROLLER_DBUS, GObject)
+
+/**
+ * GDebugControllerDBusClass:
+ * @parent_class: The parent class.
+ * @authorize: Default handler for the #GDebugControllerDBus::authorize signal.
+ *
+ * The virtual function table for #GDebugControllerDBus.
+ *
+ * Since: 2.72
+ */
+struct _GDebugControllerDBusClass
+{
+ GObjectClass parent_class;
+
+ gboolean (*authorize) (GDebugControllerDBus *controller,
+ GDBusMethodInvocation *invocation);
+
+ gpointer padding[12];
+};
+
+GLIB_AVAILABLE_IN_2_72
+GDebugControllerDBus *g_debug_controller_dbus_new (GDBusConnection *connection,
+ GCancellable *cancellable,
+ GError **error);
+
+GLIB_AVAILABLE_IN_2_72
+void g_debug_controller_dbus_stop (GDebugControllerDBus *self);
+
+G_END_DECLS
+
+#endif /* __G_DEBUG_CONTROLLER_DBUS_H__ */
diff --git a/gio/gdesktopappinfo.c b/gio/gdesktopappinfo.c
index 229e62143..60d6debb2 100644
--- a/gio/gdesktopappinfo.c
+++ b/gio/gdesktopappinfo.c
@@ -89,6 +89,7 @@ enum {
static void g_desktop_app_info_iface_init (GAppInfoIface *iface);
static gboolean g_desktop_app_info_ensure_saved (GDesktopAppInfo *info,
GError **error);
+static gboolean g_desktop_app_info_load_file (GDesktopAppInfo *self);
/**
* GDesktopAppInfo:
@@ -1003,6 +1004,19 @@ desktop_file_dir_unindexed_init (DesktopFileDir *dir)
}
static GDesktopAppInfo *
+g_desktop_app_info_new_from_filename_unlocked (const char *filename)
+{
+ GDesktopAppInfo *info = NULL;
+
+ info = g_object_new (G_TYPE_DESKTOP_APP_INFO, "filename", filename, NULL);
+
+ if (!g_desktop_app_info_load_file (info))
+ g_clear_object (&info);
+
+ return info;
+}
+
+static GDesktopAppInfo *
desktop_file_dir_unindexed_get_app (DesktopFileDir *dir,
const gchar *desktop_id)
{
@@ -1013,7 +1027,7 @@ desktop_file_dir_unindexed_get_app (DesktopFileDir *dir,
if (!filename)
return NULL;
- return g_desktop_app_info_new_from_filename (filename);
+ return g_desktop_app_info_new_from_filename_unlocked (filename);
}
static void
@@ -1033,7 +1047,7 @@ desktop_file_dir_unindexed_get_all (DesktopFileDir *dir,
if (desktop_file_dir_app_name_is_masked (dir, app_name))
continue;
- add_to_table_if_appropriate (apps, app_name, g_desktop_app_info_new_from_filename (filename));
+ add_to_table_if_appropriate (apps, app_name, g_desktop_app_info_new_from_filename_unlocked (filename));
}
}
@@ -1754,6 +1768,56 @@ binary_from_exec (const char *exec)
return g_strndup (start, p - start);
}
+/*< internal >
+ * g_desktop_app_info_get_desktop_id_for_filename
+ * @self: #GDesktopAppInfo to get desktop id of
+ *
+ * Tries to find the desktop ID for a particular `.desktop` filename, as per the
+ * [Desktop Entry Specification](https://specifications.freedesktop.org/desktop-
+ * entry-spec/desktop-entry-spec-latest.html#desktop-file-id).
+ *
+ * Returns: desktop id or basename if filename is unknown.
+ */
+static char *
+g_desktop_app_info_get_desktop_id_for_filename (GDesktopAppInfo *self)
+{
+ guint i;
+ gchar *desktop_id = NULL;
+
+ g_return_val_if_fail (self->filename != NULL, NULL);
+
+ for (i = 0; i < desktop_file_dirs->len; i++)
+ {
+ DesktopFileDir *dir = g_ptr_array_index (desktop_file_dirs, i);
+ GHashTable *app_names;
+ GHashTableIter iter;
+ gpointer key, value;
+
+ app_names = dir->app_names;
+
+ if (!app_names)
+ continue;
+
+ g_hash_table_iter_init (&iter, app_names);
+ while (g_hash_table_iter_next (&iter, &key, &value))
+ {
+ if (!strcmp (value, self->filename))
+ {
+ desktop_id = g_strdup (key);
+ break;
+ }
+ }
+
+ if (desktop_id)
+ break;
+ }
+
+ if (!desktop_id)
+ desktop_id = g_path_get_basename (self->filename);
+
+ return g_steal_pointer (&desktop_id);
+}
+
static gboolean
g_desktop_app_info_load_from_keyfile (GDesktopAppInfo *info,
GKeyFile *key_file)
@@ -1816,6 +1880,10 @@ g_desktop_app_info_load_from_keyfile (GDesktopAppInfo *info,
else
{
char *t;
+
+ /* Since @exec is not an empty string, there must be at least one
+ * argument, so dereferencing argv[0] should return non-NULL. */
+ g_assert (argc > 0);
t = g_find_program_in_path (argv[0]);
g_strfreev (argv);
@@ -1912,6 +1980,9 @@ g_desktop_app_info_load_from_keyfile (GDesktopAppInfo *info,
g_free (basename);
}
+ if (info->filename)
+ info->desktop_id = g_desktop_app_info_get_desktop_id_for_filename (info);
+
info->keyfile = g_key_file_ref (key_file);
return TRUE;
@@ -1925,8 +1996,6 @@ g_desktop_app_info_load_file (GDesktopAppInfo *self)
g_return_val_if_fail (self->filename != NULL, FALSE);
- self->desktop_id = g_path_get_basename (self->filename);
-
key_file = g_key_file_new ();
if (g_key_file_load_from_file (key_file, self->filename, G_KEY_FILE_NONE, NULL))
@@ -1953,11 +2022,14 @@ g_desktop_app_info_new_from_keyfile (GKeyFile *key_file)
info = g_object_new (G_TYPE_DESKTOP_APP_INFO, NULL);
info->filename = NULL;
+
+ desktop_file_dirs_lock ();
+
if (!g_desktop_app_info_load_from_keyfile (info, key_file))
- {
- g_object_unref (info);
- return NULL;
- }
+ g_clear_object (&info);
+
+ desktop_file_dirs_unlock ();
+
return info;
}
@@ -1975,12 +2047,12 @@ g_desktop_app_info_new_from_filename (const char *filename)
{
GDesktopAppInfo *info = NULL;
- info = g_object_new (G_TYPE_DESKTOP_APP_INFO, "filename", filename, NULL);
- if (!g_desktop_app_info_load_file (info))
- {
- g_object_unref (info);
- return NULL;
- }
+ desktop_file_dirs_lock ();
+
+ info = g_desktop_app_info_new_from_filename_unlocked (filename);
+
+ desktop_file_dirs_unlock ();
+
return info;
}
@@ -2233,7 +2305,7 @@ g_desktop_app_info_get_generic_name (GDesktopAppInfo *info)
*
* Gets the value of the NoDisplay key, which helps determine if the
* application info should be shown in menus. See
- * #G_KEY_FILE_DESKTOP_KEY_NO_DISPLAY and g_app_info_should_show().
+ * %G_KEY_FILE_DESKTOP_KEY_NO_DISPLAY and g_app_info_should_show().
*
* Returns: The value of the NoDisplay key
*
@@ -2731,6 +2803,26 @@ notify_desktop_launch (GDBusConnection *session_bus,
g_object_unref (msg);
}
+static void
+emit_launch_started (GAppLaunchContext *context,
+ GDesktopAppInfo *info,
+ const gchar *startup_id)
+{
+ GVariantBuilder builder;
+ GVariant *platform_data = NULL;
+
+ if (startup_id)
+ {
+ g_variant_builder_init (&builder, G_VARIANT_TYPE_ARRAY);
+ g_variant_builder_add (&builder, "{sv}",
+ "startup-notification-id",
+ g_variant_new_string (startup_id));
+ platform_data = g_variant_ref_sink (g_variant_builder_end (&builder));
+ }
+ g_signal_emit_by_name (context, "launch-started", info, platform_data);
+ g_clear_pointer (&platform_data, g_variant_unref);
+}
+
#define _SPAWN_FLAGS_DEFAULT (G_SPAWN_SEARCH_PATH)
static gboolean
@@ -2826,6 +2918,8 @@ g_desktop_app_info_launch_uris_with_spawn (GDesktopAppInfo *info,
}
g_list_free_full (launched_files, g_object_unref);
+
+ emit_launch_started (launch_context, info, sn_id);
}
/* Wrap the @argv in a command which will set the
@@ -2959,6 +3053,64 @@ g_desktop_app_info_make_platform_data (GDesktopAppInfo *info,
return g_variant_builder_end (&builder);
}
+typedef struct
+{
+ GDesktopAppInfo *info; /* (owned) */
+ GAppLaunchContext *launch_context; /* (owned) (nullable) */
+ GAsyncReadyCallback callback;
+ gchar *startup_id; /* (owned) */
+ gpointer user_data;
+} LaunchUrisWithDBusData;
+
+static void
+launch_uris_with_dbus_data_free (LaunchUrisWithDBusData *data)
+{
+ g_clear_object (&data->info);
+ g_clear_object (&data->launch_context);
+ g_free (data->startup_id);
+
+ g_free (data);
+}
+
+static void
+launch_uris_with_dbus_signal_cb (GObject *object,
+ GAsyncResult *result,
+ gpointer user_data)
+{
+ LaunchUrisWithDBusData *data = user_data;
+ GVariantBuilder builder;
+
+ if (data->launch_context)
+ {
+ if (g_task_had_error (G_TASK (result)))
+ g_app_launch_context_launch_failed (data->launch_context, data->startup_id);
+ else
+ {
+ GVariant *platform_data;
+
+ g_variant_builder_init (&builder, G_VARIANT_TYPE_ARRAY);
+ /* the docs guarantee `pid` will be set, but we can’t
+ * easily know it for a D-Bus process, so set it to zero */
+ g_variant_builder_add (&builder, "{sv}", "pid", g_variant_new_int32 (0));
+ if (data->startup_id)
+ g_variant_builder_add (&builder, "{sv}",
+ "startup-notification-id",
+ g_variant_new_string (data->startup_id));
+ platform_data = g_variant_ref_sink (g_variant_builder_end (&builder));
+ g_signal_emit_by_name (data->launch_context,
+ "launched",
+ data->info,
+ platform_data);
+ g_variant_unref (platform_data);
+ }
+ }
+
+ if (data->callback)
+ data->callback (object, result, data->user_data);
+
+ launch_uris_with_dbus_data_free (data);
+}
+
static void
launch_uris_with_dbus (GDesktopAppInfo *info,
GDBusConnection *session_bus,
@@ -2968,8 +3120,11 @@ launch_uris_with_dbus (GDesktopAppInfo *info,
GAsyncReadyCallback callback,
gpointer user_data)
{
+ GVariant *platform_data;
GVariantBuilder builder;
+ GVariantDict dict;
gchar *object_path;
+ LaunchUrisWithDBusData *data;
g_variant_builder_init (&builder, G_VARIANT_TYPE_TUPLE);
@@ -2983,14 +3138,29 @@ launch_uris_with_dbus (GDesktopAppInfo *info,
g_variant_builder_close (&builder);
}
- g_variant_builder_add_value (&builder, g_desktop_app_info_make_platform_data (info, uris, launch_context));
+ platform_data = g_desktop_app_info_make_platform_data (info, uris, launch_context);
+ g_variant_builder_add_value (&builder, platform_data);
object_path = object_path_from_appid (info->app_id);
+
+ data = g_new0 (LaunchUrisWithDBusData, 1);
+ data->info = g_object_ref (info);
+ data->callback = callback;
+ data->user_data = user_data;
+ data->launch_context = launch_context ? g_object_ref (launch_context) : NULL;
+ g_variant_dict_init (&dict, platform_data);
+ g_variant_dict_lookup (&dict, "desktop-startup-id", "s", &data->startup_id);
+
+ if (launch_context)
+ emit_launch_started (launch_context, info, data->startup_id);
+
g_dbus_connection_call (session_bus, info->app_id, object_path, "org.freedesktop.Application",
uris ? "Open" : "Activate", g_variant_builder_end (&builder),
NULL, G_DBUS_CALL_FLAGS_NONE, -1,
- cancellable, callback, user_data);
+ cancellable, launch_uris_with_dbus_signal_cb, g_steal_pointer (&data));
g_free (object_path);
+
+ g_variant_dict_clear (&dict);
}
static gboolean
diff --git a/gio/gdrive.c b/gio/gdrive.c
index 32bdae879..c6c68dda9 100644
--- a/gio/gdrive.c
+++ b/gio/gdrive.c
@@ -613,7 +613,7 @@ g_drive_poll_for_media_finish (GDrive *drive,
*
* Gets the identifier of the given kind for @drive. The only
* identifier currently available is
- * #G_DRIVE_IDENTIFIER_KIND_UNIX_DEVICE.
+ * %G_DRIVE_IDENTIFIER_KIND_UNIX_DEVICE.
*
* Returns: (nullable) (transfer full): a newly allocated string containing the
* requested identifier, or %NULL if the #GDrive
diff --git a/gio/gdtlsconnection.c b/gio/gdtlsconnection.c
index 880d87d2c..1fd035c57 100644
--- a/gio/gdtlsconnection.c
+++ b/gio/gdtlsconnection.c
@@ -118,6 +118,19 @@ g_dtls_connection_default_init (GDtlsConnectionInterface *iface)
* If no certificate database is set, then the default database will be
* used. See g_tls_backend_get_default_database().
*
+ * When using a non-default database, #GDtlsConnection must fall back to using
+ * the #GTlsDatabase to perform certificate verification using
+ * g_tls_database_verify_chain(), which means certificate verification will
+ * not be able to make use of TLS session context. This may be less secure.
+ * For example, if you create your own #GTlsDatabase that just wraps the
+ * default #GTlsDatabase, you might expect that you have not changed anything,
+ * but this is not true because you may have altered the behavior of
+ * #GDtlsConnection by causing it to use g_tls_database_verify_chain(). See the
+ * documentation of g_tls_database_verify_chain() for more details on specific
+ * security checks that may not be performed. Accordingly, setting a
+ * non-default database is discouraged except for specialty applications with
+ * unusual security requirements.
+ *
* Since: 2.48
*/
g_object_interface_install_property (iface,
@@ -223,6 +236,14 @@ g_dtls_connection_default_init (GDtlsConnectionInterface *iface)
* #GDtlsConnection::accept-certificate overrode the default
* behavior.
*
+ * GLib guarantees that if certificate verification fails, at least
+ * one error will be set, but it does not guarantee that all possible
+ * errors will be set. Accordingly, you may not safely decide to
+ * ignore any particular type of error. For example, it would be
+ * incorrect to mask %G_TLS_CERTIFICATE_EXPIRED if you want to allow
+ * expired certificates, because this could potentially be the only
+ * error flag set even if other problems exist with the certificate.
+ *
* Since: 2.48
*/
g_object_interface_install_property (iface,
@@ -314,6 +335,15 @@ g_dtls_connection_default_init (GDtlsConnectionInterface *iface)
* signal handler. Otherwise, if no handler accepts the certificate,
* the handshake will fail with %G_TLS_ERROR_BAD_CERTIFICATE.
*
+ * GLib guarantees that if certificate verification fails, this signal
+ * will be emitted with at least one error will be set in @errors, but
+ * it does not guarantee that all possible errors will be set.
+ * Accordingly, you may not safely decide to ignore any particular
+ * type of error. For example, it would be incorrect to ignore
+ * %G_TLS_CERTIFICATE_EXPIRED if you want to allow expired
+ * certificates, because this could potentially be the only error flag
+ * set even if other problems exist with the certificate.
+ *
* For a server-side connection, @peer_cert is the certificate
* presented by the client, if this was requested via the server's
* #GDtlsServerConnection:authentication_mode. On the server side,
@@ -372,6 +402,9 @@ g_dtls_connection_default_init (GDtlsConnectionInterface *iface)
* client-side connections, unless that bit is not set in
* #GDtlsClientConnection:validation-flags).
*
+ * There are nonintuitive security implications when using a non-default
+ * database. See #GDtlsConnection:database for details.
+ *
* Since: 2.48
*/
void
diff --git a/gio/gfile.c b/gio/gfile.c
index d7feca6b9..1810e3682 100644
--- a/gio/gfile.c
+++ b/gio/gfile.c
@@ -247,6 +247,18 @@ static void g_file_real_trash_async (GFile
static gboolean g_file_real_trash_finish (GFile *file,
GAsyncResult *res,
GError **error);
+static void g_file_real_move_async (GFile *source,
+ GFile *destination,
+ GFileCopyFlags flags,
+ int io_priority,
+ GCancellable *cancellable,
+ GFileProgressCallback progress_callback,
+ gpointer progress_callback_data,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+static gboolean g_file_real_move_finish (GFile *file,
+ GAsyncResult *result,
+ GError **error);
static void g_file_real_make_directory_async (GFile *file,
int io_priority,
GCancellable *cancellable,
@@ -381,6 +393,8 @@ g_file_default_init (GFileIface *iface)
iface->delete_file_finish = g_file_real_delete_finish;
iface->trash_async = g_file_real_trash_async;
iface->trash_finish = g_file_real_trash_finish;
+ iface->move_async = g_file_real_move_async;
+ iface->move_finish = g_file_real_move_finish;
iface->make_directory_async = g_file_real_make_directory_async;
iface->make_directory_finish = g_file_real_make_directory_finish;
iface->open_readwrite_async = g_file_real_open_readwrite_async;
@@ -441,8 +455,8 @@ g_file_is_native (GFile *file)
* This call does no blocking I/O.
*
* Returns: %TRUE if #GFile's backend supports the
- * given URI scheme, %FALSE if URI scheme is %NULL,
- * not supported, or #GFile is invalid.
+ * given URI scheme, %FALSE if URI scheme is %NULL,
+ * not supported, or #GFile is invalid.
*/
gboolean
g_file_has_uri_scheme (GFile *file,
@@ -476,8 +490,8 @@ g_file_has_uri_scheme (GFile *file,
* This call does no blocking I/O.
*
* Returns: (nullable): a string containing the URI scheme for the given
- * #GFile or %NULL if the #GFile was constructed with an invalid URI. The
- * returned string should be freed with g_free() when no longer needed.
+ * #GFile or %NULL if the #GFile was constructed with an invalid URI. The
+ * returned string should be freed with g_free() when no longer needed.
*/
char *
g_file_get_uri_scheme (GFile *file)
@@ -511,8 +525,8 @@ g_file_get_uri_scheme (GFile *file)
* This call does no blocking I/O.
*
* Returns: (type filename) (nullable): string containing the #GFile's
- * base name, or %NULL if given #GFile is invalid. The returned string
- * should be freed with g_free() when no longer needed.
+ * base name, or %NULL if given #GFile is invalid. The returned string
+ * should be freed with g_free() when no longer needed.
*/
char *
g_file_get_basename (GFile *file)
@@ -536,8 +550,8 @@ g_file_get_basename (GFile *file)
* This call does no blocking I/O.
*
* Returns: (type filename) (nullable): string containing the #GFile's path,
- * or %NULL if no such path exists. The returned string should be freed
- * with g_free() when no longer needed.
+ * or %NULL if no such path exists. The returned string should be freed
+ * with g_free() when no longer needed.
*/
char *
g_file_get_path (GFile *file)
@@ -609,7 +623,7 @@ file_peek_path_generic (GFile *file)
* This call does no blocking I/O.
*
* Returns: (type filename) (nullable): string containing the #GFile's path,
- * or %NULL if no such path exists. The returned string is owned by @file.
+ * or %NULL if no such path exists. The returned string is owned by @file.
* Since: 2.56
*/
const char *
@@ -629,9 +643,9 @@ g_file_peek_path (GFile *file)
* This call does no blocking I/O.
*
* Returns: a string containing the #GFile's URI. If the #GFile was constructed
- * with an invalid URI, an invalid URI is returned.
- * The returned string should be freed with g_free()
- * when no longer needed.
+ * with an invalid URI, an invalid URI is returned.
+ * The returned string should be freed with g_free()
+ * when no longer needed.
*/
char *
g_file_get_uri (GFile *file)
@@ -665,8 +679,8 @@ g_file_get_uri (GFile *file)
* This call does no blocking I/O.
*
* Returns: a string containing the #GFile's parse name.
- * The returned string should be freed with g_free()
- * when no longer needed.
+ * The returned string should be freed with g_free()
+ * when no longer needed.
*/
char *
g_file_get_parse_name (GFile *file)
@@ -696,7 +710,7 @@ g_file_get_parse_name (GFile *file)
* This call does no blocking I/O.
*
* Returns: (transfer full): a new #GFile that is a duplicate
- * of the given #GFile.
+ * of the given #GFile.
*/
GFile *
g_file_dup (GFile *file)
@@ -720,9 +734,9 @@ g_file_dup (GFile *file)
*
* Virtual: hash
* Returns: 0 if @file is not a valid #GFile, otherwise an
- * integer that can be used as hash value for the #GFile.
- * This function is intended for easily hashing a #GFile to
- * add to a #GHashTable or similar data structure.
+ * integer that can be used as hash value for the #GFile.
+ * This function is intended for easily hashing a #GFile to
+ * add to a #GHashTable or similar data structure.
*/
guint
g_file_hash (gconstpointer file)
@@ -783,8 +797,8 @@ g_file_equal (GFile *file1,
* This call does no blocking I/O.
*
* Returns: (nullable) (transfer full): a #GFile structure to the
- * parent of the given #GFile or %NULL if there is no parent. Free
- * the returned object with g_object_unref().
+ * parent of the given #GFile or %NULL if there is no parent. Free
+ * the returned object with g_object_unref().
*/
GFile *
g_file_get_parent (GFile *file)
@@ -810,7 +824,7 @@ g_file_get_parent (GFile *file)
* if @file is an immediate child of @parent.
*
* Returns: %TRUE if @file is an immediate child of @parent (or any parent in
- * the case that @parent is %NULL).
+ * the case that @parent is %NULL).
*
* Since: 2.24
*/
@@ -855,7 +869,7 @@ g_file_has_parent (GFile *file,
* This call does no blocking I/O.
*
* Returns: (transfer full): a #GFile to a child specified by @name.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*/
GFile *
g_file_get_child (GFile *file,
@@ -863,6 +877,7 @@ g_file_get_child (GFile *file,
{
g_return_val_if_fail (G_IS_FILE (file), NULL);
g_return_val_if_fail (name != NULL, NULL);
+ g_return_val_if_fail (!g_path_is_absolute (name), NULL);
return g_file_resolve_relative_path (file, name);
}
@@ -883,8 +898,8 @@ g_file_get_child (GFile *file,
* This call does no blocking I/O.
*
* Returns: (transfer full): a #GFile to the specified child, or
- * %NULL if the display name couldn't be converted.
- * Free the returned object with g_object_unref().
+ * %NULL if the display name couldn't be converted.
+ * Free the returned object with g_object_unref().
*/
GFile *
g_file_get_child_for_display_name (GFile *file,
@@ -923,7 +938,7 @@ g_file_get_child_for_display_name (GFile *file,
*
* Virtual: prefix_matches
* Returns: %TRUE if the @file's parent, grandparent, etc is @prefix,
- * %FALSE otherwise.
+ * %FALSE otherwise.
*/
gboolean
g_file_has_prefix (GFile *file,
@@ -955,9 +970,9 @@ g_file_has_prefix (GFile *file,
* This call does no blocking I/O.
*
* Returns: (type filename) (nullable): string with the relative path from
- * @descendant to @parent, or %NULL if @descendant doesn't have @parent as
- * prefix. The returned string should be freed with g_free() when
- * no longer needed.
+ * @descendant to @parent, or %NULL if @descendant doesn't have @parent as
+ * prefix. The returned string should be freed with g_free() when
+ * no longer needed.
*/
char *
g_file_get_relative_path (GFile *parent,
@@ -985,9 +1000,10 @@ g_file_get_relative_path (GFile *parent,
*
* This call does no blocking I/O.
*
- * Returns: (transfer full): #GFile to the resolved path.
- * %NULL if @relative_path is %NULL or if @file is invalid.
- * Free the returned object with g_object_unref().
+ * If the @relative_path is an absolute path name, the resolution
+ * is done absolutely (without taking @file path as base).
+ *
+ * Returns: (transfer full): a #GFile for the resolved path.
*/
GFile *
g_file_resolve_relative_path (GFile *file,
@@ -1009,7 +1025,7 @@ g_file_resolve_relative_path (GFile *file,
* @attributes: an attribute query string
* @flags: a set of #GFileQueryInfoFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: #GError for error reporting
*
* Gets the requested information about the files in a directory.
@@ -1025,7 +1041,9 @@ g_file_resolve_relative_path (GFile *file,
* "standard::*" means all attributes in the standard namespace.
* An example attribute query be "standard::*,owner::user".
* The standard attributes are available as defines, like
- * #G_FILE_ATTRIBUTE_STANDARD_NAME.
+ * %G_FILE_ATTRIBUTE_STANDARD_NAME. %G_FILE_ATTRIBUTE_STANDARD_NAME should
+ * always be specified if you plan to call g_file_enumerator_get_child() or
+ * g_file_enumerator_iterate() on the returned enumerator.
*
* If @cancellable is not %NULL, then the operation can be cancelled
* by triggering the cancellable object from another thread. If the
@@ -1037,7 +1055,7 @@ g_file_resolve_relative_path (GFile *file,
* error will be returned. Other errors are possible too.
*
* Returns: (transfer full): A #GFileEnumerator if successful,
- * %NULL on error. Free the returned object with g_object_unref().
+ * %NULL on error. Free the returned object with g_object_unref().
*/
GFileEnumerator *
g_file_enumerate_children (GFile *file,
@@ -1074,9 +1092,9 @@ g_file_enumerate_children (GFile *file,
* @flags: a set of #GFileQueryInfoFlags
* @io_priority: the [I/O priority][io-priority] of the request
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async): a #GAsyncReadyCallback to call when the
- * request is satisfied
+ * request is satisfied
* @user_data: (closure): the data to pass to callback function
*
* Asynchronously gets the requested information about the files
@@ -1123,8 +1141,8 @@ g_file_enumerate_children_async (GFile *file,
* See g_file_enumerate_children_async().
*
* Returns: (transfer full): a #GFileEnumerator or %NULL
- * if an error occurred.
- * Free the returned object with g_object_unref().
+ * if an error occurred.
+ * Free the returned object with g_object_unref().
*/
GFileEnumerator *
g_file_enumerate_children_finish (GFile *file,
@@ -1147,7 +1165,7 @@ g_file_enumerate_children_finish (GFile *file,
* g_file_query_exists:
* @file: input #GFile
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
*
* Utility function to check if a particular file exists. This is
* implemented using g_file_query_info() and as such does blocking I/O.
@@ -1173,7 +1191,7 @@ g_file_enumerate_children_finish (GFile *file,
* that can happen due to races when you execute the operation.
*
* Returns: %TRUE if the file exists (and can be detected without error),
- * %FALSE otherwise (or if cancelled).
+ * %FALSE otherwise (or if cancelled).
*/
gboolean
g_file_query_exists (GFile *file,
@@ -1199,7 +1217,7 @@ g_file_query_exists (GFile *file,
* @file: input #GFile
* @flags: a set of #GFileQueryInfoFlags passed to g_file_query_info()
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
*
* Utility function to inspect the #GFileType of a file. This is
* implemented using g_file_query_info() and as such does blocking I/O.
@@ -1207,8 +1225,8 @@ g_file_query_exists (GFile *file,
* The primary use case of this method is to check if a file is
* a regular file, directory, or symlink.
*
- * Returns: The #GFileType of the file and #G_FILE_TYPE_UNKNOWN
- * if the file does not exist
+ * Returns: The #GFileType of the file and %G_FILE_TYPE_UNKNOWN
+ * if the file does not exist
*
* Since: 2.18
*/
@@ -1240,7 +1258,7 @@ g_file_query_file_type (GFile *file,
* @attributes: an attribute query string
* @flags: a set of #GFileQueryInfoFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError
*
* Gets the requested information about specified @file.
@@ -1256,7 +1274,7 @@ g_file_query_file_type (GFile *file,
* "standard::*" means all attributes in the standard namespace.
* An example attribute query be "standard::*,owner::user".
* The standard attributes are available as defines, like
- * #G_FILE_ATTRIBUTE_STANDARD_NAME.
+ * %G_FILE_ATTRIBUTE_STANDARD_NAME.
*
* If @cancellable is not %NULL, then the operation can be cancelled
* by triggering the cancellable object from another thread. If the
@@ -1265,7 +1283,7 @@ g_file_query_file_type (GFile *file,
*
* For symlinks, normally the information about the target of the
* symlink is returned, rather than information about the symlink
- * itself. However if you pass #G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS
+ * itself. However if you pass %G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS
* in @flags the information about the symlink itself will be returned.
* Also, for symlinks that point to non-existing files the information
* about the symlink itself will be returned.
@@ -1275,7 +1293,7 @@ g_file_query_file_type (GFile *file,
* filesystem the file is on.
*
* Returns: (transfer full): a #GFileInfo for the given @file, or %NULL
- * on error. Free the returned object with g_object_unref().
+ * on error. Free the returned object with g_object_unref().
*/
GFileInfo *
g_file_query_info (GFile *file,
@@ -1311,9 +1329,9 @@ g_file_query_info (GFile *file,
* @flags: a set of #GFileQueryInfoFlags
* @io_priority: the [I/O priority][io-priority] of the request
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async): a #GAsyncReadyCallback to call when the
- * request is satisfied
+ * request is satisfied
* @user_data: (closure): the data to pass to callback function
*
* Asynchronously gets the requested information about specified @file.
@@ -1359,8 +1377,8 @@ g_file_query_info_async (GFile *file,
* See g_file_query_info_async().
*
* Returns: (transfer full): #GFileInfo for given @file
- * or %NULL on error. Free the returned object with
- * g_object_unref().
+ * or %NULL on error. Free the returned object with
+ * g_object_unref().
*/
GFileInfo *
g_file_query_info_finish (GFile *file,
@@ -1384,7 +1402,7 @@ g_file_query_info_finish (GFile *file,
* @file: input #GFile
* @attributes: an attribute query string
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError
*
* Similar to g_file_query_info(), but obtains information
@@ -1400,9 +1418,9 @@ g_file_query_info_finish (GFile *file,
* attributes, and a wildcard like "filesystem::*" means all attributes
* in the filesystem namespace. The standard namespace for filesystem
* attributes is "filesystem". Common attributes of interest are
- * #G_FILE_ATTRIBUTE_FILESYSTEM_SIZE (the total size of the filesystem
- * in bytes), #G_FILE_ATTRIBUTE_FILESYSTEM_FREE (number of bytes available),
- * and #G_FILE_ATTRIBUTE_FILESYSTEM_TYPE (type of the filesystem).
+ * %G_FILE_ATTRIBUTE_FILESYSTEM_SIZE (the total size of the filesystem
+ * in bytes), %G_FILE_ATTRIBUTE_FILESYSTEM_FREE (number of bytes available),
+ * and %G_FILE_ATTRIBUTE_FILESYSTEM_TYPE (type of the filesystem).
*
* If @cancellable is not %NULL, then the operation can be cancelled
* by triggering the cancellable object from another thread. If the
@@ -1414,7 +1432,7 @@ g_file_query_info_finish (GFile *file,
* kind of filesystem the file is on.
*
* Returns: (transfer full): a #GFileInfo or %NULL if there was an error.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*/
GFileInfo *
g_file_query_filesystem_info (GFile *file,
@@ -1448,9 +1466,9 @@ g_file_query_filesystem_info (GFile *file,
* @attributes: an attribute query string
* @io_priority: the [I/O priority][io-priority] of the request
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async): a #GAsyncReadyCallback to call
- * when the request is satisfied
+ * when the request is satisfied
* @user_data: (closure): the data to pass to callback function
*
* Asynchronously gets the requested information about the filesystem
@@ -1496,8 +1514,8 @@ g_file_query_filesystem_info_async (GFile *file,
* See g_file_query_filesystem_info_async().
*
* Returns: (transfer full): #GFileInfo for given @file
- * or %NULL on error.
- * Free the returned object with g_object_unref().
+ * or %NULL on error.
+ * Free the returned object with g_object_unref().
*/
GFileInfo *
g_file_query_filesystem_info_finish (GFile *file,
@@ -1520,7 +1538,7 @@ g_file_query_filesystem_info_finish (GFile *file,
* g_file_find_enclosing_mount:
* @file: input #GFile
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError
*
* Gets a #GMount for the #GFile.
@@ -1534,8 +1552,8 @@ g_file_query_filesystem_info_finish (GFile *file,
* was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
*
* Returns: (transfer full): a #GMount where the @file is located
- * or %NULL on error.
- * Free the returned object with g_object_unref().
+ * or %NULL on error.
+ * Free the returned object with g_object_unref().
*/
GMount *
g_file_find_enclosing_mount (GFile *file,
@@ -1570,9 +1588,9 @@ g_file_find_enclosing_mount (GFile *file,
* @file: a #GFile
* @io_priority: the [I/O priority][io-priority] of the request
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async): a #GAsyncReadyCallback to call
- * when the request is satisfied
+ * when the request is satisfied
* @user_data: (closure): the data to pass to callback function
*
* Asynchronously gets the mount for the file.
@@ -1613,7 +1631,7 @@ g_file_find_enclosing_mount_async (GFile *file,
* See g_file_find_enclosing_mount_async().
*
* Returns: (transfer full): #GMount for given @file or %NULL on error.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*/
GMount *
g_file_find_enclosing_mount_finish (GFile *file,
@@ -1653,7 +1671,7 @@ g_file_find_enclosing_mount_finish (GFile *file,
*
* Virtual: read_fn
* Returns: (transfer full): #GFileInputStream or %NULL on error.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*/
GFileInputStream *
g_file_read (GFile *file,
@@ -1685,14 +1703,14 @@ g_file_read (GFile *file,
* @file: input #GFile
* @flags: a set of #GFileCreateFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Gets an output stream for appending data to the file.
* If the file doesn't already exist it is created.
*
* By default files created are generally readable by everyone,
- * but if you pass #G_FILE_CREATE_PRIVATE in @flags the file
+ * but if you pass %G_FILE_CREATE_PRIVATE in @flags the file
* will be made readable only to the current user, to the level that
* is supported on the target filesystem.
*
@@ -1707,7 +1725,7 @@ g_file_read (GFile *file,
* possible too, and depend on what kind of filesystem the file is on.
*
* Returns: (transfer full): a #GFileOutputStream, or %NULL on error.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*/
GFileOutputStream *
g_file_append_to (GFile *file,
@@ -1740,14 +1758,14 @@ g_file_append_to (GFile *file,
* @file: input #GFile
* @flags: a set of #GFileCreateFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Creates a new file and returns an output stream for writing to it.
* The file must not already exist.
*
* By default files created are generally readable by everyone,
- * but if you pass #G_FILE_CREATE_PRIVATE in @flags the file
+ * but if you pass %G_FILE_CREATE_PRIVATE in @flags the file
* will be made readable only to the current user, to the level
* that is supported on the target filesystem.
*
@@ -1764,8 +1782,8 @@ g_file_append_to (GFile *file,
* of filesystem the file is on.
*
* Returns: (transfer full): a #GFileOutputStream for the newly created
- * file, or %NULL on error.
- * Free the returned object with g_object_unref().
+ * file, or %NULL on error.
+ * Free the returned object with g_object_unref().
*/
GFileOutputStream *
g_file_create (GFile *file,
@@ -1797,11 +1815,11 @@ g_file_create (GFile *file,
* g_file_replace:
* @file: input #GFile
* @etag: (nullable): an optional [entity tag][gfile-etag]
- * for the current #GFile, or #NULL to ignore
+ * for the current #GFile, or #NULL to ignore
* @make_backup: %TRUE if a backup should be created
* @flags: a set of #GFileCreateFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Returns an output stream for overwriting the file, possibly
@@ -1815,7 +1833,7 @@ g_file_create (GFile *file,
* the destination when the stream is closed.
*
* By default files created are generally readable by everyone,
- * but if you pass #G_FILE_CREATE_PRIVATE in @flags the file
+ * but if you pass %G_FILE_CREATE_PRIVATE in @flags the file
* will be made readable only to the current user, to the level that
* is supported on the target filesystem.
*
@@ -1847,7 +1865,7 @@ g_file_create (GFile *file,
* possible too, and depend on what kind of filesystem the file is on.
*
* Returns: (transfer full): a #GFileOutputStream or %NULL on error.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*/
GFileOutputStream *
g_file_replace (GFile *file,
@@ -1905,7 +1923,7 @@ g_file_replace (GFile *file,
* for reading or writing.
*
* Returns: (transfer full): #GFileIOStream or %NULL on error.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*
* Since: 2.22
*/
@@ -1939,14 +1957,14 @@ g_file_open_readwrite (GFile *file,
* @file: a #GFile
* @flags: a set of #GFileCreateFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: return location for a #GError, or %NULL
*
* Creates a new file and returns a stream for reading and
* writing to it. The file must not already exist.
*
* By default files created are generally readable by everyone,
- * but if you pass #G_FILE_CREATE_PRIVATE in @flags the file
+ * but if you pass %G_FILE_CREATE_PRIVATE in @flags the file
* will be made readable only to the current user, to the level
* that is supported on the target filesystem.
*
@@ -1967,8 +1985,8 @@ g_file_open_readwrite (GFile *file,
* streaming, rather than just opening for reading or writing.
*
* Returns: (transfer full): a #GFileIOStream for the newly created
- * file, or %NULL on error.
- * Free the returned object with g_object_unref().
+ * file, or %NULL on error.
+ * Free the returned object with g_object_unref().
*
* Since: 2.22
*/
@@ -2002,11 +2020,11 @@ g_file_create_readwrite (GFile *file,
* g_file_replace_readwrite:
* @file: a #GFile
* @etag: (nullable): an optional [entity tag][gfile-etag]
- * for the current #GFile, or #NULL to ignore
+ * for the current #GFile, or #NULL to ignore
* @make_backup: %TRUE if a backup should be created
* @flags: a set of #GFileCreateFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: return location for a #GError, or %NULL
*
* Returns an output stream for overwriting the file in readwrite mode,
@@ -2021,7 +2039,7 @@ g_file_create_readwrite (GFile *file,
* rather than just opening for reading or writing.
*
* Returns: (transfer full): a #GFileIOStream or %NULL on error.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*
* Since: 2.22
*/
@@ -2058,9 +2076,9 @@ g_file_replace_readwrite (GFile *file,
* @file: input #GFile
* @io_priority: the [I/O priority][io-priority] of the request
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async): a #GAsyncReadyCallback to call
- * when the request is satisfied
+ * when the request is satisfied
* @user_data: (closure): the data to pass to callback function
*
* Asynchronously opens @file for reading.
@@ -2101,7 +2119,7 @@ g_file_read_async (GFile *file,
* g_file_read_async().
*
* Returns: (transfer full): a #GFileInputStream or %NULL on error.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*/
GFileInputStream *
g_file_read_finish (GFile *file,
@@ -2126,9 +2144,9 @@ g_file_read_finish (GFile *file,
* @flags: a set of #GFileCreateFlags
* @io_priority: the [I/O priority][io-priority] of the request
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async): a #GAsyncReadyCallback to call
- * when the request is satisfied
+ * when the request is satisfied
* @user_data: (closure): the data to pass to callback function
*
* Asynchronously opens @file for appending.
@@ -2171,8 +2189,8 @@ g_file_append_to_async (GFile *file,
* g_file_append_to_async().
*
* Returns: (transfer full): a valid #GFileOutputStream
- * or %NULL on error.
- * Free the returned object with g_object_unref().
+ * or %NULL on error.
+ * Free the returned object with g_object_unref().
*/
GFileOutputStream *
g_file_append_to_finish (GFile *file,
@@ -2197,9 +2215,9 @@ g_file_append_to_finish (GFile *file,
* @flags: a set of #GFileCreateFlags
* @io_priority: the [I/O priority][io-priority] of the request
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async): a #GAsyncReadyCallback to call
- * when the request is satisfied
+ * when the request is satisfied
* @user_data: (closure): the data to pass to callback function
*
* Asynchronously creates a new file and returns an output stream
@@ -2243,7 +2261,7 @@ g_file_create_async (GFile *file,
* g_file_create_async().
*
* Returns: (transfer full): a #GFileOutputStream or %NULL on error.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*/
GFileOutputStream *
g_file_create_finish (GFile *file,
@@ -2266,14 +2284,14 @@ g_file_create_finish (GFile *file,
* g_file_replace_async:
* @file: input #GFile
* @etag: (nullable): an [entity tag][gfile-etag] for the current #GFile,
- * or %NULL to ignore
+ * or %NULL to ignore
* @make_backup: %TRUE if a backup should be created
* @flags: a set of #GFileCreateFlags
* @io_priority: the [I/O priority][io-priority] of the request
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async): a #GAsyncReadyCallback to call
- * when the request is satisfied
+ * when the request is satisfied
* @user_data: (closure): the data to pass to callback function
*
* Asynchronously overwrites the file, replacing the contents,
@@ -2321,7 +2339,7 @@ g_file_replace_async (GFile *file,
* g_file_replace_async().
*
* Returns: (transfer full): a #GFileOutputStream, or %NULL on error.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*/
GFileOutputStream *
g_file_replace_finish (GFile *file,
@@ -2345,9 +2363,9 @@ g_file_replace_finish (GFile *file,
* @file: input #GFile
* @io_priority: the [I/O priority][io-priority] of the request
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async): a #GAsyncReadyCallback to call
- * when the request is satisfied
+ * when the request is satisfied
* @user_data: (closure): the data to pass to callback function
*
* Asynchronously opens @file for reading and writing.
@@ -2390,7 +2408,7 @@ g_file_open_readwrite_async (GFile *file,
* g_file_open_readwrite_async().
*
* Returns: (transfer full): a #GFileIOStream or %NULL on error.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*
* Since: 2.22
*/
@@ -2417,9 +2435,9 @@ g_file_open_readwrite_finish (GFile *file,
* @flags: a set of #GFileCreateFlags
* @io_priority: the [I/O priority][io-priority] of the request
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async): a #GAsyncReadyCallback to call
- * when the request is satisfied
+ * when the request is satisfied
* @user_data: (closure): the data to pass to callback function
*
* Asynchronously creates a new file and returns a stream
@@ -2465,7 +2483,7 @@ g_file_create_readwrite_async (GFile *file,
* g_file_create_readwrite_async().
*
* Returns: (transfer full): a #GFileIOStream or %NULL on error.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*
* Since: 2.22
*/
@@ -2490,14 +2508,14 @@ g_file_create_readwrite_finish (GFile *file,
* g_file_replace_readwrite_async:
* @file: input #GFile
* @etag: (nullable): an [entity tag][gfile-etag] for the current #GFile,
- * or %NULL to ignore
+ * or %NULL to ignore
* @make_backup: %TRUE if a backup should be created
* @flags: a set of #GFileCreateFlags
* @io_priority: the [I/O priority][io-priority] of the request
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async): a #GAsyncReadyCallback to call
- * when the request is satisfied
+ * when the request is satisfied
* @user_data: (closure): the data to pass to callback function
*
* Asynchronously overwrites the file in read-write mode,
@@ -2548,7 +2566,7 @@ g_file_replace_readwrite_async (GFile *file,
* g_file_replace_readwrite_async().
*
* Returns: (transfer full): a #GFileIOStream, or %NULL on error.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*
* Since: 2.22
*/
@@ -2718,7 +2736,7 @@ should_copy (GFileAttributeInfo *info,
* @file: a #GFile to copy attributes to
* @flags: a set of #GFileCopyFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, %NULL to ignore
*
* Prepares the file attribute query string for copying to @file.
@@ -2732,7 +2750,7 @@ should_copy (GFileAttributeInfo *info,
* stages (e.g., for recursive move of a directory).
*
* Returns: an attribute query string for g_file_query_info(),
- * or %NULL if an error occurs.
+ * or %NULL if an error occurs.
*
* Since: 2.68
*/
@@ -2826,7 +2844,7 @@ g_file_build_attribute_list_for_copy (GFile *file,
* @destination: a #GFile to copy attributes to
* @flags: a set of #GFileCopyFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, %NULL to ignore
*
* Copies the file attributes from @source to @destination.
@@ -2834,12 +2852,12 @@ g_file_build_attribute_list_for_copy (GFile *file,
* Normally only a subset of the file attributes are copied,
* those that are copies in a normal file copy operation
* (which for instance does not include e.g. owner). However
- * if #G_FILE_COPY_ALL_METADATA is specified in @flags, then
+ * if %G_FILE_COPY_ALL_METADATA is specified in @flags, then
* all the metadata that is possible to copy is copied. This
* is useful when implementing move by copy + delete source.
*
* Returns: %TRUE if the attributes were copied successfully,
- * %FALSE otherwise.
+ * %FALSE otherwise.
*/
gboolean
g_file_copy_attributes (GFile *source,
@@ -3428,23 +3446,23 @@ file_copy_fallback (GFile *source,
* @destination: destination #GFile
* @flags: set of #GFileCopyFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @progress_callback: (nullable) (scope call): function to callback with
- * progress information, or %NULL if progress information is not needed
+ * progress information, or %NULL if progress information is not needed
* @progress_callback_data: (closure): user data to pass to @progress_callback
* @error: #GError to set on error, or %NULL
*
* Copies the file @source to the location specified by @destination.
* Can not handle recursive copies of directories.
*
- * If the flag #G_FILE_COPY_OVERWRITE is specified an already
+ * If the flag %G_FILE_COPY_OVERWRITE is specified an already
* existing @destination file is overwritten.
*
- * If the flag #G_FILE_COPY_NOFOLLOW_SYMLINKS is specified then symlinks
+ * If the flag %G_FILE_COPY_NOFOLLOW_SYMLINKS is specified then symlinks
* will be copied as symlinks, otherwise the target of the
* @source symlink will be copied.
*
- * If the flag #G_FILE_COPY_ALL_METADATA is specified then all the metadata
+ * If the flag %G_FILE_COPY_ALL_METADATA is specified then all the metadata
* that is possible to copy is copied, not just the default subset (which,
* for instance, does not include the owner, see #GFileInfo).
*
@@ -3461,7 +3479,7 @@ file_copy_fallback (GFile *source,
* If the @source file does not exist, then the %G_IO_ERROR_NOT_FOUND error
* is returned, independent on the status of the @destination.
*
- * If #G_FILE_COPY_OVERWRITE is not specified and the target exists, then
+ * If %G_FILE_COPY_OVERWRITE is not specified and the target exists, then
* the error %G_IO_ERROR_EXISTS is returned.
*
* If trying to overwrite a file over a directory, the %G_IO_ERROR_IS_DIRECTORY
@@ -3469,7 +3487,7 @@ file_copy_fallback (GFile *source,
* %G_IO_ERROR_WOULD_MERGE error is returned.
*
* If the source is a directory and the target does not exist, or
- * #G_FILE_COPY_OVERWRITE is specified and the target is a file, then the
+ * %G_FILE_COPY_OVERWRITE is specified and the target is a file, then the
* %G_IO_ERROR_WOULD_RECURSE error is returned.
*
* If you are interested in copying the #GFile object itself (not the on-disk
@@ -3557,9 +3575,9 @@ g_file_copy (GFile *source,
* @flags: set of #GFileCopyFlags
* @io_priority: the [I/O priority][io-priority] of the request
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @progress_callback: (nullable) (scope notified): function to callback with progress
- * information, or %NULL if progress information is not needed
+ * information, or %NULL if progress information is not needed
* @progress_callback_data: (closure progress_callback) (nullable): user data to pass to @progress_callback
* @callback: (scope async): a #GAsyncReadyCallback to call when the request is satisfied
* @user_data: (closure callback): the data to pass to callback function
@@ -3636,11 +3654,11 @@ g_file_copy_finish (GFile *file,
* @destination: #GFile pointing to the destination location
* @flags: set of #GFileCopyFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @progress_callback: (nullable) (scope call): #GFileProgressCallback
- * function for updates
+ * function for updates
* @progress_callback_data: (closure): gpointer to user data for
- * the callback function
+ * the callback function
* @error: #GError for returning error conditions, or %NULL
*
* Tries to move the file or directory @source to the location specified
@@ -3649,7 +3667,7 @@ g_file_copy_finish (GFile *file,
* implementation may support moving directories (for instance on moves
* inside the same filesystem), but the fallback code does not.
*
- * If the flag #G_FILE_COPY_OVERWRITE is specified an already
+ * If the flag %G_FILE_COPY_OVERWRITE is specified an already
* existing @destination file is overwritten.
*
* If @cancellable is not %NULL, then the operation can be cancelled by
@@ -3665,7 +3683,7 @@ g_file_copy_finish (GFile *file,
* If the @source file does not exist, then the %G_IO_ERROR_NOT_FOUND
* error is returned, independent on the status of the @destination.
*
- * If #G_FILE_COPY_OVERWRITE is not specified and the target exists,
+ * If %G_FILE_COPY_OVERWRITE is not specified and the target exists,
* then the error %G_IO_ERROR_EXISTS is returned.
*
* If trying to overwrite a file over a directory, the %G_IO_ERROR_IS_DIRECTORY
@@ -3673,7 +3691,7 @@ g_file_copy_finish (GFile *file,
* %G_IO_ERROR_WOULD_MERGE error is returned.
*
* If the source is a directory and the target does not exist, or
- * #G_FILE_COPY_OVERWRITE is specified and the target is a file, then
+ * %G_FILE_COPY_OVERWRITE is specified and the target is a file, then
* the %G_IO_ERROR_WOULD_RECURSE error may be returned (if the native
* move operation isn't available).
*
@@ -3765,10 +3783,95 @@ g_file_move (GFile *source,
}
/**
+ * g_file_move_async:
+ * @source: #GFile pointing to the source location
+ * @destination: #GFile pointing to the destination location
+ * @flags: set of #GFileCopyFlags
+ * @io_priority: the [I/O priority][io-priority] of the request
+ * @cancellable: (nullable): optional #GCancellable object,
+ * %NULL to ignore
+ * @progress_callback: (nullable) (scope call): #GFileProgressCallback
+ * function for updates
+ * @progress_callback_data: (closure): gpointer to user data for
+ * the callback function
+ * @callback: a #GAsyncReadyCallback to call
+ * when the request is satisfied
+ * @user_data: the data to pass to callback function
+ *
+ * Asynchronously moves a file @source to the location of @destination. For details of the behaviour, see g_file_move().
+ *
+ * If @progress_callback is not %NULL, then that function that will be called
+ * just like in g_file_move(). The callback will run in the default main context
+ * of the thread calling g_file_move_async() — the same context as @callback is
+ * run in.
+ *
+ * When the operation is finished, @callback will be called. You can then call
+ * g_file_move_finish() to get the result of the operation.
+ *
+ * Since: 2.72
+ */
+void
+g_file_move_async (GFile *source,
+ GFile *destination,
+ GFileCopyFlags flags,
+ int io_priority,
+ GCancellable *cancellable,
+ GFileProgressCallback progress_callback,
+ gpointer progress_callback_data,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ GFileIface *iface;
+
+ g_return_if_fail (G_IS_FILE (source));
+ g_return_if_fail (G_IS_FILE (destination));
+ g_return_if_fail (cancellable == NULL || G_IS_CANCELLABLE (cancellable));
+
+ iface = G_FILE_GET_IFACE (source);
+ (* iface->move_async) (source,
+ destination,
+ flags,
+ io_priority,
+ cancellable,
+ progress_callback,
+ progress_callback_data,
+ callback,
+ user_data);
+}
+
+/**
+ * g_file_move_finish:
+ * @file: input source #GFile
+ * @result: a #GAsyncResult
+ * @error: a #GError, or %NULL
+ *
+ * Finishes an asynchronous file movement, started with
+ * g_file_move_async().
+ *
+ * Returns: %TRUE on successful file move, %FALSE otherwise.
+ *
+ * Since: 2.72
+ */
+gboolean
+g_file_move_finish (GFile *file,
+ GAsyncResult *result,
+ GError **error)
+{
+ GFileIface *iface;
+
+ g_return_val_if_fail (G_IS_FILE (file), FALSE);
+ g_return_val_if_fail (G_IS_ASYNC_RESULT (result), FALSE);
+ g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
+
+ iface = G_FILE_GET_IFACE (file);
+ return (* iface->move_finish) (file, result, error);
+}
+
+/**
* g_file_make_directory:
* @file: input #GFile
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Creates a directory. Note that this will only create a child directory
@@ -3818,9 +3921,9 @@ g_file_make_directory (GFile *file,
* @file: input #GFile
* @io_priority: the [I/O priority][io-priority] of the request
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: a #GAsyncReadyCallback to call
- * when the request is satisfied
+ * when the request is satisfied
* @user_data: the data to pass to callback function
*
* Asynchronously creates a directory.
@@ -3878,7 +3981,7 @@ g_file_make_directory_finish (GFile *file,
* g_file_make_directory_with_parents:
* @file: input #GFile
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Creates a directory and any parent directories that may not
@@ -4000,9 +4103,9 @@ g_file_make_directory_with_parents (GFile *file,
* g_file_make_symbolic_link:
* @file: a #GFile with the name of the symlink to create
* @symlink_value: (type filename): a string with the path for the target
- * of the new symlink
+ * of the new symlink
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError
*
* Creates a symbolic link named @file which contains the string
@@ -4053,7 +4156,7 @@ g_file_make_symbolic_link (GFile *file,
* g_file_delete:
* @file: input #GFile
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Deletes a file. If the @file is a directory, it will only be
@@ -4111,9 +4214,9 @@ g_file_delete (GFile *file,
* @file: input #GFile
* @io_priority: the [I/O priority][io-priority] of the request
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: a #GAsyncReadyCallback to call
- * when the request is satisfied
+ * when the request is satisfied
* @user_data: the data to pass to callback function
*
* Asynchronously delete a file. If the @file is a directory, it will
@@ -4175,7 +4278,7 @@ g_file_delete_finish (GFile *file,
* g_file_trash:
* @file: #GFile to send to trash
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Sends @file to the "Trashcan", if possible. This is similar to
@@ -4222,9 +4325,9 @@ g_file_trash (GFile *file,
* @file: input #GFile
* @io_priority: the [I/O priority][io-priority] of the request
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: a #GAsyncReadyCallback to call
- * when the request is satisfied
+ * when the request is satisfied
* @user_data: the data to pass to callback function
*
* Asynchronously sends @file to the Trash location, if possible.
@@ -4283,7 +4386,7 @@ g_file_trash_finish (GFile *file,
* @file: input #GFile
* @display_name: a string
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Renames @file to the specified display name.
@@ -4292,7 +4395,7 @@ g_file_trash_finish (GFile *file,
* for the target filesystem if possible and the @file is renamed to this.
*
* If you want to implement a rename operation in the user interface the
- * edit name (#G_FILE_ATTRIBUTE_STANDARD_EDIT_NAME) should be used as the
+ * edit name (%G_FILE_ATTRIBUTE_STANDARD_EDIT_NAME) should be used as the
* initial value in the rename widget, and then the result after editing
* should be passed to g_file_set_display_name().
*
@@ -4303,8 +4406,8 @@ g_file_trash_finish (GFile *file,
* was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
*
* Returns: (transfer full): a #GFile specifying what @file was renamed to,
- * or %NULL if there was an error.
- * Free the returned object with g_object_unref().
+ * or %NULL if there was an error.
+ * Free the returned object with g_object_unref().
*/
GFile *
g_file_set_display_name (GFile *file,
@@ -4340,9 +4443,9 @@ g_file_set_display_name (GFile *file,
* @display_name: a string
* @io_priority: the [I/O priority][io-priority] of the request
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async): a #GAsyncReadyCallback to call
- * when the request is satisfied
+ * when the request is satisfied
* @user_data: (closure): the data to pass to callback function
*
* Asynchronously sets the display name for a given #GFile.
@@ -4386,7 +4489,7 @@ g_file_set_display_name_async (GFile *file,
* g_file_set_display_name_async().
*
* Returns: (transfer full): a #GFile or %NULL on error.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*/
GFile *
g_file_set_display_name_finish (GFile *file,
@@ -4409,7 +4512,7 @@ g_file_set_display_name_finish (GFile *file,
* g_file_query_settable_attributes:
* @file: input #GFile
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Obtain the list of settable attributes for the file.
@@ -4423,9 +4526,9 @@ g_file_set_display_name_finish (GFile *file,
* triggering the cancellable object from another thread. If the operation
* was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
*
- * Returns: a #GFileAttributeInfoList describing the settable attributes.
- * When you are done with it, release it with
- * g_file_attribute_info_list_unref()
+ * Returns: (transfer full): a #GFileAttributeInfoList describing the settable attributes.
+ * When you are done with it, release it with
+ * g_file_attribute_info_list_unref()
*/
GFileAttributeInfoList *
g_file_query_settable_attributes (GFile *file,
@@ -4467,7 +4570,7 @@ g_file_query_settable_attributes (GFile *file,
* g_file_query_writable_namespaces:
* @file: input #GFile
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Obtain the list of attribute namespaces where new attributes
@@ -4478,9 +4581,9 @@ g_file_query_settable_attributes (GFile *file,
* triggering the cancellable object from another thread. If the operation
* was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
*
- * Returns: a #GFileAttributeInfoList describing the writable namespaces.
- * When you are done with it, release it with
- * g_file_attribute_info_list_unref()
+ * Returns: (transfer full): a #GFileAttributeInfoList describing the writable namespaces.
+ * When you are done with it, release it with
+ * g_file_attribute_info_list_unref()
*/
GFileAttributeInfoList *
g_file_query_writable_namespaces (GFile *file,
@@ -4529,10 +4632,10 @@ g_file_query_writable_namespaces (GFile *file,
* @attribute: a string containing the attribute's name
* @type: The type of the attribute
* @value_p: (nullable): a pointer to the value (or the pointer
- * itself if the type is a pointer type)
+ * itself if the type is a pointer type)
* @flags: a set of #GFileQueryInfoFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Sets an attribute in the file with attribute name @attribute to @value_p.
@@ -4582,7 +4685,7 @@ g_file_set_attribute (GFile *file,
* @info: a #GFileInfo
* @flags: #GFileQueryInfoFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Tries to set all attributes in the #GFileInfo on the target
@@ -4674,7 +4777,7 @@ g_file_real_set_attributes_from_info (GFile *file,
* @flags: a #GFileQueryInfoFlags
* @io_priority: the [I/O priority][io-priority] of the request
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async): a #GAsyncReadyCallback
* @user_data: (closure): a #gpointer
*
@@ -4747,7 +4850,7 @@ g_file_set_attributes_finish (GFile *file,
* @value: a string containing the attribute's value
* @flags: #GFileQueryInfoFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_STRING to @value.
@@ -4779,7 +4882,7 @@ g_file_set_attribute_string (GFile *file,
* @value: a string containing the attribute's new value
* @flags: a #GFileQueryInfoFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_BYTE_STRING to @value.
@@ -4791,7 +4894,7 @@ g_file_set_attribute_string (GFile *file,
* was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
*
* Returns: %TRUE if the @attribute was successfully set to @value
- * in the @file, %FALSE otherwise.
+ * in the @file, %FALSE otherwise.
*/
gboolean
g_file_set_attribute_byte_string (GFile *file,
@@ -4813,7 +4916,7 @@ g_file_set_attribute_byte_string (GFile *file,
* @value: a #guint32 containing the attribute's new value
* @flags: a #GFileQueryInfoFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_UINT32 to @value.
@@ -4824,7 +4927,7 @@ g_file_set_attribute_byte_string (GFile *file,
* was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
*
* Returns: %TRUE if the @attribute was successfully set to @value
- * in the @file, %FALSE otherwise.
+ * in the @file, %FALSE otherwise.
*/
gboolean
g_file_set_attribute_uint32 (GFile *file,
@@ -4846,7 +4949,7 @@ g_file_set_attribute_uint32 (GFile *file,
* @value: a #gint32 containing the attribute's new value
* @flags: a #GFileQueryInfoFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_INT32 to @value.
@@ -4857,7 +4960,7 @@ g_file_set_attribute_uint32 (GFile *file,
* was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
*
* Returns: %TRUE if the @attribute was successfully set to @value
- * in the @file, %FALSE otherwise.
+ * in the @file, %FALSE otherwise.
*/
gboolean
g_file_set_attribute_int32 (GFile *file,
@@ -4879,7 +4982,7 @@ g_file_set_attribute_int32 (GFile *file,
* @value: a #guint64 containing the attribute's new value
* @flags: a #GFileQueryInfoFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_UINT64 to @value.
@@ -4890,7 +4993,7 @@ g_file_set_attribute_int32 (GFile *file,
* was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
*
* Returns: %TRUE if the @attribute was successfully set to @value
- * in the @file, %FALSE otherwise.
+ * in the @file, %FALSE otherwise.
*/
gboolean
g_file_set_attribute_uint64 (GFile *file,
@@ -4912,7 +5015,7 @@ g_file_set_attribute_uint64 (GFile *file,
* @value: a #guint64 containing the attribute's new value
* @flags: a #GFileQueryInfoFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Sets @attribute of type %G_FILE_ATTRIBUTE_TYPE_INT64 to @value.
@@ -4942,11 +5045,11 @@ g_file_set_attribute_int64 (GFile *file,
* @file: input #GFile
* @flags: flags affecting the operation
* @mount_operation: (nullable): a #GMountOperation,
- * or %NULL to avoid user interaction
+ * or %NULL to avoid user interaction
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async) (nullable): a #GAsyncReadyCallback to call
- * when the request is satisfied, or %NULL
+ * when the request is satisfied, or %NULL
* @user_data: (closure): the data to pass to callback function
*
* Mounts a file of type G_FILE_TYPE_MOUNTABLE.
@@ -5004,7 +5107,7 @@ g_file_mount_mountable (GFile *file,
* with g_file_mount_mountable().
*
* Returns: (transfer full): a #GFile or %NULL on error.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*/
GFile *
g_file_mount_mountable_finish (GFile *file,
@@ -5030,9 +5133,9 @@ g_file_mount_mountable_finish (GFile *file,
* @file: input #GFile
* @flags: flags affecting the operation
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async) (nullable): a #GAsyncReadyCallback to call
- * when the request is satisfied, or %NULL
+ * when the request is satisfied, or %NULL
* @user_data: (closure): the data to pass to callback function
*
* Unmounts a file of type G_FILE_TYPE_MOUNTABLE.
@@ -5088,10 +5191,10 @@ g_file_unmount_mountable (GFile *file,
* with g_file_unmount_mountable().
*
* Returns: %TRUE if the operation finished successfully.
- * %FALSE otherwise.
+ * %FALSE otherwise.
*
* Deprecated: 2.22: Use g_file_unmount_mountable_with_operation_finish()
- * instead.
+ * instead.
*/
gboolean
g_file_unmount_mountable_finish (GFile *file,
@@ -5117,14 +5220,14 @@ g_file_unmount_mountable_finish (GFile *file,
* @file: input #GFile
* @flags: flags affecting the operation
* @mount_operation: (nullable): a #GMountOperation,
- * or %NULL to avoid user interaction
+ * or %NULL to avoid user interaction
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async) (nullable): a #GAsyncReadyCallback to call
- * when the request is satisfied, or %NULL
+ * when the request is satisfied, or %NULL
* @user_data: (closure): the data to pass to callback function
*
- * Unmounts a file of type #G_FILE_TYPE_MOUNTABLE.
+ * Unmounts a file of type %G_FILE_TYPE_MOUNTABLE.
*
* If @cancellable is not %NULL, then the operation can be cancelled by
* triggering the cancellable object from another thread. If the operation
@@ -5187,7 +5290,7 @@ g_file_unmount_mountable_with_operation (GFile *file,
* with g_file_unmount_mountable_with_operation().
*
* Returns: %TRUE if the operation finished successfully.
- * %FALSE otherwise.
+ * %FALSE otherwise.
*
* Since: 2.22
*/
@@ -5218,9 +5321,9 @@ g_file_unmount_mountable_with_operation_finish (GFile *file,
* @file: input #GFile
* @flags: flags affecting the operation
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async) (nullable): a #GAsyncReadyCallback to call
- * when the request is satisfied, or %NULL
+ * when the request is satisfied, or %NULL
* @user_data: (closure): the data to pass to callback function
*
* Starts an asynchronous eject on a mountable.
@@ -5273,10 +5376,10 @@ g_file_eject_mountable (GFile *file,
* g_file_eject_mountable().
*
* Returns: %TRUE if the @file was ejected successfully.
- * %FALSE otherwise.
+ * %FALSE otherwise.
*
* Deprecated: 2.22: Use g_file_eject_mountable_with_operation_finish()
- * instead.
+ * instead.
*/
gboolean
g_file_eject_mountable_finish (GFile *file,
@@ -5302,11 +5405,11 @@ g_file_eject_mountable_finish (GFile *file,
* @file: input #GFile
* @flags: flags affecting the operation
* @mount_operation: (nullable): a #GMountOperation,
- * or %NULL to avoid user interaction
+ * or %NULL to avoid user interaction
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (scope async) (nullable): a #GAsyncReadyCallback to call
- * when the request is satisfied, or %NULL
+ * when the request is satisfied, or %NULL
* @user_data: (closure): the data to pass to callback function
*
* Starts an asynchronous eject on a mountable.
@@ -5368,7 +5471,7 @@ g_file_eject_mountable_with_operation (GFile *file,
* g_file_eject_mountable_with_operation().
*
* Returns: %TRUE if the @file was ejected successfully.
- * %FALSE otherwise.
+ * %FALSE otherwise.
*
* Since: 2.22
*/
@@ -5399,7 +5502,7 @@ g_file_eject_mountable_with_operation_finish (GFile *file,
* @file: input #GFile
* @flags: a set of #GFileMonitorFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Obtains a directory monitor for the given file.
@@ -5417,8 +5520,8 @@ g_file_eject_mountable_with_operation_finish (GFile *file,
*
* Virtual: monitor_dir
* Returns: (transfer full): a #GFileMonitor for the given @file,
- * or %NULL on error.
- * Free the returned object with g_object_unref().
+ * or %NULL on error.
+ * Free the returned object with g_object_unref().
*/
GFileMonitor *
g_file_monitor_directory (GFile *file,
@@ -5452,7 +5555,7 @@ g_file_monitor_directory (GFile *file,
* @file: input #GFile
* @flags: a set of #GFileMonitorFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Obtains a file monitor for the given file. If no file notification
@@ -5471,8 +5574,8 @@ g_file_monitor_directory (GFile *file,
* backend and/or filesystem type.
*
* Returns: (transfer full): a #GFileMonitor for the given @file,
- * or %NULL on error.
- * Free the returned object with g_object_unref().
+ * or %NULL on error.
+ * Free the returned object with g_object_unref().
*/
GFileMonitor *
g_file_monitor_file (GFile *file,
@@ -5507,7 +5610,7 @@ g_file_monitor_file (GFile *file,
* @file: input #GFile
* @flags: a set of #GFileMonitorFlags
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @error: a #GError, or %NULL
*
* Obtains a file or directory monitor for the given file,
@@ -5518,8 +5621,8 @@ g_file_monitor_file (GFile *file,
* was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
*
* Returns: (transfer full): a #GFileMonitor for the given @file,
- * or %NULL on error.
- * Free the returned object with g_object_unref().
+ * or %NULL on error.
+ * Free the returned object with g_object_unref().
*
* Since: 2.18
*/
@@ -5998,6 +6101,125 @@ g_file_real_trash_finish (GFile *file,
return g_task_propagate_boolean (G_TASK (res), error);
}
+
+typedef struct {
+ GFile *source; /* (owned) */
+ GFile *destination; /* (owned) */
+ GFileCopyFlags flags;
+ GFileProgressCallback progress_cb;
+ gpointer progress_cb_data;
+} MoveAsyncData;
+
+static void
+move_async_data_free (MoveAsyncData *data)
+{
+ g_object_unref (data->source);
+ g_object_unref (data->destination);
+ g_slice_free (MoveAsyncData, data);
+}
+
+typedef struct {
+ MoveAsyncData *data; /* (unowned) */
+ goffset current_num_bytes;
+ goffset total_num_bytes;
+} MoveProgressData;
+
+static gboolean
+move_async_progress_in_main (gpointer user_data)
+{
+ MoveProgressData *progress = user_data;
+ MoveAsyncData *data = progress->data;
+
+ data->progress_cb (progress->current_num_bytes,
+ progress->total_num_bytes,
+ data->progress_cb_data);
+
+ return G_SOURCE_REMOVE;
+}
+
+static void
+move_async_progress_callback (goffset current_num_bytes,
+ goffset total_num_bytes,
+ gpointer user_data)
+{
+ GTask *task = user_data;
+ MoveAsyncData *data = g_task_get_task_data (task);
+ MoveProgressData *progress;
+
+ progress = g_new0 (MoveProgressData, 1);
+ progress->data = data;
+ progress->current_num_bytes = current_num_bytes;
+ progress->total_num_bytes = total_num_bytes;
+
+ g_main_context_invoke_full (g_task_get_context (task),
+ g_task_get_priority (task),
+ move_async_progress_in_main,
+ g_steal_pointer (&progress),
+ g_free);
+}
+
+static void
+move_async_thread (GTask *task,
+ gpointer source,
+ gpointer task_data,
+ GCancellable *cancellable)
+{
+ MoveAsyncData *data = task_data;
+ gboolean result;
+ GError *error = NULL;
+
+ result = g_file_move (data->source,
+ data->destination,
+ data->flags,
+ cancellable,
+ (data->progress_cb != NULL) ? move_async_progress_callback : NULL,
+ task,
+ &error);
+ if (result)
+ g_task_return_boolean (task, TRUE);
+ else
+ g_task_return_error (task, g_steal_pointer (&error));
+}
+
+static void
+g_file_real_move_async (GFile *source,
+ GFile *destination,
+ GFileCopyFlags flags,
+ int io_priority,
+ GCancellable *cancellable,
+ GFileProgressCallback progress_callback,
+ gpointer progress_callback_data,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ GTask *task;
+ MoveAsyncData *data;
+
+ data = g_slice_new0 (MoveAsyncData);
+ data->source = g_object_ref (source);
+ data->destination = g_object_ref (destination);
+ data->flags = flags;
+ data->progress_cb = progress_callback;
+ data->progress_cb_data = progress_callback_data;
+
+ task = g_task_new (source, cancellable, callback, user_data);
+ g_task_set_source_tag (task, g_file_real_move_async);
+ g_task_set_task_data (task, g_steal_pointer (&data), (GDestroyNotify) move_async_data_free);
+ g_task_set_priority (task, io_priority);
+ g_task_run_in_thread (task, move_async_thread);
+ g_object_unref (task);
+}
+
+static gboolean
+g_file_real_move_finish (GFile *file,
+ GAsyncResult *result,
+ GError **error)
+{
+ g_return_val_if_fail (g_task_is_valid (result, file), FALSE);
+
+ return g_task_propagate_boolean (G_TASK (result), error);
+}
+
static void
make_directory_async_thread (GTask *task,
gpointer object,
@@ -6397,12 +6619,12 @@ typedef struct {
CopyAsyncData *data;
goffset current_num_bytes;
goffset total_num_bytes;
-} ProgressData;
+} CopyProgressData;
static gboolean
copy_async_progress_in_main (gpointer user_data)
{
- ProgressData *progress = user_data;
+ CopyProgressData *progress = user_data;
CopyAsyncData *data = progress->data;
data->progress_cb (progress->current_num_bytes,
@@ -6419,9 +6641,9 @@ copy_async_progress_callback (goffset current_num_bytes,
{
GTask *task = user_data;
CopyAsyncData *data = g_task_get_task_data (task);
- ProgressData *progress;
+ CopyProgressData *progress;
- progress = g_new (ProgressData, 1);
+ progress = g_new (CopyProgressData, 1);
progress->data = data;
progress->current_num_bytes = current_num_bytes;
progress->total_num_bytes = total_num_bytes;
@@ -6503,7 +6725,7 @@ g_file_real_copy_finish (GFile *file,
/**
* g_file_new_for_path:
* @path: (type filename): a string containing a relative or absolute path.
- * The string must be encoded in the glib filename encoding.
+ * The string must be encoded in the glib filename encoding.
*
* Constructs a #GFile for a given path. This operation never
* fails, but the returned object might not support any I/O
@@ -6530,7 +6752,7 @@ g_file_new_for_path (const char *path)
* not supported.
*
* Returns: (transfer full): a new #GFile for the given @uri.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*/
GFile *
g_file_new_for_uri (const char *uri)
@@ -6559,7 +6781,7 @@ g_file_new_for_uri (const char *uri)
* a temporary file could not be created.
*
* Returns: (transfer full): a new #GFile.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*
* Since: 2.32
*/
@@ -6720,7 +6942,7 @@ new_for_cmdline_arg (const gchar *arg,
* #GOptionContext arguments of type %G_OPTION_ARG_FILENAME.
*
* Returns: (transfer full): a new #GFile.
- * Free the returned object with g_object_unref().
+ * Free the returned object with g_object_unref().
*/
GFile *
g_file_new_for_commandline_arg (const char *arg)
@@ -6766,11 +6988,11 @@ g_file_new_for_commandline_arg_and_cwd (const gchar *arg,
* @location: input #GFile
* @flags: flags affecting the operation
* @mount_operation: (nullable): a #GMountOperation
- * or %NULL to avoid user interaction
+ * or %NULL to avoid user interaction
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (nullable): a #GAsyncReadyCallback to call
- * when the request is satisfied, or %NULL
+ * when the request is satisfied, or %NULL
* @user_data: the data to pass to callback function
*
* Starts a @mount_operation, mounting the volume that contains
@@ -6820,8 +7042,8 @@ g_file_mount_enclosing_volume (GFile *location,
* Finishes a mount operation started by g_file_mount_enclosing_volume().
*
* Returns: %TRUE if successful. If an error has occurred,
- * this function will return %FALSE and set @error
- * appropriately if present.
+ * this function will return %FALSE and set @error
+ * appropriately if present.
*/
gboolean
g_file_mount_enclosing_volume_finish (GFile *location,
@@ -6861,8 +7083,8 @@ g_file_mount_enclosing_volume_finish (GFile *location,
* was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
*
* Returns: (transfer full): a #GAppInfo if the handle was found,
- * %NULL if there were errors.
- * When you are done with it, release it with g_object_unref()
+ * %NULL if there were errors.
+ * When you are done with it, release it with g_object_unref()
*/
GAppInfo *
g_file_query_default_handler (GFile *file,
@@ -7032,8 +7254,8 @@ g_file_query_default_handler_async (GFile *file,
* Finishes a g_file_query_default_handler_async() operation.
*
* Returns: (transfer full): a #GAppInfo if the handle was found,
- * %NULL if there were errors.
- * When you are done with it, release it with g_object_unref()
+ * %NULL if there were errors.
+ * When you are done with it, release it with g_object_unref()
*
* Since: 2.60
*/
@@ -7056,9 +7278,9 @@ g_file_query_default_handler_finish (GFile *file,
* @cancellable: optional #GCancellable object, %NULL to ignore
* @contents: (out) (transfer full) (element-type guint8) (array length=length): a location to place the contents of the file
* @length: (out) (optional): a location to place the length of the contents of the file,
- * or %NULL if the length is not needed
+ * or %NULL if the length is not needed
* @etag_out: (out) (optional) (nullable): a location to place the current entity tag for the file,
- * or %NULL if the entity tag is not needed
+ * or %NULL if the entity tag is not needed
* @error: a #GError, or %NULL
*
* Loads the content of the file into memory. The data is always
@@ -7071,7 +7293,7 @@ g_file_query_default_handler_finish (GFile *file,
* was cancelled, the error %G_IO_ERROR_CANCELLED will be returned.
*
* Returns: %TRUE if the @file's contents were successfully loaded.
- * %FALSE if there were errors.
+ * %FALSE if there were errors.
*/
gboolean
g_file_load_contents (GFile *file,
@@ -7294,10 +7516,10 @@ load_contents_open_callback (GObject *obj,
* @file: input #GFile
* @cancellable: optional #GCancellable object, %NULL to ignore
* @read_more_callback: (scope call) (closure user_data): a
- * #GFileReadMoreCallback to receive partial data
- * and to specify whether further data should be read
+ * #GFileReadMoreCallback to receive partial data
+ * and to specify whether further data should be read
* @callback: (scope async) (closure user_data): a #GAsyncReadyCallback to call
- * when the request is satisfied
+ * when the request is satisfied
* @user_data: the data to pass to the callback functions
*
* Reads the partial contents of a file. A #GFileReadMoreCallback should
@@ -7344,9 +7566,9 @@ g_file_load_partial_contents_async (GFile *file,
* @res: a #GAsyncResult
* @contents: (out) (transfer full) (element-type guint8) (array length=length): a location to place the contents of the file
* @length: (out) (optional): a location to place the length of the contents of the file,
- * or %NULL if the length is not needed
+ * or %NULL if the length is not needed
* @etag_out: (out) (optional) (nullable): a location to place the current entity tag for the file,
- * or %NULL if the entity tag is not needed
+ * or %NULL if the entity tag is not needed
* @error: a #GError, or %NULL
*
* Finishes an asynchronous partial load operation that was started
@@ -7356,7 +7578,7 @@ g_file_load_partial_contents_async (GFile *file,
* needed.
*
* Returns: %TRUE if the load was successful. If %FALSE and @error is
- * present, it will be set appropriately.
+ * present, it will be set appropriately.
*/
gboolean
g_file_load_partial_contents_finish (GFile *file,
@@ -7442,9 +7664,9 @@ g_file_load_contents_async (GFile *file,
* @res: a #GAsyncResult
* @contents: (out) (transfer full) (element-type guint8) (array length=length): a location to place the contents of the file
* @length: (out) (optional): a location to place the length of the contents of the file,
- * or %NULL if the length is not needed
+ * or %NULL if the length is not needed
* @etag_out: (out) (optional) (nullable): a location to place the current entity tag for the file,
- * or %NULL if the entity tag is not needed
+ * or %NULL if the entity tag is not needed
* @error: a #GError, or %NULL
*
* Finishes an asynchronous load of the @file's contents.
@@ -7454,7 +7676,7 @@ g_file_load_contents_async (GFile *file,
* set to the new entity tag for the @file.
*
* Returns: %TRUE if the load was successful. If %FALSE and @error is
- * present, it will be set appropriately.
+ * present, it will be set appropriately.
*/
gboolean
g_file_load_contents_finish (GFile *file,
@@ -7478,12 +7700,12 @@ g_file_load_contents_finish (GFile *file,
* @contents: (element-type guint8) (array length=length): a string containing the new contents for @file
* @length: the length of @contents in bytes
* @etag: (nullable): the old [entity-tag][gfile-etag] for the document,
- * or %NULL
+ * or %NULL
* @make_backup: %TRUE if a backup should be created
* @flags: a set of #GFileCreateFlags
* @new_etag: (out) (optional) (nullable): a location to a new [entity tag][gfile-etag]
- * for the document. This should be freed with g_free() when no longer
- * needed, or %NULL
+ * for the document. This should be freed with g_free() when no longer
+ * needed, or %NULL
* @cancellable: optional #GCancellable object, %NULL to ignore
* @error: a #GError, or %NULL
*
@@ -7505,7 +7727,7 @@ g_file_load_contents_finish (GFile *file,
* changed the next time it is saved over.
*
* Returns: %TRUE if successful. If an error has occurred, this function
- * will return %FALSE and set @error appropriately if present.
+ * will return %FALSE and set @error appropriately if present.
*/
gboolean
g_file_replace_contents (GFile *file,
@@ -7790,8 +8012,8 @@ g_file_replace_contents_bytes_async (GFile *file,
* @file: input #GFile
* @res: a #GAsyncResult
* @new_etag: (out) (optional) (nullable): a location of a new [entity tag][gfile-etag]
- * for the document. This should be freed with g_free() when it is no
- * longer needed, or %NULL
+ * for the document. This should be freed with g_free() when it is no
+ * longer needed, or %NULL
* @error: a #GError, or %NULL
*
* Finishes an asynchronous replace of the given @file. See
@@ -8015,7 +8237,7 @@ g_file_real_measure_disk_usage_finish (GFile *file,
* callback will be invoked.
*
* Returns: %TRUE if successful, with the out parameters set.
- * %FALSE otherwise, with @error set.
+ * %FALSE otherwise, with @error set.
*
* Since: 2.38
**/
@@ -8090,7 +8312,7 @@ g_file_measure_disk_usage_async (GFile *file,
* more information.
*
* Returns: %TRUE if successful, with the out parameters set.
- * %FALSE otherwise, with @error set.
+ * %FALSE otherwise, with @error set.
*
* Since: 2.38
**/
@@ -8117,7 +8339,7 @@ g_file_measure_disk_usage_finish (GFile *file,
* @callback: (nullable): a #GAsyncReadyCallback to call when the request is satisfied, or %NULL
* @user_data: the data to pass to callback function
*
- * Starts a file of type #G_FILE_TYPE_MOUNTABLE.
+ * Starts a file of type %G_FILE_TYPE_MOUNTABLE.
* Using @start_operation, you can request callbacks when, for instance,
* passwords are needed during authentication.
*
@@ -8202,14 +8424,14 @@ g_file_start_mountable_finish (GFile *file,
* @file: input #GFile
* @flags: flags affecting the operation
* @mount_operation: (nullable): a #GMountOperation,
- * or %NULL to avoid user interaction.
+ * or %NULL to avoid user interaction.
* @cancellable: (nullable): optional #GCancellable object,
- * %NULL to ignore
+ * %NULL to ignore
* @callback: (nullable): a #GAsyncReadyCallback to call
- * when the request is satisfied, or %NULL
+ * when the request is satisfied, or %NULL
* @user_data: the data to pass to callback function
*
- * Stops a file of type #G_FILE_TYPE_MOUNTABLE.
+ * Stops a file of type %G_FILE_TYPE_MOUNTABLE.
*
* If @cancellable is not %NULL, then the operation can be cancelled by
* triggering the cancellable object from another thread. If the operation
@@ -8264,7 +8486,7 @@ g_file_stop_mountable (GFile *file,
* with g_file_stop_mountable().
*
* Returns: %TRUE if the operation finished successfully.
- * %FALSE otherwise.
+ * %FALSE otherwise.
*
* Since: 2.22
*/
@@ -8292,10 +8514,10 @@ g_file_stop_mountable_finish (GFile *file,
* @file: input #GFile
* @cancellable: optional #GCancellable object, %NULL to ignore
* @callback: (nullable): a #GAsyncReadyCallback to call
- * when the request is satisfied, or %NULL
+ * when the request is satisfied, or %NULL
* @user_data: the data to pass to callback function
*
- * Polls a file of type #G_FILE_TYPE_MOUNTABLE.
+ * Polls a file of type %G_FILE_TYPE_MOUNTABLE.
*
* If @cancellable is not %NULL, then the operation can be cancelled by
* triggering the cancellable object from another thread. If the operation
@@ -8398,7 +8620,7 @@ g_file_supports_thread_contexts (GFile *file)
* @file: a #GFile
* @cancellable: (nullable): a #GCancellable or %NULL
* @etag_out: (out) (nullable) (optional): a location to place the current
- * entity tag for the file, or %NULL if the entity tag is not needed
+ * entity tag for the file, or %NULL if the entity tag is not needed
* @error: a location for a #GError or %NULL
*
* Loads the contents of @file and returns it as #GBytes.
@@ -8485,7 +8707,7 @@ g_file_load_bytes_cb (GObject *object,
* @file: a #GFile
* @cancellable: (nullable): a #GCancellable or %NULL
* @callback: (scope async): a #GAsyncReadyCallback to call when the
- * request is satisfied
+ * request is satisfied
* @user_data: (closure): the data to pass to callback function
*
* Asynchronously loads the contents of @file as #GBytes.
@@ -8543,7 +8765,7 @@ g_file_load_bytes_async (GFile *file,
* @file: a #GFile
* @result: a #GAsyncResult provided to the callback
* @etag_out: (out) (nullable) (optional): a location to place the current
- * entity tag for the file, or %NULL if the entity tag is not needed
+ * entity tag for the file, or %NULL if the entity tag is not needed
* @error: a location for a #GError, or %NULL
*
* Completes an asynchronous request to g_file_load_bytes_async().
diff --git a/gio/gfile.h b/gio/gfile.h
index 4cff1a372..3a324cf9d 100644
--- a/gio/gfile.h
+++ b/gio/gfile.h
@@ -121,8 +121,8 @@ typedef struct _GFileIface GFileIface;
* @copy_async: Asynchronously copies a file.
* @copy_finish: Finishes an asynchronous copy operation.
* @move: Moves a file.
- * @_move_async: Asynchronously moves a file.
- * @_move_finish: Finishes an asynchronous move operation.
+ * @move_async: Asynchronously moves a file. Since: 2.72
+ * @move_finish: Finishes an asynchronous move operation. Since: 2.72
* @mount_mountable: Mounts a mountable object.
* @mount_mountable_finish: Finishes a mounting operation.
* @unmount_mountable: Unmounts a mountable object.
@@ -424,8 +424,18 @@ struct _GFileIface
GFileProgressCallback progress_callback,
gpointer progress_callback_data,
GError **error);
- void (* _move_async) (void);
- void (* _move_finish) (void);
+ void (* move_async) (GFile *source,
+ GFile *destination,
+ GFileCopyFlags flags,
+ int io_priority,
+ GCancellable *cancellable,
+ GFileProgressCallback progress_callback,
+ gpointer progress_callback_data,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+ gboolean (* move_finish) (GFile *file,
+ GAsyncResult *result,
+ GError **error);
void (* mount_mountable) (GFile *file,
GMountMountFlags flags,
@@ -926,6 +936,20 @@ gboolean g_file_move (GFile
GFileProgressCallback progress_callback,
gpointer progress_callback_data,
GError **error);
+GLIB_AVAILABLE_IN_2_72
+void g_file_move_async (GFile *source,
+ GFile *destination,
+ GFileCopyFlags flags,
+ int io_priority,
+ GCancellable *cancellable,
+ GFileProgressCallback progress_callback,
+ gpointer progress_callback_data,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+GLIB_AVAILABLE_IN_2_72
+gboolean g_file_move_finish (GFile *file,
+ GAsyncResult *result,
+ GError **error);
GLIB_AVAILABLE_IN_ALL
gboolean g_file_make_directory (GFile *file,
GCancellable *cancellable,
diff --git a/gio/gfileenumerator.c b/gio/gfileenumerator.c
index 1f9bc24eb..e0ed9720e 100644
--- a/gio/gfileenumerator.c
+++ b/gio/gfileenumerator.c
@@ -662,7 +662,10 @@ g_file_enumerator_iterate (GFileEnumerator *direnum,
const char *name = g_file_info_get_name (ret_info);
if (G_UNLIKELY (name == NULL))
- g_warning ("g_file_enumerator_iterate() created without standard::name");
+ {
+ g_critical ("g_file_enumerator_iterate() created without standard::name");
+ g_return_val_if_reached (FALSE);
+ }
else
{
*out_child = g_file_get_child (g_file_enumerator_get_container (direnum), name);
@@ -718,6 +721,9 @@ g_file_enumerator_get_container (GFileEnumerator *enumerator)
* directory of @enumerator. This function is primarily intended to be used
* inside loops with g_file_enumerator_next_file().
*
+ * To use this, %G_FILE_ATTRIBUTE_STANDARD_NAME must have been listed in the
+ * attributes list used when creating the #GFileEnumerator.
+ *
* This is a convenience method that's equivalent to:
* |[<!-- language="C" -->
* gchar *name = g_file_info_get_name (info);
@@ -733,10 +739,20 @@ GFile *
g_file_enumerator_get_child (GFileEnumerator *enumerator,
GFileInfo *info)
{
+ const gchar *name;
+
g_return_val_if_fail (G_IS_FILE_ENUMERATOR (enumerator), NULL);
+ g_return_val_if_fail (G_IS_FILE_INFO (info), NULL);
+
+ name = g_file_info_get_name (info);
+
+ if (G_UNLIKELY (name == NULL))
+ {
+ g_critical ("GFileEnumerator created without standard::name");
+ g_return_val_if_reached (NULL);
+ }
- return g_file_get_child (enumerator->priv->container,
- g_file_info_get_name (info));
+ return g_file_get_child (enumerator->priv->container, name);
}
static void
diff --git a/gio/gfilemonitor.c b/gio/gfilemonitor.c
index 9b9c0ea2d..89c89d203 100644
--- a/gio/gfilemonitor.c
+++ b/gio/gfilemonitor.c
@@ -172,7 +172,7 @@ g_file_monitor_class_init (GFileMonitorClass *klass)
* that the %G_FILE_MONITOR_WATCH_MOVES flag is not in use.
*
* If using the deprecated flag %G_FILE_MONITOR_SEND_MOVED flag and @event_type is
- * #G_FILE_MONITOR_EVENT_MOVED, @file will be set to a #GFile containing the
+ * %G_FILE_MONITOR_EVENT_MOVED, @file will be set to a #GFile containing the
* old path, and @other_file will be set to a #GFile containing the new path.
*
* In all the other cases, @other_file will be set to #NULL.
diff --git a/gio/ginputstream.c b/gio/ginputstream.c
index a40c7d9c4..8fda2693c 100644
--- a/gio/ginputstream.c
+++ b/gio/ginputstream.c
@@ -429,8 +429,8 @@ g_input_stream_real_skip (GInputStream *stream,
end = g_seekable_tell (seekable);
g_assert (start >= 0);
g_assert (end >= start);
- if ((guint64) start > (G_MAXSIZE - count) ||
- (start + count) > (guint64) end)
+ if (start > (goffset) (G_MAXOFFSET - count) ||
+ (goffset) (start + count) > end)
{
stream->priv->pending = TRUE;
return end - start;
diff --git a/gio/gio-querymodules.c b/gio/gio-querymodules.c
index cbeb9758e..aff194b73 100644
--- a/gio/gio-querymodules.c
+++ b/gio/gio-querymodules.c
@@ -161,7 +161,7 @@ main (gint argc,
{
int i;
- if (argc == 1)
+ if (argc <= 1)
{
g_print ("Usage: gio-querymodules <directory1> [<directory2> ...]\n");
g_print ("Will update giomodule.cache in the listed directories\n");
diff --git a/gio/gio-tool-set.c b/gio/gio-tool-set.c
index 4dbe1214f..c2a9431f6 100644
--- a/gio/gio-tool-set.c
+++ b/gio/gio-tool-set.c
@@ -76,12 +76,14 @@ handle_set (int argc, char *argv[], gboolean do_help)
const char *attribute;
GFileAttributeType type;
gpointer value;
+ gpointer value_allocated = NULL;
gboolean b;
guint32 uint32;
gint32 int32;
guint64 uint64;
gint64 int64;
gchar *param;
+ int retval = 0;
g_set_prgname ("gio set");
@@ -147,7 +149,7 @@ handle_set (int argc, char *argv[], gboolean do_help)
value = argv[3];
break;
case G_FILE_ATTRIBUTE_TYPE_BYTE_STRING:
- value = hex_unescape (argv[3]);
+ value = value_allocated = hex_unescape (argv[3]);
break;
case G_FILE_ATTRIBUTE_TYPE_BOOLEAN:
b = g_ascii_strcasecmp (argv[3], "true") == 0;
@@ -194,11 +196,11 @@ handle_set (int argc, char *argv[], gboolean do_help)
{
print_error ("%s", error->message);
g_error_free (error);
- g_object_unref (file);
- return 1;
+ retval = 1;
}
+ g_clear_pointer (&value_allocated, g_free);
g_object_unref (file);
- return 0;
+ return retval;
}
diff --git a/gio/gio.h b/gio/gio.h
index e9afab666..2d0a9c274 100644
--- a/gio/gio.h
+++ b/gio/gio.h
@@ -69,6 +69,8 @@
#include <gio/gdbusproxy.h>
#include <gio/gdbusserver.h>
#include <gio/gdbusutils.h>
+#include <gio/gdebugcontroller.h>
+#include <gio/gdebugcontrollerdbus.h>
#include <gio/gdrive.h>
#include <gio/gdtlsclientconnection.h>
#include <gio/gdtlsconnection.h>
diff --git a/gio/gioenums.h b/gio/gioenums.h
index d81ada416..efc430152 100644
--- a/gio/gioenums.h
+++ b/gio/gioenums.h
@@ -392,7 +392,7 @@ typedef enum {
*
* Indicates a hint from the file system whether files should be
* previewed in a file manager. Returned as the value of the key
- * #G_FILE_ATTRIBUTE_FILESYSTEM_USE_PREVIEW.
+ * %G_FILE_ATTRIBUTE_FILESYSTEM_USE_PREVIEW.
**/
typedef enum {
G_FILESYSTEM_PREVIEW_TYPE_IF_ALWAYS = 0,
@@ -522,7 +522,7 @@ typedef enum {
* }
* ]|
* but should instead treat all unrecognized error codes the same as
- * #G_IO_ERROR_FAILED.
+ * %G_IO_ERROR_FAILED.
*
* See also #GPollableReturn for a cheaper way of returning
* %G_IO_ERROR_WOULD_BLOCK to callers without allocating a #GError.
@@ -973,7 +973,7 @@ typedef enum
* @G_BUS_NAME_OWNER_FLAGS_NONE: No flags set.
* @G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT: Allow another message bus connection to claim the name.
* @G_BUS_NAME_OWNER_FLAGS_REPLACE: If another message bus connection owns the name and have
- * specified #G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT, then take the name from the other connection.
+ * specified %G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT, then take the name from the other connection.
* @G_BUS_NAME_OWNER_FLAGS_DO_NOT_QUEUE: If another message bus connection owns the name, immediately
* return an error from g_bus_own_name() rather than entering the waiting queue for that name. (Since 2.54)
*
@@ -1021,6 +1021,9 @@ typedef enum
* do not ask the bus to launch an owner during proxy initialization, but allow it to be
* autostarted by a method call. This flag is only meaningful in proxies for well-known names,
* and only if %G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START is not also specified.
+ * @G_DBUS_PROXY_FLAGS_NO_MATCH_RULE: Don't actually send the AddMatch D-Bus
+ * call for this signal subscription. This gives you more control
+ * over which match rules you add (but you must add them manually). (Since: 2.72)
*
* Flags used when constructing an instance of a #GDBusProxy derived class.
*
@@ -1033,7 +1036,8 @@ typedef enum
G_DBUS_PROXY_FLAGS_DO_NOT_CONNECT_SIGNALS = (1<<1),
G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START = (1<<2),
G_DBUS_PROXY_FLAGS_GET_INVALIDATED_PROPERTIES = (1<<3),
- G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START_AT_CONSTRUCTION = (1<<4)
+ G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START_AT_CONSTRUCTION = (1<<4),
+ G_DBUS_PROXY_FLAGS_NO_MATCH_RULE GLIB_AVAILABLE_ENUMERATOR_IN_2_72 = (1<<5)
} GDBusProxyFlags;
/**
@@ -1437,6 +1441,7 @@ typedef enum
* @G_CREDENTIALS_TYPE_SOLARIS_UCRED: The native credentials type is a `ucred_t`. Added in 2.40.
* @G_CREDENTIALS_TYPE_NETBSD_UNPCBID: The native credentials type is a `struct unpcbid`. Added in 2.42.
* @G_CREDENTIALS_TYPE_APPLE_XUCRED: The native credentials type is a `struct xucred`. Added in 2.66.
+ * @G_CREDENTIALS_TYPE_WIN32_PID: The native credentials type is a PID `DWORD`. Added in 2.72.
*
* Enumeration describing different kinds of native credential types.
*
@@ -1451,6 +1456,7 @@ typedef enum
G_CREDENTIALS_TYPE_SOLARIS_UCRED,
G_CREDENTIALS_TYPE_NETBSD_UNPCBID,
G_CREDENTIALS_TYPE_APPLE_XUCRED,
+ G_CREDENTIALS_TYPE_WIN32_PID,
} GCredentialsType;
/**
@@ -1548,6 +1554,8 @@ typedef enum
* @G_TLS_ERROR_INAPPROPRIATE_FALLBACK: The TLS handshake failed
* because the client sent the fallback SCSV, indicating a protocol
* downgrade attack. Since: 2.60
+ * @G_TLS_ERROR_BAD_CERTIFICATE_PASSWORD: The certificate failed
+ * to load because a password was incorrect. Since: 2.72
*
* An error code used with %G_TLS_ERROR in a #GError returned from a
* TLS-related routine.
@@ -1562,7 +1570,8 @@ typedef enum {
G_TLS_ERROR_HANDSHAKE,
G_TLS_ERROR_CERTIFICATE_REQUIRED,
G_TLS_ERROR_EOF,
- G_TLS_ERROR_INAPPROPRIATE_FALLBACK
+ G_TLS_ERROR_INAPPROPRIATE_FALLBACK,
+ G_TLS_ERROR_BAD_CERTIFICATE_PASSWORD
} GTlsError;
/**
@@ -1584,10 +1593,16 @@ typedef enum {
* flags
*
* A set of flags describing TLS certification validation. This can be
- * used to set which validation steps to perform (eg, with
- * g_tls_client_connection_set_validation_flags()), or to describe why
- * a particular certificate was rejected (eg, in
- * #GTlsConnection::accept-certificate).
+ * used to describe why a particular certificate was rejected (for
+ * example, in #GTlsConnection::accept-certificate).
+ *
+ * GLib guarantees that if certificate verification fails, at least one
+ * flag will be set, but it does not guarantee that all possible flags
+ * will be set. Accordingly, you may not safely decide to ignore any
+ * particular type of error. For example, it would be incorrect to mask
+ * %G_TLS_CERTIFICATE_EXPIRED if you want to allow expired certificates,
+ * because this could potentially be the only error flag set even if
+ * other problems exist with the certificate.
*
* Since: 2.28
*/
@@ -1973,6 +1988,9 @@ typedef enum /*< flags >*/ {
* file descriptors of their parent, unless those descriptors have
* been explicitly marked as close-on-exec. This flag has no effect
* over the "standard" file descriptors (stdin, stdout, stderr).
+ * @G_SUBPROCESS_FLAGS_SEARCH_PATH_FROM_ENVP: if path searching is
+ * needed when spawning the subprocess, use the `PATH` in the launcher
+ * environment. (Since: 2.72)
*
* Flags to define the behaviour of a #GSubprocess.
*
@@ -1995,7 +2013,8 @@ typedef enum {
G_SUBPROCESS_FLAGS_STDERR_PIPE = (1u << 4),
G_SUBPROCESS_FLAGS_STDERR_SILENCE = (1u << 5),
G_SUBPROCESS_FLAGS_STDERR_MERGE = (1u << 6),
- G_SUBPROCESS_FLAGS_INHERIT_FDS = (1u << 7)
+ G_SUBPROCESS_FLAGS_INHERIT_FDS = (1u << 7),
+ G_SUBPROCESS_FLAGS_SEARCH_PATH_FROM_ENVP = (1u << 8)
} GSubprocessFlags;
/**
diff --git a/gio/giomodule.c b/gio/giomodule.c
index d34037a45..2a043ccd9 100644
--- a/gio/giomodule.c
+++ b/gio/giomodule.c
@@ -45,6 +45,8 @@
#include "gnotificationbackend.h"
#include "ginitable.h"
#include "gnetworkmonitor.h"
+#include "gdebugcontroller.h"
+#include "gdebugcontrollerdbus.h"
#include "gmemorymonitor.h"
#include "gmemorymonitorportal.h"
#include "gmemorymonitordbus.h"
@@ -68,6 +70,10 @@
#include <AvailabilityMacros.h>
#endif
+#define __GLIB_H_INSIDE__
+#include "gconstructor.h"
+#undef __GLIB_H_INSIDE__
+
/**
* SECTION:giomodule
* @short_description: Loadable GIO Modules
@@ -1078,8 +1084,10 @@ extern GType _g_network_monitor_netlink_get_type (void);
extern GType _g_network_monitor_nm_get_type (void);
#endif
+extern GType g_debug_controller_dbus_get_type (void);
extern GType g_memory_monitor_dbus_get_type (void);
extern GType g_memory_monitor_portal_get_type (void);
+extern GType g_memory_monitor_win32_get_type (void);
extern GType g_power_profile_monitor_dbus_get_type (void);
#ifdef G_OS_UNIX
@@ -1102,7 +1110,7 @@ extern GType _g_win32_network_monitor_get_type (void);
static HMODULE gio_dll = NULL;
-#ifdef DLL_EXPORT
+#ifndef GLIB_STATIC_COMPILATION
BOOL WINAPI DllMain (HINSTANCE hinstDLL,
DWORD fdwReason,
@@ -1122,8 +1130,40 @@ DllMain (HINSTANCE hinstDLL,
return TRUE;
}
+#elif defined(G_HAS_CONSTRUCTORS) /* && G_PLATFORM_WIN32 && GLIB_STATIC_COMPILATION */
+extern void glib_win32_init (void);
+extern void gobject_win32_init (void);
+
+#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA
+#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(giomodule_init_ctor)
#endif
+G_DEFINE_CONSTRUCTOR (giomodule_init_ctor)
+
+static void
+giomodule_init_ctor (void)
+{
+ /* When built dynamically, module initialization is done through DllMain
+ * function which is called when the dynamic library is loaded by the glib
+ * module AFTER loading gobject. So, in dynamic configuration glib and
+ * gobject are always initialized BEFORE gio.
+ *
+ * When built statically, initialization mechanism relies on hooking
+ * functions to the CRT section directly at compilation time. As we don't
+ * control how each compilation unit will be built and in which order, we
+ * obtain the same kind of issue as the "static initialization order fiasco".
+ * In this case, we must ensure explicitly that glib and gobject are always
+ * well initialized BEFORE gio.
+ */
+ glib_win32_init ();
+ gobject_win32_init ();
+ gio_win32_appinfo_init (FALSE);
+}
+
+#else /* G_PLATFORM_WIN32 && GLIB_STATIC_COMPILATION && !G_HAS_CONSTRUCTORS */
+#error Your platform/compiler is missing constructor support
+#endif /* GLIB_STATIC_COMPILATION */
+
void *
_g_io_win32_get_module (void)
{
@@ -1135,7 +1175,7 @@ _g_io_win32_get_module (void)
return gio_dll;
}
-#endif
+#endif /* G_PLATFORM_WIN32 */
void
_g_io_modules_ensure_extension_points_registered (void)
@@ -1189,6 +1229,9 @@ _g_io_modules_ensure_extension_points_registered (void)
ep = g_io_extension_point_register (G_NOTIFICATION_BACKEND_EXTENSION_POINT_NAME);
g_io_extension_point_set_required_type (ep, G_TYPE_NOTIFICATION_BACKEND);
+ ep = g_io_extension_point_register (G_DEBUG_CONTROLLER_EXTENSION_POINT_NAME);
+ g_io_extension_point_set_required_type (ep, G_TYPE_DEBUG_CONTROLLER);
+
ep = g_io_extension_point_register (G_MEMORY_MONITOR_EXTENSION_POINT_NAME);
g_io_extension_point_set_required_type (ep, G_TYPE_MEMORY_MONITOR);
@@ -1300,6 +1343,7 @@ _g_io_modules_ensure_loaded (void)
#endif
#ifdef G_OS_UNIX
g_type_ensure (_g_unix_volume_monitor_get_type ());
+ g_type_ensure (g_debug_controller_dbus_get_type ());
g_type_ensure (g_fdo_notification_backend_get_type ());
g_type_ensure (g_gtk_notification_backend_get_type ());
g_type_ensure (g_portal_notification_backend_get_type ());
@@ -1315,6 +1359,7 @@ _g_io_modules_ensure_loaded (void)
#ifdef G_OS_WIN32
g_type_ensure (g_win32_notification_backend_get_type ());
g_type_ensure (_g_winhttp_vfs_get_type ());
+ g_type_ensure (g_memory_monitor_win32_get_type ());
#endif
g_type_ensure (_g_local_vfs_get_type ());
g_type_ensure (_g_dummy_proxy_resolver_get_type ());
@@ -1429,7 +1474,7 @@ g_io_extension_point_set_required_type (GIOExtensionPoint *extension_point,
* Gets the required type for @extension_point.
*
* Returns: the #GType that all implementations must have,
- * or #G_TYPE_INVALID if the extension point has no required type
+ * or %G_TYPE_INVALID if the extension point has no required type
*/
GType
g_io_extension_point_get_required_type (GIOExtensionPoint *extension_point)
diff --git a/gio/giomodule.h b/gio/giomodule.h
index e94b8099d..4457c498e 100644
--- a/gio/giomodule.h
+++ b/gio/giomodule.h
@@ -104,7 +104,7 @@ GTypeClass* g_io_extension_ref_class (GIOExtension
/* API for the modules to implement */
/**
- * g_io_module_load:
+ * g_io_module_load: (skip)
* @module: a #GIOModule.
*
* Required API for GIO modules to implement.
@@ -125,7 +125,7 @@ GLIB_AVAILABLE_IN_ALL
void g_io_module_load (GIOModule *module);
/**
- * g_io_module_unload:
+ * g_io_module_unload: (skip)
* @module: a #GIOModule.
*
* Required API for GIO modules to implement.
diff --git a/gio/giowin32-afunix.h b/gio/giowin32-afunix.h
new file mode 100644
index 000000000..0e8e27f08
--- /dev/null
+++ b/gio/giowin32-afunix.h
@@ -0,0 +1,40 @@
+/* GIO - GLib Input, Output and Streaming Library
+ *
+ * Copyright (C) 2022 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef GIOWIN32_AFUNIX_H_
+#define GIOWIN32_AFUNIX_H_
+
+#ifdef HAVE_AFUNIX_H
+#include <afunix.h>
+#else
+
+/*
+ * Fallback definitions of things we need in afunix.h, if not available from the
+ * used Windows SDK or MinGW headers.
+ */
+#define UNIX_PATH_MAX 108
+
+typedef struct sockaddr_un {
+ ADDRESS_FAMILY sun_family;
+ char sun_path[UNIX_PATH_MAX];
+} SOCKADDR_UN, *PSOCKADDR_UN;
+
+#define SIO_AF_UNIX_GETPEERPID _WSAIOR(IOC_VENDOR, 256)
+#endif
+
+#endif /* GIOWIN32_AFUNIX_H_*/
diff --git a/gio/glib-compile-resources.c b/gio/glib-compile-resources.c
index ac95801f4..82f19563a 100644
--- a/gio/glib-compile-resources.c
+++ b/gio/glib-compile-resources.c
@@ -710,6 +710,86 @@ escape_makefile_string (const char *string)
return g_string_free (str, FALSE);
}
+typedef enum {
+ COMPILER_GCC,
+ COMPILER_CLANG,
+ COMPILER_MSVC,
+ COMPILER_UNKNOWN
+} CompilerType;
+
+/* Get the compiler id from the platform, environment, or command line
+ *
+ * Keep compiler IDs consistent with https://mesonbuild.com/Reference-tables.html#compiler-ids
+ * for simplicity
+ */
+static CompilerType
+get_compiler_id (const char *compiler)
+{
+ char *base, *ext_p;
+ CompilerType compiler_type;
+
+ if (compiler == NULL)
+ {
+#ifdef G_OS_UNIX
+ const char *compiler_env = g_getenv ("CC");
+
+# ifdef __APPLE__
+ if (compiler_env == NULL || *compiler_env == '\0')
+ compiler = "clang";
+ else
+ compiler = compiler_env;
+# elif __linux__
+ if (compiler_env == NULL || *compiler_env == '\0')
+ compiler = "gcc";
+ else
+ compiler = compiler_env;
+# else
+ if (compiler_env == NULL || *compiler_env == '\0')
+ compiler = "unknown";
+ else
+ compiler = compiler_env;
+# endif
+#endif
+
+#ifdef G_OS_WIN32
+ if (g_getenv ("MSYSTEM") != NULL)
+ {
+ const char *compiler_env = g_getenv ("CC");
+
+ if (compiler_env == NULL || *compiler_env == '\0')
+ compiler = "gcc";
+ else
+ compiler = compiler_env;
+ }
+ else
+ compiler = "msvc";
+#endif
+ }
+
+ base = g_path_get_basename (compiler);
+ ext_p = strrchr (base, '.');
+ if (ext_p != NULL)
+ {
+ gsize offset = ext_p - base;
+ base[offset] = '\0';
+ }
+
+ compiler = base;
+
+ if (g_strcmp0 (compiler, "gcc") == 0)
+ compiler_type = COMPILER_GCC;
+ else if (g_strcmp0 (compiler, "clang") == 0)
+ compiler_type = COMPILER_CLANG;
+ else if (g_strcmp0 (compiler, "msvc") == 0)
+ compiler_type = COMPILER_MSVC;
+ else
+ compiler_type = COMPILER_UNKNOWN;
+
+ g_free (base);
+
+ return compiler_type;
+}
+
int
main (int argc, char **argv)
{
@@ -732,6 +812,8 @@ main (int argc, char **argv)
char *c_name = NULL;
char *c_name_no_underscores;
const char *linkage = "extern";
+ char *compiler = NULL;
+ CompilerType compiler_type = COMPILER_GCC;
GOptionContext *context;
GOptionEntry entries[] = {
{ "version", 0, 0, G_OPTION_ARG_NONE, &show_version_and_exit, N_("Show program version and exit"), NULL },
@@ -747,6 +829,7 @@ main (int argc, char **argv)
{ "internal", 0, 0, G_OPTION_ARG_NONE, &internal, N_("Don’t export functions; declare them G_GNUC_INTERNAL"), NULL },
{ "external-data", 0, 0, G_OPTION_ARG_NONE, &external_data, N_("Don’t embed resource data in the C file; assume it's linked externally instead"), NULL },
{ "c-name", 0, 0, G_OPTION_ARG_STRING, &c_name, N_("C identifier name used for the generated source code"), NULL },
+ { "compiler", 'C', 0, G_OPTION_ARG_STRING, &compiler, N_("The target C compiler (default: the CC environment variable)"), NULL },
G_OPTION_ENTRY_NULL
};
@@ -802,6 +885,9 @@ main (int argc, char **argv)
if (internal)
linkage = "G_GNUC_INTERNAL";
+ compiler_type = get_compiler_id (compiler);
+ g_free (compiler);
+
srcfile = argv[1];
xmllint = g_strdup (g_getenv ("XMLLINT"));
@@ -1105,40 +1191,41 @@ main (int argc, char **argv)
}
else
{
- /* For Visual Studio builds: Avoid surpassing the 65535-character limit for a string, GitLab issue #1580 */
- g_fprintf (file, "#ifdef _MSC_VER\n");
- g_fprintf (file,
- "static const SECTION union { const guint8 data[%"G_GSIZE_FORMAT"]; const double alignment; void * const ptr;} %s_resource_data = { {\n",
- data_size + 1 /* nul terminator */, c_name);
-
- for (i = 0; i < data_size; i++)
+ if (compiler_type == COMPILER_MSVC || compiler_type == COMPILER_UNKNOWN)
{
- if (i % 16 == 0)
- g_fprintf (file, " ");
- g_fprintf (file, "0%3.3o", (int)data[i]);
- if (i != data_size - 1)
- g_fprintf (file, ", ");
- if (i % 16 == 15 || i == data_size - 1)
- g_fprintf (file, "\n");
- }
+ /* For Visual Studio builds: Avoid surpassing the 65535-character limit for a string, GitLab issue #1580 */
+ g_fprintf (file,
+ "static const SECTION union { const guint8 data[%"G_GSIZE_FORMAT"]; const double alignment; void * const ptr;} %s_resource_data = { {\n",
+ data_size + 1 /* nul terminator */, c_name);
- g_fprintf (file, "} };\n");
-
- /* For other compilers, use the long string approach */
- g_fprintf (file, "#else /* _MSC_VER */\n");
- g_fprintf (file,
- "static const SECTION union { const guint8 data[%"G_GSIZE_FORMAT"]; const double alignment; void * const ptr;} %s_resource_data = {\n \"",
- data_size + 1 /* nul terminator */, c_name);
+ for (i = 0; i < data_size; i++)
+ {
+ if (i % 16 == 0)
+ g_fprintf (file, " ");
+ g_fprintf (file, "0%3.3o", (int)data[i]);
+ if (i != data_size - 1)
+ g_fprintf (file, ", ");
+ if (i % 16 == 15 || i == data_size - 1)
+ g_fprintf (file, "\n");
+ }
- for (i = 0; i < data_size; i++)
- {
- g_fprintf (file, "\\%3.3o", (int)data[i]);
- if (i % 16 == 15)
- g_fprintf (file, "\"\n \"");
+ g_fprintf (file, "} };\n");
}
+ else
+ {
+ g_fprintf (file,
+ "static const SECTION union { const guint8 data[%"G_GSIZE_FORMAT"]; const double alignment; void * const ptr;} %s_resource_data = {\n \"",
+ data_size + 1 /* nul terminator */, c_name);
- g_fprintf (file, "\" };\n");
- g_fprintf (file, "#endif /* !_MSC_VER */\n");
+ for (i = 0; i < data_size; i++)
+ {
+ g_fprintf (file, "\\%3.3o", (int)data[i]);
+ if (i % 16 == 15)
+ g_fprintf (file, "\"\n \"");
+ }
+
+ g_fprintf (file, "\" };\n");
+ }
}
g_fprintf (file,
diff --git a/gio/glib-compile-schemas.c b/gio/glib-compile-schemas.c
index 7e1152f6b..83184e1e8 100644
--- a/gio/glib-compile-schemas.c
+++ b/gio/glib-compile-schemas.c
@@ -1038,7 +1038,7 @@ schema_state_add_override (SchemaState *state,
GError **error)
{
SchemaState *parent;
- KeyState *original;
+ KeyState *original = NULL;
if (state->extends == NULL)
{
@@ -1386,14 +1386,14 @@ start_element (GMarkupParseContext *context,
}
else if (strcmp (element_name, "override") == 0)
{
- const gchar *name, *l10n, *context;
+ const gchar *name, *l10n, *str_context;
- if (COLLECT (STRING, "name", &name,
- OPTIONAL | STRING, "l10n", &l10n,
- OPTIONAL | STRING, "context", &context))
+ if (COLLECT (STRING, "name", &name,
+ OPTIONAL | STRING, "l10n", &l10n,
+ OPTIONAL | STRING, "context", &str_context))
schema_state_add_override (state->schema_state,
&state->key_state, &state->string,
- name, l10n, context, error);
+ name, l10n, str_context, error);
return;
}
}
@@ -1403,11 +1403,11 @@ start_element (GMarkupParseContext *context,
{
if (strcmp (element_name, "default") == 0)
{
- const gchar *l10n, *context;
- if (COLLECT (STRING | OPTIONAL, "l10n", &l10n,
- STRING | OPTIONAL, "context", &context))
+ const gchar *l10n, *str_context;
+ if (COLLECT (STRING | OPTIONAL, "l10n", &l10n,
+ STRING | OPTIONAL, "context", &str_context))
state->string = key_state_start_default (state->key_state,
- l10n, context, error);
+ l10n, str_context, error);
return;
}
diff --git a/gio/glistmodel.c b/gio/glistmodel.c
index eb797caaf..0411353c2 100644
--- a/gio/glistmodel.c
+++ b/gio/glistmodel.c
@@ -135,7 +135,7 @@ g_list_model_default_init (GListModelInterface *iface)
* from @list. At @position, @removed items were removed and @added
* items were added in their place.
*
- * Note: If @removed != @added, the positions of all later items
+ * Note: If `removed != added`, the positions of all later items
* in the model change.
*
* Since: 2.44
@@ -157,9 +157,11 @@ g_list_model_default_init (GListModelInterface *iface)
* g_list_model_get_item_type:
* @list: a #GListModel
*
- * Gets the type of the items in @list. All items returned from
- * g_list_model_get_type() are of that type or a subtype, or are an
- * implementation of that interface.
+ * Gets the type of the items in @list.
+ *
+ * All items returned from g_list_model_get_item() are of the type
+ * returned by this function, or a subtype, or if the type is an
+ * interface, they are an implementation of that interface.
*
* The item type of a #GListModel can not change during the life of the
* model.
@@ -203,11 +205,15 @@ g_list_model_get_n_items (GListModel *list)
* @list: a #GListModel
* @position: the position of the item to fetch
*
- * Get the item at @position. If @position is greater than the number of
- * items in @list, %NULL is returned.
+ * Get the item at @position.
+ *
+ * If @position is greater than the number of items in @list, %NULL is
+ * returned.
*
* %NULL is never returned for an index that is smaller than the length
- * of the list. See g_list_model_get_n_items().
+ * of the list.
+ *
+ * See also: g_list_model_get_n_items()
*
* Returns: (transfer full) (nullable): the item at @position.
*
@@ -227,11 +233,18 @@ g_list_model_get_item (GListModel *list,
* @list: a #GListModel
* @position: the position of the item to fetch
*
- * Get the item at @position. If @position is greater than the number of
- * items in @list, %NULL is returned.
+ * Get the item at @position.
+ *
+ * If @position is greater than the number of items in @list, %NULL is
+ * returned.
*
* %NULL is never returned for an index that is smaller than the length
- * of the list. See g_list_model_get_n_items().
+ * of the list.
+ *
+ * This function is meant to be used by language bindings in place
+ * of g_list_model_get_item().
+ *
+ * See also: g_list_model_get_n_items()
*
* Returns: (transfer full) (nullable): the object at @position.
*
diff --git a/gio/glocalfileinfo.h b/gio/glocalfileinfo.h
index e04e921f2..f73804516 100644
--- a/gio/glocalfileinfo.h
+++ b/gio/glocalfileinfo.h
@@ -297,7 +297,7 @@ inline static guint32 _g_stat_nlink (const GLocalFileStat *buf) { return b
#endif
inline static dev_t _g_stat_dev (const GLocalFileStat *buf) { return buf->st_dev; }
inline static ino_t _g_stat_ino (const GLocalFileStat *buf) { return buf->st_ino; }
-inline static off_t _g_stat_size (const GLocalFileStat *buf) { return buf->st_size; }
+inline static goffset _g_stat_size (const GLocalFileStat *buf) { return buf->st_size; }
#ifndef G_OS_WIN32
inline static uid_t _g_stat_uid (const GLocalFileStat *buf) { return buf->st_uid; }
@@ -317,11 +317,19 @@ inline static blkcnt_t _g_stat_blocks (const GLocalFileStat *buf) { return b
inline static time_t _g_stat_atime (const GLocalFileStat *buf) { return buf->st_atime; }
inline static time_t _g_stat_ctime (const GLocalFileStat *buf) { return buf->st_ctime; }
inline static time_t _g_stat_mtime (const GLocalFileStat *buf) { return buf->st_mtime; }
+#else
+inline static time_t _g_stat_atime (const GLocalFileStat *buf) { return buf->st_atim.tv_sec; }
+inline static time_t _g_stat_ctime (const GLocalFileStat *buf) { return buf->st_ctim.tv_sec; }
+inline static time_t _g_stat_mtime (const GLocalFileStat *buf) { return buf->st_mtim.tv_sec; }
#endif
-#ifdef HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC
+#if defined(HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC) || defined(G_OS_WIN32)
inline static guint32 _g_stat_atim_nsec (const GLocalFileStat *buf) { return buf->st_atim.tv_nsec; }
inline static guint32 _g_stat_ctim_nsec (const GLocalFileStat *buf) { return buf->st_ctim.tv_nsec; }
inline static guint32 _g_stat_mtim_nsec (const GLocalFileStat *buf) { return buf->st_mtim.tv_nsec; }
+#else
+inline static guint32 _g_stat_atim_nsec (const GLocalFileStat *buf) { return 0; }
+inline static guint32 _g_stat_ctim_nsec (const GLocalFileStat *buf) { return 0; }
+inline static guint32 _g_stat_mtim_nsec (const GLocalFileStat *buf) { return 0; }
#endif
#endif /* !HAVE_STATX */
diff --git a/gio/glocalfilemonitor.c b/gio/glocalfilemonitor.c
index 7e922561a..68afd7b51 100644
--- a/gio/glocalfilemonitor.c
+++ b/gio/glocalfilemonitor.c
@@ -348,7 +348,6 @@ g_file_monitor_source_handle_event (GFileMonitorSource *fms,
gint64 event_time)
{
gboolean interesting = TRUE;
- GFileMonitor *instance = NULL;
g_assert (!child || is_basename (child));
g_assert (!rename_to || is_basename (rename_to));
@@ -359,9 +358,24 @@ g_file_monitor_source_handle_event (GFileMonitorSource *fms,
g_mutex_lock (&fms->lock);
- /* monitor is already gone -- don't bother */
- instance = g_weak_ref_get (&fms->instance_ref);
- if (instance == NULL)
+ /* NOTE:
+ *
+ * We process events even if the file monitor has already been disposed.
+ * The reason is that we must not take a reference to the instance here as
+ * destroying it from the event handling thread will lead to a deadlock when
+ * taking the lock in _ih_sub_cancel.
+ *
+ * This results in seemingly-unbounded growth of the `event_queue` with the
+ * calls to `g_file_monitor_source_queue_event()`. However, each of those sets
+ * the ready time on the #GSource, which means that it will be dispatched in
+ * a subsequent iteration of the #GMainContext it’s attached to. At that
+ * point, `g_file_monitor_source_dispatch()` will return %FALSE, and this will
+ * trigger finalisation of the source. That will clear the `event_queue`.
+ *
+ * If the source is no longer attached, this will return early to prevent
+ * unbounded queueing.
+ */
+ if (g_source_is_destroyed ((GSource *) fms))
{
g_mutex_unlock (&fms->lock);
return TRUE;
@@ -406,7 +420,7 @@ g_file_monitor_source_handle_event (GFileMonitorSource *fms,
g_assert (!other && rename_to);
if (fms->flags & (G_FILE_MONITOR_WATCH_MOVES | G_FILE_MONITOR_SEND_MOVED))
{
- GFile *other;
+ GFile *other_file;
const gchar *dirname;
gchar *allocated_dirname = NULL;
GFileMonitorEvent event;
@@ -421,11 +435,11 @@ g_file_monitor_source_handle_event (GFileMonitorSource *fms,
dirname = allocated_dirname;
}
- other = g_local_file_new_from_dirname_and_basename (dirname, rename_to);
+ other_file = g_local_file_new_from_dirname_and_basename (dirname, rename_to);
g_file_monitor_source_file_changes_done (fms, rename_to);
- g_file_monitor_source_send_event (fms, event, child, other);
+ g_file_monitor_source_send_event (fms, event, child, other_file);
- g_object_unref (other);
+ g_object_unref (other_file);
g_free (allocated_dirname);
}
else
@@ -452,7 +466,6 @@ g_file_monitor_source_handle_event (GFileMonitorSource *fms,
g_file_monitor_source_update_ready_time (fms);
g_mutex_unlock (&fms->lock);
- g_clear_object (&instance);
return interesting;
}
@@ -599,9 +612,9 @@ g_file_monitor_source_dispose (GFileMonitorSource *fms)
g_file_monitor_source_update_ready_time (fms);
- g_mutex_unlock (&fms->lock);
-
g_source_destroy ((GSource *) fms);
+
+ g_mutex_unlock (&fms->lock);
}
static void
diff --git a/gio/glocalfileoutputstream.c b/gio/glocalfileoutputstream.c
index 71a992668..5d6a48840 100644
--- a/gio/glocalfileoutputstream.c
+++ b/gio/glocalfileoutputstream.c
@@ -855,7 +855,7 @@ handle_overwrite_open (const char *filename,
int open_flags;
int res;
int mode;
- int errsv;
+ int errsv = 0;
gboolean replace_destination_set = (flags & G_FILE_CREATE_REPLACE_DESTINATION);
mode = mode_from_flags_or_info (flags, reference_info);
@@ -1179,7 +1179,7 @@ handle_overwrite_open (const char *filename,
/* Seek back to the start of the file after the backup copy */
if (lseek (fd, 0, SEEK_SET) == -1)
{
- int errsv = errno;
+ errsv = errno;
g_set_error (error, G_IO_ERROR,
g_io_error_from_errno (errsv),
@@ -1195,7 +1195,7 @@ handle_overwrite_open (const char *filename,
if (g_unlink (filename) != 0)
{
- int errsv = errno;
+ errsv = errno;
g_set_error (error, G_IO_ERROR,
g_io_error_from_errno (errsv),
@@ -1211,8 +1211,10 @@ handle_overwrite_open (const char *filename,
fd = g_open (filename, open_flags, mode);
if (fd == -1)
{
- int errsv = errno;
- char *display_name = g_filename_display_name (filename);
+ char *display_name;
+ errsv = errno;
+ display_name = g_filename_display_name (filename);
+
g_set_error (error, G_IO_ERROR,
g_io_error_from_errno (errsv),
_("Error opening file “%sâ€: %s"),
@@ -1230,7 +1232,7 @@ handle_overwrite_open (const char *filename,
if (ftruncate (fd, 0) == -1)
#endif
{
- int errsv = errno;
+ errsv = errno;
g_set_error (error, G_IO_ERROR,
g_io_error_from_errno (errsv),
diff --git a/gio/gmemorymonitorwin32.c b/gio/gmemorymonitorwin32.c
new file mode 100644
index 000000000..c0e09a5bf
--- /dev/null
+++ b/gio/gmemorymonitorwin32.c
@@ -0,0 +1,261 @@
+/* GIO - GLib Input, Output and Streaming Library
+ *
+ * Copyright 2022 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "config.h"
+
+#include "gmemorymonitor.h"
+#include "gioerror.h"
+#include "ginitable.h"
+#include "giomodule-priv.h"
+#include "glibintl.h"
+#include "glib/gstdio.h"
+#include "gcancellable.h"
+
+#include <windows.h>
+
+#define G_TYPE_MEMORY_MONITOR_WIN32 (g_memory_monitor_win32_get_type ())
+G_DECLARE_FINAL_TYPE (GMemoryMonitorWin32, g_memory_monitor_win32, G, MEMORY_MONITOR_WIN32, GObject)
+
+#define G_MEMORY_MONITOR_WIN32_GET_INITABLE_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), G_TYPE_INITABLE, GInitable))
+
+static void g_memory_monitor_win32_iface_init (GMemoryMonitorInterface *iface);
+static void g_memory_monitor_win32_initable_iface_init (GInitableIface *iface);
+
+struct _GMemoryMonitorWin32
+{
+ GObject parent_instance;
+
+ HANDLE event;
+ HANDLE mem;
+ HANDLE thread;
+};
+
+G_DEFINE_TYPE_WITH_CODE (GMemoryMonitorWin32, g_memory_monitor_win32, G_TYPE_OBJECT,
+ G_IMPLEMENT_INTERFACE (G_TYPE_INITABLE,
+ g_memory_monitor_win32_initable_iface_init)
+ G_IMPLEMENT_INTERFACE (G_TYPE_MEMORY_MONITOR,
+ g_memory_monitor_win32_iface_init)
+ _g_io_modules_ensure_extension_points_registered ();
+ g_io_extension_point_implement (G_MEMORY_MONITOR_EXTENSION_POINT_NAME,
+ g_define_type_id,
+ "win32",
+ 30))
+
+static void
+g_memory_monitor_win32_init (GMemoryMonitorWin32 *win32)
+{
+}
+
+static gboolean
+watch_handler (gpointer user_data)
+{
+ GMemoryMonitorWin32 *win32 = user_data;
+
+ g_signal_emit_by_name (win32, "low-memory-warning",
+ G_MEMORY_MONITOR_WARNING_LEVEL_LOW);
+
+ return G_SOURCE_REMOVE;
+}
+
+/* Thread which watches for win32 memory resource events */
+static DWORD WINAPI
+watch_thread_function (LPVOID parameter)
+{
+ GWeakRef *weak_ref = parameter;
+ GMemoryMonitorWin32 *win32 = NULL;
+ HANDLE handles[2] = { 0, };
+ DWORD result;
+ BOOL low_memory_state;
+
+ win32 = g_weak_ref_get (weak_ref);
+ if (!win32)
+ goto end;
+
+ if (!DuplicateHandle (GetCurrentProcess (),
+ win32->event,
+ GetCurrentProcess (),
+ &handles[0],
+ 0,
+ FALSE,
+ DUPLICATE_SAME_ACCESS))
+ {
+ gchar *emsg;
+
+ emsg = g_win32_error_message (GetLastError ());
+ g_debug ("DuplicateHandle failed: %s", emsg);
+ g_free (emsg);
+ goto end;
+ }
+
+ if (!DuplicateHandle (GetCurrentProcess (),
+ win32->mem,
+ GetCurrentProcess (),
+ &handles[1],
+ 0,
+ FALSE,
+ DUPLICATE_SAME_ACCESS))
+ {
+ gchar *emsg;
+
+ emsg = g_win32_error_message (GetLastError ());
+ g_debug ("DuplicateHandle failed: %s", emsg);
+ g_free (emsg);
+ goto end;
+ }
+
+ g_clear_object (&win32);
+
+ while (1)
+ {
+ if (!QueryMemoryResourceNotification (handles[1], &low_memory_state))
+ {
+ gchar *emsg;
+
+ emsg = g_win32_error_message (GetLastError ());
+ g_debug ("QueryMemoryResourceNotification failed: %s", emsg);
+ g_free (emsg);
+ break;
+ }
+
+ win32 = g_weak_ref_get (weak_ref);
+ if (!win32)
+ break;
+
+ if (low_memory_state)
+ {
+ g_idle_add_full (G_PRIORITY_DEFAULT,
+ watch_handler,
+ g_steal_pointer (&win32),
+ g_object_unref);
+ /* throttle a bit the loop */
+ g_usleep (G_USEC_PER_SEC);
+ continue;
+ }
+
+ g_clear_object (&win32);
+
+ result = WaitForMultipleObjects (G_N_ELEMENTS (handles), handles, FALSE, INFINITE);
+ switch (result)
+ {
+ case WAIT_OBJECT_0 + 1:
+ continue;
+
+ case WAIT_FAILED:
+ {
+ gchar *emsg;
+
+ emsg = g_win32_error_message (GetLastError ());
+ g_debug ("WaitForMultipleObjects failed: %s", emsg);
+ g_free (emsg);
+ }
+ G_GNUC_FALLTHROUGH;
+ default:
+ goto end;
+ }
+ }
+
+end:
+ if (handles[0])
+ CloseHandle (handles[0]);
+ if (handles[1])
+ CloseHandle (handles[1]);
+ g_clear_object (&win32);
+ g_weak_ref_clear (weak_ref);
+ g_free (weak_ref);
+ return 0;
+}
+
+static gboolean
+g_memory_monitor_win32_initable_init (GInitable *initable,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GMemoryMonitorWin32 *win32 = G_MEMORY_MONITOR_WIN32 (initable);
+ GWeakRef *weak_ref = NULL;
+
+ win32->event = CreateEvent (NULL, FALSE, FALSE, NULL);
+ if (win32->event == NULL)
+ {
+ g_set_error_literal (error, G_IO_ERROR, g_io_error_from_errno (GetLastError ()),
+ "Failed to create event");
+ return FALSE;
+ }
+
+ win32->mem = CreateMemoryResourceNotification (LowMemoryResourceNotification);
+ if (win32->mem == NULL)
+ {
+ g_set_error_literal (error, G_IO_ERROR, g_io_error_from_errno (GetLastError ()),
+ "Failed to create resource notification handle");
+ return FALSE;
+ }
+
+ weak_ref = g_new0 (GWeakRef, 1);
+ g_weak_ref_init (weak_ref, win32);
+ /* Use CreateThread (not GThread) with a small stack to make it more lightweight. */
+ win32->thread = CreateThread (NULL, 1024, watch_thread_function, weak_ref, 0, NULL);
+ if (win32->thread == NULL)
+ {
+ g_set_error_literal (error, G_IO_ERROR, g_io_error_from_errno (GetLastError ()),
+ "Failed to create memory resource notification thread");
+ g_weak_ref_clear (weak_ref);
+ g_free (weak_ref);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+static void
+g_memory_monitor_win32_finalize (GObject *object)
+{
+ GMemoryMonitorWin32 *win32 = G_MEMORY_MONITOR_WIN32 (object);
+
+ if (win32->thread)
+ {
+ SetEvent (win32->event);
+ WaitForSingleObject (win32->thread, INFINITE);
+ CloseHandle (win32->thread);
+ }
+
+ if (win32->event)
+ CloseHandle (win32->event);
+
+ if (win32->mem)
+ CloseHandle (win32->mem);
+
+ G_OBJECT_CLASS (g_memory_monitor_win32_parent_class)->finalize (object);
+}
+
+static void
+g_memory_monitor_win32_class_init (GMemoryMonitorWin32Class *nl_class)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (nl_class);
+
+ gobject_class->finalize = g_memory_monitor_win32_finalize;
+}
+
+static void
+g_memory_monitor_win32_iface_init (GMemoryMonitorInterface *monitor_iface)
+{
+}
+
+static void
+g_memory_monitor_win32_initable_iface_init (GInitableIface *iface)
+{
+ iface->init = g_memory_monitor_win32_initable_init;
+}
diff --git a/gio/gmemoryoutputstream.c b/gio/gmemoryoutputstream.c
index b120ccedc..6a410ebb5 100644
--- a/gio/gmemoryoutputstream.c
+++ b/gio/gmemoryoutputstream.c
@@ -29,6 +29,7 @@
#include "gioerror.h"
#include "string.h"
#include "glibintl.h"
+#include "gutilsprivate.h"
/**
@@ -596,17 +597,6 @@ array_resize (GMemoryOutputStream *ostream,
return TRUE;
}
-static gsize
-g_nearest_pow (gsize num)
-{
- gsize n = 1;
-
- while (n < num && n > 0)
- n <<= 1;
-
- return n;
-}
-
static gssize
g_memory_output_stream_write (GOutputStream *stream,
const void *buffer,
diff --git a/gio/gnetworkservice.c b/gio/gnetworkservice.c
index 2b8571e9b..f5ba9d848 100644
--- a/gio/gnetworkservice.c
+++ b/gio/gnetworkservice.c
@@ -445,7 +445,7 @@ g_network_service_address_enumerator_next (GSocketAddressEnumerator *enumerator
{
if (srv_enum->addr_enum == NULL && srv_enum->t)
{
- GError *error = NULL;
+ GError *my_error = NULL;
gchar *uri;
gchar *hostname;
GSocketConnectable *addr;
@@ -477,15 +477,15 @@ g_network_service_address_enumerator_next (GSocketAddressEnumerator *enumerator
addr = g_network_address_parse_uri (uri,
g_srv_target_get_port (target),
- &error);
+ &my_error);
g_free (uri);
if (addr == NULL)
{
if (srv_enum->error == NULL)
- srv_enum->error = error;
+ srv_enum->error = my_error;
else
- g_error_free (error);
+ g_error_free (my_error);
continue;
}
@@ -498,18 +498,18 @@ g_network_service_address_enumerator_next (GSocketAddressEnumerator *enumerator
if (srv_enum->addr_enum)
{
- GError *error = NULL;
+ GError *my_error = NULL;
ret = g_socket_address_enumerator_next (srv_enum->addr_enum,
cancellable,
- &error);
+ &my_error);
- if (error)
+ if (my_error)
{
if (srv_enum->error == NULL)
- srv_enum->error = error;
+ srv_enum->error = my_error;
else
- g_error_free (error);
+ g_error_free (my_error);
}
if (!ret)
diff --git a/gio/gopenuriportal.c b/gio/gopenuriportal.c
index 6ef8f037c..2f527d828 100644
--- a/gio/gopenuriportal.c
+++ b/gio/gopenuriportal.c
@@ -108,10 +108,10 @@ g_openuri_portal_open_uri (const char *uri,
errsv = errno;
if (fd == -1)
{
- g_free (path);
- g_variant_builder_clear (&opt_builder);
g_set_error (error, G_IO_ERROR, g_io_error_from_errno (errsv),
"Failed to open '%s'", path);
+ g_free (path);
+ g_variant_builder_clear (&opt_builder);
return FALSE;
}
diff --git a/gio/goutputstream.c b/gio/goutputstream.c
index 8e48803be..3547b8f12 100644
--- a/gio/goutputstream.c
+++ b/gio/goutputstream.c
@@ -293,7 +293,7 @@ g_output_stream_write_all (GOutputStream *stream,
gssize res;
g_return_val_if_fail (G_IS_OUTPUT_STREAM (stream), FALSE);
- g_return_val_if_fail (buffer != NULL, FALSE);
+ g_return_val_if_fail (buffer != NULL || count == 0, FALSE);
_bytes_written = 0;
while (_bytes_written < count)
diff --git a/gio/gpowerprofilemonitor.c b/gio/gpowerprofilemonitor.c
index f5028b3e8..00bdc94eb 100644
--- a/gio/gpowerprofilemonitor.c
+++ b/gio/gpowerprofilemonitor.c
@@ -41,10 +41,10 @@
* some systems).
*
* When in “Low Power†mode, it is recommended that applications:
- * - disabling automatic downloads
+ * - disable automatic downloads;
* - reduce the rate of refresh from online sources such as calendar or
- * email synchronisation
- * - if the application has expensive visual effects, reduce them
+ * email synchronisation;
+ * - reduce the use of expensive visual effects.
*
* It is also likely that OS components providing services to applications will
* lower their own background activity, for the sake of the system.
diff --git a/gio/gproxyaddressenumerator.c b/gio/gproxyaddressenumerator.c
index 654baade5..de932ff91 100644
--- a/gio/gproxyaddressenumerator.c
+++ b/gio/gproxyaddressenumerator.c
@@ -25,6 +25,7 @@
#include "gasyncresult.h"
#include "ginetaddress.h"
+#include "gioerror.h"
#include "glibintl.h"
#include "gnetworkaddress.h"
#include "gnetworkingprivate.h"
@@ -87,6 +88,20 @@ struct _GProxyAddressEnumeratorPrivate
gboolean supports_hostname;
GList *next_dest_ip;
GError *last_error;
+
+ /* ever_enumerated is TRUE after we've returned a result for the first time
+ * via g_proxy_address_enumerator_next() or _next_async(). If FALSE, we have
+ * never returned yet, and should return an error if returning NULL because
+ * it does not make sense for a proxy resolver to return NULL except on error.
+ * (Whereas a DNS resolver would return NULL with no error to indicate "no
+ * results", a proxy resolver would want to return "direct://" instead, so
+ * NULL without error does not make sense for us.)
+ *
+ * But if ever_enumerated is TRUE, then we must not report any further errors
+ * (except for G_IO_ERROR_CANCELLED), because this is an API contract of
+ * GSocketAddressEnumerator.
+ */
+ gboolean ever_enumerated;
};
G_DEFINE_TYPE_WITH_PRIVATE (GProxyAddressEnumerator, g_proxy_address_enumerator, G_TYPE_SOCKET_ADDRESS_ENUMERATOR)
@@ -171,8 +186,9 @@ g_proxy_address_enumerator_next (GSocketAddressEnumerator *enumerator,
GSocketAddress *result = NULL;
GError *first_error = NULL;
- if (priv->proxies == NULL)
+ if (!priv->ever_enumerated)
{
+ g_assert (priv->proxies == NULL);
priv->proxies = g_proxy_resolver_lookup (priv->proxy_resolver,
priv->dest_uri,
cancellable,
@@ -180,7 +196,10 @@ g_proxy_address_enumerator_next (GSocketAddressEnumerator *enumerator,
priv->next_proxy = priv->proxies;
if (priv->proxies == NULL)
- return NULL;
+ {
+ priv->ever_enumerated = TRUE;
+ return NULL;
+ }
}
while (result == NULL && (*priv->next_proxy || priv->addr_enum))
@@ -294,29 +313,37 @@ g_proxy_address_enumerator_next (GSocketAddressEnumerator *enumerator,
}
}
- if (result == NULL && first_error)
+ if (result == NULL && first_error && (!priv->ever_enumerated || g_error_matches (first_error, G_IO_ERROR, G_IO_ERROR_CANCELLED)))
g_propagate_error (error, first_error);
else if (first_error)
g_error_free (first_error);
- return result;
-}
+ if (result == NULL && error != NULL && *error == NULL && !priv->ever_enumerated)
+ g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_FAILED, "Unspecified proxy lookup failure");
+ priv->ever_enumerated = TRUE;
+ return result;
+}
static void
complete_async (GTask *task)
{
GProxyAddressEnumeratorPrivate *priv = g_task_get_task_data (task);
- if (priv->last_error)
+ if (priv->last_error && (!priv->ever_enumerated || g_error_matches (priv->last_error, G_IO_ERROR, G_IO_ERROR_CANCELLED)))
{
g_task_return_error (task, priv->last_error);
priv->last_error = NULL;
}
+ else if (!priv->ever_enumerated)
+ g_task_return_new_error (task, G_IO_ERROR, G_IO_ERROR_FAILED, "Unspecified proxy lookup failure");
else
g_task_return_pointer (task, NULL, NULL);
+ priv->ever_enumerated = TRUE;
+
+ g_clear_error (&priv->last_error);
g_object_unref (task);
}
@@ -388,6 +415,7 @@ return_result (GTask *task)
}
}
+ priv->ever_enumerated = TRUE;
g_task_return_pointer (task, result, g_object_unref);
g_object_unref (task);
}
diff --git a/gio/gregistrysettingsbackend.c b/gio/gregistrysettingsbackend.c
index bae066a0a..a7171a21f 100644
--- a/gio/gregistrysettingsbackend.c
+++ b/gio/gregistrysettingsbackend.c
@@ -1200,7 +1200,7 @@ g_registry_backend_get_writable (GSettingsBackend *backend,
GRegistryBackend *self = G_REGISTRY_BACKEND (backend);
gchar *path_name;
gunichar2 *path_namew;
- gchar *value_name;
+ gchar *value_name = NULL;
HKEY hpath;
LONG result;
@@ -1495,14 +1495,14 @@ registry_cache_update (GRegistryBackend *self,
child_item->readable = TRUE;
if (changed && event != NULL)
{
- gchar *item;
+ gchar *item_path;
if (partial_key_name == NULL)
- item = g_strdup (buffer);
+ item_path = g_strdup (buffer);
else
- item = g_build_path ("/", partial_key_name, buffer, NULL);
+ item_path = g_build_path ("/", partial_key_name, buffer, NULL);
- g_ptr_array_add (event->items, item);
+ g_ptr_array_add (event->items, item_path);
}
g_free (buffer);
diff --git a/gio/gresolver.c b/gio/gresolver.c
index cd5445a65..90b057cbf 100644
--- a/gio/gresolver.c
+++ b/gio/gresolver.c
@@ -64,7 +64,8 @@ static guint signals[LAST_SIGNAL] = { 0 };
struct _GResolverPrivate {
#ifdef G_OS_UNIX
- time_t resolv_conf_timestamp;
+ GMutex mutex;
+ time_t resolv_conf_timestamp; /* protected by @mutex */
#else
int dummy;
#endif
@@ -149,8 +150,24 @@ g_resolver_real_lookup_service_finish (GResolver *resolver,
}
static void
+g_resolver_finalize (GObject *object)
+{
+#ifdef G_OS_UNIX
+ GResolver *resolver = G_RESOLVER (object);
+
+ g_mutex_clear (&resolver->priv->mutex);
+#endif
+
+ G_OBJECT_CLASS (g_resolver_parent_class)->finalize (object);
+}
+
+static void
g_resolver_class_init (GResolverClass *resolver_class)
{
+ GObjectClass *object_class = G_OBJECT_CLASS (resolver_class);
+
+ object_class->finalize = g_resolver_finalize;
+
/* Automatically pass these over to the lookup_records methods */
resolver_class->lookup_service = g_resolver_real_lookup_service;
resolver_class->lookup_service_async = g_resolver_real_lookup_service_async;
@@ -185,6 +202,8 @@ g_resolver_init (GResolver *resolver)
#ifdef G_OS_UNIX
if (stat (_PATH_RESCONF, &st) == 0)
resolver->priv->resolv_conf_timestamp = st.st_mtime;
+
+ g_mutex_init (&resolver->priv->mutex);
#endif
}
@@ -242,27 +261,23 @@ g_resolver_set_default (GResolver *resolver)
G_UNLOCK (default_resolver);
}
-/* Bionic has res_init() but it's not in any header */
-#ifdef __BIONIC__
-int res_init (void);
-#endif
-
static void
-g_resolver_maybe_reload (GResolver *resolver)
+maybe_emit_reload (GResolver *resolver)
{
#ifdef G_OS_UNIX
struct stat st;
if (stat (_PATH_RESCONF, &st) == 0)
{
+ g_mutex_lock (&resolver->priv->mutex);
if (st.st_mtime != resolver->priv->resolv_conf_timestamp)
{
resolver->priv->resolv_conf_timestamp = st.st_mtime;
-#ifdef HAVE_RES_INIT
- res_init ();
-#endif
+ g_mutex_unlock (&resolver->priv->mutex);
g_signal_emit (resolver, signals[RELOAD], 0);
}
+ else
+ g_mutex_unlock (&resolver->priv->mutex);
}
#endif
}
@@ -444,7 +459,7 @@ lookup_by_name_real (GResolver *resolver,
return NULL;
}
- g_resolver_maybe_reload (resolver);
+ maybe_emit_reload (resolver);
if (flags != G_RESOLVER_NAME_LOOKUP_FLAGS_DEFAULT)
{
@@ -530,7 +545,7 @@ g_resolver_lookup_by_name (GResolver *resolver,
*
* This differs from g_resolver_lookup_by_name() in that you can modify
* the lookup behavior with @flags. For example this can be used to limit
- * results with #G_RESOLVER_NAME_LOOKUP_FLAGS_IPV4_ONLY.
+ * results with %G_RESOLVER_NAME_LOOKUP_FLAGS_IPV4_ONLY.
*
* Returns: (element-type GInetAddress) (transfer full): a non-empty #GList
* of #GInetAddress, or %NULL on error. You
@@ -602,7 +617,7 @@ lookup_by_name_async_real (GResolver *resolver,
return;
}
- g_resolver_maybe_reload (resolver);
+ maybe_emit_reload (resolver);
if (flags != G_RESOLVER_NAME_LOOKUP_FLAGS_DEFAULT)
{
@@ -839,7 +854,7 @@ g_resolver_lookup_by_address (GResolver *resolver,
g_return_val_if_fail (G_IS_RESOLVER (resolver), NULL);
g_return_val_if_fail (G_IS_INET_ADDRESS (address), NULL);
- g_resolver_maybe_reload (resolver);
+ maybe_emit_reload (resolver);
return G_RESOLVER_GET_CLASS (resolver)->
lookup_by_address (resolver, address, cancellable, error);
}
@@ -868,7 +883,7 @@ g_resolver_lookup_by_address_async (GResolver *resolver,
g_return_if_fail (G_IS_RESOLVER (resolver));
g_return_if_fail (G_IS_INET_ADDRESS (address));
- g_resolver_maybe_reload (resolver);
+ maybe_emit_reload (resolver);
G_RESOLVER_GET_CLASS (resolver)->
lookup_by_address_async (resolver, address, cancellable, callback, user_data);
}
@@ -985,7 +1000,7 @@ g_resolver_lookup_service (GResolver *resolver,
return NULL;
}
- g_resolver_maybe_reload (resolver);
+ maybe_emit_reload (resolver);
targets = G_RESOLVER_GET_CLASS (resolver)->
lookup_service (resolver, rrname, cancellable, error);
@@ -1037,7 +1052,7 @@ g_resolver_lookup_service_async (GResolver *resolver,
return;
}
- g_resolver_maybe_reload (resolver);
+ maybe_emit_reload (resolver);
G_RESOLVER_GET_CLASS (resolver)->
lookup_service_async (resolver, rrname, cancellable, callback, user_data);
@@ -1136,7 +1151,7 @@ g_resolver_lookup_records (GResolver *resolver,
g_return_val_if_fail (G_IS_RESOLVER (resolver), NULL);
g_return_val_if_fail (rrname != NULL, NULL);
- g_resolver_maybe_reload (resolver);
+ maybe_emit_reload (resolver);
records = G_RESOLVER_GET_CLASS (resolver)->
lookup_records (resolver, rrname, record_type, cancellable, error);
@@ -1170,7 +1185,7 @@ g_resolver_lookup_records_async (GResolver *resolver,
g_return_if_fail (G_IS_RESOLVER (resolver));
g_return_if_fail (rrname != NULL);
- g_resolver_maybe_reload (resolver);
+ maybe_emit_reload (resolver);
G_RESOLVER_GET_CLASS (resolver)->
lookup_records_async (resolver, rrname, record_type, cancellable, callback, user_data);
}
@@ -1210,15 +1225,21 @@ g_resolver_lookup_records_finish (GResolver *resolver,
guint64
g_resolver_get_serial (GResolver *resolver)
{
+ guint64 result;
+
g_return_val_if_fail (G_IS_RESOLVER (resolver), 0);
- g_resolver_maybe_reload (resolver);
+ maybe_emit_reload (resolver);
#ifdef G_OS_UNIX
- return (guint64) resolver->priv->resolv_conf_timestamp;
+ g_mutex_lock (&resolver->priv->mutex);
+ result = resolver->priv->resolv_conf_timestamp;
+ g_mutex_unlock (&resolver->priv->mutex);
#else
- return 1;
+ result = 1;
#endif
+
+ return result;
}
/**
diff --git a/gio/gresource-tool.c b/gio/gresource-tool.c
index aa718974e..7ebdddaf0 100644
--- a/gio/gresource-tool.c
+++ b/gio/gresource-tool.c
@@ -180,7 +180,7 @@ elf_foreach_resource_section (Elf *elf,
SectionCallback callback,
gpointer data)
{
- int ret;
+ int ret G_GNUC_UNUSED /* when compiling with G_DISABLE_ASSERT */;
size_t shstrndx, shnum;
size_t scnidx;
Elf_Scn *scn;
@@ -477,8 +477,8 @@ static gint
cmd_help (gboolean requested,
const gchar *command)
{
- const gchar *description;
- const gchar *synopsis;
+ const gchar *description = NULL;
+ const gchar *synopsis = NULL;
gchar *option;
GString *string;
diff --git a/gio/gresource.c b/gio/gresource.c
index 53933f9d2..45ca92b1f 100644
--- a/gio/gresource.c
+++ b/gio/gresource.c
@@ -346,7 +346,7 @@ g_resource_find_overlay (const gchar *path,
if (envvar != NULL)
{
gchar **parts;
- gint i, j;
+ gint j;
parts = g_strsplit (envvar, G_SEARCHPATH_SEPARATOR_S, 0);
@@ -414,7 +414,7 @@ g_resource_find_overlay (const gchar *path,
/* We go out of the way to avoid malloc() in the normal case
* where the environment variable is not set.
*/
- static const gchar * const empty_strv[0 + 1];
+ static const gchar *const empty_strv[0 + 1] = { 0 };
result = empty_strv;
}
diff --git a/gio/gresourcefile.c b/gio/gresourcefile.c
index 429e9ef49..35dffebe9 100644
--- a/gio/gresourcefile.c
+++ b/gio/gresourcefile.c
@@ -447,8 +447,8 @@ g_resource_file_query_info (GFile *file,
GFileInfo *info;
GFileAttributeMatcher *matcher;
gboolean res;
- gsize size;
- guint32 resource_flags;
+ gsize size = 0;
+ guint32 resource_flags = 0;
char **children;
gboolean is_dir;
char *base;
diff --git a/gio/gsettings-tool.c b/gio/gsettings-tool.c
index 7559a6b1b..9352b70f5 100644
--- a/gio/gsettings-tool.c
+++ b/gio/gsettings-tool.c
@@ -112,11 +112,19 @@ check_path (const gchar *path)
return TRUE;
}
+static int
+qsort_cmp (const void *a,
+ const void *b)
+{
+ return g_strcmp0 (*(gchar* const*)a, *(gchar* const*)b);
+}
+
static void
output_list (gchar **list)
{
gint i;
+ qsort (list, g_strv_length (list), sizeof (gchar*), qsort_cmp);
for (i = 0; list[i]; i++)
g_print ("%s\n", list[i]);
}
@@ -195,6 +203,7 @@ gsettings_list_children (void)
gint i;
children = g_settings_list_children (global_settings);
+ qsort (children, g_strv_length (children), sizeof (gchar*), qsort_cmp);
for (i = 0; children[i]; i++)
{
gsize len = strlen (children[i]);
@@ -239,6 +248,7 @@ enumerate (GSettings *settings)
g_object_get (settings, "settings-schema", &schema, NULL);
keys = g_settings_schema_list_keys (schema);
+ qsort (keys, g_strv_length (keys), sizeof (gchar*), qsort_cmp);
for (i = 0; keys[i]; i++)
{
GVariant *value;
@@ -263,6 +273,7 @@ list_recursively (GSettings *settings)
enumerate (settings);
children = g_settings_list_children (settings);
+ qsort (children, g_strv_length (children), sizeof (gchar*), qsort_cmp);
for (i = 0; children[i]; i++)
{
gboolean will_see_elsewhere = FALSE;
@@ -306,6 +317,7 @@ gsettings_list_recursively (void)
gint i;
g_settings_schema_source_list_schemas (global_schema_source, TRUE, &schemas, NULL);
+ qsort (schemas, g_strv_length (schemas), sizeof (gchar*), qsort_cmp);
for (i = 0; schemas[i]; i++)
{
@@ -558,8 +570,8 @@ static int
gsettings_help (gboolean requested,
const gchar *command)
{
- const gchar *description;
- const gchar *synopsis;
+ const gchar *description = NULL;
+ const gchar *synopsis = NULL;
GString *string;
string = g_string_new (NULL);
diff --git a/gio/gsettings.c b/gio/gsettings.c
index 9130dafd5..21ae2ff10 100644
--- a/gio/gsettings.c
+++ b/gio/gsettings.c
@@ -248,7 +248,7 @@
* looks for a boolean property with the name "sensitivity" and
* automatically binds it to the writability of the bound setting.
* If this 'magic' gets in the way, it can be suppressed with the
- * #G_SETTINGS_BIND_NO_SENSITIVITY flag.
+ * %G_SETTINGS_BIND_NO_SENSITIVITY flag.
*
* ## Relocatable schemas # {#gsettings-relocatable}
*
@@ -406,12 +406,12 @@ g_settings_real_writable_change_event (GSettings *settings,
for (i = 0; i < n_keys; i++)
{
- const gchar *key = g_quark_to_string (keys[i]);
+ const gchar *key_name = g_quark_to_string (keys[i]);
- if (g_str_has_suffix (key, "/"))
+ if (g_str_has_suffix (key_name, "/"))
continue;
- g_signal_emit (settings, g_settings_signals[SIGNAL_WRITABLE_CHANGED], keys[i], key);
+ g_signal_emit (settings, g_settings_signals[SIGNAL_WRITABLE_CHANGED], keys[i], key_name);
}
return FALSE;
@@ -970,7 +970,7 @@ g_settings_class_init (GSettingsClass *class)
* call to g_settings_new(). The new #GSettings will hold a reference
* on the context. See g_main_context_push_thread_default().
*
- * Returns: a new #GSettings object
+ * Returns: (not nullable) (transfer full): a new #GSettings object
*
* Since: 2.26
*/
@@ -1018,7 +1018,7 @@ path_is_valid (const gchar *path)
* begins and ends with '/' and does not contain two consecutive '/'
* characters.
*
- * Returns: a new #GSettings object
+ * Returns: (not nullable) (transfer full): a new #GSettings object
*
* Since: 2.26
*/
@@ -1049,7 +1049,7 @@ g_settings_new_with_path (const gchar *schema_id,
* the system to get a settings object that modifies the system default
* settings instead of the settings for this user.
*
- * Returns: a new #GSettings object
+ * Returns: (not nullable) (transfer full): a new #GSettings object
*
* Since: 2.26
*/
@@ -1078,7 +1078,7 @@ g_settings_new_with_backend (const gchar *schema_id,
* This is a mix of g_settings_new_with_backend() and
* g_settings_new_with_path().
*
- * Returns: a new #GSettings object
+ * Returns: (not nullable) (transfer full): a new #GSettings object
*
* Since: 2.26
*/
@@ -1128,7 +1128,7 @@ g_settings_new_with_backend_and_path (const gchar *schema_id,
* @path is non-%NULL and not equal to the path that the schema does
* have.
*
- * Returns: a new #GSettings object
+ * Returns: (not nullable) (transfer full): a new #GSettings object
*
* Since: 2.32
*/
@@ -1205,7 +1205,7 @@ g_settings_read_from_backend (GSettings *settings,
* It is a programmer error to give a @key that isn't contained in the
* schema for @settings.
*
- * Returns: a new #GVariant
+ * Returns: (not nullable) (transfer full): a new #GVariant
*
* Since: 2.26
*/
@@ -1725,7 +1725,7 @@ g_settings_set (GSettings *settings,
* what is returned by this function. %NULL is valid; it is returned
* just as any other value would be.
*
- * Returns: (transfer full): the result, which may be %NULL
+ * Returns: (nullable) (transfer full): the result, which may be %NULL
**/
gpointer
g_settings_get_mapped (GSettings *settings,
@@ -1792,7 +1792,7 @@ g_settings_get_mapped (GSettings *settings,
* It is a programmer error to give a @key that isn't specified as
* having a string type in the schema for @settings.
*
- * Returns: a newly-allocated string
+ * Returns: (not nullable) (transfer full): a newly-allocated string
*
* Since: 2.26
*/
@@ -2186,7 +2186,7 @@ g_settings_set_boolean (GSettings *settings,
* It is a programmer error to give a @key that isn't specified as
* having an array of strings type in the schema for @settings.
*
- * Returns: (array zero-terminated=1) (transfer full): a
+ * Returns: (array zero-terminated=1) (not nullable) (transfer full): a
* newly-allocated, %NULL-terminated array of strings, the value that
* is stored at @key in @settings.
*
@@ -2471,8 +2471,8 @@ g_settings_get_child (GSettings *settings,
* You should free the return value with g_strfreev() when you are done
* with it.
*
- * Returns: (transfer full) (element-type utf8): a list of the keys on
- * @settings, in no defined order
+ * Returns: (not nullable) (transfer full) (element-type utf8): a list
+ * of the keys on @settings, in no defined order
* Deprecated: 2.46: Use g_settings_schema_list_keys() instead.
*/
gchar **
@@ -2497,8 +2497,8 @@ g_settings_list_keys (GSettings *settings)
* You should free the return value with g_strfreev() when you are done
* with it.
*
- * Returns: (transfer full) (element-type utf8): a list of the children on
- * @settings, in no defined order
+ * Returns: (not nullable) (transfer full) (element-type utf8): a list of the children
+ * on @settings, in no defined order
*/
gchar **
g_settings_list_children (GSettings *settings)
@@ -3382,7 +3382,7 @@ g_settings_action_enabled_changed (GSettings *settings,
* activations take the new value for the key (which must have the
* correct type).
*
- * Returns: (transfer full): a new #GAction
+ * Returns: (not nullable) (transfer full): a new #GAction
*
* Since: 2.32
**/
diff --git a/gio/gsettings.h b/gio/gsettings.h
index d3d5a076f..cb35d288e 100644
--- a/gio/gsettings.h
+++ b/gio/gsettings.h
@@ -284,7 +284,7 @@ typedef gboolean (*GSettingsGetMapping) (GVarian
* @G_SETTINGS_BIND_SET: Update the setting when the #GObject property changes.
* It is an error to use this flag if the property is not readable.
* @G_SETTINGS_BIND_NO_SENSITIVITY: Do not try to bind a "sensitivity" property to the writability of the setting
- * @G_SETTINGS_BIND_GET_NO_CHANGES: When set in addition to #G_SETTINGS_BIND_GET, set the #GObject property
+ * @G_SETTINGS_BIND_GET_NO_CHANGES: When set in addition to %G_SETTINGS_BIND_GET, set the #GObject property
* value initially from the setting, but do not listen for changes of the setting
* @G_SETTINGS_BIND_INVERT_BOOLEAN: When passed to g_settings_bind(), uses a pair of mapping functions that invert
* the boolean value when mapping between the setting and the property. The setting and property must both
diff --git a/gio/gsettingsbackend.c b/gio/gsettingsbackend.c
index b124bc7ec..a1a23cc56 100644
--- a/gio/gsettingsbackend.c
+++ b/gio/gsettingsbackend.c
@@ -60,7 +60,7 @@ static gboolean g_settings_has_backend;
* non-strictly-typed data that is stored in a hierarchy. To implement
* an alternative storage backend for #GSettings, you need to implement
* the #GSettingsBackend interface and then make it implement the
- * extension point #G_SETTINGS_BACKEND_EXTENSION_POINT_NAME.
+ * extension point %G_SETTINGS_BACKEND_EXTENSION_POINT_NAME.
*
* The interface defines methods for reading and writing values, a
* method for determining if writing of certain values will fail
@@ -703,7 +703,7 @@ g_settings_backend_changed_tree (GSettingsBackend *backend,
* backend (ie: the one that the backend would contain if
* g_settings_reset() were called).
*
- * Returns: the value that was read, or %NULL
+ * Returns: (nullable) (transfer full): the value that was read, or %NULL
*/
GVariant *
g_settings_backend_read (GSettingsBackend *backend,
@@ -741,7 +741,7 @@ g_settings_backend_read (GSettingsBackend *backend,
* value for themselves, then this will return %NULL (even if the
* sysadmin has provided a default value).
*
- * Returns: the value that was read, or %NULL
+ * Returns: (nullable) (transfer full): the value that was read, or %NULL
*/
GVariant *
g_settings_backend_read_user_value (GSettingsBackend *backend,
@@ -1041,7 +1041,8 @@ g_settings_backend_get_default (void)
* If this is not implemented in the backend, then a %TRUE
* #GSimplePermission is returned.
*
- * Returns: a non-%NULL #GPermission. Free with g_object_unref()
+ * Returns: (not nullable) (transfer full): a non-%NULL #GPermission.
+ * Free with g_object_unref()
*/
GPermission *
g_settings_backend_get_permission (GSettingsBackend *backend,
diff --git a/gio/gsettingsschema.c b/gio/gsettingsschema.c
index 3b5ba0d56..ef4ec1799 100644
--- a/gio/gsettingsschema.c
+++ b/gio/gsettingsschema.c
@@ -202,7 +202,7 @@ static GSettingsSchemaSource *schema_sources;
*
* Increase the reference count of @source, returning a new reference.
*
- * Returns: a new reference to @source
+ * Returns: (transfer full) (not nullable): a new reference to @source
*
* Since: 2.32
**/
@@ -869,9 +869,9 @@ ensure_schema_lists (void)
*
* Deprecated.
*
- * Returns: (element-type utf8) (transfer none): a list of #GSettings
- * schemas that are available, in no defined order. The list must not be
- * modified or freed.
+ * Returns: (element-type utf8) (transfer none) (not nullable): a list of
+ * #GSettings schemas that are available, in no defined order. The list
+ * must not be modified or freed.
*
* Since: 2.26
*
@@ -893,9 +893,9 @@ g_settings_list_schemas (void)
*
* Deprecated.
*
- * Returns: (element-type utf8) (transfer none): a list of relocatable
- * #GSettings schemas that are available, in no defined order. The list must
- * not be modified or freed.
+ * Returns: (element-type utf8) (transfer none) (not nullable): a list of
+ * relocatable #GSettings schemas that are available, in no defined order.
+ * The list must not be modified or freed.
*
* Since: 2.28
*
@@ -915,7 +915,7 @@ g_settings_list_relocatable_schemas (void)
*
* Increase the reference count of @schema, returning a new reference.
*
- * Returns: a new reference to @schema
+ * Returns: (transfer full) (not nullable): a new reference to @schema
*
* Since: 2.32
**/
@@ -1066,8 +1066,8 @@ g_settings_schema_has_key (GSettingsSchema *schema,
* You should free the return value with g_strfreev() when you are done
* with it.
*
- * Returns: (transfer full) (element-type utf8): a list of the children on
- * @settings, in no defined order
+ * Returns: (not nullable) (transfer full) (element-type utf8): a list of
+ * the children on @settings, in no defined order
*
* Since: 2.44
*/
@@ -1111,8 +1111,8 @@ g_settings_schema_list_children (GSettingsSchema *schema)
* (since you should already know what keys are in your schema). This
* function is intended for introspection reasons.
*
- * Returns: (transfer full) (element-type utf8): a list of the keys on
- * @schema, in no defined order
+ * Returns: (not nullable) (transfer full) (element-type utf8): a list
+ * of the keys on @schema, in no defined order
*
* Since: 2.46
*/
@@ -1250,7 +1250,7 @@ g_settings_schema_list (GSettingsSchema *schema,
*
* Get the ID of @schema.
*
- * Returns: (transfer none): the ID
+ * Returns: (not nullable) (transfer none): the ID
**/
const gchar *
g_settings_schema_get_id (GSettingsSchema *schema)
@@ -1581,7 +1581,7 @@ G_DEFINE_BOXED_TYPE (GSettingsSchemaKey, g_settings_schema_key, g_settings_schem
*
* Increase the reference count of @key, returning a new reference.
*
- * Returns: a new reference to @key
+ * Returns: (not nullable) (transfer full): a new reference to @key
*
* Since: 2.40
**/
@@ -1626,7 +1626,7 @@ g_settings_schema_key_unref (GSettingsSchemaKey *key)
* It is a programmer error to request a key that does not exist. See
* g_settings_schema_list_keys().
*
- * Returns: (transfer full): the #GSettingsSchemaKey for @name
+ * Returns: (not nullable) (transfer full): the #GSettingsSchemaKey for @name
*
* Since: 2.40
**/
@@ -1652,7 +1652,7 @@ g_settings_schema_get_key (GSettingsSchema *schema,
*
* Gets the name of @key.
*
- * Returns: the name of @key.
+ * Returns: (not nullable) (transfer none): the name of @key.
*
* Since: 2.44
*/
@@ -1682,7 +1682,7 @@ g_settings_schema_key_get_name (GSettingsSchemaKey *key)
* function has to parse all of the source XML files in the schema
* directory.
*
- * Returns: (nullable): the summary for @key, or %NULL
+ * Returns: (nullable) (transfer none): the summary for @key, or %NULL
*
* Since: 2.34
**/
@@ -1717,7 +1717,7 @@ g_settings_schema_key_get_summary (GSettingsSchemaKey *key)
* function has to parse all of the source XML files in the schema
* directory.
*
- * Returns: (nullable): the description for @key, or %NULL
+ * Returns: (nullable) (transfer none): the description for @key, or %NULL
*
* Since: 2.34
**/
@@ -1739,7 +1739,7 @@ g_settings_schema_key_get_description (GSettingsSchemaKey *key)
*
* Gets the #GVariantType of @key.
*
- * Returns: (transfer none): the type of @key
+ * Returns: (not nullable) (transfer none): the type of @key
*
* Since: 2.40
**/
@@ -1760,7 +1760,7 @@ g_settings_schema_key_get_value_type (GSettingsSchemaKey *key)
* Note that this is the default value according to the schema. System
* administrator defaults and lockdown are not visible via this API.
*
- * Returns: (transfer full): the default value for the key
+ * Returns: (not nullable) (transfer full): the default value for the key
*
* Since: 2.40
**/
@@ -1823,7 +1823,7 @@ g_settings_schema_key_get_default_value (GSettingsSchemaKey *key)
* You should free the returned value with g_variant_unref() when it is
* no longer needed.
*
- * Returns: (transfer full): a #GVariant describing the range
+ * Returns: (not nullable) (transfer full): a #GVariant describing the range
*
* Since: 2.40
**/
diff --git a/gio/gsimpleasyncresult.c b/gio/gsimpleasyncresult.c
index c971bdfcd..7fd9b43b5 100644
--- a/gio/gsimpleasyncresult.c
+++ b/gio/gsimpleasyncresult.c
@@ -705,7 +705,7 @@ g_simple_async_result_take_error (GSimpleAsyncResult *simple,
/**
* g_simple_async_result_set_error_va: (skip)
* @simple: a #GSimpleAsyncResult.
- * @domain: a #GQuark (usually #G_IO_ERROR).
+ * @domain: a #GQuark (usually %G_IO_ERROR).
* @code: an error code.
* @format: a formatted error reporting string.
* @args: va_list of arguments.
@@ -735,7 +735,7 @@ g_simple_async_result_set_error_va (GSimpleAsyncResult *simple,
/**
* g_simple_async_result_set_error: (skip)
* @simple: a #GSimpleAsyncResult.
- * @domain: a #GQuark (usually #G_IO_ERROR).
+ * @domain: a #GQuark (usually %G_IO_ERROR).
* @code: an error code.
* @format: a formatted error reporting string.
* @...: a list of variables to fill in @format.
@@ -1007,7 +1007,7 @@ g_simple_async_result_is_valid (GAsyncResult *result,
* @object: (nullable): a #GObject, or %NULL.
* @callback: a #GAsyncReadyCallback.
* @user_data: user data passed to @callback.
- * @domain: a #GQuark containing the error domain (usually #G_IO_ERROR).
+ * @domain: a #GQuark containing the error domain (usually %G_IO_ERROR).
* @code: a specific error code.
* @format: a formatted error reporting string.
* @...: a list of variables to fill in @format.
diff --git a/gio/gsimpleproxyresolver.c b/gio/gsimpleproxyresolver.c
index 2d6009975..f19d56743 100644
--- a/gio/gsimpleproxyresolver.c
+++ b/gio/gsimpleproxyresolver.c
@@ -493,7 +493,7 @@ g_simple_proxy_resolver_iface_init (GProxyResolverInterface *iface)
* g_simple_proxy_resolver_new:
* @default_proxy: (nullable): the default proxy to use, eg
* "socks://192.168.1.1"
- * @ignore_hosts: (nullable): an optional list of hosts/IP addresses
+ * @ignore_hosts: (array zero-terminated=1) (nullable): an optional list of hosts/IP addresses
* to not use a proxy for.
*
* Creates a new #GSimpleProxyResolver. See
@@ -544,7 +544,7 @@ g_simple_proxy_resolver_set_default_proxy (GSimpleProxyResolver *resolver,
/**
* g_simple_proxy_resolver_set_ignore_hosts:
* @resolver: a #GSimpleProxyResolver
- * @ignore_hosts: %NULL-terminated list of hosts/IP addresses
+ * @ignore_hosts: (array zero-terminated=1): %NULL-terminated list of hosts/IP addresses
* to not use a proxy for
*
* Sets the list of ignored hosts.
diff --git a/gio/gsocket.c b/gio/gsocket.c
index d13e2cab7..be5b96adf 100644
--- a/gio/gsocket.c
+++ b/gio/gsocket.c
@@ -76,6 +76,10 @@
#include "glibintl.h"
#include "gioprivate.h"
+#ifdef G_OS_WIN32
+#include "giowin32-afunix.h"
+#endif
+
/**
* SECTION:gsocket
* @short_description: Low-level socket object
@@ -3138,7 +3142,7 @@ g_socket_get_available_bytes (GSocket *socket)
* systems add internal header size to the reported size, making it
* unusable for this function. */
avail = recv (socket->priv->fd, buf, bufsize, MSG_PEEK);
- if (avail == -1)
+ if ((gint) avail == -1)
{
int errsv = get_socket_errno ();
#ifdef G_OS_WIN32
@@ -3997,7 +4001,10 @@ socket_source_dispatch (GSource *source,
gboolean ret;
#ifdef G_OS_WIN32
- events = update_condition (socket_source->socket);
+ if ((socket_source->pollfd.revents & G_IO_NVAL) != 0)
+ events = G_IO_NVAL;
+ else
+ events = update_condition (socket_source->socket);
#else
if (g_socket_is_closed (socket_source->socket))
{
@@ -4570,8 +4577,7 @@ G_STMT_START { \
_msg->msg_control = NULL; \
else \
{ \
- _msg->msg_control = g_alloca (_msg->msg_controllen); \
- memset (_msg->msg_control, '\0', _msg->msg_controllen); \
+ _msg->msg_control = g_alloca0 (_msg->msg_controllen); \
} \
\
cmsg = CMSG_FIRSTHDR (_msg); \
@@ -5275,7 +5281,7 @@ g_socket_send_messages_with_timeout (GSocket *socket,
#else
{
gssize result;
- gint i;
+ guint i;
gint64 wait_timeout;
wait_timeout = timeout_us;
@@ -5305,7 +5311,11 @@ g_socket_send_messages_with_timeout (GSocket *socket,
#endif
}
- result = pollable_result == G_POLLABLE_RETURN_OK ? bytes_written : -1;
+ if (G_MAXSSIZE > bytes_written &&
+ pollable_result == G_POLLABLE_RETURN_OK)
+ result = (gssize) bytes_written;
+ else
+ result = -1;
/* check if we've timed out or how much time to wait at most */
if (timeout_us > 0)
@@ -6052,10 +6062,22 @@ g_socket_get_credentials (GSocket *socket,
{
if (cred.cr_version == XUCRED_VERSION)
{
+ pid_t pid;
+ socklen_t optlen = sizeof (pid);
+
ret = g_credentials_new ();
g_credentials_set_native (ret,
G_CREDENTIALS_NATIVE_TYPE,
&cred);
+
+#ifdef LOCAL_PEERPID
+ if (getsockopt (socket->priv->fd,
+ SOL_LOCAL,
+ LOCAL_PEERPID,
+ &pid,
+ &optlen) == 0)
+ _g_credentials_set_local_peerid (ret, pid);
+#endif
}
else
{
@@ -6113,6 +6135,23 @@ g_socket_get_credentials (GSocket *socket,
ucred_free (ucred);
}
}
+#elif G_CREDENTIALS_USE_WIN32_PID
+ {
+ DWORD peerid, drc;
+
+ if (WSAIoctl (socket->priv->fd, SIO_AF_UNIX_GETPEERPID,
+ NULL, 0U,
+ &peerid, sizeof(peerid),
+ /* Windows bug: always 0 https://github.com/microsoft/WSL/issues/4676 */
+ &drc,
+ NULL, NULL) == 0)
+ {
+ ret = g_credentials_new ();
+ g_credentials_set_native (ret,
+ G_CREDENTIALS_TYPE_WIN32_PID,
+ &peerid);
+ }
+ }
#else
#error "G_CREDENTIALS_SOCKET_GET_CREDENTIALS_SUPPORTED is set but this is no code for this platform"
#endif
diff --git a/gio/gsocketaddress.c b/gio/gsocketaddress.c
index 2b7e83ccf..41dbe66ad 100644
--- a/gio/gsocketaddress.c
+++ b/gio/gsocketaddress.c
@@ -35,8 +35,10 @@
#include "glibintl.h"
#include "gioenumtypes.h"
-#ifdef G_OS_UNIX
#include "gunixsocketaddress.h"
+
+#ifdef G_OS_WIN32
+#include "giowin32-afunix.h"
#endif
@@ -265,7 +267,6 @@ g_socket_address_new_from_native (gpointer native,
return sockaddr;
}
-#ifdef G_OS_UNIX
if (family == AF_UNIX)
{
struct sockaddr_un *addr = (struct sockaddr_un *) native;
@@ -299,7 +300,6 @@ g_socket_address_new_from_native (gpointer native,
else
return g_unix_socket_address_new (addr->sun_path);
}
-#endif
return g_native_socket_address_new (native, len);
}
diff --git a/gio/gsocketclient.c b/gio/gsocketclient.c
index 62b1afbcd..cd5aa074a 100644
--- a/gio/gsocketclient.c
+++ b/gio/gsocketclient.c
@@ -289,7 +289,9 @@ g_socket_client_get_property (GObject *object,
break;
case PROP_TLS_VALIDATION_FLAGS:
+G_GNUC_BEGIN_IGNORE_DEPRECATIONS
g_value_set_flags (value, g_socket_client_get_tls_validation_flags (client));
+G_GNUC_END_IGNORE_DEPRECATIONS
break;
case PROP_PROXY_RESOLVER:
@@ -340,7 +342,9 @@ g_socket_client_set_property (GObject *object,
break;
case PROP_TLS_VALIDATION_FLAGS:
+G_GNUC_BEGIN_IGNORE_DEPRECATIONS
g_socket_client_set_tls_validation_flags (client, g_value_get_flags (value));
+G_GNUC_END_IGNORE_DEPRECATIONS
break;
case PROP_PROXY_RESOLVER:
@@ -679,9 +683,15 @@ g_socket_client_set_tls (GSocketClient *client,
* Gets the TLS validation flags used creating TLS connections via
* @client.
*
+ * This function does not work as originally designed and is impossible
+ * to use correctly. See #GSocketClient:tls-validation-flags for more
+ * information.
+ *
* Returns: the TLS validation flags
*
* Since: 2.28
+ *
+ * Deprecated: 2.72: Do not attempt to ignore validation errors.
*/
GTlsCertificateFlags
g_socket_client_get_tls_validation_flags (GSocketClient *client)
@@ -697,7 +707,13 @@ g_socket_client_get_tls_validation_flags (GSocketClient *client)
* Sets the TLS validation flags used when creating TLS connections
* via @client. The default value is %G_TLS_CERTIFICATE_VALIDATE_ALL.
*
+ * This function does not work as originally designed and is impossible
+ * to use correctly. See #GSocketClient:tls-validation-flags for more
+ * information.
+ *
* Since: 2.28
+ *
+ * Deprecated: 2.72: Do not attempt to ignore validation errors.
*/
void
g_socket_client_set_tls_validation_flags (GSocketClient *client,
@@ -916,6 +932,29 @@ g_socket_client_class_init (GSocketClientClass *class)
G_PARAM_CONSTRUCT |
G_PARAM_READWRITE |
G_PARAM_STATIC_STRINGS));
+
+ /**
+ * GSocketClient:tls-validation-flags:
+ *
+ * The TLS validation flags used when creating TLS connections. The
+ * default value is %G_TLS_CERTIFICATE_VALIDATE_ALL.
+ *
+ * GLib guarantees that if certificate verification fails, at least one
+ * flag will be set, but it does not guarantee that all possible flags
+ * will be set. Accordingly, you may not safely decide to ignore any
+ * particular type of error. For example, it would be incorrect to mask
+ * %G_TLS_CERTIFICATE_EXPIRED if you want to allow expired certificates,
+ * because this could potentially be the only error flag set even if
+ * other problems exist with the certificate. Therefore, there is no
+ * safe way to use this property. This is not a horrible problem,
+ * though, because you should not be attempting to ignore validation
+ * errors anyway. If you really must ignore TLS certificate errors,
+ * connect to the #GSocketClient::event signal, wait for it to be
+ * emitted with %G_SOCKET_CLIENT_TLS_HANDSHAKING, and use that to
+ * connect to #GTlsConnection::accept-certificate.
+ *
+ * Deprecated: 2.72: Do not attempt to ignore validation errors.
+ */
g_object_class_install_property (gobject_class, PROP_TLS_VALIDATION_FLAGS,
g_param_spec_flags ("tls-validation-flags",
P_("TLS validation flags"),
@@ -924,7 +963,8 @@ g_socket_client_class_init (GSocketClientClass *class)
G_TLS_CERTIFICATE_VALIDATE_ALL,
G_PARAM_CONSTRUCT |
G_PARAM_READWRITE |
- G_PARAM_STATIC_STRINGS));
+ G_PARAM_STATIC_STRINGS |
+ G_PARAM_DEPRECATED));
/**
* GSocketClient:proxy-resolver:
@@ -1209,8 +1249,10 @@ g_socket_client_connect (GSocketClient *client,
if (tlsconn)
{
+G_GNUC_BEGIN_IGNORE_DEPRECATIONS
g_tls_client_connection_set_validation_flags (G_TLS_CLIENT_CONNECTION (tlsconn),
client->priv->tls_validation_flags);
+G_GNUC_END_IGNORE_DEPRECATIONS
g_socket_client_emit_event (client, G_SOCKET_CLIENT_TLS_HANDSHAKING, connectable, connection);
if (g_tls_connection_handshake (G_TLS_CONNECTION (tlsconn),
cancellable, &error_info->tmp_error))
@@ -1422,6 +1464,8 @@ typedef struct
GSocketConnectable *connectable;
GSocketAddressEnumerator *enumerator;
GCancellable *enumeration_cancellable;
+ GCancellable *enumeration_parent_cancellable; /* (nullable) (owned) */
+ gulong enumeration_cancelled_id;
GSList *connection_attempts;
GSList *successful_connections;
@@ -1441,7 +1485,12 @@ g_socket_client_async_connect_data_free (GSocketClientAsyncConnectData *data)
data->task = NULL;
g_clear_object (&data->connectable);
g_clear_object (&data->enumerator);
+
+ g_cancellable_disconnect (data->enumeration_parent_cancellable, data->enumeration_cancelled_id);
+ g_clear_object (&data->enumeration_parent_cancellable);
+ data->enumeration_cancelled_id = 0;
g_clear_object (&data->enumeration_cancellable);
+
g_slist_free_full (data->connection_attempts, connection_attempt_unref);
g_slist_free_full (data->successful_connections, connection_attempt_unref);
@@ -1459,6 +1508,7 @@ typedef struct
GSocketClientAsyncConnectData *data; /* unowned */
GSource *timeout_source;
GCancellable *cancellable;
+ gulong cancelled_id;
grefcount ref;
} ConnectionAttempt;
@@ -1486,6 +1536,8 @@ connection_attempt_unref (gpointer pointer)
g_clear_object (&attempt->address);
g_clear_object (&attempt->socket);
g_clear_object (&attempt->connection);
+ g_cancellable_disconnect (g_task_get_cancellable (attempt->data->task), attempt->cancelled_id);
+ attempt->cancelled_id = 0;
g_clear_object (&attempt->cancellable);
g_clear_object (&attempt->proxy_addr);
if (attempt->timeout_source)
@@ -1635,8 +1687,10 @@ g_socket_client_tls_handshake (ConnectionAttempt *attempt)
&data->error_info->tmp_error);
if (tlsconn)
{
+G_GNUC_BEGIN_IGNORE_DEPRECATIONS
g_tls_client_connection_set_validation_flags (G_TLS_CLIENT_CONNECTION (tlsconn),
data->client->priv->tls_validation_flags);
+G_GNUC_END_IGNORE_DEPRECATIONS
g_socket_client_emit_event (data->client, G_SOCKET_CLIENT_TLS_HANDSHAKING, data->connectable, G_IO_STREAM (tlsconn));
g_tls_connection_handshake_async (G_TLS_CONNECTION (tlsconn),
G_PRIORITY_DEFAULT,
@@ -1977,8 +2031,9 @@ g_socket_client_enumerator_callback (GObject *object,
data->connection_attempts = g_slist_append (data->connection_attempts, attempt);
if (g_task_get_cancellable (data->task))
- g_cancellable_connect (g_task_get_cancellable (data->task), G_CALLBACK (on_connection_cancelled),
- g_object_ref (attempt->cancellable), g_object_unref);
+ attempt->cancelled_id =
+ g_cancellable_connect (g_task_get_cancellable (data->task), G_CALLBACK (on_connection_cancelled),
+ g_object_ref (attempt->cancellable), g_object_unref);
g_socket_connection_set_cached_remote_address ((GSocketConnection *)attempt->connection, address);
g_debug ("GSocketClient: Starting TCP connection attempt");
@@ -2083,8 +2138,12 @@ g_socket_client_connect_async (GSocketClient *client,
data->enumeration_cancellable = g_cancellable_new ();
if (cancellable)
- g_cancellable_connect (cancellable, G_CALLBACK (on_connection_cancelled),
- g_object_ref (data->enumeration_cancellable), g_object_unref);
+ {
+ data->enumeration_parent_cancellable = g_object_ref (cancellable);
+ data->enumeration_cancelled_id =
+ g_cancellable_connect (cancellable, G_CALLBACK (on_connection_cancelled),
+ g_object_ref (data->enumeration_cancellable), g_object_unref);
+ }
enumerator_next_async (data, FALSE);
}
diff --git a/gio/gsocketclient.h b/gio/gsocketclient.h
index f0153450d..8f86ce89f 100644
--- a/gio/gsocketclient.h
+++ b/gio/gsocketclient.h
@@ -110,9 +110,9 @@ gboolean g_socket_client_get_tls (GSocket
GLIB_AVAILABLE_IN_2_28
void g_socket_client_set_tls (GSocketClient *client,
gboolean tls);
-GLIB_AVAILABLE_IN_2_28
+GLIB_DEPRECATED_IN_2_72
GTlsCertificateFlags g_socket_client_get_tls_validation_flags (GSocketClient *client);
-GLIB_AVAILABLE_IN_2_28
+GLIB_DEPRECATED_IN_2_72
void g_socket_client_set_tls_validation_flags (GSocketClient *client,
GTlsCertificateFlags flags);
GLIB_AVAILABLE_IN_2_36
diff --git a/gio/gsocketconnection.c b/gio/gsocketconnection.c
index 37d5d330c..64fe9753b 100644
--- a/gio/gsocketconnection.c
+++ b/gio/gsocketconnection.c
@@ -615,9 +615,7 @@ g_socket_connection_factory_register_type (GType g_type,
static void
init_builtin_types (void)
{
-#ifndef G_OS_WIN32
g_type_ensure (G_TYPE_UNIX_CONNECTION);
-#endif
g_type_ensure (G_TYPE_TCP_CONNECTION);
}
diff --git a/gio/gsubprocess.c b/gio/gsubprocess.c
index c0f4f8db6..523c80bfc 100644
--- a/gio/gsubprocess.c
+++ b/gio/gsubprocess.c
@@ -61,7 +61,10 @@
* As a matter of principle, #GSubprocess has no API that accepts
* shell-style space-separated strings. It will, however, match the
* typical shell behaviour of searching the PATH for executables that do
- * not contain a directory separator in their name.
+ * not contain a directory separator in their name. By default, the `PATH`
+ * of the current process is used. You can specify
+ * %G_SUBPROCESS_FLAGS_SEARCH_PATH_FROM_ENVP to use the `PATH` of the
+ * launcher environment instead.
*
* #GSubprocess attempts to have a very simple API for most uses (ie:
* spawning a subprocess with arguments and support for most typical
@@ -380,7 +383,7 @@ initable_init (GInitable *initable,
/* argv0 has no '/' in it? We better do a PATH lookup. */
if (strchr (self->argv[0], G_DIR_SEPARATOR) == NULL)
{
- if (self->launcher && self->launcher->path_from_envp)
+ if (self->launcher && self->launcher->flags & G_SUBPROCESS_FLAGS_SEARCH_PATH_FROM_ENVP)
spawn_flags |= G_SPAWN_SEARCH_PATH_FROM_ENVP;
else
spawn_flags |= G_SPAWN_SEARCH_PATH;
diff --git a/gio/gsubprocesslauncher-private.h b/gio/gsubprocesslauncher-private.h
index d6fe0d784..8bd1b2844 100644
--- a/gio/gsubprocesslauncher-private.h
+++ b/gio/gsubprocesslauncher-private.h
@@ -28,7 +28,6 @@ struct _GSubprocessLauncher
GObject parent;
GSubprocessFlags flags;
- gboolean path_from_envp;
char **envp;
char *cwd;
diff --git a/gio/gtask.c b/gio/gtask.c
index a767e1909..365f200ad 100644
--- a/gio/gtask.c
+++ b/gio/gtask.c
@@ -58,6 +58,10 @@
* use g_task_propagate_pointer() or the like to extract the
* return value.
*
+ * Using #GTask requires the thread-default #GMainContext from when the
+ * #GTask was constructed to be running at least until the task has completed
+ * and its data has been freed.
+ *
* Here is an example for using GTask as a GAsyncResult:
* |[<!-- language="C" -->
* typedef struct {
@@ -977,13 +981,19 @@ g_task_set_return_on_cancel (GTask *task,
* @task: the #GTask
* @source_tag: an opaque pointer indicating the source of this task
*
- * Sets @task's source tag. You can use this to tag a task return
+ * Sets @task's source tag.
+ *
+ * You can use this to tag a task return
* value with a particular pointer (usually a pointer to the function
* doing the tagging) and then later check it using
* g_task_get_source_tag() (or g_async_result_is_tagged()) in the
* task's "finish" function, to figure out if the response came from a
* particular place.
*
+ * A macro wrapper around this function will automatically set the
+ * task’s name to the string form of @source_tag if it’s not already
+ * set, for convenience.
+ *
* Since: 2.36
*/
void
@@ -1010,7 +1020,8 @@ void
* name of the #GSource used for idle completion of the task.
*
* This function may only be called before the @task is first used in a thread
- * other than the one it was constructed in.
+ * other than the one it was constructed in. It is called automatically by
+ * g_task_set_source_tag() if not called already.
*
* Since: 2.60
*/
@@ -1246,7 +1257,6 @@ g_task_return (GTask *task,
GTaskReturnType type)
{
GSource *source;
- gchar *source_name = NULL;
if (type != G_TASK_RETURN_FROM_THREAD)
task->ever_returned = TRUE;
@@ -1295,10 +1305,22 @@ g_task_return (GTask *task,
/* Otherwise, complete in the next iteration */
source = g_idle_source_new ();
- source_name = g_strdup_printf ("[gio] %s complete_in_idle_cb",
- (task->name != NULL) ? task->name : "(unnamed)");
- g_source_set_name (source, source_name);
- g_free (source_name);
+
+ /* Note: in case the task name is NULL we set it as a const string instead
+ * of going through the concat path which is more expensive and may show in the
+ * profiler if g_task_return is called very often
+ */
+ if (task->name == NULL)
+ g_source_set_static_name (source, "[gio] (unnamed) complete_in_idle_cb");
+ else
+ {
+ gchar *source_name;
+
+ source_name = g_strconcat ("[gio] ", task->name, " complete_in_idle_cb", NULL);
+ g_source_set_name (source, source_name);
+ g_free (source_name);
+ }
+
g_task_attach_source (task, source, complete_in_idle_cb);
g_source_unref (source);
}
@@ -1994,7 +2016,7 @@ value_free (gpointer value)
*
* Sets @task's result to @result (by copying it) and completes the task.
*
- * If @result is %NULL then a #GValue of type #G_TYPE_POINTER
+ * If @result is %NULL then a #GValue of type %G_TYPE_POINTER
* with a value of %NULL will be used for the result.
*
* This is a very generic low-level method intended primarily for use
diff --git a/gio/gthreadedresolver.c b/gio/gthreadedresolver.c
index 93794b5b3..aeeb40e9b 100644
--- a/gio/gthreadedresolver.c
+++ b/gio/gthreadedresolver.c
@@ -529,18 +529,56 @@ typedef enum __ns_type {
#endif /* __BIONIC__ */
+/* Wrapper around dn_expand() which does associated length checks and returns
+ * errors as #GError. */
+static gboolean
+expand_name (const gchar *rrname,
+ const guint8 *answer,
+ const guint8 *end,
+ const guint8 **p,
+ gchar *namebuf,
+ gsize namebuf_len,
+ GError **error)
+{
+ int expand_result;
+
+ expand_result = dn_expand (answer, end, *p, namebuf, namebuf_len);
+ if (expand_result < 0 || end - *p < expand_result)
+ {
+ g_set_error (error, G_RESOLVER_ERROR, G_RESOLVER_ERROR_INTERNAL,
+ /* Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’ */
+ _("Error parsing DNS %s record: malformed DNS packet"), rrname);
+ return FALSE;
+ }
+
+ *p += expand_result;
+
+ return TRUE;
+}
+
static GVariant *
-parse_res_srv (guchar *answer,
- guchar *end,
- guchar **p)
+parse_res_srv (const guint8 *answer,
+ const guint8 *end,
+ const guint8 **p,
+ GError **error)
{
gchar namebuf[1024];
guint16 priority, weight, port;
+ if (end - *p < 6)
+ {
+ g_set_error (error, G_RESOLVER_ERROR, G_RESOLVER_ERROR_INTERNAL,
+ /* Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’ */
+ _("Error parsing DNS %s record: malformed DNS packet"), "SRV");
+ return NULL;
+ }
+
GETSHORT (priority, *p);
GETSHORT (weight, *p);
GETSHORT (port, *p);
- *p += dn_expand (answer, end, *p, namebuf, sizeof (namebuf));
+
+ if (!expand_name ("SRV", answer, end, p, namebuf, sizeof (namebuf), error))
+ return NULL;
return g_variant_new ("(qqqs)",
priority,
@@ -550,16 +588,28 @@ parse_res_srv (guchar *answer,
}
static GVariant *
-parse_res_soa (guchar *answer,
- guchar *end,
- guchar **p)
+parse_res_soa (const guint8 *answer,
+ const guint8 *end,
+ const guint8 **p,
+ GError **error)
{
gchar mnamebuf[1024];
gchar rnamebuf[1024];
guint32 serial, refresh, retry, expire, ttl;
- *p += dn_expand (answer, end, *p, mnamebuf, sizeof (mnamebuf));
- *p += dn_expand (answer, end, *p, rnamebuf, sizeof (rnamebuf));
+ if (!expand_name ("SOA", answer, end, p, mnamebuf, sizeof (mnamebuf), error))
+ return NULL;
+
+ if (!expand_name ("SOA", answer, end, p, rnamebuf, sizeof (rnamebuf), error))
+ return NULL;
+
+ if (end - *p < 20)
+ {
+ g_set_error (error, G_RESOLVER_ERROR, G_RESOLVER_ERROR_INTERNAL,
+ /* Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’ */
+ _("Error parsing DNS %s record: malformed DNS packet"), "SOA");
+ return NULL;
+ }
GETLONG (serial, *p);
GETLONG (refresh, *p);
@@ -578,28 +628,40 @@ parse_res_soa (guchar *answer,
}
static GVariant *
-parse_res_ns (guchar *answer,
- guchar *end,
- guchar **p)
+parse_res_ns (const guint8 *answer,
+ const guint8 *end,
+ const guint8 **p,
+ GError **error)
{
gchar namebuf[1024];
- *p += dn_expand (answer, end, *p, namebuf, sizeof (namebuf));
+ if (!expand_name ("NS", answer, end, p, namebuf, sizeof (namebuf), error))
+ return NULL;
return g_variant_new ("(s)", namebuf);
}
static GVariant *
-parse_res_mx (guchar *answer,
- guchar *end,
- guchar **p)
+parse_res_mx (const guint8 *answer,
+ const guint8 *end,
+ const guint8 **p,
+ GError **error)
{
gchar namebuf[1024];
guint16 preference;
+ if (end - *p < 2)
+ {
+ g_set_error (error, G_RESOLVER_ERROR, G_RESOLVER_ERROR_INTERNAL,
+ /* Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’ */
+ _("Error parsing DNS %s record: malformed DNS packet"), "MX");
+ return NULL;
+ }
+
GETSHORT (preference, *p);
- *p += dn_expand (answer, end, *p, namebuf, sizeof (namebuf));
+ if (!expand_name ("MX", answer, end, p, namebuf, sizeof (namebuf), error))
+ return NULL;
return g_variant_new ("(qs)",
preference,
@@ -607,21 +669,37 @@ parse_res_mx (guchar *answer,
}
static GVariant *
-parse_res_txt (guchar *answer,
- guchar *end,
- guchar **p)
+parse_res_txt (const guint8 *answer,
+ const guint8 *end,
+ const guint8 **p,
+ GError **error)
{
GVariant *record;
GPtrArray *array;
- guchar *at = *p;
+ const guint8 *at = *p;
gsize len;
+ if (end - *p == 0)
+ {
+ g_set_error (error, G_RESOLVER_ERROR, G_RESOLVER_ERROR_INTERNAL,
+ /* Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’ */
+ _("Error parsing DNS %s record: malformed DNS packet"), "TXT");
+ return NULL;
+ }
+
array = g_ptr_array_new_with_free_func (g_free);
while (at < end)
{
len = *(at++);
if (len > (gsize) (end - at))
- break;
+ {
+ g_set_error (error, G_RESOLVER_ERROR, G_RESOLVER_ERROR_INTERNAL,
+ /* Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’ */
+ _("Error parsing DNS %s record: malformed DNS packet"), "TXT");
+ g_ptr_array_free (array, TRUE);
+ return NULL;
+ }
+
g_ptr_array_add (array, g_strndup ((gchar *)at, len));
at += len;
}
@@ -633,7 +711,7 @@ parse_res_txt (guchar *answer,
return record;
}
-static gint
+gint
g_resolver_record_type_to_rrtype (GResolverRecordType type)
{
switch (type)
@@ -652,21 +730,23 @@ g_resolver_record_type_to_rrtype (GResolverRecordType type)
g_return_val_if_reached (-1);
}
-static GList *
+GList *
g_resolver_records_from_res_query (const gchar *rrname,
gint rrtype,
- guchar *answer,
- gint len,
+ const guint8 *answer,
+ gssize len,
gint herr,
GError **error)
{
- gint count;
+ uint16_t count;
gchar namebuf[1024];
- guchar *end, *p;
+ const guint8 *end, *p;
guint16 type, qclass, rdlength;
- HEADER *header;
+ const HEADER *header;
GList *records;
GVariant *record;
+ gsize len_unsigned;
+ GError *parsing_error = NULL;
if (len <= 0)
{
@@ -689,18 +769,44 @@ g_resolver_records_from_res_query (const gchar *rrname,
return NULL;
}
+ /* We know len ≥ 0 now. */
+ len_unsigned = (gsize) len;
+
+ if (len_unsigned < sizeof (HEADER))
+ {
+ g_set_error (error, G_RESOLVER_ERROR, G_RESOLVER_ERROR_INTERNAL,
+ /* Translators: the first placeholder is a domain name, the
+ * second is an error message */
+ _("Error resolving “%sâ€: %s"), rrname, _("Malformed DNS packet"));
+ return NULL;
+ }
+
records = NULL;
header = (HEADER *)answer;
p = answer + sizeof (HEADER);
- end = answer + len;
+ end = answer + len_unsigned;
/* Skip query */
count = ntohs (header->qdcount);
while (count-- && p < end)
{
- p += dn_expand (answer, end, p, namebuf, sizeof (namebuf));
- p += 4;
+ int expand_result;
+
+ expand_result = dn_expand (answer, end, p, namebuf, sizeof (namebuf));
+ if (expand_result < 0 || end - p < expand_result + 4)
+ {
+ /* Not possible to recover parsing as the length of the rest of the
+ * record is unknown or is too short. */
+ g_set_error (error, G_RESOLVER_ERROR, G_RESOLVER_ERROR_INTERNAL,
+ /* Translators: the first placeholder is a domain name, the
+ * second is an error message */
+ _("Error resolving “%sâ€: %s"), rrname, _("Malformed DNS packet"));
+ return NULL;
+ }
+
+ p += expand_result;
+ p += 4; /* skip TYPE and CLASS */
/* To silence gcc warnings */
namebuf[0] = namebuf[1];
@@ -710,12 +816,35 @@ g_resolver_records_from_res_query (const gchar *rrname,
count = ntohs (header->ancount);
while (count-- && p < end)
{
- p += dn_expand (answer, end, p, namebuf, sizeof (namebuf));
+ int expand_result;
+
+ expand_result = dn_expand (answer, end, p, namebuf, sizeof (namebuf));
+ if (expand_result < 0 || end - p < expand_result + 10)
+ {
+ /* Not possible to recover parsing as the length of the rest of the
+ * record is unknown or is too short. */
+ g_set_error (&parsing_error, G_RESOLVER_ERROR, G_RESOLVER_ERROR_INTERNAL,
+ /* Translators: the first placeholder is a domain name, the
+ * second is an error message */
+ _("Error resolving “%sâ€: %s"), rrname, _("Malformed DNS packet"));
+ break;
+ }
+
+ p += expand_result;
GETSHORT (type, p);
GETSHORT (qclass, p);
p += 4; /* ignore the ttl (type=long) value */
GETSHORT (rdlength, p);
+ if (end - p < rdlength)
+ {
+ g_set_error (&parsing_error, G_RESOLVER_ERROR, G_RESOLVER_ERROR_INTERNAL,
+ /* Translators: the first placeholder is a domain name, the
+ * second is an error message */
+ _("Error resolving “%sâ€: %s"), rrname, _("Malformed DNS packet"));
+ break;
+ }
+
if (type != rrtype || qclass != C_IN)
{
p += rdlength;
@@ -725,31 +854,40 @@ g_resolver_records_from_res_query (const gchar *rrname,
switch (rrtype)
{
case T_SRV:
- record = parse_res_srv (answer, end, &p);
+ record = parse_res_srv (answer, p + rdlength, &p, &parsing_error);
break;
case T_MX:
- record = parse_res_mx (answer, end, &p);
+ record = parse_res_mx (answer, p + rdlength, &p, &parsing_error);
break;
case T_SOA:
- record = parse_res_soa (answer, end, &p);
+ record = parse_res_soa (answer, p + rdlength, &p, &parsing_error);
break;
case T_NS:
- record = parse_res_ns (answer, end, &p);
+ record = parse_res_ns (answer, p + rdlength, &p, &parsing_error);
break;
case T_TXT:
- record = parse_res_txt (answer, p + rdlength, &p);
+ record = parse_res_txt (answer, p + rdlength, &p, &parsing_error);
break;
default:
- g_warn_if_reached ();
+ g_debug ("Unrecognised DNS record type %u", rrtype);
record = NULL;
break;
}
if (record != NULL)
records = g_list_prepend (records, record);
+
+ if (parsing_error != NULL)
+ break;
}
- if (records == NULL)
+ if (parsing_error != NULL)
+ {
+ g_propagate_prefixed_error (error, parsing_error, _("Failed to parse DNS response for “%sâ€: "), rrname);
+ g_list_free_full (records, (GDestroyNotify)g_variant_unref);
+ return NULL;
+ }
+ else if (records == NULL)
{
g_set_error (error, G_RESOLVER_ERROR, G_RESOLVER_ERROR_NOT_FOUND,
_("No DNS record of the requested type for “%sâ€"), rrname);
diff --git a/gio/gthreadedresolver.h b/gio/gthreadedresolver.h
index 5900d6a14..8d2ca19bf 100644
--- a/gio/gthreadedresolver.h
+++ b/gio/gthreadedresolver.h
@@ -42,6 +42,19 @@ typedef struct {
GLIB_AVAILABLE_IN_ALL
GType g_threaded_resolver_get_type (void) G_GNUC_CONST;
+/* Used for a private test API */
+#ifdef G_OS_UNIX
+GLIB_AVAILABLE_IN_ALL
+GList *g_resolver_records_from_res_query (const gchar *rrname,
+ gint rrtype,
+ const guint8 *answer,
+ gssize len,
+ gint herr,
+ GError **error);
+GLIB_AVAILABLE_IN_ALL
+gint g_resolver_record_type_to_rrtype (GResolverRecordType type);
+#endif
+
G_END_DECLS
#endif /* __G_RESOLVER_H__ */
diff --git a/gio/gtlscertificate.c b/gio/gtlscertificate.c
index 2c238120c..d0a326b27 100644
--- a/gio/gtlscertificate.c
+++ b/gio/gtlscertificate.c
@@ -50,7 +50,11 @@
* Since: 2.28
*/
-G_DEFINE_ABSTRACT_TYPE (GTlsCertificate, g_tls_certificate, G_TYPE_OBJECT)
+struct _GTlsCertificatePrivate {
+ gboolean pkcs12_properties_not_overridden;
+};
+
+G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE (GTlsCertificate, g_tls_certificate, G_TYPE_OBJECT)
enum
{
@@ -69,6 +73,8 @@ enum
PROP_ISSUER_NAME,
PROP_DNS_NAMES,
PROP_IP_ADDRESSES,
+ PROP_PKCS12_DATA,
+ PROP_PASSWORD,
};
static void
@@ -84,11 +90,11 @@ g_tls_certificate_get_property (GObject *object,
{
switch (prop_id)
{
+ /* Subclasses must override these properties but this allows older backends to not fatally error */
case PROP_PRIVATE_KEY:
case PROP_PRIVATE_KEY_PEM:
case PROP_PKCS11_URI:
case PROP_PRIVATE_KEY_PKCS11_URI:
- /* Subclasses must override this property but this allows older backends to not fatally error */
g_value_set_static_string (value, NULL);
break;
default:
@@ -102,11 +108,19 @@ g_tls_certificate_set_property (GObject *object,
const GValue *value,
GParamSpec *pspec)
{
+ GTlsCertificate *cert = (GTlsCertificate*)object;
+ GTlsCertificatePrivate *priv = g_tls_certificate_get_instance_private (cert);
+
switch (prop_id)
{
case PROP_PKCS11_URI:
case PROP_PRIVATE_KEY_PKCS11_URI:
- /* Subclasses must override this property but this allows older backends to not fatally error */
+ /* Subclasses must override these properties but this allows older backends to not fatally error. */
+ break;
+ case PROP_PKCS12_DATA:
+ case PROP_PASSWORD:
+ /* We don't error on setting these properties however we track that they were not overridden. */
+ priv->pkcs12_properties_not_overridden = TRUE;
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
@@ -122,6 +136,39 @@ g_tls_certificate_class_init (GTlsCertificateClass *class)
gobject_class->get_property = g_tls_certificate_get_property;
/**
+ * GTlsCertificate:pkcs12-data: (nullable)
+ *
+ * The PKCS #12 formatted data used to construct the object.
+ *
+ * See also: g_tls_certificate_new_from_pkcs12()
+ *
+ * Since: 2.72
+ */
+ g_object_class_install_property (gobject_class, PROP_PKCS12_DATA,
+ g_param_spec_boxed ("pkcs12-data",
+ P_("PKCS #12 data"),
+ P_("The PKCS #12 data used for construction"),
+ G_TYPE_BYTE_ARRAY,
+ G_PARAM_WRITABLE |
+ G_PARAM_CONSTRUCT_ONLY |
+ G_PARAM_STATIC_STRINGS));
+
+ /**
+ * GTlsCertificate:password: (nullable)
+ *
+ * An optional password used when constructed with GTlsCertificate:pkcs12-data.
+ *
+ * Since: 2.72
+ */
+ g_object_class_install_property (gobject_class, PROP_PASSWORD,
+ g_param_spec_string ("password",
+ P_("Password"),
+ P_("Password used when constructing from bytes"),
+ NULL,
+ G_PARAM_WRITABLE |
+ G_PARAM_CONSTRUCT_ONLY |
+ G_PARAM_STATIC_STRINGS));
+ /**
* GTlsCertificate:certificate:
*
* The DER (binary) encoded representation of the certificate.
@@ -684,23 +731,138 @@ g_tls_certificate_new_from_pem (const gchar *data,
}
/**
- * g_tls_certificate_new_from_file:
- * @file: (type filename): file containing a PEM-encoded certificate to import
+ * g_tls_certificate_new_from_pkcs12:
+ * @data: (array length=length): DER-encoded PKCS #12 format certificate data
+ * @length: the length of @data
+ * @password: (nullable): optional password for encrypted certificate data
* @error: #GError for error reporting, or %NULL to ignore.
*
- * Creates a #GTlsCertificate from the PEM-encoded data in @file. The
- * returned certificate will be the first certificate found in @file. As
- * of GLib 2.44, if @file contains more certificates it will try to load
- * a certificate chain. All certificates will be verified in the order
- * found (top-level certificate should be the last one in the file) and
- * the #GTlsCertificate:issuer property of each certificate will be set
- * accordingly if the verification succeeds. If any certificate in the
- * chain cannot be verified, the first certificate in the file will
- * still be returned.
+ * Creates a #GTlsCertificate from the data in @data. It must contain
+ * a certificate and matching private key.
+ *
+ * If extra certificates are included they will be verified as a chain
+ * and the #GTlsCertificate:issuer property will be set.
+ * All other data will be ignored.
+ *
+ * You can pass as single password for all of the data which will be
+ * used both for the PKCS #12 container as well as encrypted
+ * private keys. If decryption fails it will error with
+ * %G_TLS_ERROR_BAD_CERTIFICATE_PASSWORD.
+ *
+ * This constructor requires support in the current #GTlsBackend.
+ * If support is missing it will error with
+ * %G_IO_ERROR_NOT_SUPPORTED.
+ *
+ * Other parsing failures will error with %G_TLS_ERROR_BAD_CERTIFICATE.
+ *
+ * Returns: the new certificate, or %NULL if @data is invalid
+ *
+ * Since: 2.72
+ */
+GTlsCertificate *
+g_tls_certificate_new_from_pkcs12 (const guint8 *data,
+ gsize length,
+ const gchar *password,
+ GError **error)
+{
+ GObject *cert;
+ GTlsBackend *backend;
+ GByteArray *bytes;
+
+ g_return_val_if_fail (data != NULL || length == 0, NULL);
+ g_return_val_if_fail (error == NULL || *error == NULL, NULL);
+
+ backend = g_tls_backend_get_default ();
+
+ bytes = g_byte_array_new ();
+ g_byte_array_append (bytes, data, length);
+
+ cert = g_initable_new (g_tls_backend_get_certificate_type (backend),
+ NULL, error,
+ "pkcs12-data", bytes,
+ "password", password,
+ NULL);
+
+ g_byte_array_unref (bytes);
+
+ if (cert)
+ {
+ GTlsCertificatePrivate *priv = g_tls_certificate_get_instance_private (G_TLS_CERTIFICATE (cert));
+
+ if (priv->pkcs12_properties_not_overridden)
+ {
+ g_clear_object (&cert);
+ g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+ _("The current TLS backend does not support PKCS #12"));
+ return NULL;
+ }
+ }
+
+ return G_TLS_CERTIFICATE (cert);
+}
+
+/**
+ * g_tls_certificate_new_from_file_with_password:
+ * @file: (type filename): file containing a certificate to import
+ * @password: (not nullable): password for PKCS #12 files
+ * @error: #GError for error reporting, or %NULL to ignore
+ *
+ * Creates a #GTlsCertificate from the data in @file.
*
* If @file cannot be read or parsed, the function will return %NULL and
- * set @error. Otherwise, this behaves like
- * g_tls_certificate_new_from_pem().
+ * set @error.
+ *
+ * Any unknown file types will error with %G_IO_ERROR_NOT_SUPPORTED.
+ * Currently only `.p12` and `.pfx` files are supported.
+ * See g_tls_certificate_new_from_pkcs12() for more details.
+ *
+ * Returns: the new certificate, or %NULL on error
+ *
+ * Since: 2.72
+ */
+GTlsCertificate *
+g_tls_certificate_new_from_file_with_password (const gchar *file,
+ const gchar *password,
+ GError **error)
+{
+ GTlsCertificate *cert;
+ gchar *contents;
+ gsize length;
+
+ g_return_val_if_fail (file != NULL, NULL);
+ g_return_val_if_fail (password != NULL, NULL);
+ g_return_val_if_fail (error == NULL || *error == NULL, NULL);
+
+ if (!g_str_has_suffix (file, ".p12") && !g_str_has_suffix (file, ".pfx"))
+ {
+ g_set_error (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+ "The file type of \"%s\" is unknown. Only .p12 and .pfx files are supported currently.", file);
+ return NULL;
+ }
+
+ if (!g_file_get_contents (file, &contents, &length, error))
+ return NULL;
+
+ cert = g_tls_certificate_new_from_pkcs12 ((guint8 *)contents, length, password, error);
+
+ g_free (contents);
+ return cert;
+}
+
+/**
+ * g_tls_certificate_new_from_file:
+ * @file: (type filename): file containing a certificate to import
+ * @error: #GError for error reporting, or %NULL to ignore
+ *
+ * Creates a #GTlsCertificate from the data in @file.
+ *
+ * As of 2.72, if the filename ends in `.p12` or `.pfx` the data is loaded by
+ * g_tls_certificate_new_from_pkcs12() otherwise it is loaded by
+ * g_tls_certificate_new_from_pem(). See those functions for
+ * exact details.
+ *
+ * If @file cannot be read or parsed, the function will return %NULL and
+ * set @error.
*
* Returns: the new certificate, or %NULL on error
*
@@ -708,16 +870,23 @@ g_tls_certificate_new_from_pem (const gchar *data,
*/
GTlsCertificate *
g_tls_certificate_new_from_file (const gchar *file,
- GError **error)
+ GError **error)
{
GTlsCertificate *cert;
gchar *contents;
gsize length;
+ g_return_val_if_fail (file != NULL, NULL);
+ g_return_val_if_fail (error == NULL || *error == NULL, NULL);
+
if (!g_file_get_contents (file, &contents, &length, error))
return NULL;
- cert = g_tls_certificate_new_from_pem (contents, length, error);
+ if (g_str_has_suffix (file, ".p12") || g_str_has_suffix (file, ".pfx"))
+ cert = g_tls_certificate_new_from_pkcs12 ((guint8 *)contents, length, NULL, error);
+ else
+ cert = g_tls_certificate_new_from_pem (contents, length, error);
+
g_free (contents);
return cert;
}
@@ -959,13 +1128,18 @@ g_tls_certificate_get_issuer (GTlsCertificate *cert)
* @trusted_ca is %NULL, that bit will never be set in the return
* value.
*
- * (All other #GTlsCertificateFlags values will always be set or unset
- * as appropriate.)
+ * GLib guarantees that if certificate verification fails, at least one
+ * error will be set in the return value, but it does not guarantee
+ * that all possible errors will be set. Accordingly, you may not safely
+ * decide to ignore any particular type of error. For example, it would
+ * be incorrect to mask %G_TLS_CERTIFICATE_EXPIRED if you want to allow
+ * expired certificates, because this could potentially be the only
+ * error flag set even if other problems exist with the certificate.
*
* Because TLS session context is not used, #GTlsCertificate may not
* perform as many checks on the certificates as #GTlsConnection would.
- * For example, certificate constraints cannot be honored, and some
- * revocation checks cannot be performed. The best way to verify TLS
+ * For example, certificate constraints may not be honored, and
+ * revocation checks may not be performed. The best way to verify TLS
* certificates used by a TLS connection is to let #GTlsConnection
* handle the verification.
*
diff --git a/gio/gtlscertificate.h b/gio/gtlscertificate.h
index 3b92b97fc..52e678bcb 100644
--- a/gio/gtlscertificate.h
+++ b/gio/gtlscertificate.h
@@ -63,7 +63,15 @@ GLIB_AVAILABLE_IN_ALL
GTlsCertificate *g_tls_certificate_new_from_pem (const gchar *data,
gssize length,
GError **error);
-
+GLIB_AVAILABLE_IN_2_72
+GTlsCertificate *g_tls_certificate_new_from_pkcs12 (const guint8 *data,
+ gsize length,
+ const gchar *password,
+ GError **error);
+GLIB_AVAILABLE_IN_2_72
+GTlsCertificate *g_tls_certificate_new_from_file_with_password (const gchar *file,
+ const gchar *password,
+ GError **error);
GLIB_AVAILABLE_IN_ALL
GTlsCertificate *g_tls_certificate_new_from_file (const gchar *file,
GError **error);
diff --git a/gio/gtlsclientconnection.c b/gio/gtlsclientconnection.c
index d0a740f4f..63dd6bee7 100644
--- a/gio/gtlsclientconnection.c
+++ b/gio/gtlsclientconnection.c
@@ -59,7 +59,21 @@ g_tls_client_connection_default_init (GTlsClientConnectionInterface *iface)
* ways indicated here will be rejected unless the application
* overrides the default via #GTlsConnection::accept-certificate.
*
+ * GLib guarantees that if certificate verification fails, at least one
+ * flag will be set, but it does not guarantee that all possible flags
+ * will be set. Accordingly, you may not safely decide to ignore any
+ * particular type of error. For example, it would be incorrect to mask
+ * %G_TLS_CERTIFICATE_EXPIRED if you want to allow expired certificates,
+ * because this could potentially be the only error flag set even if
+ * other problems exist with the certificate. Therefore, there is no
+ * safe way to use this property. This is not a horrible problem,
+ * though, because you should not be attempting to ignore validation
+ * errors anyway. If you really must ignore TLS certificate errors,
+ * connect to #GTlsConnection::accept-certificate.
+ *
* Since: 2.28
+ *
+ * Deprecated: 2.72: Do not attempt to ignore validation errors.
*/
g_object_interface_install_property (iface,
g_param_spec_flags ("validation-flags",
@@ -69,7 +83,8 @@ g_tls_client_connection_default_init (GTlsClientConnectionInterface *iface)
G_TLS_CERTIFICATE_VALIDATE_ALL,
G_PARAM_READWRITE |
G_PARAM_CONSTRUCT |
- G_PARAM_STATIC_STRINGS));
+ G_PARAM_STATIC_STRINGS |
+ G_PARAM_DEPRECATED));
/**
* GTlsClientConnection:server-identity:
@@ -183,9 +198,15 @@ g_tls_client_connection_new (GIOStream *base_io_stream,
*
* Gets @conn's validation flags
*
+ * This function does not work as originally designed and is impossible
+ * to use correctly. See #GTlsClientConnection:validation-flags for more
+ * information.
+ *
* Returns: the validation flags
*
* Since: 2.28
+ *
+ * Deprecated: 2.72: Do not attempt to ignore validation errors.
*/
GTlsCertificateFlags
g_tls_client_connection_get_validation_flags (GTlsClientConnection *conn)
@@ -207,7 +228,13 @@ g_tls_client_connection_get_validation_flags (GTlsClientConnection *conn)
* checks performed when validating a server certificate. By default,
* %G_TLS_CERTIFICATE_VALIDATE_ALL is used.
*
+ * This function does not work as originally designed and is impossible
+ * to use correctly. See #GTlsClientConnection:validation-flags for more
+ * information.
+ *
* Since: 2.28
+ *
+ * Deprecated: 2.72: Do not attempt to ignore validation errors.
*/
void
g_tls_client_connection_set_validation_flags (GTlsClientConnection *conn,
diff --git a/gio/gtlsclientconnection.h b/gio/gtlsclientconnection.h
index 29dbafcf4..f592fa808 100644
--- a/gio/gtlsclientconnection.h
+++ b/gio/gtlsclientconnection.h
@@ -59,9 +59,9 @@ GIOStream * g_tls_client_connection_new (GIOStream
GSocketConnectable *server_identity,
GError **error);
-GLIB_AVAILABLE_IN_ALL
+GLIB_DEPRECATED_IN_2_72
GTlsCertificateFlags g_tls_client_connection_get_validation_flags (GTlsClientConnection *conn);
-GLIB_AVAILABLE_IN_ALL
+GLIB_DEPRECATED_IN_2_72
void g_tls_client_connection_set_validation_flags (GTlsClientConnection *conn,
GTlsCertificateFlags flags);
GLIB_AVAILABLE_IN_ALL
diff --git a/gio/gtlsconnection.c b/gio/gtlsconnection.c
index 0239489b7..f930ebabe 100644
--- a/gio/gtlsconnection.c
+++ b/gio/gtlsconnection.c
@@ -143,6 +143,19 @@ g_tls_connection_class_init (GTlsConnectionClass *klass)
* If no certificate database is set, then the default database will be
* used. See g_tls_backend_get_default_database().
*
+ * When using a non-default database, #GTlsConnection must fall back to using
+ * the #GTlsDatabase to perform certificate verification using
+ * g_tls_database_verify_chain(), which means certificate verification will
+ * not be able to make use of TLS session context. This may be less secure.
+ * For example, if you create your own #GTlsDatabase that just wraps the
+ * default #GTlsDatabase, you might expect that you have not changed anything,
+ * but this is not true because you may have altered the behavior of
+ * #GTlsConnection by causing it to use g_tls_database_verify_chain(). See the
+ * documentation of g_tls_database_verify_chain() for more details on specific
+ * security checks that may not be performed. Accordingly, setting a
+ * non-default database is discouraged except for specialty applications with
+ * unusual security requirements.
+ *
* Since: 2.30
*/
g_object_class_install_property (gobject_class, PROP_DATABASE,
@@ -248,6 +261,14 @@ g_tls_connection_class_init (GTlsConnectionClass *klass)
* #GTlsConnection::accept-certificate overrode the default
* behavior.
*
+ * GLib guarantees that if certificate verification fails, at least
+ * one error will be set, but it does not guarantee that all possible
+ * errors will be set. Accordingly, you may not safely decide to
+ * ignore any particular type of error. For example, it would be
+ * incorrect to mask %G_TLS_CERTIFICATE_EXPIRED if you want to allow
+ * expired certificates, because this could potentially be the only
+ * error flag set even if other problems exist with the certificate.
+ *
* Since: 2.28
*/
g_object_class_install_property (gobject_class, PROP_PEER_CERTIFICATE_ERRORS,
@@ -339,6 +360,15 @@ g_tls_connection_class_init (GTlsConnectionClass *klass)
* signal handler. Otherwise, if no handler accepts the certificate,
* the handshake will fail with %G_TLS_ERROR_BAD_CERTIFICATE.
*
+ * GLib guarantees that if certificate verification fails, this signal
+ * will be emitted with at least one error will be set in @errors, but
+ * it does not guarantee that all possible errors will be set.
+ * Accordingly, you may not safely decide to ignore any particular
+ * type of error. For example, it would be incorrect to ignore
+ * %G_TLS_CERTIFICATE_EXPIRED if you want to allow expired
+ * certificates, because this could potentially be the only error flag
+ * set even if other problems exist with the certificate.
+ *
* For a server-side connection, @peer_cert is the certificate
* presented by the client, if this was requested via the server's
* #GTlsServerConnection:authentication_mode. On the server side,
@@ -470,6 +500,9 @@ g_tls_connection_get_use_system_certdb (GTlsConnection *conn)
* client-side connections, unless that bit is not set in
* #GTlsClientConnection:validation-flags).
*
+ * There are nonintuitive security implications when using a non-default
+ * database. See #GTlsConnection:database for details.
+ *
* Since: 2.30
*/
void
@@ -655,6 +688,8 @@ g_tls_connection_get_peer_certificate (GTlsConnection *conn)
* certificate, after the handshake has completed or failed. (It is
* not set during the emission of #GTlsConnection::accept-certificate.)
*
+ * See #GTlsConnection:peer-certificate-errors for more information.
+ *
* Returns: @conn's peer's certificate errors
*
* Since: 2.28
diff --git a/gio/gtlsdatabase.c b/gio/gtlsdatabase.c
index 2e5a264e9..7027b121c 100644
--- a/gio/gtlsdatabase.c
+++ b/gio/gtlsdatabase.c
@@ -469,7 +469,7 @@ g_tls_database_class_init (GTlsDatabaseClass *klass)
* certificate in the chain by its #GTlsCertificate:issuer property.
*
* @purpose describes the purpose (or usage) for which the certificate
- * is being used. Typically @purpose will be set to #G_TLS_DATABASE_PURPOSE_AUTHENTICATE_SERVER
+ * is being used. Typically @purpose will be set to %G_TLS_DATABASE_PURPOSE_AUTHENTICATE_SERVER
* which means that the certificate is being used to authenticate a server
* (and we are acting as the client).
*
@@ -485,13 +485,21 @@ g_tls_database_class_init (GTlsDatabaseClass *klass)
* used.
*
* If @chain is found to be valid, then the return value will be 0. If
- * @chain is found to be invalid, then the return value will indicate
- * the problems found. If the function is unable to determine whether
- * @chain is valid or not (eg, because @cancellable is triggered
- * before it completes) then the return value will be
- * %G_TLS_CERTIFICATE_GENERIC_ERROR and @error will be set
- * accordingly. @error is not set when @chain is successfully analyzed
- * but found to be invalid.
+ * @chain is found to be invalid, then the return value will indicate at
+ * least one problem found. If the function is unable to determine
+ * whether @chain is valid (for example, because @cancellable is
+ * triggered before it completes) then the return value will be
+ * %G_TLS_CERTIFICATE_GENERIC_ERROR and @error will be set accordingly.
+ * @error is not set when @chain is successfully analyzed but found to
+ * be invalid.
+ *
+ * GLib guarantees that if certificate verification fails, at least one
+ * error will be set in the return value, but it does not guarantee
+ * that all possible errors will be set. Accordingly, you may not safely
+ * decide to ignore any particular type of error. For example, it would
+ * be incorrect to mask %G_TLS_CERTIFICATE_EXPIRED if you want to allow
+ * expired certificates, because this could potentially be the only
+ * error flag set even if other problems exist with the certificate.
*
* Prior to GLib 2.48, GLib's default TLS backend modified @chain to
* represent the certification path built by #GTlsDatabase during
@@ -503,14 +511,14 @@ g_tls_database_class_init (GTlsDatabaseClass *klass)
*
* Because TLS session context is not used, #GTlsDatabase may not
* perform as many checks on the certificates as #GTlsConnection would.
- * For example, certificate constraints cannot be honored, and some
- * revocation checks cannot be performed. The best way to verify TLS
+ * For example, certificate constraints may not be honored, and
+ * revocation checks may not be performed. The best way to verify TLS
* certificates used by a TLS connection is to let #GTlsConnection
* handle the verification.
*
* The TLS backend may attempt to look up and add missing certificates
- * to the chain. Since GLib 2.70, this may involve HTTP requests to
- * download missing certificates.
+ * to the chain. This may involve HTTP requests to download missing
+ * certificates.
*
* This function can block. Use g_tls_database_verify_chain_async() to
* perform the verification operation asynchronously.
diff --git a/gio/gtrashportal.c b/gio/gtrashportal.c
index 03c933297..2f739600c 100644
--- a/gio/gtrashportal.c
+++ b/gio/gtrashportal.c
@@ -89,8 +89,12 @@ g_trash_portal_trash_file (GFile *file,
fd = g_open (path, O_RDWR | O_CLOEXEC | O_NOFOLLOW);
if (fd == -1 && errno == EISDIR)
- /* If it is a directory, fall back to O_PATH */
- fd = g_open (path, O_PATH | O_CLOEXEC | O_RDONLY | O_NOFOLLOW);
+ /* If it is a directory, fall back to O_PATH.
+ * Remove O_NOFOLLOW since
+ * a) we know it is a directory, not a symlink, and
+ * b) the portal reject this combination
+ */
+ fd = g_open (path, O_PATH | O_CLOEXEC | O_RDONLY);
errsv = errno;
diff --git a/gio/gunixconnection.c b/gio/gunixconnection.c
index e9e2f75f0..e89aba6ca 100644
--- a/gio/gunixconnection.c
+++ b/gio/gunixconnection.c
@@ -24,7 +24,9 @@
#include <errno.h>
#include <string.h>
+#ifdef HAVE_UNISTD_H
#include <unistd.h>
+#endif
/**
* SECTION:gunixconnection
@@ -39,9 +41,12 @@
* It contains functions to do some of the UNIX socket specific
* functionality like passing file descriptors.
*
- * Note that `<gio/gunixconnection.h>` belongs to the UNIX-specific
- * GIO interfaces, thus you have to use the `gio-unix-2.0.pc`
- * pkg-config file when using it.
+ * Since GLib 2.72, #GUnixConnection is available on all platforms. It requires
+ * underlying system support (such as Windows 10 with `AF_UNIX`) at run time.
+ *
+ * Before GLib 2.72, `<gio/gunixconnection.h>` belonged to the UNIX-specific GIO
+ * interfaces, thus you had to use the `gio-unix-2.0.pc` pkg-config file when
+ * using it. This is no longer necessary since GLib 2.72.
*
* Since: 2.22
*/
@@ -86,6 +91,7 @@ g_unix_connection_send_fd (GUnixConnection *connection,
GCancellable *cancellable,
GError **error)
{
+#ifdef G_OS_UNIX
GSocketControlMessage *scm;
GSocket *socket;
@@ -114,6 +120,11 @@ g_unix_connection_send_fd (GUnixConnection *connection,
g_object_unref (scm);
return TRUE;
+#else
+ g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+ _("Sending FD is not supported"));
+ return FALSE;
+#endif
}
/**
@@ -139,6 +150,7 @@ g_unix_connection_receive_fd (GUnixConnection *connection,
GCancellable *cancellable,
GError **error)
{
+#ifdef G_OS_UNIX
GSocketControlMessage **scms;
gint *fds, nfd, fd, nscm;
GUnixFDMessage *fdmsg;
@@ -221,6 +233,11 @@ g_unix_connection_receive_fd (GUnixConnection *connection,
}
return fd;
+#else
+ g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+ _("Receiving FD is not supported"));
+ return -1;
+#endif
}
static void
diff --git a/gio/gunixcredentialsmessage.c b/gio/gunixcredentialsmessage.c
index 9e5c7d32e..e8ac5a73c 100644
--- a/gio/gunixcredentialsmessage.c
+++ b/gio/gunixcredentialsmessage.c
@@ -31,6 +31,14 @@
* g_unix_connection_receive_credentials(). To receive credentials of
* a foreign process connected to a socket, use
* g_socket_get_credentials().
+ *
+ * Since GLib 2.72, #GUnixCredentialMessage is available on all platforms. It
+ * requires underlying system support (such as Windows 10 with `AF_UNIX`) at run
+ * time.
+ *
+ * Before GLib 2.72, `<gio/gunixcredentialsmessage.h>` belonged to the UNIX-specific
+ * GIO interfaces, thus you had to use the `gio-unix-2.0.pc` pkg-config file
+ * when using it. This is no longer necessary since GLib 2.72.
*/
#include "config.h"
@@ -40,7 +48,9 @@
#include <fcntl.h>
#include <errno.h>
#include <string.h>
+#ifdef HAVE_UNISTD_H
#include <unistd.h>
+#endif
#include "gunixcredentialsmessage.h"
#include "gcredentials.h"
diff --git a/gio/gunixmounts.c b/gio/gunixmounts.c
index e0c8f6778..9c8ef5d66 100644
--- a/gio/gunixmounts.c
+++ b/gio/gunixmounts.c
@@ -1062,7 +1062,6 @@ _g_get_unix_mount_points (void)
if ((mount_fstype != NULL && g_strcmp0 ("supermount", mount_fstype) == 0) ||
((userspace_flags & MNT_MS_USER) &&
(g_strstr_len (mount_options, -1, "user_xattr") == NULL)) ||
- (g_strstr_len (mount_options, -1, "pamconsole") == NULL) ||
(userspace_flags & MNT_MS_USERS) ||
(userspace_flags & MNT_MS_OWNER))
{
@@ -1158,7 +1157,6 @@ _g_get_unix_mount_points (void)
#ifdef HAVE_HASMNTOPT
|| (hasmntopt (mntent, "user") != NULL
&& hasmntopt (mntent, "user") != hasmntopt (mntent, "user_xattr"))
- || hasmntopt (mntent, "pamconsole") != NULL
|| hasmntopt (mntent, "users") != NULL
|| hasmntopt (mntent, "owner") != NULL
#endif
@@ -1231,7 +1229,6 @@ _g_get_unix_mount_points (void)
#ifdef HAVE_HASMNTOPT
|| (hasmntopt (&mntent, "user") != NULL
&& hasmntopt (&mntent, "user") != hasmntopt (&mntent, "user_xattr"))
- || hasmntopt (&mntent, "pamconsole") != NULL
|| hasmntopt (&mntent, "users") != NULL
|| hasmntopt (&mntent, "owner") != NULL
#endif
@@ -1669,6 +1666,14 @@ g_unix_mount_for (const char *file_path,
return entry;
}
+static gpointer
+copy_mount_point_cb (gconstpointer src,
+ gpointer data)
+{
+ GUnixMountPoint *src_mount_point = (GUnixMountPoint *) src;
+ return g_unix_mount_point_copy (src_mount_point);
+}
+
/**
* g_unix_mount_points_get:
* @time_read: (out) (optional): guint64 to contain a timestamp.
@@ -1684,10 +1689,29 @@ g_unix_mount_for (const char *file_path,
GList *
g_unix_mount_points_get (guint64 *time_read)
{
+ static GList *mnt_pts_last = NULL;
+ static guint64 time_read_last = 0;
+ GList *mnt_pts = NULL;
+ guint64 time_read_now;
+ G_LOCK_DEFINE_STATIC (unix_mount_points);
+
+ G_LOCK (unix_mount_points);
+
+ time_read_now = get_mount_points_timestamp ();
+ if (time_read_now != time_read_last || mnt_pts_last == NULL)
+ {
+ time_read_last = time_read_now;
+ g_list_free_full (mnt_pts_last, (GDestroyNotify) g_unix_mount_point_free);
+ mnt_pts_last = _g_get_unix_mount_points ();
+ }
+ mnt_pts = g_list_copy_deep (mnt_pts_last, copy_mount_point_cb, NULL);
+
+ G_UNLOCK (unix_mount_points);
+
if (time_read)
- *time_read = get_mount_points_timestamp ();
+ *time_read = time_read_now;
- return _g_get_unix_mount_points ();
+ return mnt_pts;
}
/**
diff --git a/gio/gunixsocketaddress.c b/gio/gunixsocketaddress.c
index 69204e9b9..f80e8cc88 100644
--- a/gio/gunixsocketaddress.c
+++ b/gio/gunixsocketaddress.c
@@ -28,6 +28,9 @@
#include "glibintl.h"
#include "gnetworking.h"
+#ifdef G_OS_WIN32
+#include "giowin32-afunix.h"
+#endif
/**
* SECTION:gunixsocketaddress
@@ -45,9 +48,13 @@
* errors. You can use g_unix_socket_address_abstract_names_supported()
* to see if abstract names are supported.
*
- * Note that `<gio/gunixsocketaddress.h>` belongs to the UNIX-specific GIO
- * interfaces, thus you have to use the `gio-unix-2.0.pc` pkg-config file
- * when using it.
+ * Since GLib 2.72, #GUnixSocketAddress is available on all platforms. It
+ * requires underlying system support (such as Windows 10 with `AF_UNIX`) at
+ * run time.
+ *
+ * Before GLib 2.72, `<gio/gunixsocketaddress.h>` belonged to the UNIX-specific
+ * GIO interfaces, thus you had to use the `gio-unix-2.0.pc` pkg-config file
+ * when using it. This is no longer necessary since GLib 2.72.
*/
/**
diff --git a/gio/gvolume.c b/gio/gvolume.c
index 0e14ddaf6..cb6d34f8b 100644
--- a/gio/gvolume.c
+++ b/gio/gvolume.c
@@ -66,13 +66,13 @@
* different kinds of identifiers, such as Hal UDIs, filesystem labels,
* traditional Unix devices (e.g. `/dev/sda2`), UUIDs. GIO uses predefined
* strings as names for the different kinds of identifiers:
- * #G_VOLUME_IDENTIFIER_KIND_UUID, #G_VOLUME_IDENTIFIER_KIND_LABEL, etc.
+ * %G_VOLUME_IDENTIFIER_KIND_UUID, %G_VOLUME_IDENTIFIER_KIND_LABEL, etc.
* Use g_volume_get_identifier() to obtain an identifier for a volume.
*
*
- * Note that #G_VOLUME_IDENTIFIER_KIND_HAL_UDI will only be available
+ * Note that %G_VOLUME_IDENTIFIER_KIND_HAL_UDI will only be available
* when the gvfs hal volume monitor is in use. Other volume monitors
- * will generally be able to provide the #G_VOLUME_IDENTIFIER_KIND_UNIX_DEVICE
+ * will generally be able to provide the %G_VOLUME_IDENTIFIER_KIND_UNIX_DEVICE
* identifier, which can be used to obtain a hal device by means of
* libhal_manager_find_device_string_match().
*/
diff --git a/gio/gwin32appinfo.c b/gio/gwin32appinfo.c
index cafd053b4..26ca6eff2 100644
--- a/gio/gwin32appinfo.c
+++ b/gio/gwin32appinfo.c
@@ -3359,7 +3359,7 @@ uwp_package_cb (gpointer user_data,
GPtrArray *supported_extgroups,
GPtrArray *supported_protocols)
{
- gint i, i_verb, i_ext;
+ guint i, i_verb, i_ext;
gint extensions_considered;
GWin32AppInfoApplication *app;
gchar *app_user_model_id_u8;
@@ -3459,7 +3459,7 @@ uwp_package_cb (gpointer user_data,
*/
while (g_hash_table_iter_next (&iter, NULL, (gpointer *) &ext))
{
- gint i_hverb;
+ guint i_hverb;
if (!ext)
continue;
@@ -3476,8 +3476,8 @@ uwp_package_cb (gpointer user_data,
}
if (app->verbs->len == 0 && extensions_considered > 0)
- g_warning ("Unexpectedly, UWP app `%S' (AUMId `%s') supports %d extensions but has no verbs",
- full_package_name, app_user_model_id_u8, extensions_considered);
+ g_debug ("Unexpectedly, UWP app `%S' (AUMId `%s') supports %d extensions but has no verbs",
+ full_package_name, app_user_model_id_u8, extensions_considered);
for (i = 0; i < supported_protocols->len; i++)
{
@@ -3537,7 +3537,7 @@ uwp_package_cb (gpointer user_data,
while (g_hash_table_iter_next (&iter, NULL, (gpointer *) &url))
{
- gint i_hverb;
+ guint i_hverb;
if (!url)
continue;
@@ -4788,7 +4788,7 @@ g_win32_app_info_launch_internal (GWin32AppInfo *info,
if (apppath)
{
gchar **p;
- gint p_index;
+ gsize p_index;
for (p = envp, p_index = 0; p[0]; p++, p_index++)
if ((p[0][0] == 'p' || p[0][0] == 'P') &&
@@ -4856,7 +4856,13 @@ g_win32_app_info_launch_internal (GWin32AppInfo *info,
GVariant *platform_data;
g_variant_builder_init (&builder, G_VARIANT_TYPE_ARRAY);
- g_variant_builder_add (&builder, "{sv}", "pid", g_variant_new_int32 ((gint32) pid));
+ /* pid handles are never bigger than 2^24 as per
+ * https://docs.microsoft.com/en-us/windows/win32/sysinfo/kernel-objects,
+ * so truncating to `int32` is valid.
+ * The gsize cast is to silence a compiler warning
+ * about conversion from pointer to integer of
+ * different size. */
+ g_variant_builder_add (&builder, "{sv}", "pid", g_variant_new_int32 ((gsize) pid));
platform_data = g_variant_ref_sink (g_variant_builder_end (&builder));
g_signal_emit_by_name (launch_context, "launched", info, platform_data);
@@ -5088,6 +5094,15 @@ g_win32_app_info_launch_uris (GAppInfo *appinfo,
}
static gboolean
+g_win32_app_info_should_show (GAppInfo *appinfo)
+{
+ /* FIXME: This is a placeholder implementation to avoid crashes
+ * for now. It can be made more specific to @appinfo in future. */
+
+ return TRUE;
+}
+
+static gboolean
g_win32_app_info_launch (GAppInfo *appinfo,
GList *files,
GAppLaunchContext *launch_context,
@@ -5223,7 +5238,7 @@ g_win32_app_info_iface_init (GAppInfoIface *iface)
iface->supports_uris = g_win32_app_info_supports_uris;
iface->supports_files = g_win32_app_info_supports_files;
iface->launch_uris = g_win32_app_info_launch_uris;
-/* iface->should_show = g_win32_app_info_should_show;*/
+ iface->should_show = g_win32_app_info_should_show;
/* iface->set_as_default_for_type = g_win32_app_info_set_as_default_for_type;*/
/* iface->set_as_default_for_extension = g_win32_app_info_set_as_default_for_extension;*/
/* iface->add_supports_type = g_win32_app_info_add_supports_type;*/
diff --git a/gio/gwin32packageparser.c b/gio/gwin32packageparser.c
index ee05bb1dd..58b99947c 100755
--- a/gio/gwin32packageparser.c
+++ b/gio/gwin32packageparser.c
@@ -96,7 +96,7 @@ static BOOL
WIN32_FROM_HRESULT (HRESULT hresult,
DWORD *win32_error_code)
{
- if ((hresult & 0xFFFF0000) == MAKE_HRESULT (SEVERITY_ERROR, FACILITY_WIN32, 0) ||
+ if ((hresult & (HRESULT) 0xFFFF0000) == MAKE_HRESULT (SEVERITY_ERROR, FACILITY_WIN32, 0) ||
hresult == S_OK)
{
*win32_error_code = HRESULT_CODE (hresult);
@@ -815,4 +815,4 @@ xml_parser_iteration (struct _xml_sax_state *sax,
}
return TRUE;
-} \ No newline at end of file
+}
diff --git a/gio/gwin32sid.c b/gio/gwin32sid.c
new file mode 100644
index 000000000..6112cf171
--- /dev/null
+++ b/gio/gwin32sid.c
@@ -0,0 +1,234 @@
+/* GIO - GLib Input, Output and Streaming Library
+ *
+ * Copyright (C) 2018 РуÑлан Ижбулатов
+ * Copyright (C) 2022 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ *
+ * Author: РуÑлан Ижбулатов <lrn1986@gmail.com>
+ */
+
+#include "config.h"
+
+#include "gwin32sid.h"
+#include "gioerror.h"
+
+#include <sddl.h>
+
+/**
+ * _g_win32_sid_replace: (skip)
+ * @dest: A pointer to a SID storage
+ * @src: Existing SID
+ * @error: return location for a #GError, or %NULL
+ *
+ * Creates a copy of the @src SID and puts that into @dest, after freeing
+ * existing SID in @dest (if any).
+ *
+ * The @src SID must be valid (use IsValidSid() to ensure that).
+ *
+ * Returns: TRUE on success, FALSE otherwise
+ */
+static gboolean
+_g_win32_sid_replace (SID **dest,
+ SID *src,
+ GError **error)
+{
+ DWORD sid_len;
+ SID *new_sid;
+
+ g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
+ g_return_val_if_fail (src != NULL, FALSE);
+ g_return_val_if_fail (dest && *dest == NULL, FALSE);
+
+ sid_len = GetLengthSid (src);
+ new_sid = g_malloc (sid_len);
+
+ if (!CopySid (sid_len, new_sid, src))
+ {
+ g_set_error_literal (error, G_IO_ERROR, g_io_error_from_errno (GetLastError ()),
+ "Failed to copy SID");
+
+ g_free (new_sid);
+ return FALSE;
+ }
+ else
+ {
+ g_free (*dest);
+ *dest = g_steal_pointer (&new_sid);
+
+ return TRUE;
+ }
+}
+
+/**
+ * _g_win32_token_get_sid: (skip)
+ * @token: A handle of an access token
+ * @error: return location for a #GError, or %NULL
+ *
+ * Gets user SID of the @token and returns a copy of that SID.
+ *
+ * Returns: A newly-allocated SID, or NULL in case of an error.
+ * Free the returned SID with g_free().
+ */
+static SID *
+_g_win32_token_get_sid (HANDLE token,
+ GError **error)
+{
+ TOKEN_USER *token_user = NULL;
+ DWORD n;
+ PSID psid;
+ SID *result = NULL;
+
+ g_return_val_if_fail (error == NULL || *error == NULL, NULL);
+
+ if (!GetTokenInformation (token, TokenUser, NULL, 0, &n)
+ && GetLastError () != ERROR_INSUFFICIENT_BUFFER)
+ {
+ g_set_error_literal (error, G_IO_ERROR, g_io_error_from_errno (GetLastError ()),
+ "Failed to GetTokenInformation");
+
+ return NULL;
+ }
+
+ token_user = g_alloca (n);
+
+ if (!GetTokenInformation (token, TokenUser, token_user, n, &n))
+ {
+ g_set_error_literal (error, G_IO_ERROR, g_io_error_from_errno (GetLastError ()),
+ "Failed to GetTokenInformation");
+
+ return NULL;
+ }
+
+ psid = token_user->User.Sid;
+
+ if (!IsValidSid (psid))
+ {
+ g_set_error_literal (error, G_IO_ERROR, g_io_error_from_errno (GetLastError ()),
+ "Invalid SID token");
+
+ return NULL;
+ }
+
+ _g_win32_sid_replace (&result, psid, error);
+
+ return result;
+}
+
+/**
+ * _g_win32_process_get_access_token_sid: (skip)
+ * @process_id: Identifier of a process to get an access token of
+ * (use 0 to get a token of the current process)
+ * @error: return location for a #GError, or %NULL
+ *
+ * Opens the process identified by @process_id and opens its token,
+ * then retrieves SID of the token user and returns a copy of that SID.
+ *
+ * Returns: A newly-allocated SID, or NULL in case of an error.
+ * Free the returned SID with g_free().
+ */
+SID *
+_g_win32_process_get_access_token_sid (DWORD process_id,
+ GError **error)
+{
+ HANDLE process_handle;
+ HANDLE process_token;
+ SID *result = NULL;
+
+ g_return_val_if_fail (error == NULL || *error == NULL, NULL);
+
+ if (process_id == 0)
+ process_handle = GetCurrentProcess ();
+ else
+ process_handle = OpenProcess (PROCESS_QUERY_LIMITED_INFORMATION, FALSE, process_id);
+
+ if (process_handle == NULL)
+ {
+ g_set_error (error, G_IO_ERROR, g_io_error_from_errno (GetLastError ()),
+ "%s failed", process_id == 0 ? "GetCurrentProcess" : "OpenProcess");
+
+ return NULL;
+ }
+
+ if (!OpenProcessToken (process_handle, TOKEN_QUERY, &process_token))
+ {
+ g_set_error_literal (error, G_IO_ERROR, g_io_error_from_errno (GetLastError ()),
+ "OpenProcessToken failed");
+
+ CloseHandle (process_handle);
+ return NULL;
+ }
+
+ result = _g_win32_token_get_sid (process_token, error);
+
+ CloseHandle (process_token);
+ CloseHandle (process_handle);
+
+ return result;
+}
+
+/**
+ * _g_win32_sid_to_string: (skip)
+ * @sid: a SID.
+ * @error: return location for a #GError, or %NULL
+ *
+ * Convert a SID to its string form.
+ *
+ * Returns: A newly-allocated string, or NULL in case of an error.
+ */
+gchar *
+_g_win32_sid_to_string (SID *sid, GError **error)
+{
+ gchar *tmp, *ret;
+
+ g_return_val_if_fail (sid != NULL, NULL);
+ g_return_val_if_fail (error == NULL || *error == NULL, NULL);
+
+ if (!ConvertSidToStringSidA (sid, &tmp))
+ {
+ g_set_error_literal (error, G_IO_ERROR, g_io_error_from_errno (GetLastError ()),
+ "Failed to ConvertSidToString");
+
+ return NULL;
+ }
+
+ ret = g_strdup (tmp);
+ LocalFree (tmp);
+ return ret;
+}
+
+/**
+ * _g_win32_current_process_sid_string: (skip)
+ * @error: return location for a #GError, or %NULL
+ *
+ * Get the current process SID, as a string.
+ *
+ * Returns: A newly-allocated string, or NULL in case of an error.
+ */
+gchar *
+_g_win32_current_process_sid_string (GError **error)
+{
+ SID *sid;
+ gchar *ret;
+
+ g_return_val_if_fail (error == NULL || *error == NULL, NULL);
+
+ sid = _g_win32_process_get_access_token_sid (0, error);
+ if (!sid)
+ return NULL;
+
+ ret = _g_win32_sid_to_string (sid, error);
+ g_free (sid);
+ return ret;
+}
diff --git a/gio/gwin32sid.h b/gio/gwin32sid.h
new file mode 100644
index 000000000..84c037799
--- /dev/null
+++ b/gio/gwin32sid.h
@@ -0,0 +1,40 @@
+/* GIO - GLib Input, Output and Streaming Library
+ *
+ * Copyright (C) 2018 РуÑлан Ижбулатов
+ * Copyright (C) 2022 Red Hat, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ *
+ * Author: РуÑлан Ижбулатов <lrn1986@gmail.com>
+ */
+
+#ifndef __G_WIN32_SID_H__
+#define __G_WIN32_SID_H__
+
+#include <glib.h>
+#include <windows.h>
+
+G_BEGIN_DECLS
+
+SID * _g_win32_process_get_access_token_sid (DWORD process_id,
+ GError **error);
+
+gchar * _g_win32_sid_to_string (SID *sid,
+ GError **error);
+
+gchar * _g_win32_current_process_sid_string (GError **error);
+
+G_END_DECLS
+
+#endif /* __G_WIN32_SID_H__ */
diff --git a/gio/meson.build b/gio/meson.build
index 89c6dc6f8..9019104a4 100644
--- a/gio/meson.build
+++ b/gio/meson.build
@@ -74,15 +74,12 @@ if host_system != 'windows'
endif
endif
- # res_init()
- if cc.links('''#include <sys/types.h>
- #include <netinet/in.h>
- #include <arpa/nameser.h>
- #include <resolv.h>
+ # dn_comp()
+ if cc.links('''#include <resolv.h>
int main (int argc, char ** argv) {
- return res_init();
- }''', args : network_args, name : 'res_init()')
- glib_conf.set('HAVE_RES_INIT', 1)
+ return dn_comp(NULL, NULL, 0, NULL, NULL) == -1;
+ } ''', args : network_args, name : 'dn_comp()')
+ glib_conf.set('HAVE_DN_COMP', 1)
endif
# res_nclose()
@@ -341,12 +338,6 @@ local_sources = files(
platform_deps = []
internal_deps = []
-# TODO: internal_objects is a workaround for
-# <https://github.com/mesonbuild/meson/issues/3934> and
-# <https://github.com/mesonbuild/meson/issues/3937>. When we can depend
-# on a meson version where those are fixed, revert the commit that
-# introduced this workaround.
-internal_objects = []
appinfo_sources = []
contenttype_sources = []
portal_sources = []
@@ -363,13 +354,10 @@ if host_system != 'windows'
unix_sources = files(
'gfiledescriptorbased.c',
'giounix-private.c',
- 'gunixconnection.c',
- 'gunixcredentialsmessage.c',
'gunixfdlist.c',
'gunixfdmessage.c',
'gunixmount.c',
'gunixmounts.c',
- 'gunixsocketaddress.c',
'gunixvolume.c',
'gunixvolumemonitor.c',
'gunixinputstream.c',
@@ -393,20 +381,19 @@ if host_system != 'windows'
gio_unix_include_headers = files(
'gfiledescriptorbased.h',
- 'gunixconnection.h',
- 'gunixcredentialsmessage.h',
'gunixmounts.h',
'gunixfdlist.h',
'gunixfdmessage.h',
'gunixinputstream.h',
'gunixoutputstream.h',
- 'gunixsocketaddress.h',
)
if glib_have_cocoa
settings_sources += files('gnextstepsettingsbackend.m')
contenttype_sources += files('gosxcontenttype.m')
appinfo_sources += files('gosxappinfo.m')
+ framework_dep = dependency('appleframeworks', modules : ['Foundation', 'CoreFoundation', 'AppKit'])
+ platform_deps += [framework_dep]
if glib_have_os_x_9_or_later
unix_sources += files('gcocoanotificationbackend.m')
endif
@@ -419,7 +406,6 @@ if host_system != 'windows'
subdir('xdgmime')
internal_deps += [xdgmime_lib]
- internal_objects += [xdgmime_lib.extract_all_objects(recursive: false)]
install_headers(gio_unix_include_headers, subdir : 'gio-unix-2.0/gio')
@@ -439,6 +425,7 @@ else
platform_deps += uwp_gio_deps
win32_sources += files(
+ 'gmemorymonitorwin32.c',
'gwin32registrykey.c',
'gwin32mount.c',
'gwin32volumemonitor.c',
@@ -449,6 +436,8 @@ else
'gwin32networkmonitor.c',
'gwin32networkmonitor.h',
'gwin32notificationbackend.c',
+ 'gwin32sid.c',
+ 'gwin32sid.h',
)
gio_win_rc = configure_file(
@@ -484,6 +473,8 @@ gio_sources = files(
'gdatagrambased.c',
'gdatainputstream.c',
'gdataoutputstream.c',
+ 'gdebugcontroller.c',
+ 'gdebugcontrollerdbus.c',
'gdrive.c',
'gdummyfile.c',
'gdummyproxyresolver.c',
@@ -582,6 +573,9 @@ gio_sources = files(
'gdtlsclientconnection.c',
'gdtlsserverconnection.c',
'gunionvolumemonitor.c',
+ 'gunixconnection.c',
+ 'gunixcredentialsmessage.c',
+ 'gunixsocketaddress.c',
'gvfs.c',
'gvolume.c',
'gvolumemonitor.c',
@@ -631,6 +625,8 @@ gio_headers = files(
'gdatagrambased.h',
'gdatainputstream.h',
'gdataoutputstream.h',
+ 'gdebugcontroller.h',
+ 'gdebugcontrollerdbus.h',
'gdrive.h',
'gemblem.h',
'gemblemedicon.h',
@@ -717,6 +713,9 @@ gio_headers = files(
'gdtlsconnection.h',
'gdtlsclientconnection.h',
'gdtlsserverconnection.h',
+ 'gunixconnection.h',
+ 'gunixcredentialsmessage.h',
+ 'gunixsocketaddress.h',
'gvfs.h',
'gvolume.h',
'gvolumemonitor.h',
@@ -758,20 +757,17 @@ gioenumtypes_dep = declare_dependency(sources : [gioenumtypes_h, glib_enumtypes_
if glib_conf.has('HAVE_SYS_INOTIFY_H') and have_func_inotify_init1
subdir('inotify')
internal_deps += [ inotify_lib ]
- internal_objects += [inotify_lib.extract_all_objects(recursive: false)]
endif
# kevent
if have_func_kqueue and have_func_kevent
subdir('kqueue')
internal_deps += [ kqueue_lib ]
- internal_objects += [kqueue_lib.extract_all_objects(recursive: false)]
endif
if host_system == 'windows'
subdir('win32')
internal_deps += [ giowin32_lib ]
- internal_objects += [giowin32_lib.extract_all_objects(recursive: false)]
endif
if have_bash
@@ -807,13 +803,13 @@ endif
libgio = library('gio-2.0',
gioenumtypes_h, gioenumtypes_c, gnetworking_h, gio_sources,
gio_dtrace_hdr, gio_dtrace_obj,
- objects : internal_objects,
version : library_version,
soversion : soversion,
darwin_versions : darwin_versions,
install : true,
include_directories : [configinc, gioinc],
# '$(gio_win32_res_ldflag)',
+ link_with: internal_deps,
dependencies : [libz_dep, libdl_dep, libmount_dep, libglib_dep,
libgobject_dep, libgmodule_dep, selinux_dep, xattr_dep,
platform_deps, network_libs, libsysprof_capture_dep],
@@ -835,8 +831,17 @@ libgio_dep = declare_dependency(link_with : libgio,
dependencies : [libgmodule_dep, libgobject_dep, gioenumtypes_dep],
include_directories : [gioinc])
+# Work around variables kwarg requiring Meson 0.56
+if meson.version().version_compare('>=0.56.0')
+ libgio_dep = declare_dependency(dependencies: libgio_dep,
+ variables: [
+ 'schemasdir=' + join_paths(glib_datadir, schemas_subdir),
+ 'giomoduledir=' + glib_giomodulesdir,
+ ]
+ )
+endif
+
pkg.generate(libgio,
- libraries_private : [osx_ldflags],
requires : ['glib-2.0', 'gobject-2.0'],
variables : ['datadir=' + join_paths('${prefix}', get_option('datadir')),
'schemasdir=' + join_paths('${datadir}', schemas_subdir),
@@ -872,7 +877,7 @@ if host_system == 'windows'
description : 'Windows specific headers for glib I/O library',
)
if meson.version().version_compare('>=0.54.0')
- meson.override_dependency('gio-win32-2.0', libgio_dep)
+ meson.override_dependency('gio-windows-2.0', libgio_dep)
endif
else
pkg.generate(requires : ['gobject-2.0', 'gio-2.0'],
diff --git a/gio/tests/actions.c b/gio/tests/actions.c
index 91fc08074..a41e989bd 100644
--- a/gio/tests/actions.c
+++ b/gio/tests/actions.c
@@ -115,33 +115,20 @@ test_name (void)
}
static gboolean
-strv_has_string (gchar **haystack,
- const gchar *needle)
-{
- guint n;
-
- for (n = 0; haystack != NULL && haystack[n] != NULL; n++)
- {
- if (g_strcmp0 (haystack[n], needle) == 0)
- return TRUE;
- }
- return FALSE;
-}
-
-static gboolean
-strv_strv_cmp (gchar **a, gchar **b)
+strv_strv_cmp (const gchar * const *a,
+ const gchar * const *b)
{
guint n;
for (n = 0; a[n] != NULL; n++)
{
- if (!strv_has_string (b, a[n]))
+ if (!g_strv_contains (b, a[n]))
return FALSE;
}
for (n = 0; b[n] != NULL; n++)
{
- if (!strv_has_string (a, b[n]))
+ if (!g_strv_contains (a, b[n]))
return FALSE;
}
@@ -149,7 +136,7 @@ strv_strv_cmp (gchar **a, gchar **b)
}
static gboolean
-strv_set_equal (gchar **strv, ...)
+strv_set_equal (const gchar * const *strv, ...)
{
guint count;
va_list list;
@@ -164,7 +151,7 @@ strv_set_equal (gchar **strv, ...)
str = va_arg (list, const gchar *);
if (str == NULL)
break;
- if (!strv_has_string (strv, str))
+ if (!g_strv_contains (strv, str))
{
res = FALSE;
break;
@@ -215,7 +202,7 @@ test_simple_group (void)
g_assert_false (g_action_group_has_action (G_ACTION_GROUP (group), "baz"));
actions = g_action_group_list_actions (G_ACTION_GROUP (group));
g_assert_cmpint (g_strv_length (actions), ==, 2);
- g_assert_true (strv_set_equal (actions, "foo", "bar", NULL));
+ g_assert_true (strv_set_equal ((const gchar * const *) actions, "foo", "bar", NULL));
g_strfreev (actions);
g_assert_true (g_action_group_get_action_enabled (G_ACTION_GROUP (group), "foo"));
g_assert_true (g_action_group_get_action_enabled (G_ACTION_GROUP (group), "bar"));
@@ -275,10 +262,12 @@ test_stateful (void)
if (g_test_undefined ())
{
+ GVariant *new_state = g_variant_ref_sink (g_variant_new_int32 (123));
g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
"*assertion*g_variant_is_of_type*failed*");
- g_simple_action_set_state (action, g_variant_new_int32 (123));
+ g_simple_action_set_state (action, new_state);
g_test_assert_expected_messages ();
+ g_variant_unref (new_state);
}
g_simple_action_set_state (action, g_variant_new_string ("hello"));
@@ -292,10 +281,12 @@ test_stateful (void)
if (g_test_undefined ())
{
+ GVariant *new_state = g_variant_ref_sink (g_variant_new_int32 (123));
g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
"*assertion*!= NULL*failed*");
- g_simple_action_set_state (action, g_variant_new_int32 (123));
+ g_simple_action_set_state (action, new_state);
g_test_assert_expected_messages ();
+ g_variant_unref (new_state);
}
g_object_unref (action);
@@ -536,6 +527,8 @@ count_activation (const gchar *action)
count = GPOINTER_TO_INT (g_hash_table_lookup (activation_counts, action));
count++;
g_hash_table_insert (activation_counts, (gpointer)action, GINT_TO_POINTER (count));
+
+ g_main_context_wakeup (NULL);
}
static gint
@@ -593,7 +586,7 @@ compare_action_groups (GActionGroup *a, GActionGroup *b)
alist = g_action_group_list_actions (a);
blist = g_action_group_list_actions (b);
- equal = strv_strv_cmp (alist, blist);
+ equal = strv_strv_cmp ((const gchar * const *) alist, (const gchar * const *) blist);
for (i = 0; equal && alist[i]; i++)
{
@@ -743,6 +736,41 @@ call_describe (gpointer user_data)
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
static void
+action_added_removed_cb (GActionGroup *action_group,
+ char *action_name,
+ gpointer user_data)
+{
+ guint *counter = user_data;
+
+ *counter = *counter + 1;
+ g_main_context_wakeup (NULL);
+}
+
+static void
+action_enabled_changed_cb (GActionGroup *action_group,
+ char *action_name,
+ gboolean enabled,
+ gpointer user_data)
+{
+ guint *counter = user_data;
+
+ *counter = *counter + 1;
+ g_main_context_wakeup (NULL);
+}
+
+static void
+action_state_changed_cb (GActionGroup *action_group,
+ char *action_name,
+ GVariant *value,
+ gpointer user_data)
+{
+ guint *counter = user_data;
+
+ *counter = *counter + 1;
+ g_main_context_wakeup (NULL);
+}
+
+static void
test_dbus_export (void)
{
GDBusConnection *bus;
@@ -754,6 +782,8 @@ test_dbus_export (void)
GVariant *v;
guint id;
gchar **actions;
+ guint n_actions_added = 0, n_actions_enabled_changed = 0, n_actions_removed = 0, n_actions_state_changed = 0;
+ gulong added_signal_id, enabled_changed_signal_id, removed_signal_id, state_changed_signal_id;
loop = g_main_loop_new (NULL, FALSE);
@@ -770,13 +800,19 @@ test_dbus_export (void)
g_assert_no_error (error);
proxy = g_dbus_action_group_get (bus, g_dbus_connection_get_unique_name (bus), "/");
+ added_signal_id = g_signal_connect (proxy, "action-added", G_CALLBACK (action_added_removed_cb), &n_actions_added);
+ enabled_changed_signal_id = g_signal_connect (proxy, "action-enabled-changed", G_CALLBACK (action_enabled_changed_cb), &n_actions_enabled_changed);
+ removed_signal_id = g_signal_connect (proxy, "action-removed", G_CALLBACK (action_added_removed_cb), &n_actions_removed);
+ state_changed_signal_id = g_signal_connect (proxy, "action-state-changed", G_CALLBACK (action_state_changed_cb), &n_actions_state_changed);
actions = g_action_group_list_actions (G_ACTION_GROUP (proxy));
g_assert_cmpint (g_strv_length (actions), ==, 0);
g_strfreev (actions);
- g_timeout_add (100, stop_loop, loop);
- g_main_loop_run (loop);
+ /* Actions are queried from the bus asynchronously after the first
+ * list_actions() call. Wait for the expected signals then check again. */
+ while (n_actions_added < G_N_ELEMENTS (exported_entries))
+ g_main_context_iteration (NULL, TRUE);
actions = g_action_group_list_actions (G_ACTION_GROUP (proxy));
g_assert_cmpint (g_strv_length (actions), ==, G_N_ELEMENTS (exported_entries));
@@ -795,54 +831,56 @@ test_dbus_export (void)
g_assert_true (compare_action_groups (G_ACTION_GROUP (group), G_ACTION_GROUP (proxy)));
/* test that various changes get propagated from group to proxy */
+ n_actions_added = 0;
action = g_simple_action_new_stateful ("italic", NULL, g_variant_new_boolean (FALSE));
g_simple_action_group_insert (group, G_ACTION (action));
g_object_unref (action);
- g_timeout_add (100, stop_loop, loop);
- g_main_loop_run (loop);
+ while (n_actions_added == 0)
+ g_main_context_iteration (NULL, TRUE);
g_assert_true (compare_action_groups (G_ACTION_GROUP (group), G_ACTION_GROUP (proxy)));
action = G_SIMPLE_ACTION (g_simple_action_group_lookup (group, "cut"));
g_simple_action_set_enabled (action, FALSE);
- g_timeout_add (100, stop_loop, loop);
- g_main_loop_run (loop);
+ while (n_actions_enabled_changed == 0)
+ g_main_context_iteration (NULL, TRUE);
g_assert_true (compare_action_groups (G_ACTION_GROUP (group), G_ACTION_GROUP (proxy)));
action = G_SIMPLE_ACTION (g_simple_action_group_lookup (group, "bold"));
g_simple_action_set_state (action, g_variant_new_boolean (FALSE));
- g_timeout_add (100, stop_loop, loop);
- g_main_loop_run (loop);
+ while (n_actions_state_changed == 0)
+ g_main_context_iteration (NULL, TRUE);
g_assert_true (compare_action_groups (G_ACTION_GROUP (group), G_ACTION_GROUP (proxy)));
g_simple_action_group_remove (group, "italic");
- g_timeout_add (100, stop_loop, loop);
- g_main_loop_run (loop);
+ while (n_actions_removed == 0)
+ g_main_context_iteration (NULL, TRUE);
g_assert_true (compare_action_groups (G_ACTION_GROUP (group), G_ACTION_GROUP (proxy)));
/* test that activations and state changes propagate the other way */
-
+ n_actions_state_changed = 0;
g_assert_cmpint (activation_count ("copy"), ==, 0);
g_action_group_activate_action (G_ACTION_GROUP (proxy), "copy", NULL);
- g_timeout_add (100, stop_loop, loop);
- g_main_loop_run (loop);
+ while (activation_count ("copy") == 0)
+ g_main_context_iteration (NULL, TRUE);
g_assert_cmpint (activation_count ("copy"), ==, 1);
g_assert_true (compare_action_groups (G_ACTION_GROUP (group), G_ACTION_GROUP (proxy)));
+ n_actions_state_changed = 0;
g_assert_cmpint (activation_count ("bold"), ==, 0);
g_action_group_activate_action (G_ACTION_GROUP (proxy), "bold", NULL);
- g_timeout_add (100, stop_loop, loop);
- g_main_loop_run (loop);
+ while (n_actions_state_changed == 0)
+ g_main_context_iteration (NULL, TRUE);
g_assert_cmpint (activation_count ("bold"), ==, 1);
g_assert_true (compare_action_groups (G_ACTION_GROUP (group), G_ACTION_GROUP (proxy)));
@@ -850,10 +888,11 @@ test_dbus_export (void)
g_assert_true (g_variant_get_boolean (v));
g_variant_unref (v);
+ n_actions_state_changed = 0;
g_action_group_change_action_state (G_ACTION_GROUP (proxy), "bold", g_variant_new_boolean (FALSE));
- g_timeout_add (100, stop_loop, loop);
- g_main_loop_run (loop);
+ while (n_actions_state_changed == 0)
+ g_main_context_iteration (NULL, TRUE);
g_assert_cmpint (activation_count ("bold"), ==, 1);
g_assert_true (compare_action_groups (G_ACTION_GROUP (group), G_ACTION_GROUP (proxy)));
@@ -863,6 +902,10 @@ test_dbus_export (void)
g_dbus_connection_unexport_action_group (bus, id);
+ g_signal_handler_disconnect (proxy, added_signal_id);
+ g_signal_handler_disconnect (proxy, enabled_changed_signal_id);
+ g_signal_handler_disconnect (proxy, removed_signal_id);
+ g_signal_handler_disconnect (proxy, state_changed_signal_id);
g_object_unref (proxy);
g_object_unref (group);
g_main_loop_unref (loop);
diff --git a/gio/tests/appmonitor.c b/gio/tests/appmonitor.c
index 725d91e5c..9db8c4dea 100644
--- a/gio/tests/appmonitor.c
+++ b/gio/tests/appmonitor.c
@@ -78,6 +78,11 @@ test_app_monitor (Fixture *fixture,
GAppInfoMonitor *monitor;
GMainLoop *loop;
+#ifdef G_OS_WIN32
+ g_test_skip (".desktop monitor on win32");
+ return;
+#endif
+
app_path = g_build_filename (fixture->applications_dir, "app.desktop", NULL);
/* FIXME: this shouldn't be required */
diff --git a/gio/tests/cert-tests/key-cert-password-123.p12 b/gio/tests/cert-tests/key-cert-password-123.p12
new file mode 100644
index 000000000..4da265fd6
--- /dev/null
+++ b/gio/tests/cert-tests/key-cert-password-123.p12
Binary files differ
diff --git a/gio/tests/codegen.py b/gio/tests/codegen.py
index d3a09bae7..e76c6d243 100644
--- a/gio/tests/codegen.py
+++ b/gio/tests/codegen.py
@@ -27,10 +27,10 @@ import subprocess
import sys
import tempfile
import unittest
+import xml.etree.ElementTree as ET
import taptestrunner
-
# Disable line length warnings as wrapping the C code templates would be hard
# flake8: noqa: E501
@@ -38,6 +38,10 @@ import taptestrunner
Result = collections.namedtuple("Result", ("info", "out", "err", "subs"))
+def on_win32():
+ return sys.platform.find('win') != -1
+
+
class TestCodegen(unittest.TestCase):
"""Integration test for running gdbus-codegen.
@@ -55,7 +59,7 @@ class TestCodegen(unittest.TestCase):
cwd = ""
def setUp(self):
- self.timeout_seconds = 10 # seconds per test
+ self.timeout_seconds = 100 # seconds per test
self.tmpdir = tempfile.TemporaryDirectory()
self.cwd = os.getcwd()
os.chdir(self.tmpdir.name)
@@ -281,6 +285,7 @@ class TestCodegen(unittest.TestCase):
with self.assertRaises(subprocess.CalledProcessError):
self.runCodegen()
+ @unittest.skipIf(on_win32(), "requires /dev/stdout")
def test_empty_interface_header(self):
"""Test generating a header with an empty interface file."""
result = self.runCodegenWithInterface("", "--output", "/dev/stdout", "--header")
@@ -304,6 +309,7 @@ G_END_DECLS
result.out.strip(),
)
+ @unittest.skipIf(on_win32(), "requires /dev/stdout")
def test_empty_interface_body(self):
"""Test generating a body with an empty interface file."""
result = self.runCodegenWithInterface("", "--output", "/dev/stdout", "--body")
@@ -323,6 +329,7 @@ G_END_DECLS
result.out.strip(),
)
+ @unittest.skipIf(on_win32(), "requires /dev/stdout")
def test_reproducible(self):
"""Test builds are reproducible regardless of file ordering."""
xml_contents1 = """
@@ -382,6 +389,47 @@ G_END_DECLS
# The output should be the same.
self.assertEqual(result1.out, result2.out)
+ def test_generate_docbook(self):
+ """Test the basic functionality of the docbook generator."""
+ xml_contents = """
+ <node>
+ <interface name="org.project.Bar.Frobnicator">
+ <method name="RandomMethod"/>
+ </interface>
+ </node>
+ """
+ res = self.runCodegenWithInterface(
+ xml_contents,
+ "--generate-docbook",
+ "test",
+ )
+ self.assertEqual("", res.err)
+ self.assertEqual("", res.out)
+ with open("test-org.project.Bar.Frobnicator.xml", "r") as f:
+ xml_data = f.readlines()
+ self.assertTrue(len(xml_data) != 0)
+
+ def test_generate_rst(self):
+ """Test the basic functionality of the rst generator."""
+ xml_contents = """
+ <node>
+ <interface name="org.project.Bar.Frobnicator">
+ <method name="RandomMethod"/>
+ </interface>
+ </node>
+ """
+ res = self.runCodegenWithInterface(
+ xml_contents,
+ "--generate-rst",
+ "test",
+ )
+ self.assertEqual("", res.err)
+ self.assertEqual("", res.out)
+ with open("test-org.project.Bar.Frobnicator.rst", "r") as f:
+ rst = f.readlines()
+ self.assertTrue(len(rst) != 0)
+
+ @unittest.skipIf(on_win32(), "requires /dev/stdout")
def test_glib_min_required_invalid(self):
"""Test running with an invalid --glib-min-required."""
with self.assertRaises(subprocess.CalledProcessError):
@@ -394,6 +442,7 @@ G_END_DECLS
"hello mum",
)
+ @unittest.skipIf(on_win32(), "requires /dev/stdout")
def test_glib_min_required_too_low(self):
"""Test running with a --glib-min-required which is too low (and hence
probably a typo)."""
@@ -402,6 +451,7 @@ G_END_DECLS
"", "--output", "/dev/stdout", "--body", "--glib-min-required", "2.6"
)
+ @unittest.skipIf(on_win32(), "requires /dev/stdout")
def test_glib_min_required_major_only(self):
"""Test running with a --glib-min-required which contains only a major version."""
result = self.runCodegenWithInterface(
@@ -417,6 +467,7 @@ G_END_DECLS
self.assertEqual("", result.err)
self.assertNotEqual("", result.out.strip())
+ @unittest.skipIf(on_win32(), "requires /dev/stdout")
def test_glib_min_required_with_micro(self):
"""Test running with a --glib-min-required which contains a micro version."""
result = self.runCodegenWithInterface(
@@ -425,6 +476,7 @@ G_END_DECLS
self.assertEqual("", result.err)
self.assertNotEqual("", result.out.strip())
+ @unittest.skipIf(on_win32(), "requires /dev/stdout")
def test_glib_max_allowed_too_low(self):
"""Test running with a --glib-max-allowed which is too low (and hence
probably a typo)."""
@@ -433,6 +485,7 @@ G_END_DECLS
"", "--output", "/dev/stdout", "--body", "--glib-max-allowed", "2.6"
)
+ @unittest.skipIf(on_win32(), "requires /dev/stdout")
def test_glib_max_allowed_major_only(self):
"""Test running with a --glib-max-allowed which contains only a major version."""
result = self.runCodegenWithInterface(
@@ -441,6 +494,7 @@ G_END_DECLS
self.assertEqual("", result.err)
self.assertNotEqual("", result.out.strip())
+ @unittest.skipIf(on_win32(), "requires /dev/stdout")
def test_glib_max_allowed_with_micro(self):
"""Test running with a --glib-max-allowed which contains a micro version."""
result = self.runCodegenWithInterface(
@@ -449,6 +503,7 @@ G_END_DECLS
self.assertEqual("", result.err)
self.assertNotEqual("", result.out.strip())
+ @unittest.skipIf(on_win32(), "requires /dev/stdout")
def test_glib_max_allowed_unstable(self):
"""Test running with a --glib-max-allowed which is unstable. It should
be rounded up to the next stable version number, and hence should not
@@ -466,6 +521,7 @@ G_END_DECLS
self.assertEqual("", result.err)
self.assertNotEqual("", result.out.strip())
+ @unittest.skipIf(on_win32(), "requires /dev/stdout")
def test_glib_max_allowed_less_than_min_required(self):
"""Test running with a --glib-max-allowed which is less than
--glib-min-required."""
@@ -481,6 +537,7 @@ G_END_DECLS
"2.64",
)
+ @unittest.skipIf(on_win32(), "requires /dev/stdout")
def test_unix_fd_types_and_annotations(self):
"""Test an interface with `h` arguments, no annotation, and GLib < 2.64.
@@ -539,6 +596,7 @@ G_END_DECLS
self.assertEqual("", result.err)
self.assertEqual(result.out.strip().count("GUnixFDList"), 18)
+ @unittest.skipIf(on_win32(), "requires /dev/stdout")
def test_call_flags_and_timeout_method_args(self):
"""Test that generated method call functions have @call_flags and
@timeout_msec args if and only if GLib >= 2.64.
@@ -585,6 +643,40 @@ G_END_DECLS
self.assertEqual(result.out.strip().count("GDBusCallFlags call_flags,"), 2)
self.assertEqual(result.out.strip().count("gint timeout_msec,"), 2)
+ def test_generate_valid_docbook(self):
+ """Test the basic functionality of the docbook generator."""
+ xml_contents = """
+ <node>
+ <interface name="org.project.Bar.Frobnicator">
+ <!-- Resize:
+ @size: New partition size in bytes, 0 for maximal size.
+ @options: Options.
+ @since 2.7.2
+
+ Resizes the partition.
+
+ The partition will not change its position but might be slightly bigger
+ than requested due to sector counts and alignment (e.g. 1MiB).
+ If the requested size can't be allocated it results in an error.
+ The maximal size can automatically be set by using 0 as size.
+ -->
+ <method name="Resize">
+ <arg name="size" direction="in" type="t"/>
+ <arg name="options" direction="in" type="a{sv}"/>
+ </method>
+ </interface>
+ </node>
+ """
+ res = self.runCodegenWithInterface(
+ xml_contents,
+ "--generate-docbook",
+ "test",
+ )
+ self.assertEqual("", res.err)
+ self.assertEqual("", res.out)
+ with open("test-org.project.Bar.Frobnicator.xml", "r") as f:
+ self.assertTrue(ET.parse(f) is not None)
+
if __name__ == "__main__":
unittest.main(testRunner=taptestrunner.TAPTestRunner())
diff --git a/gio/tests/contenttype.c b/gio/tests/contenttype.c
index db34f1da8..6cfd366ff 100644
--- a/gio/tests/contenttype.c
+++ b/gio/tests/contenttype.c
@@ -1,8 +1,6 @@
#include <gio/gio.h>
#include <string.h>
-#include "glib/glib-private.h"
-
#define g_assert_content_type_equals(s1, s2) \
do { \
const char *__s1 = (s1), *__s2 = (s2); \
@@ -18,9 +16,6 @@
static void
test_guess (void)
{
-#ifdef _GLIB_ADDRESS_SANITIZER
- g_test_incomplete ("FIXME: Leaks xdgmime internal data, see glib#2310");
-#else
gchar *res;
gchar *expected;
gchar *existing_directory;
@@ -35,7 +30,7 @@ test_guess (void)
existing_directory = (gchar *) g_getenv ("SYSTEMROOT");
if (existing_directory)
- existing_directory = g_strdup_printf ("%s/", existing_directory);
+ existing_directory = g_strdup_printf ("%s" G_DIR_SEPARATOR_S, existing_directory);
#else
existing_directory = g_strdup ("/etc/");
#endif
@@ -61,7 +56,8 @@ test_guess (void)
g_free (res);
g_free (expected);
- /* Sadly OSX just doesn't have as large and robust of a mime type database as Linux */
+ /* Sadly win32 & OSX just don't have as large and robust of a mime type database as Linux */
+#ifndef G_OS_WIN32
#ifndef __APPLE__
res = g_content_type_guess ("foo", data, sizeof (data) - 1, &uncertain);
expected = g_content_type_from_mime_type ("text/plain");
@@ -115,7 +111,7 @@ test_guess (void)
g_assert_false (uncertain);
g_free (res);
g_free (expected);
-#endif
+#endif /* __APPLE__ */
res = g_content_type_guess (NULL, (guchar *)"%!PS-Adobe-2.0 EPSF-1.2", 23, &uncertain);
expected = g_content_type_from_mime_type ("image/x-eps");
@@ -131,15 +127,12 @@ test_guess (void)
g_assert_false (uncertain);
g_free (res);
g_free (expected);
-#endif
+#endif /* G_OS_WIN32 */
}
static void
test_unknown (void)
{
-#ifdef _GLIB_ADDRESS_SANITIZER
- g_test_incomplete ("FIXME: Leaks xdgmime internal data, see glib#2310");
-#else
gchar *unknown;
gchar *str;
@@ -149,15 +142,11 @@ test_unknown (void)
g_assert_cmpstr (str, ==, "application/octet-stream");
g_free (str);
g_free (unknown);
-#endif
}
static void
test_subtype (void)
{
-#ifdef _GLIB_ADDRESS_SANITIZER
- g_test_incomplete ("FIXME: Leaks xdgmime internal data, see glib#2310");
-#else
gchar *plain;
gchar *xml;
@@ -169,7 +158,6 @@ test_subtype (void)
g_free (plain);
g_free (xml);
-#endif
}
static gint
@@ -183,10 +171,6 @@ find_mime (gconstpointer a, gconstpointer b)
static void
test_list (void)
{
-#ifdef _GLIB_ADDRESS_SANITIZER
- g_test_incomplete ("FIXME: Leaks xdgmime internal data, see glib#2310");
- (void) find_mime;
-#else
GList *types;
gchar *plain;
gchar *xml;
@@ -211,17 +195,20 @@ test_list (void)
g_free (plain);
g_free (xml);
-#endif
}
static void
test_executable (void)
{
-#ifdef _GLIB_ADDRESS_SANITIZER
- g_test_incomplete ("FIXME: Leaks xdgmime internal data, see glib#2310");
-#else
gchar *type;
+#ifdef G_OS_WIN32
+ type = g_content_type_from_mime_type ("application/vnd.microsoft.portable-executable");
+ /* FIXME: the MIME is not in the default `MIME\Database\Content Type` registry.
+ * g_assert_true (g_content_type_can_be_executable (type));
+ */
+ g_free (type);
+#else
type = g_content_type_from_mime_type ("application/x-executable");
g_assert_true (g_content_type_can_be_executable (type));
g_free (type);
@@ -229,19 +216,15 @@ test_executable (void)
type = g_content_type_from_mime_type ("text/plain");
g_assert_true (g_content_type_can_be_executable (type));
g_free (type);
-
+#endif
type = g_content_type_from_mime_type ("image/png");
g_assert_false (g_content_type_can_be_executable (type));
g_free (type);
-#endif
}
static void
test_description (void)
{
-#ifdef _GLIB_ADDRESS_SANITIZER
- g_test_incomplete ("FIXME: Leaks xdgmime internal data, see glib#2310");
-#else
gchar *type;
gchar *desc;
@@ -251,15 +234,11 @@ test_description (void)
g_free (desc);
g_free (type);
-#endif
}
static void
test_icon (void)
{
-#ifdef _GLIB_ADDRESS_SANITIZER
- g_test_incomplete ("FIXME: Leaks xdgmime internal data, see glib#2310");
-#else
gchar *type;
GIcon *icon;
@@ -274,7 +253,9 @@ test_icon (void)
#ifdef __APPLE__
g_assert_true (g_strv_contains (names, "text-*"));
#else
+#ifndef G_OS_WIN32
g_assert_true (g_strv_contains (names, "text-plain"));
+#endif
g_assert_true (g_strv_contains (names, "text-x-generic"));
#endif
}
@@ -289,22 +270,23 @@ test_icon (void)
const gchar *const *names;
names = g_themed_icon_get_names (G_THEMED_ICON (icon));
+#ifdef G_OS_WIN32
+ g_assert_true (g_strv_contains (names, "text-x-generic"));
+#else
g_assert_true (g_strv_contains (names, "application-rtf"));
#ifndef __APPLE__
g_assert_true (g_strv_contains (names, "x-office-document"));
#endif
+#endif
}
g_object_unref (icon);
g_free (type);
-#endif
}
static void
test_symbolic_icon (void)
{
-#ifdef _GLIB_ADDRESS_SANITIZER
- g_test_incomplete ("FIXME: Leaks xdgmime internal data, see glib#2310");
-#elif !defined(G_OS_WIN32)
+#ifndef G_OS_WIN32
gchar *type;
GIcon *icon;
@@ -352,9 +334,6 @@ test_symbolic_icon (void)
static void
test_tree (void)
{
-#ifdef _GLIB_ADDRESS_SANITIZER
- g_test_incomplete ("FIXME: Leaks xdgmime internal data, see glib#2310");
-#else
const gchar *tests[] = {
"x-content/image-dcf",
"x-content/unix-software",
@@ -365,8 +344,8 @@ test_tree (void)
gchar **types;
gsize i;
-#ifdef __APPLE__
- g_test_skip ("The OSX backend does not implement g_content_type_guess_for_tree()");
+#if defined(__APPLE__) || defined(G_OS_WIN32)
+ g_test_skip ("The OSX & Windows backends do not implement g_content_type_guess_for_tree()");
return;
#endif
@@ -379,15 +358,11 @@ test_tree (void)
g_strfreev (types);
g_object_unref (file);
}
-#endif
}
static void
test_type_is_a_special_case (void)
{
-#ifdef _GLIB_ADDRESS_SANITIZER
- g_test_incomplete ("FIXME: Leaks xdgmime internal data, see glib#2310");
-#else
gboolean res;
g_test_bug ("https://bugzilla.gnome.org/show_bug.cgi?id=782311");
@@ -395,19 +370,15 @@ test_type_is_a_special_case (void)
/* Everything but the inode type is application/octet-stream */
res = g_content_type_is_a ("inode/directory", "application/octet-stream");
g_assert_false (res);
-#ifndef __APPLE__
+#if !defined(__APPLE__) && !defined(G_OS_WIN32)
res = g_content_type_is_a ("anything", "application/octet-stream");
g_assert_true (res);
#endif
-#endif
}
static void
test_guess_svg_from_data (void)
{
-#ifdef _GLIB_ADDRESS_SANITIZER
- g_test_incomplete ("FIXME: Leaks xdgmime internal data, see glib#2310");
-#else
const gchar svgfilecontent[] = "<svg xmlns=\"http://www.w3.org/2000/svg\"\
xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n\
<rect x=\"10\" y=\"10\" height=\"100\" width=\"100\"\n\
@@ -426,15 +397,12 @@ test_guess_svg_from_data (void)
#endif
g_assert_false (uncertain);
g_free (res);
-#endif
}
static void
test_mime_from_content (void)
{
-#ifdef _GLIB_ADDRESS_SANITIZER
- g_test_incomplete ("FIXME: Leaks xdgmime internal data, see glib#2310");
-#elif defined(__APPLE__)
+#ifdef __APPLE__
gchar *mime_type;
mime_type = g_content_type_get_mime_type ("com.microsoft.bmp");
g_assert_cmpstr (mime_type, ==, "image/bmp");
diff --git a/gio/tests/converter-stream.c b/gio/tests/converter-stream.c
index cf1853ba0..31399a78e 100644
--- a/gio/tests/converter-stream.c
+++ b/gio/tests/converter-stream.c
@@ -310,9 +310,9 @@ test_expander (void)
G_CONVERTER_INPUT_AT_END,
&n_read, &n_written, NULL);
- g_assert (cres == G_CONVERTER_FINISHED);
- g_assert (n_read == 11);
- g_assert (n_written == 41030);
+ g_assert_cmpint (cres, ==, G_CONVERTER_FINISHED);
+ g_assert_cmpuint (n_read, ==, 11);
+ g_assert_cmpuint (n_written, ==, 41030);
g_converter_reset (expander);
@@ -320,9 +320,9 @@ test_expander (void)
sizeof (unexpanded_data),
NULL);
cstream = g_converter_input_stream_new (mem, expander);
- g_assert (g_converter_input_stream_get_converter (G_CONVERTER_INPUT_STREAM (cstream)) == expander);
+ g_assert_true (g_converter_input_stream_get_converter (G_CONVERTER_INPUT_STREAM (cstream)) == expander);
g_object_get (cstream, "converter", &converter, NULL);
- g_assert (converter == expander);
+ g_assert_true (converter == expander);
g_object_unref (converter);
g_object_unref (mem);
@@ -334,7 +334,7 @@ test_expander (void)
res = g_input_stream_read (cstream,
ptr, 1,
NULL, &error);
- g_assert (res != -1);
+ g_assert_cmpint (res, !=, -1);
if (res == 0)
break;
ptr += res;
@@ -347,9 +347,9 @@ test_expander (void)
mem_out = g_memory_output_stream_new (NULL, 0, g_realloc, g_free);
cstream_out = g_converter_output_stream_new (mem_out, expander);
- g_assert (g_converter_output_stream_get_converter (G_CONVERTER_OUTPUT_STREAM (cstream_out)) == expander);
+ g_assert_true (g_converter_output_stream_get_converter (G_CONVERTER_OUTPUT_STREAM (cstream_out)) == expander);
g_object_get (cstream_out, "converter", &converter, NULL);
- g_assert (converter == expander);
+ g_assert_true (converter == expander);
g_object_unref (converter);
g_object_unref (mem_out);
@@ -359,13 +359,13 @@ test_expander (void)
res = g_output_stream_write (cstream_out,
unexpanded_data + i, 1,
NULL, &error);
- g_assert (res != -1);
+ g_assert_cmpint (res, !=, -1);
if (res == 0)
{
- g_assert (i == sizeof(unexpanded_data) -1);
+ g_assert_cmpuint (i, ==, sizeof(unexpanded_data) -1);
break;
}
- g_assert (res == 1);
+ g_assert_cmpint (res, ==, 1);
}
g_output_stream_close (cstream_out, NULL, NULL);
@@ -402,9 +402,9 @@ test_compressor (void)
expanded, 100*1000,
G_CONVERTER_INPUT_AT_END,
&n_read, &expanded_size, NULL);
- g_assert (cres == G_CONVERTER_FINISHED);
- g_assert (n_read == 11);
- g_assert (expanded_size == 41030);
+ g_assert_cmpint (cres, ==, G_CONVERTER_FINISHED);
+ g_assert_cmpuint (n_read, ==, 11);
+ g_assert_cmpuint (expanded_size, ==, 41030);
compressor = g_compressor_converter_new ();
@@ -424,7 +424,7 @@ test_compressor (void)
res = g_input_stream_read (cstream,
ptr, 1,
NULL, &error);
- g_assert (res != -1);
+ g_assert_cmpint (res, !=, -1);
if (res == 0)
break;
ptr += res;
@@ -448,13 +448,13 @@ test_compressor (void)
res = g_output_stream_write (cstream_out,
expanded + i, 1,
NULL, &error);
- g_assert (res != -1);
+ g_assert_cmpint (res, !=, -1);
if (res == 0)
{
- g_assert (i == expanded_size -1);
+ g_assert_cmpuint (i, ==, expanded_size -1);
break;
}
- g_assert (res == 1);
+ g_assert_cmpint (res, ==, 1);
}
g_output_stream_close (cstream_out, NULL, NULL);
@@ -485,15 +485,15 @@ test_compressor (void)
res = g_input_stream_read (cstream,
ptr, 1,
NULL, &error);
- g_assert (res != -1);
+ g_assert_cmpint (res, !=, -1);
if (res == 0)
break;
ptr += res;
total_read += res;
}
- g_assert (total_read == 1);
- g_assert (*converted == 5);
+ g_assert_cmpuint (total_read, ==, 1);
+ g_assert_cmpuint (*converted, ==, 5);
g_object_unref (cstream);
@@ -511,16 +511,16 @@ test_compressor (void)
res = g_input_stream_read (cstream,
ptr, 1,
NULL, &error);
- g_assert (res != -1);
+ g_assert_cmpint (res, !=, -1);
if (res == 0)
break;
ptr += res;
total_read += res;
}
- g_assert (total_read == 2);
- g_assert (converted[0] == 5);
- g_assert (converted[1] == 5);
+ g_assert_cmpuint (total_read, ==, 2);
+ g_assert_cmpuint (converted[0], ==, 5);
+ g_assert_cmpuint (converted[1], ==, 5);
g_object_unref (cstream);
@@ -547,13 +547,13 @@ test_compressor (void)
break;
}
- g_assert (res != 0);
+ g_assert_cmpint (res, !=, 0);
ptr += res;
total_read += res;
}
- g_assert (total_read == 1);
- g_assert (converted[0] == 5);
+ g_assert_cmpuint (total_read, ==, 1);
+ g_assert_cmpuint (converted[0], ==, 5);
g_object_unref (cstream);
@@ -710,7 +710,7 @@ test_converter_leftover (void)
converted + total_read,
LEFTOVER_BUFSIZE - total_read,
NULL, &error);
- g_assert (res >= 0);
+ g_assert_cmpint (res, >=, 0);
if (res == 0)
break;
total_read += res;
@@ -763,10 +763,10 @@ test_roundtrip (gconstpointer data)
g_file_info_set_name (info, "foo");
g_object_set (compressor, "file-info", info, NULL);
info2 = g_zlib_compressor_get_file_info (G_ZLIB_COMPRESSOR (compressor));
- g_assert (info == info2);
+ g_assert_true (info == info2);
g_object_unref (info);
costream1 = g_converter_output_stream_new (ostream1, compressor);
- g_assert (g_converter_output_stream_get_converter (G_CONVERTER_OUTPUT_STREAM (costream1)) == compressor);
+ g_assert_true (g_converter_output_stream_get_converter (G_CONVERTER_OUTPUT_STREAM (costream1)) == compressor);
g_output_stream_splice (costream1, istream0, 0, NULL, &error);
g_assert_no_error (error);
@@ -829,7 +829,7 @@ test_charset (gconstpointer data)
conv = (GConverter *)g_charset_converter_new (test->charset_out, test->charset_in, NULL);
g_object_get (conv, "use-fallback", &fallback, NULL);
- g_assert (!fallback);
+ g_assert_false (fallback);
in = g_memory_input_stream_new_from_data (test->text_in, -1, NULL);
in2 = g_converter_input_stream_new (in, conv);
@@ -862,7 +862,7 @@ test_charset (gconstpointer data)
g_converter_reset (conv);
- g_assert (!g_charset_converter_get_use_fallback (G_CHARSET_CONVERTER (conv)));
+ g_assert_false (g_charset_converter_get_use_fallback (G_CHARSET_CONVERTER (conv)));
g_charset_converter_set_use_fallback (G_CHARSET_CONVERTER (conv), TRUE);
in = g_memory_input_stream_new_from_data (test->text_in, -1, NULL);
@@ -981,9 +981,9 @@ test_converter_pollable (void)
expanded, 100*1000,
G_CONVERTER_INPUT_AT_END,
&n_read, &expanded_size, NULL);
- g_assert (cres == G_CONVERTER_FINISHED);
- g_assert (n_read == 11);
- g_assert (expanded_size == 41030);
+ g_assert_cmpint (cres, ==, G_CONVERTER_FINISHED);
+ g_assert_cmpuint (n_read, ==, 11);
+ g_assert_cmpuint (expanded_size, ==, 41030);
expanded_end = expanded + expanded_size;
make_socketpair (&left, &right);
@@ -995,7 +995,7 @@ test_converter_pollable (void)
cstream = g_converter_input_stream_new (g_io_stream_get_input_stream (left),
compressor);
pollable_in = G_POLLABLE_INPUT_STREAM (cstream);
- g_assert (g_pollable_input_stream_can_poll (pollable_in));
+ g_assert_true (g_pollable_input_stream_can_poll (pollable_in));
socket_out = g_io_stream_get_output_stream (right);
@@ -1017,15 +1017,16 @@ test_converter_pollable (void)
}
else if (socket_out)
{
+ g_output_stream_close (socket_out, NULL, NULL);
g_object_unref (right);
socket_out = NULL;
}
/* Wait a few ticks to check for the pipe to propagate the
- * write. Finesses the race condition in the following test,
- * where is_readable fails because the write hasn't propagated,
- * but the read then succeeds because it has. */
- g_usleep (80L);
+ * write. We can’t wait on a GSource as that might affect the stream under
+ * test, so just poll. */
+ while (!g_pollable_input_stream_is_readable (pollable_in))
+ g_usleep (80L);
is_readable = g_pollable_input_stream_is_readable (pollable_in);
res = g_pollable_input_stream_read_nonblocking (pollable_in,
@@ -1038,7 +1039,10 @@ test_converter_pollable (void)
/* After closing the write end, we can't get WOULD_BLOCK any more */
if (!socket_out)
- g_assert_cmpint (res, !=, -1);
+ {
+ g_assert_no_error (error);
+ g_assert_cmpint (res, !=, -1);
+ }
if (res == -1)
{
@@ -1071,8 +1075,8 @@ test_converter_pollable (void)
cstream_out = g_converter_output_stream_new (mem_out, compressor);
g_object_unref (mem_out);
pollable_out = G_POLLABLE_OUTPUT_STREAM (cstream_out);
- g_assert (g_pollable_output_stream_can_poll (pollable_out));
- g_assert (g_pollable_output_stream_is_writable (pollable_out));
+ g_assert_true (g_pollable_output_stream_can_poll (pollable_out));
+ g_assert_true (g_pollable_output_stream_is_writable (pollable_out));
for (i = 0; i < expanded_size; i++)
{
@@ -1080,13 +1084,13 @@ test_converter_pollable (void)
res = g_pollable_output_stream_write_nonblocking (pollable_out,
expanded + i, 1,
NULL, &error);
- g_assert (res != -1);
+ g_assert_cmpint (res, !=, -1);
if (res == 0)
{
- g_assert (i == expanded_size -1);
+ g_assert_cmpuint (i, ==, expanded_size -1);
break;
}
- g_assert (res == 1);
+ g_assert_cmpint (res, ==, 1);
}
g_output_stream_close (cstream_out, NULL, NULL);
@@ -1127,7 +1131,7 @@ test_truncation (gconstpointer data)
ostream1 = g_memory_output_stream_new (NULL, 0, g_realloc, g_free);
compressor = G_CONVERTER (g_zlib_compressor_new (test->format, -1));
costream1 = g_converter_output_stream_new (ostream1, compressor);
- g_assert (g_converter_output_stream_get_converter (G_CONVERTER_OUTPUT_STREAM (costream1)) == compressor);
+ g_assert_true (g_converter_output_stream_get_converter (G_CONVERTER_OUTPUT_STREAM (costream1)) == compressor);
g_output_stream_splice (costream1, istream0, 0, NULL, &error);
g_assert_no_error (error);
diff --git a/gio/tests/credentials.c b/gio/tests/credentials.c
index 2b0f1f787..070019f1c 100644
--- a/gio/tests/credentials.c
+++ b/gio/tests/credentials.c
@@ -25,6 +25,28 @@
#include <gio/gio.h>
#include <gio/gcredentialsprivate.h>
+#ifdef G_OS_WIN32
+
+static void
+test_basic (void)
+{
+ GCredentials *creds = g_credentials_new ();
+ gchar *stringified;
+ DWORD *pid;
+
+ stringified = g_credentials_to_string (creds);
+ g_test_message ("%s", stringified);
+ g_free (stringified);
+
+ pid = g_credentials_get_native (creds,
+ G_CREDENTIALS_TYPE_WIN32_PID);
+ g_assert_cmpuint (*pid, ==, GetCurrentProcessId ());
+
+ g_object_unref (creds);
+}
+
+#else
+
static void
test_basic (void)
{
@@ -177,6 +199,8 @@ test_basic (void)
g_object_unref (other);
}
+#endif /* !G_OS_WIN32 */
+
int
main (int argc,
char *argv[])
diff --git a/gio/tests/cxx.cpp b/gio/tests/cxx.cpp
new file mode 100644
index 000000000..1f28d0b27
--- /dev/null
+++ b/gio/tests/cxx.cpp
@@ -0,0 +1,26 @@
+/* Copyright (C) 2001 Sebastian Wilhelmi <wilhelmi@google.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this library; if not, see <http://www.gnu.org/licenses/>.
+ */
+
+/* A trivial C++ program to be compiled in C++ mode, which
+ * smoketests that the GIO headers are valid C++ headers. */
+
+#include <gio/gio.h>
+
+int
+main ()
+{
+ return 0;
+}
diff --git a/gio/tests/debugcontroller.c b/gio/tests/debugcontroller.c
new file mode 100644
index 000000000..c20acd659
--- /dev/null
+++ b/gio/tests/debugcontroller.c
@@ -0,0 +1,396 @@
+/* GLib testing framework examples and tests
+ *
+ * Copyright © 2022 Endless OS Foundation, LLC
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ *
+ * SPDX-License-Identifier: LGPL-2.1-or-later
+ * Author: Philip Withnall <pwithnall@endlessos.org>
+ */
+
+#include <gio/gio.h>
+#include <locale.h>
+
+
+static void
+test_dbus_basic (void)
+{
+ GTestDBus *bus;
+ GDBusConnection *connection = NULL, *connection2 = NULL;
+ GDebugControllerDBus *controller = NULL;
+ gboolean old_value;
+ gboolean debug_enabled;
+ GError *local_error = NULL;
+
+ g_test_summary ("Smoketest for construction and setting of a #GDebugControllerDBus.");
+
+ /* Set up a test session bus and connection. */
+ bus = g_test_dbus_new (G_TEST_DBUS_NONE);
+ g_test_dbus_up (bus);
+
+ connection = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, &local_error);
+ g_assert_no_error (local_error);
+
+ /* Create a controller for this process. */
+ controller = g_debug_controller_dbus_new (connection, NULL, &local_error);
+ g_assert_no_error (local_error);
+ g_assert_nonnull (controller);
+ g_assert_true (G_IS_DEBUG_CONTROLLER_DBUS (controller));
+
+ /* Try enabling and disabling debug output from within the process. */
+ old_value = g_debug_controller_get_debug_enabled (G_DEBUG_CONTROLLER (controller));
+
+ g_debug_controller_set_debug_enabled (G_DEBUG_CONTROLLER (controller), TRUE);
+ g_assert_true (g_debug_controller_get_debug_enabled (G_DEBUG_CONTROLLER (controller)));
+
+ g_debug_controller_set_debug_enabled (G_DEBUG_CONTROLLER (controller), FALSE);
+ g_assert_false (g_debug_controller_get_debug_enabled (G_DEBUG_CONTROLLER (controller)));
+
+ /* Reset the debug state and check using g_object_get(), to exercise that. */
+ g_debug_controller_set_debug_enabled (G_DEBUG_CONTROLLER (controller), old_value);
+
+ g_object_get (G_OBJECT (controller),
+ "debug-enabled", &debug_enabled,
+ "connection", &connection2,
+ NULL);
+ g_assert_true (debug_enabled == old_value);
+ g_assert_true (connection2 == connection);
+ g_clear_object (&connection2);
+
+ g_debug_controller_dbus_stop (controller);
+ while (g_main_context_iteration (NULL, FALSE));
+ g_assert_finalize_object (controller);
+ g_clear_object (&connection);
+
+ g_test_dbus_down (bus);
+ g_clear_object (&bus);
+}
+
+static void
+test_dbus_duplicate (void)
+{
+ GTestDBus *bus;
+ GDBusConnection *connection = NULL;
+ GDebugControllerDBus *controller1 = NULL, *controller2 = NULL;
+ GError *local_error = NULL;
+
+ g_test_summary ("Test that creating a second #GDebugControllerDBus on the same D-Bus connection fails.");
+
+ /* Set up a test session bus and connection. */
+ bus = g_test_dbus_new (G_TEST_DBUS_NONE);
+ g_test_dbus_up (bus);
+
+ connection = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, &local_error);
+ g_assert_no_error (local_error);
+
+ /* Create a controller for this process. */
+ controller1 = g_debug_controller_dbus_new (connection, NULL, &local_error);
+ g_assert_no_error (local_error);
+ g_assert_nonnull (controller1);
+
+ /* And try creating a second one. */
+ controller2 = g_debug_controller_dbus_new (connection, NULL, &local_error);
+ g_assert_error (local_error, G_IO_ERROR, G_IO_ERROR_EXISTS);
+ g_assert_null (controller2);
+ g_clear_error (&local_error);
+
+ g_debug_controller_dbus_stop (controller1);
+ while (g_main_context_iteration (NULL, FALSE));
+ g_assert_finalize_object (controller1);
+ g_clear_object (&connection);
+
+ g_test_dbus_down (bus);
+ g_clear_object (&bus);
+}
+
+static void
+async_result_cb (GObject *source_object,
+ GAsyncResult *result,
+ gpointer user_data)
+{
+ GAsyncResult **result_out = user_data;
+
+ g_assert_null (*result_out);
+ *result_out = g_object_ref (result);
+
+ g_main_context_wakeup (g_main_context_get_thread_default ());
+}
+
+static gboolean
+authorize_false_cb (GDebugControllerDBus *debug_controller,
+ GDBusMethodInvocation *invocation,
+ gpointer user_data)
+{
+ return FALSE;
+}
+
+static gboolean
+authorize_true_cb (GDebugControllerDBus *debug_controller,
+ GDBusMethodInvocation *invocation,
+ gpointer user_data)
+{
+ return TRUE;
+}
+
+static void
+notify_debug_enabled_cb (GObject *object,
+ GParamSpec *pspec,
+ gpointer user_data)
+{
+ guint *notify_count_out = user_data;
+
+ *notify_count_out = *notify_count_out + 1;
+}
+
+static void
+properties_changed_cb (GDBusConnection *connection,
+ const gchar *sender_name,
+ const gchar *object_path,
+ const gchar *interface_name,
+ const gchar *signal_name,
+ GVariant *parameters,
+ gpointer user_data)
+{
+ guint *properties_changed_count_out = user_data;
+
+ *properties_changed_count_out = *properties_changed_count_out + 1;
+ g_main_context_wakeup (g_main_context_get_thread_default ());
+}
+
+static void
+test_dbus_properties (void)
+{
+ GTestDBus *bus;
+ GDBusConnection *controller_connection = NULL;
+ GDBusConnection *remote_connection = NULL;
+ GDebugControllerDBus *controller = NULL;
+ gboolean old_value;
+ GAsyncResult *result = NULL;
+ GVariant *reply = NULL;
+ GVariant *debug_enabled_variant = NULL;
+ gboolean debug_enabled;
+ GError *local_error = NULL;
+ gulong handler_id;
+ gulong notify_id;
+ guint notify_count = 0;
+ guint properties_changed_id;
+ guint properties_changed_count = 0;
+
+ g_test_summary ("Test getting and setting properties on a #GDebugControllerDBus.");
+
+ /* Set up a test session bus and connection. Set up a separate second
+ * connection to simulate a remote peer. */
+ bus = g_test_dbus_new (G_TEST_DBUS_NONE);
+ g_test_dbus_up (bus);
+
+ controller_connection = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, &local_error);
+ g_assert_no_error (local_error);
+
+ remote_connection = g_dbus_connection_new_for_address_sync (g_test_dbus_get_bus_address (bus),
+ G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_CLIENT |
+ G_DBUS_CONNECTION_FLAGS_MESSAGE_BUS_CONNECTION,
+ NULL,
+ NULL,
+ &local_error);
+ g_assert_no_error (local_error);
+
+ /* Create a controller for this process. */
+ controller = g_debug_controller_dbus_new (controller_connection, NULL, &local_error);
+ g_assert_no_error (local_error);
+ g_assert_nonnull (controller);
+ g_assert_true (G_IS_DEBUG_CONTROLLER_DBUS (controller));
+
+ old_value = g_debug_controller_get_debug_enabled (G_DEBUG_CONTROLLER (controller));
+ notify_id = g_signal_connect (controller, "notify::debug-enabled", G_CALLBACK (notify_debug_enabled_cb), &notify_count);
+
+ properties_changed_id = g_dbus_connection_signal_subscribe (remote_connection,
+ g_dbus_connection_get_unique_name (controller_connection),
+ "org.freedesktop.DBus.Properties",
+ "PropertiesChanged",
+ "/org/gtk/Debugging",
+ NULL,
+ G_DBUS_SIGNAL_FLAGS_NONE,
+ properties_changed_cb,
+ &properties_changed_count,
+ NULL);
+
+ /* Get the debug status remotely. */
+ g_dbus_connection_call (remote_connection,
+ g_dbus_connection_get_unique_name (controller_connection),
+ "/org/gtk/Debugging",
+ "org.freedesktop.DBus.Properties",
+ "Get",
+ g_variant_new ("(ss)", "org.gtk.Debugging", "DebugEnabled"),
+ G_VARIANT_TYPE ("(v)"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ NULL,
+ async_result_cb,
+ &result);
+ g_assert_no_error (local_error);
+
+ while (result == NULL)
+ g_main_context_iteration (NULL, TRUE);
+
+ reply = g_dbus_connection_call_finish (remote_connection, result, &local_error);
+ g_assert_no_error (local_error);
+ g_clear_object (&result);
+
+ g_variant_get (reply, "(v)", &debug_enabled_variant);
+ debug_enabled = g_variant_get_boolean (debug_enabled_variant);
+ g_assert_true (debug_enabled == old_value);
+ g_assert_cmpuint (notify_count, ==, 0);
+ g_assert_cmpuint (properties_changed_count, ==, 0);
+
+ g_clear_pointer (&debug_enabled_variant, g_variant_unref);
+ g_clear_pointer (&reply, g_variant_unref);
+
+ /* Set the debug status remotely. The first attempt should fail due to no
+ * authorisation handler being connected. The second should fail due to the
+ * now-connected handler returning %FALSE. The third attempt should
+ * succeed. */
+ g_dbus_connection_call (remote_connection,
+ g_dbus_connection_get_unique_name (controller_connection),
+ "/org/gtk/Debugging",
+ "org.gtk.Debugging",
+ "SetDebugEnabled",
+ g_variant_new ("(b)", !old_value),
+ NULL,
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ NULL,
+ async_result_cb,
+ &result);
+
+ while (result == NULL)
+ g_main_context_iteration (NULL, TRUE);
+
+ reply = g_dbus_connection_call_finish (remote_connection, result, &local_error);
+ g_assert_error (local_error, G_DBUS_ERROR, G_DBUS_ERROR_ACCESS_DENIED);
+ g_clear_object (&result);
+ g_clear_error (&local_error);
+
+ g_assert_true (g_debug_controller_get_debug_enabled (G_DEBUG_CONTROLLER (controller)) == old_value);
+ g_assert_cmpuint (notify_count, ==, 0);
+ g_assert_cmpuint (properties_changed_count, ==, 0);
+
+ g_clear_pointer (&debug_enabled_variant, g_variant_unref);
+ g_clear_pointer (&reply, g_variant_unref);
+
+ /* Attach an authorisation handler and try again. */
+ handler_id = g_signal_connect (controller, "authorize", G_CALLBACK (authorize_false_cb), NULL);
+
+ g_dbus_connection_call (remote_connection,
+ g_dbus_connection_get_unique_name (controller_connection),
+ "/org/gtk/Debugging",
+ "org.gtk.Debugging",
+ "SetDebugEnabled",
+ g_variant_new ("(b)", !old_value),
+ NULL,
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ NULL,
+ async_result_cb,
+ &result);
+
+ while (result == NULL)
+ g_main_context_iteration (NULL, TRUE);
+
+ reply = g_dbus_connection_call_finish (remote_connection, result, &local_error);
+ g_assert_error (local_error, G_DBUS_ERROR, G_DBUS_ERROR_ACCESS_DENIED);
+ g_clear_object (&result);
+ g_clear_error (&local_error);
+
+ g_assert_true (g_debug_controller_get_debug_enabled (G_DEBUG_CONTROLLER (controller)) == old_value);
+ g_assert_cmpuint (notify_count, ==, 0);
+ g_assert_cmpuint (properties_changed_count, ==, 0);
+
+ g_clear_pointer (&debug_enabled_variant, g_variant_unref);
+ g_clear_pointer (&reply, g_variant_unref);
+
+ g_signal_handler_disconnect (controller, handler_id);
+ handler_id = 0;
+
+ /* Attach another signal handler which will grant access, and try again. */
+ handler_id = g_signal_connect (controller, "authorize", G_CALLBACK (authorize_true_cb), NULL);
+
+ g_dbus_connection_call (remote_connection,
+ g_dbus_connection_get_unique_name (controller_connection),
+ "/org/gtk/Debugging",
+ "org.gtk.Debugging",
+ "SetDebugEnabled",
+ g_variant_new ("(b)", !old_value),
+ NULL,
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ NULL,
+ async_result_cb,
+ &result);
+
+ while (result == NULL)
+ g_main_context_iteration (NULL, TRUE);
+
+ reply = g_dbus_connection_call_finish (remote_connection, result, &local_error);
+ g_assert_no_error (local_error);
+ g_clear_object (&result);
+
+ g_assert_true (g_debug_controller_get_debug_enabled (G_DEBUG_CONTROLLER (controller)) == !old_value);
+ g_assert_cmpuint (notify_count, ==, 1);
+ g_assert_cmpuint (properties_changed_count, ==, 1);
+
+ g_clear_pointer (&debug_enabled_variant, g_variant_unref);
+ g_clear_pointer (&reply, g_variant_unref);
+
+ g_signal_handler_disconnect (controller, handler_id);
+ handler_id = 0;
+
+ /* Set the debug status locally. */
+ g_debug_controller_set_debug_enabled (G_DEBUG_CONTROLLER (controller), old_value);
+ g_assert_true (g_debug_controller_get_debug_enabled (G_DEBUG_CONTROLLER (controller)) == old_value);
+ g_assert_cmpuint (notify_count, ==, 2);
+
+ while (properties_changed_count != 2)
+ g_main_context_iteration (NULL, TRUE);
+
+ g_assert_cmpuint (properties_changed_count, ==, 2);
+
+ g_signal_handler_disconnect (controller, notify_id);
+ notify_id = 0;
+
+ g_dbus_connection_signal_unsubscribe (remote_connection, properties_changed_id);
+ properties_changed_id = 0;
+
+ g_debug_controller_dbus_stop (controller);
+ while (g_main_context_iteration (NULL, FALSE));
+ g_assert_finalize_object (controller);
+ g_clear_object (&controller_connection);
+ g_clear_object (&remote_connection);
+
+ g_test_dbus_down (bus);
+ g_clear_object (&bus);
+}
+
+int
+main (int argc,
+ char *argv[])
+{
+ setlocale (LC_ALL, "");
+ g_test_init (&argc, &argv, NULL);
+
+ g_test_add_func ("/debug-controller/dbus/basic", test_dbus_basic);
+ g_test_add_func ("/debug-controller/dbus/duplicate", test_dbus_duplicate);
+ g_test_add_func ("/debug-controller/dbus/properties", test_dbus_properties);
+
+ return g_test_run ();
+}
diff --git a/gio/tests/desktop-app-info.c b/gio/tests/desktop-app-info.c
index 15dcd8f1c..4a5de6017 100644
--- a/gio/tests/desktop-app-info.c
+++ b/gio/tests/desktop-app-info.c
@@ -728,6 +728,20 @@ test_show_in (void)
assert_shown ("invalid-desktop.desktop", FALSE, "../invalid/desktop:../invalid/desktop");
}
+static void
+on_launch_started (GAppLaunchContext *context, GAppInfo *info, GVariant *platform_data, gpointer data)
+{
+ gboolean *invoked = data;
+
+ g_assert_true (G_IS_APP_LAUNCH_CONTEXT (context));
+ g_assert_true (G_IS_APP_INFO (info));
+ /* Our default context doesn't fill in any platform data */
+ g_assert_null (platform_data);
+
+ g_assert_false (*invoked);
+ *invoked = TRUE;
+}
+
/* Test g_desktop_app_info_launch_uris_as_manager() and
* g_desktop_app_info_launch_uris_as_manager_with_fds()
*/
@@ -738,6 +752,8 @@ test_launch_as_manager (void)
GError *error = NULL;
gboolean retval;
const gchar *path;
+ gboolean invoked = FALSE;
+ GAppLaunchContext *context;
if (g_getenv ("DISPLAY") == NULL || g_getenv ("DISPLAY")[0] == '\0')
{
@@ -754,23 +770,43 @@ test_launch_as_manager (void)
return;
}
- retval = g_desktop_app_info_launch_uris_as_manager (appinfo, NULL, NULL, 0,
+ context = g_app_launch_context_new ();
+ g_signal_connect (context, "launch-started",
+ G_CALLBACK (on_launch_started),
+ &invoked);
+ retval = g_desktop_app_info_launch_uris_as_manager (appinfo, NULL, context, 0,
NULL, NULL,
NULL, NULL,
&error);
g_assert_no_error (error);
g_assert_true (retval);
+ g_assert_true (invoked);
+ invoked = FALSE;
retval = g_desktop_app_info_launch_uris_as_manager_with_fds (appinfo,
- NULL, NULL, 0,
+ NULL, context, 0,
NULL, NULL,
NULL, NULL,
-1, -1, -1,
&error);
g_assert_no_error (error);
g_assert_true (retval);
+ g_assert_true (invoked);
g_object_unref (appinfo);
+ g_assert_finalize_object (context);
+}
+
+/* Test if Desktop-File Id is correctly formed */
+static void
+test_id (void)
+{
+ gchar *result;
+
+ result = run_apps ("default-for-type", "application/vnd.kde.okular-archive",
+ TRUE, FALSE, NULL, NULL, NULL);
+ g_assert_cmpstr (result, ==, "kde4-okular.desktop\n");
+ g_free (result);
}
int
@@ -794,6 +830,7 @@ main (int argc,
g_test_add_func ("/desktop-app-info/implements", test_implements);
g_test_add_func ("/desktop-app-info/show-in", test_show_in);
g_test_add_func ("/desktop-app-info/launch-as-manager", test_launch_as_manager);
+ g_test_add_func ("/desktop-app-info/id", test_id);
return g_test_run ();
}
diff --git a/gio/tests/file.c b/gio/tests/file.c
index 2f1b7b310..a849e83cf 100644
--- a/gio/tests/file.c
+++ b/gio/tests/file.c
@@ -3006,6 +3006,111 @@ test_build_attribute_list_for_copy (void)
g_clear_object (&tmpfile);
}
+typedef struct
+{
+ GError *error;
+ gboolean done;
+ gboolean res;
+} MoveAsyncData;
+
+static void
+test_move_async_cb (GObject *object,
+ GAsyncResult *result,
+ gpointer user_data)
+{
+ GFile *file = G_FILE (object);
+ MoveAsyncData *data = user_data;
+ GError *error = NULL;
+
+ data->res = g_file_move_finish (file, result, &error);
+ data->error = error;
+ data->done = TRUE;
+}
+
+typedef struct
+{
+ goffset total_num_bytes;
+} MoveAsyncProgressData;
+
+static void
+test_move_async_progress_cb (goffset current_num_bytes,
+ goffset total_num_bytes,
+ gpointer user_data)
+{
+ MoveAsyncProgressData *data = user_data;
+ data->total_num_bytes = total_num_bytes;
+}
+
+/* Test that move_async() moves the file correctly */
+static void
+test_move_async (void)
+{
+ MoveAsyncData data = { 0 };
+ MoveAsyncProgressData progress_data = { 0 };
+ GFile *source;
+ GFileIOStream *iostream;
+ GOutputStream *ostream;
+ GFile *destination;
+ gchar *destination_path;
+ GError *error = NULL;
+ gboolean res;
+ const guint8 buffer[] = {1, 2, 3, 4, 5};
+
+ source = g_file_new_tmp ("g_file_move_XXXXXX", &iostream, NULL);
+
+ destination_path = g_build_path (G_DIR_SEPARATOR_S, g_get_tmp_dir (), "g_file_move_target", NULL);
+ destination = g_file_new_for_path (destination_path);
+
+ g_assert_nonnull (source);
+ g_assert_nonnull (iostream);
+
+ res = g_file_query_exists (source, NULL);
+ g_assert_true (res);
+ res = g_file_query_exists (destination, NULL);
+ g_assert_false (res);
+
+ // Write a known amount of bytes to the file, so we can test the progress callback against it
+ ostream = g_io_stream_get_output_stream (G_IO_STREAM (iostream));
+ g_output_stream_write (ostream, buffer, sizeof (buffer), NULL, &error);
+ g_assert_no_error (error);
+
+ g_file_move_async (source,
+ destination,
+ G_FILE_COPY_NONE,
+ 0,
+ NULL,
+ test_move_async_progress_cb,
+ &progress_data,
+ test_move_async_cb,
+ &data);
+
+ while (!data.done)
+ g_main_context_iteration (NULL, TRUE);
+
+ g_assert_no_error (data.error);
+ g_assert_true (data.res);
+ g_assert_cmpuint (progress_data.total_num_bytes, ==, sizeof (buffer));
+
+ res = g_file_query_exists (source, NULL);
+ g_assert_false (res);
+ res = g_file_query_exists (destination, NULL);
+ g_assert_true (res);
+
+ res = g_io_stream_close (G_IO_STREAM (iostream), NULL, &error);
+ g_assert_no_error (error);
+ g_assert_true (res);
+ g_object_unref (iostream);
+
+ res = g_file_delete (destination, NULL, &error);
+ g_assert_no_error (error);
+ g_assert_true (res);
+
+ g_object_unref (source);
+ g_object_unref (destination);
+
+ g_free (destination_path);
+}
+
int
main (int argc, char *argv[])
{
@@ -3049,6 +3154,7 @@ main (int argc, char *argv[])
g_test_add_func ("/file/writev/async_all-to-big-vectors", test_writev_async_all_too_big_vectors);
g_test_add_func ("/file/writev/async_all-cancellation", test_writev_async_all_cancellation);
g_test_add_func ("/file/build-attribute-list-for-copy", test_build_attribute_list_for_copy);
+ g_test_add_func ("/file/move_async", test_move_async);
return g_test_run ();
}
diff --git a/gio/tests/g-file-info-filesystem-readonly.c b/gio/tests/g-file-info-filesystem-readonly.c
index 9b94c3220..ddf99da1e 100644
--- a/gio/tests/g-file-info-filesystem-readonly.c
+++ b/gio/tests/g-file-info-filesystem-readonly.c
@@ -135,6 +135,13 @@ test_filesystem_readonly (gconstpointer with_mount_monitor)
if (! g_file_set_contents (file_in_mount, "Example", -1, NULL))
{
g_test_skip ("Failed to create file needed to proceed further with the test");
+
+ g_free (dir_mountpoint);
+ g_free (file_in_mount);
+ g_free (dir_to_mount);
+ g_free (curdir);
+ g_free (fusermount);
+ g_free (bindfs);
return;
}
@@ -147,8 +154,18 @@ test_filesystem_readonly (gconstpointer with_mount_monitor)
{
gchar *skip_message = g_strdup_printf ("Failed to run bindfs to set up test: %s", error->message);
g_test_skip (skip_message);
+
g_free (skip_message);
g_clear_error (&error);
+
+ g_clear_object (&mount_monitor);
+ g_free (dir_mountpoint);
+ g_free (file_in_mount);
+ g_free (dir_to_mount);
+ g_free (curdir);
+ g_free (fusermount);
+ g_free (bindfs);
+
return;
}
@@ -170,6 +187,18 @@ test_filesystem_readonly (gconstpointer with_mount_monitor)
if (! g_file_info_get_attribute_boolean (file_info, G_FILE_ATTRIBUTE_FILESYSTEM_READONLY))
{
g_test_skip ("Failed to create readonly file needed to proceed further with the test");
+
+ g_clear_object (&file_info);
+ g_clear_object (&mounted_file);
+ g_free (file_in_mountpoint);
+ g_clear_object (&mount_monitor);
+ g_free (dir_mountpoint);
+ g_free (file_in_mount);
+ g_free (dir_to_mount);
+ g_free (curdir);
+ g_free (fusermount);
+ g_free (bindfs);
+
return;
}
diff --git a/gio/tests/g-file-info.c b/gio/tests/g-file-info.c
index fd0c64b55..59411c3a8 100644
--- a/gio/tests/g-file-info.c
+++ b/gio/tests/g-file-info.c
@@ -654,7 +654,11 @@ test_internal_enhanced_stdio (void)
g_assert_cmpuint (alsize_ps, <, 0x40000000);
g_assert_cmpuint (size_ps, >, G_GUINT64_CONSTANT (0xFFFFFFFF));
g_assert_cmpuint (statbuf_ps.st_size, >, 0);
+#if defined(_WIN64)
+ g_assert_cmpuint (statbuf_ps.st_size, ==, G_GUINT64_CONSTANT (0x10000000f));
+#else
g_assert_cmpuint (statbuf_ps.st_size, <=, 0xFFFFFFFF);
+#endif
g_object_unref (fi_ps);
g_object_unref (gf_ps);
diff --git a/gio/tests/gdbus-auth.c b/gio/tests/gdbus-auth.c
index 18288f36d..eabfdd331 100644
--- a/gio/tests/gdbus-auth.c
+++ b/gio/tests/gdbus-auth.c
@@ -167,6 +167,7 @@ test_auth_mechanism (const gchar *allowed_client_mechanism,
GMainLoop *loop;
GThread *client_thread;
TestAuthData data;
+ guint timeout_id;
server = server_new_for_mechanism (allowed_server_mechanism);
@@ -177,7 +178,7 @@ test_auth_mechanism (const gchar *allowed_client_mechanism,
G_CALLBACK (test_auth_on_new_connection),
loop);
- g_timeout_add_seconds (5, test_auth_on_timeout, NULL);
+ timeout_id = g_timeout_add_seconds (5, test_auth_on_timeout, NULL);
data.allowed_client_mechanism = allowed_client_mechanism;
data.allowed_server_mechanism = allowed_server_mechanism;
@@ -195,6 +196,7 @@ test_auth_mechanism (const gchar *allowed_client_mechanism,
g_dbus_server_stop (server);
g_thread_join (client_thread);
+ g_source_remove (timeout_id);
while (g_main_context_iteration (NULL, FALSE));
g_main_loop_unref (loop);
diff --git a/gio/tests/gdbus-connection-flush.c b/gio/tests/gdbus-connection-flush.c
index 8c925825a..c1647651e 100644
--- a/gio/tests/gdbus-connection-flush.c
+++ b/gio/tests/gdbus-connection-flush.c
@@ -179,8 +179,8 @@ setup_client_cb (GObject *source,
f->client_conn = g_dbus_connection_new_finish (res, &f->error);
g_assert_no_error (f->error);
- g_assert (G_IS_DBUS_CONNECTION (f->client_conn));
- g_assert (f->client_conn == G_DBUS_CONNECTION (source));
+ g_assert_true (G_IS_DBUS_CONNECTION (f->client_conn));
+ g_assert_true (f->client_conn == G_DBUS_CONNECTION (source));
}
static void
@@ -192,8 +192,8 @@ setup_server_cb (GObject *source,
f->server_conn = g_dbus_connection_new_finish (res, &f->error);
g_assert_no_error (f->error);
- g_assert (G_IS_DBUS_CONNECTION (f->server_conn));
- g_assert (f->server_conn == G_DBUS_CONNECTION (source));
+ g_assert_true (G_IS_DBUS_CONNECTION (f->server_conn));
+ g_assert_true (f->server_conn == G_DBUS_CONNECTION (source));
}
static void
@@ -206,21 +206,21 @@ setup (Fixture *f,
ok = test_pipe (&f->server_istream, &f->client_real_ostream, &f->error);
g_assert_no_error (f->error);
- g_assert (G_IS_OUTPUT_STREAM (f->client_real_ostream));
- g_assert (G_IS_INPUT_STREAM (f->server_istream));
- g_assert (ok);
+ g_assert_true (G_IS_OUTPUT_STREAM (f->client_real_ostream));
+ g_assert_true (G_IS_INPUT_STREAM (f->server_istream));
+ g_assert_true (ok);
f->client_ostream = g_object_new (MY_TYPE_OUTPUT_STREAM,
"base-stream", f->client_real_ostream,
"close-base-stream", TRUE,
NULL);
- g_assert (G_IS_OUTPUT_STREAM (f->client_ostream));
+ g_assert_true (G_IS_OUTPUT_STREAM (f->client_ostream));
ok = test_pipe (&f->client_istream, &f->server_ostream, &f->error);
g_assert_no_error (f->error);
- g_assert (G_IS_OUTPUT_STREAM (f->server_ostream));
- g_assert (G_IS_INPUT_STREAM (f->client_istream));
- g_assert (ok);
+ g_assert_true (G_IS_OUTPUT_STREAM (f->server_ostream));
+ g_assert_true (G_IS_INPUT_STREAM (f->client_istream));
+ g_assert_true (ok);
f->client_stream = test_io_stream_new (f->client_istream, f->client_ostream);
f->server_stream = test_io_stream_new (f->server_istream, f->server_ostream);
@@ -244,13 +244,13 @@ flush_cb (GObject *source,
Fixture *f = user_data;
gboolean ok;
- g_assert (G_IS_DBUS_CONNECTION (source));
- g_assert (G_IS_DBUS_CONNECTION (f->client_conn));
+ g_assert_true (G_IS_DBUS_CONNECTION (source));
+ g_assert_true (G_IS_DBUS_CONNECTION (f->client_conn));
g_assert_cmpuint ((guintptr) f->client_conn, ==, (guintptr) G_DBUS_CONNECTION (source));
ok = g_dbus_connection_flush_finish (f->client_conn, res, &f->error);
g_assert_no_error (f->error);
- g_assert (ok);
+ g_assert_true (ok);
f->flushed = TRUE;
}
@@ -270,7 +270,7 @@ test_flush_busy (Fixture *f,
"com.example.Foo", "SomeSignal", NULL,
&f->error);
g_assert_no_error (f->error);
- g_assert (ok);
+ g_assert_true (ok);
/* wait for at least part of the message to have started writing -
* the write will block indefinitely in the worker thread
@@ -318,7 +318,7 @@ test_flush_idle (Fixture *f,
"com.example.Foo", "SomeSignal", NULL,
&f->error);
g_assert_no_error (f->error);
- g_assert (ok);
+ g_assert_true (ok);
/* wait for at least part of the message to have been written */
do {
@@ -368,10 +368,7 @@ main (int argc,
{
gint ret;
- /* FIXME: Add debug for https://gitlab.gnome.org/GNOME/glib/issues/1929 */
- g_setenv ("G_DBUS_DEBUG", "authentication", TRUE);
-
- g_test_init (&argc, &argv, NULL);
+ g_test_init (&argc, &argv, G_TEST_OPTION_ISOLATE_DIRS, NULL);
g_test_add ("/gdbus/connection/flush/busy", Fixture, NULL,
setup, test_flush_busy, teardown);
diff --git a/gio/tests/gdbus-connection.c b/gio/tests/gdbus-connection.c
index 0410a880a..396b1a40a 100644
--- a/gio/tests/gdbus-connection.c
+++ b/gio/tests/gdbus-connection.c
@@ -416,7 +416,7 @@ test_connection_send (void)
/*
* Check that we never actually send a message if the GCancellable
- * is already cancelled - i.e. we should get #G_IO_ERROR_CANCELLED
+ * is already cancelled - i.e. we should get G_IO_ERROR_CANCELLED
* when the actual connection is not up.
*/
ca = g_cancellable_new ();
diff --git a/gio/tests/gdbus-export.c b/gio/tests/gdbus-export.c
index 4cdc24492..f66b1f74c 100644
--- a/gio/tests/gdbus-export.c
+++ b/gio/tests/gdbus-export.c
@@ -602,20 +602,6 @@ on_subtree_unregistered (gpointer user_data)
data->num_unregistered_subtree_calls++;
}
-static gboolean
-_g_strv_has_string (const gchar* const * haystack,
- const gchar *needle)
-{
- guint n;
-
- for (n = 0; haystack != NULL && haystack[n] != NULL; n++)
- {
- if (g_strcmp0 (haystack[n], needle) == 0)
- return TRUE;
- }
- return FALSE;
-}
-
/* -------------------- */
static gchar **
@@ -1306,11 +1292,11 @@ test_object_registration (void)
nodes = get_nodes_at (c, "/foo/boss");
g_assert (nodes != NULL);
g_assert_cmpint (g_strv_length (nodes), ==, 5);
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "worker1"));
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "worker1p1"));
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "worker2"));
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "interns"));
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "executives"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "worker1"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "worker1p1"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "worker2"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "interns"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "executives"));
g_strfreev (nodes);
/* any registered object always implement org.freedesktop.DBus.[Peer,Introspectable,Properties] */
g_assert_cmpint (count_interfaces (c, "/foo/boss"), ==, 5);
@@ -1322,7 +1308,7 @@ test_object_registration (void)
*/
nodes = get_nodes_at (c, "/foo/boss/executives");
g_assert (nodes != NULL);
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "non_subtree_object"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "non_subtree_object"));
g_assert_cmpint (g_strv_length (nodes), ==, 1);
g_strfreev (nodes);
g_assert_cmpint (count_interfaces (c, "/foo/boss/executives"), ==, 0);
@@ -1332,11 +1318,11 @@ test_object_registration (void)
nodes = get_nodes_at (c, "/foo/boss/executives");
g_assert (nodes != NULL);
g_assert_cmpint (g_strv_length (nodes), ==, 5);
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "non_subtree_object"));
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "vp0"));
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "vp1"));
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "evp0"));
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "evp1"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "non_subtree_object"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "vp0"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "vp1"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "evp0"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "evp1"));
/* check that /foo/boss/executives/non_subtree_object is not handled by the
* subtree handlers - we can do this because objects from subtree handlers
* has exactly one interface and non_subtree_object has two
@@ -1358,13 +1344,13 @@ test_object_registration (void)
nodes = get_nodes_at (c, "/foo/boss/executives");
g_assert (nodes != NULL);
g_assert_cmpint (g_strv_length (nodes), ==, 7);
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "non_subtree_object"));
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "vp0"));
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "vp1"));
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "vp2"));
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "evp0"));
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "evp1"));
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "evp2"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "non_subtree_object"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "vp0"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "vp1"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "vp2"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "evp0"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "evp1"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "evp2"));
g_strfreev (nodes);
/* This is to check that a bug (rather, class of bugs) in gdbusconnection.c's
@@ -1401,7 +1387,7 @@ test_object_registration (void)
nodes = get_nodes_at (c, "/foo/boss/executives");
g_assert (nodes != NULL);
g_assert_cmpint (g_strv_length (nodes), ==, 1);
- g_assert (_g_strv_has_string ((const gchar* const *) nodes, "non_subtree_object"));
+ g_assert (g_strv_contains ((const gchar* const *) nodes, "non_subtree_object"));
g_strfreev (nodes);
g_assert (g_dbus_connection_unregister_object (c, boss_foo_reg_id));
diff --git a/gio/tests/gdbus-method-invocation.c b/gio/tests/gdbus-method-invocation.c
new file mode 100644
index 000000000..45fb67757
--- /dev/null
+++ b/gio/tests/gdbus-method-invocation.c
@@ -0,0 +1,406 @@
+/* GIO - GLib Input, Output and Streaming Library
+ *
+ * Copyright © 2022 Endless OS Foundation, LLC
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ *
+ * SPDX-License-Identifier: LGPL-2.1-or-later
+ */
+
+#include <gio/gio.h>
+#include <gio/gunixfdlist.h>
+#include <string.h>
+#include <unistd.h>
+
+#include "gdbus-tests.h"
+
+static const GDBusArgInfo foo_get_fds_in_args =
+{
+ -1,
+ "type",
+ "s",
+ NULL
+};
+static const GDBusArgInfo * const foo_get_fds_in_arg_pointers[] = {&foo_get_fds_in_args, NULL};
+
+static const GDBusArgInfo foo_get_fds_out_args =
+{
+ -1,
+ "some_fd",
+ "h",
+ NULL
+};
+static const GDBusArgInfo * const foo_get_fds_out_arg_pointers[] = {&foo_get_fds_out_args, NULL};
+
+static const GDBusMethodInfo foo_method_info_wrong_return_type =
+{
+ -1,
+ "WrongReturnType",
+ NULL, /* in args */
+ NULL, /* out args */
+ NULL /* annotations */
+};
+static const GDBusMethodInfo foo_method_info_close_before_returning =
+{
+ -1,
+ "CloseBeforeReturning",
+ NULL, /* in args */
+ NULL, /* out args */
+ NULL /* annotations */
+};
+static const GDBusMethodInfo foo_method_info_get_fds =
+{
+ -1,
+ "GetFDs",
+ (GDBusArgInfo **) foo_get_fds_in_arg_pointers,
+ (GDBusArgInfo **) foo_get_fds_out_arg_pointers,
+ NULL /* annotations */
+};
+static const GDBusMethodInfo foo_method_info_return_error =
+{
+ -1,
+ "ReturnError",
+ NULL, /* in args */
+ NULL, /* out args */
+ NULL /* annotations */
+};
+static const GDBusMethodInfo * const foo_method_info_pointers[] = {
+ &foo_method_info_wrong_return_type,
+ &foo_method_info_close_before_returning,
+ &foo_method_info_get_fds,
+ &foo_method_info_return_error,
+ NULL
+};
+
+static const GDBusPropertyInfo foo_property_info[] =
+{
+ {
+ -1,
+ "InvalidType",
+ "s",
+ G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE,
+ NULL
+ },
+ {
+ -1,
+ "InvalidTypeNull",
+ "s",
+ G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE,
+ NULL
+ },
+ {
+ -1,
+ "InvalidValueType",
+ "s",
+ G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE,
+ NULL
+ },
+};
+static const GDBusPropertyInfo * const foo_property_info_pointers[] =
+{
+ &foo_property_info[0],
+ &foo_property_info[1],
+ &foo_property_info[2],
+ NULL
+};
+
+static const GDBusInterfaceInfo foo_interface_info =
+{
+ -1,
+ "org.example.Foo",
+ (GDBusMethodInfo **) &foo_method_info_pointers,
+ NULL, /* signals */
+ (GDBusPropertyInfo **) &foo_property_info_pointers,
+ NULL, /* annotations */
+};
+
+/* ---------------------------------------------------------------------------------------------------- */
+
+static void
+test_method_invocation_return_method_call (GDBusConnection *connection,
+ const gchar *sender,
+ const gchar *object_path,
+ const gchar *interface_name,
+ const gchar *method_name,
+ GVariant *parameters,
+ GDBusMethodInvocation *invocation,
+ gpointer user_data)
+{
+ gboolean no_reply = g_dbus_message_get_flags (g_dbus_method_invocation_get_message (invocation)) & G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED;
+
+ if (g_str_equal (interface_name, "org.freedesktop.DBus.Properties") &&
+ g_str_equal (method_name, "Get"))
+ {
+ const gchar *iface_name, *prop_name;
+
+ g_variant_get (parameters, "(&s&s)", &iface_name, &prop_name);
+ g_assert_cmpstr (iface_name, ==, "org.example.Foo");
+
+ /* Do different things depending on the property name. */
+ if (g_str_equal (prop_name, "InvalidType"))
+ {
+ if (!no_reply)
+ g_test_expect_message ("GLib-GIO", G_LOG_LEVEL_WARNING,
+ "Type of return value for property 'Get' call should be '(v)' but got '(s)'");
+ g_dbus_method_invocation_return_value (invocation, g_variant_new ("(s)", "this type is invalid"));
+ }
+ else if (g_str_equal (prop_name, "InvalidTypeNull"))
+ {
+ if (!no_reply)
+ g_test_expect_message ("GLib-GIO", G_LOG_LEVEL_WARNING,
+ "Type of return value for property 'Get' call should be '(v)' but got '()'");
+ g_dbus_method_invocation_return_value (invocation, NULL);
+ }
+ else if (g_str_equal (prop_name, "InvalidValueType"))
+ {
+ if (!no_reply)
+ g_test_expect_message ("GLib-GIO", G_LOG_LEVEL_WARNING,
+ "Value returned from property 'Get' call for 'InvalidValueType' should be 's' but is 'u'");
+ g_dbus_method_invocation_return_value (invocation, g_variant_new ("(v)", g_variant_new_uint32 (123)));
+ }
+ else
+ {
+ g_assert_not_reached ();
+ }
+
+ g_test_assert_expected_messages ();
+ }
+ else if (g_str_equal (interface_name, "org.freedesktop.DBus.Properties") &&
+ g_str_equal (method_name, "Set"))
+ {
+ const gchar *iface_name, *prop_name;
+ GVariant *value;
+
+ g_variant_get (parameters, "(&s&sv)", &iface_name, &prop_name, &value);
+ g_assert_cmpstr (iface_name, ==, "org.example.Foo");
+
+ if (g_str_equal (prop_name, "InvalidType"))
+ {
+ if (!no_reply)
+ g_test_expect_message ("GLib-GIO", G_LOG_LEVEL_WARNING,
+ "Type of return value for property 'Set' call should be '()' but got '(s)'");
+ g_dbus_method_invocation_return_value (invocation, g_variant_new ("(s)", "should be unit"));
+ }
+ else
+ {
+ g_assert_not_reached ();
+ }
+
+ g_test_assert_expected_messages ();
+ g_variant_unref (value);
+ }
+ else if (g_str_equal (interface_name, "org.freedesktop.DBus.Properties") &&
+ g_str_equal (method_name, "GetAll"))
+ {
+ const gchar *iface_name;
+
+ g_variant_get (parameters, "(&s)", &iface_name);
+ g_assert_cmpstr (iface_name, ==, "org.example.Foo");
+
+ if (!no_reply)
+ g_test_expect_message ("GLib-GIO", G_LOG_LEVEL_WARNING,
+ "Type of return value for property 'GetAll' call should be '(a{sv})' but got '(s)'");
+ g_dbus_method_invocation_return_value (invocation, g_variant_new ("(s)", "should be a different type"));
+ }
+ else if (g_str_equal (interface_name, "org.example.Foo") &&
+ g_str_equal (method_name, "WrongReturnType"))
+ {
+ if (!no_reply)
+ g_test_expect_message ("GLib-GIO", G_LOG_LEVEL_WARNING,
+ "Type of return value is incorrect: expected '()', got '(s)'");
+ g_dbus_method_invocation_return_value (invocation, g_variant_new ("(s)", "should be a different type"));
+ }
+ else if (g_str_equal (interface_name, "org.example.Foo") &&
+ g_str_equal (method_name, "CloseBeforeReturning"))
+ {
+ g_dbus_connection_close (connection, NULL, NULL, NULL);
+
+ g_dbus_method_invocation_return_value (invocation, NULL);
+ }
+ else if (g_str_equal (interface_name, "org.example.Foo") &&
+ g_str_equal (method_name, "GetFDs"))
+ {
+ const gchar *action;
+ GUnixFDList *list = NULL;
+ GError *local_error = NULL;
+
+ g_variant_get (parameters, "(&s)", &action);
+
+ list = g_unix_fd_list_new ();
+ g_unix_fd_list_append (list, 1, &local_error);
+ g_assert_no_error (local_error);
+
+ if (g_str_equal (action, "WrongNumber"))
+ {
+ g_unix_fd_list_append (list, 1, &local_error);
+ g_assert_no_error (local_error);
+ }
+
+ if (g_str_equal (action, "Valid") ||
+ g_str_equal (action, "WrongNumber"))
+ g_dbus_method_invocation_return_value_with_unix_fd_list (invocation, g_variant_new ("(h)"), list);
+ else
+ g_assert_not_reached ();
+
+ g_object_unref (list);
+ }
+ else if (g_str_equal (interface_name, "org.example.Foo") &&
+ g_str_equal (method_name, "ReturnError"))
+ {
+ g_dbus_method_invocation_return_dbus_error (invocation, "org.example.Foo", "SomeError");
+ }
+ else
+ g_assert_not_reached ();
+}
+
+static void
+ensure_result_cb (GObject *source,
+ GAsyncResult *result,
+ gpointer user_data)
+{
+ GDBusConnection *connection = G_DBUS_CONNECTION (source);
+ GVariant *reply;
+ guint *n_outstanding_calls = user_data;
+
+ reply = g_dbus_connection_call_finish (connection, result, NULL);
+
+ /* We don’t care what the reply is. */
+ g_clear_pointer (&reply, g_variant_unref);
+
+ g_assert_cmpint (*n_outstanding_calls, >, 0);
+ *n_outstanding_calls = *n_outstanding_calls - 1;
+}
+
+static void
+test_method_invocation_return (void)
+{
+ GDBusConnection *connection = NULL;
+ GError *local_error = NULL;
+ guint registration_id;
+ const GDBusInterfaceVTable vtable = {
+ test_method_invocation_return_method_call, NULL, NULL, { 0 }
+ };
+ guint n_outstanding_calls = 0;
+
+ g_test_summary ("Test calling g_dbus_method_invocation_return_*() in various ways");
+
+ /* Connect to the bus. */
+ connection = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, &local_error);
+ g_assert_no_error (local_error);
+ g_assert_nonnull (connection);
+
+ /* Don’t exit the test when the server closes the connection in
+ * CloseBeforeReturning(). */
+ g_dbus_connection_set_exit_on_close (connection, FALSE);
+
+ /* Register an object which we can call methods on. */
+ registration_id = g_dbus_connection_register_object (connection,
+ "/foo",
+ (GDBusInterfaceInfo *) &foo_interface_info,
+ &vtable, NULL, NULL, &local_error);
+ g_assert_no_error (local_error);
+ g_assert_cmpint (registration_id, !=, 0);
+
+ /* Test a variety of error cases */
+ {
+ const struct
+ {
+ const gchar *interface_name;
+ const gchar *method_name;
+ const gchar *parameters_string;
+ gboolean tests_undefined_behaviour;
+ }
+ calls[] =
+ {
+ { "org.freedesktop.DBus.Properties", "Get", "('org.example.Foo', 'InvalidType')", TRUE },
+ { "org.freedesktop.DBus.Properties", "Get", "('org.example.Foo', 'InvalidTypeNull')", TRUE },
+ { "org.freedesktop.DBus.Properties", "Get", "('org.example.Foo', 'InvalidValueType')", TRUE },
+ { "org.freedesktop.DBus.Properties", "Set", "('org.example.Foo', 'InvalidType', <'irrelevant'>)", TRUE },
+ { "org.freedesktop.DBus.Properties", "GetAll", "('org.example.Foo',)", TRUE },
+ { "org.example.Foo", "WrongReturnType", "()", TRUE },
+ { "org.example.Foo", "GetFDs", "('Valid',)", FALSE },
+ { "org.example.Foo", "GetFDs", "('WrongNumber',)", TRUE },
+ { "org.example.Foo", "ReturnError", "()", FALSE },
+ { "org.example.Foo", "CloseBeforeReturning", "()", FALSE },
+ };
+ gsize i;
+
+ for (i = 0; i < G_N_ELEMENTS (calls); i++)
+ {
+ if (calls[i].tests_undefined_behaviour && !g_test_undefined ())
+ {
+ g_test_message ("Skipping %s.%s", calls[i].interface_name, calls[i].method_name);
+ continue;
+ }
+ else
+ {
+ g_test_message ("Calling %s.%s", calls[i].interface_name, calls[i].method_name);
+ }
+
+ /* Call twice, once expecting a result and once not. Do the call which
+ * doesn’t expect a result first; message ordering should ensure that
+ * it’s completed by the time the second call completes, so we don’t
+ * have to account for it separately.
+ *
+ * That’s good, because the only way to get g_dbus_connection_call()
+ * to set %G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED is to not provide
+ * a callback function. */
+ n_outstanding_calls++;
+
+ g_dbus_connection_call (connection,
+ g_dbus_connection_get_unique_name (connection),
+ "/foo",
+ calls[i].interface_name,
+ calls[i].method_name,
+ g_variant_new_parsed (calls[i].parameters_string),
+ NULL,
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ NULL,
+ NULL, /* no callback */
+ NULL);
+
+ g_dbus_connection_call (connection,
+ g_dbus_connection_get_unique_name (connection),
+ "/foo",
+ calls[i].interface_name,
+ calls[i].method_name,
+ g_variant_new_parsed (calls[i].parameters_string),
+ NULL,
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ NULL,
+ ensure_result_cb,
+ &n_outstanding_calls);
+ }
+ }
+
+ /* Wait until all the calls are complete. */
+ while (n_outstanding_calls > 0)
+ g_main_context_iteration (NULL, TRUE);
+
+ g_dbus_connection_unregister_object (connection, registration_id);
+ g_object_unref (connection);
+}
+
+int
+main (int argc,
+ char *argv[])
+{
+ g_test_init (&argc, &argv, G_TEST_OPTION_ISOLATE_DIRS, NULL);
+
+ g_test_add_func ("/gdbus/method-invocation/return", test_method_invocation_return);
+
+ return session_bus_run ();
+}
diff --git a/gio/tests/gdbus-non-socket.c b/gio/tests/gdbus-non-socket.c
index 911aff262..7ddb55bfb 100644
--- a/gio/tests/gdbus-non-socket.c
+++ b/gio/tests/gdbus-non-socket.c
@@ -293,7 +293,7 @@ main (int argc,
{
gint ret;
- g_test_init (&argc, &argv, NULL);
+ g_test_init (&argc, &argv, G_TEST_OPTION_ISOLATE_DIRS, NULL);
g_test_add_func ("/gdbus/non-socket", test_non_socket);
diff --git a/gio/tests/gdbus-object-manager-example/meson.build b/gio/tests/gdbus-object-manager-example/meson.build
index f9c3bce26..ce0335e11 100644
--- a/gio/tests/gdbus-object-manager-example/meson.build
+++ b/gio/tests/gdbus-object-manager-example/meson.build
@@ -17,6 +17,22 @@ gdbus_example_objectmanager_generated = custom_target('objectmanager-gen',
'--symbol-decorator-define', 'HAVE_CONFIG_H',
'@INPUT@'])
+gdbus_example_objectmanager_rst_gen = custom_target('objectmanager-rst-gen',
+ input: gdbus_example_objectmanager_xml,
+ output: [
+ 'objectmanager-rst-gen-org.gtk.GDBus.Example.ObjectManager.Animal.rst',
+ 'objectmanager-rst-gen-org.gtk.GDBus.Example.ObjectManager.Cat.rst',
+ ],
+ command: [
+ python,
+ gdbus_codegen,
+ '--interface-prefix', 'org.gtk.GDBus.Example.ObjectManager.',
+ '--generate-rst', 'objectmanager-rst-gen',
+ '--output-directory', '@OUTDIR@',
+ '@INPUT@',
+ ],
+)
+
libgdbus_example_objectmanager = library('gdbus-example-objectmanager',
gdbus_example_objectmanager_generated,
c_args : test_c_args,
@@ -25,6 +41,9 @@ libgdbus_example_objectmanager = library('gdbus-example-objectmanager',
install_dir : installed_tests_execdir)
libgdbus_example_objectmanager_dep = declare_dependency(
- sources : gdbus_example_objectmanager_generated[0],
+ sources : [
+ gdbus_example_objectmanager_generated[0],
+ gdbus_example_objectmanager_rst_gen[0],
+ ],
link_with : libgdbus_example_objectmanager,
dependencies : [libgio_dep])
diff --git a/gio/tests/gdbus-proxy.c b/gio/tests/gdbus-proxy.c
index 7e619c2ac..eed75acf4 100644
--- a/gio/tests/gdbus-proxy.c
+++ b/gio/tests/gdbus-proxy.c
@@ -701,7 +701,6 @@ test_basic (GDBusProxy *proxy)
connection = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, NULL);
g_assert_true (g_dbus_proxy_get_connection (proxy) == connection);
- g_assert_cmpint (g_dbus_proxy_get_flags (proxy), ==, G_DBUS_PROXY_FLAGS_NONE);
g_assert_null (g_dbus_proxy_get_interface_info (proxy));
g_assert_cmpstr (g_dbus_proxy_get_name (proxy), ==, "com.example.TestService");
g_assert_cmpstr (g_dbus_proxy_get_object_path (proxy), ==, "/com/example/TestObject");
@@ -720,7 +719,7 @@ test_basic (GDBusProxy *proxy)
g_assert_true (conn == connection);
g_assert_null (info);
- g_assert_cmpint (flags, ==, G_DBUS_PROXY_FLAGS_NONE);
+ g_assert_cmpint (flags, ==, g_dbus_proxy_get_flags (proxy));
g_assert_cmpstr (name, ==, "com.example.TestService");
g_assert_cmpstr (path, ==, "/com/example/TestObject");
g_assert_cmpstr (interface, ==, "com.example.Frob");
@@ -735,6 +734,16 @@ test_basic (GDBusProxy *proxy)
}
static void
+name_disappeared_cb (GDBusConnection *connection,
+ const gchar *name,
+ gpointer user_data)
+{
+ gboolean *name_disappeared = user_data;
+ *name_disappeared = TRUE;
+ g_main_context_wakeup (NULL);
+}
+
+static void
kill_test_service (GDBusConnection *connection)
{
#ifdef G_OS_UNIX
@@ -742,6 +751,8 @@ kill_test_service (GDBusConnection *connection)
GVariant *ret;
GError *error = NULL;
const gchar *name = "com.example.TestService";
+ guint watch_id;
+ gboolean name_disappeared = FALSE;
ret = g_dbus_connection_call_sync (connection,
"org.freedesktop.DBus",
@@ -756,14 +767,25 @@ kill_test_service (GDBusConnection *connection)
&error);
g_variant_get (ret, "(u)", &pid);
g_variant_unref (ret);
+
+ /* Watch the name and wait until it’s disappeared. */
+ watch_id = g_bus_watch_name_on_connection (connection, name,
+ G_BUS_NAME_WATCHER_FLAGS_NONE,
+ NULL, name_disappeared_cb,
+ &name_disappeared, NULL);
kill (pid, SIGTERM);
+
+ while (!name_disappeared)
+ g_main_context_iteration (NULL, TRUE);
+
+ g_bus_unwatch_name (watch_id);
#else
g_warning ("Can't kill com.example.TestService");
#endif
}
static void
-test_proxy (void)
+test_proxy_with_flags (GDBusProxyFlags flags)
{
GDBusProxy *proxy;
GDBusConnection *connection;
@@ -777,7 +799,7 @@ test_proxy (void)
g_assert_no_error (error);
error = NULL;
proxy = g_dbus_proxy_new_sync (connection,
- G_DBUS_PROXY_FLAGS_NONE,
+ flags,
NULL, /* GDBusInterfaceInfo */
"com.example.TestService", /* name */
"/com/example/TestObject", /* object path */
@@ -799,8 +821,6 @@ test_proxy (void)
kill_test_service (connection);
- _g_assert_property_notify (proxy, "g-name-owner");
-
owner = g_dbus_proxy_get_name_owner (proxy);
g_assert_null (owner);
g_free (owner);
@@ -809,6 +829,12 @@ test_proxy (void)
g_object_unref (connection);
}
+static void
+test_proxy (void)
+{
+ test_proxy_with_flags (G_DBUS_PROXY_FLAGS_NONE);
+}
+
/* ---------------------------------------------------------------------------------------------------- */
static void
@@ -930,6 +956,58 @@ test_wellknown_noauto (void)
g_source_remove (id);
}
+typedef enum {
+ ADD_MATCH,
+ REMOVE_MATCH,
+} AddOrRemove;
+
+static void
+add_or_remove_match_rule (GDBusConnection *connection,
+ AddOrRemove add_or_remove,
+ GVariant *match_rule)
+{
+ GDBusMessage *message = NULL;
+ GError *error = NULL;
+
+ message = g_dbus_message_new_method_call ("org.freedesktop.DBus", /* name */
+ "/org/freedesktop/DBus", /* path */
+ "org.freedesktop.DBus", /* interface */
+ (add_or_remove == ADD_MATCH) ? "AddMatch" : "RemoveMatch");
+ g_dbus_message_set_body (message, match_rule);
+ g_dbus_connection_send_message (connection,
+ message,
+ G_DBUS_SEND_MESSAGE_FLAGS_NONE,
+ NULL,
+ &error);
+ g_assert_no_error (error);
+ g_clear_object (&message);
+}
+
+static void
+test_proxy_no_match_rule (void)
+{
+ GDBusConnection *connection = NULL;
+ GVariant *match_rule = NULL;
+
+ g_test_summary ("Test that G_DBUS_PROXY_FLAGS_NO_MATCH_RULE works");
+ g_test_bug ("https://gitlab.gnome.org/GNOME/glib/-/issues/1109");
+
+ connection = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, NULL);
+
+ /* Add a custom match rule which matches everything. */
+ match_rule = g_variant_ref_sink (g_variant_new ("(s)", "type='signal'"));
+ add_or_remove_match_rule (connection, ADD_MATCH, match_rule);
+
+ /* Run the tests. */
+ test_proxy_with_flags (G_DBUS_PROXY_FLAGS_NO_MATCH_RULE);
+
+ /* Remove the match rule again. */
+ add_or_remove_match_rule (connection, REMOVE_MATCH, match_rule);
+
+ g_clear_pointer (&match_rule, g_variant_unref);
+ g_clear_object (&connection);
+}
+
int
main (int argc,
char *argv[])
@@ -950,6 +1028,7 @@ main (int argc,
g_test_add_func ("/gdbus/proxy/no-properties", test_no_properties);
g_test_add_func ("/gdbus/proxy/wellknown-noauto", test_wellknown_noauto);
g_test_add_func ("/gdbus/proxy/async", test_async);
+ g_test_add_func ("/gdbus/proxy/no-match-rule", test_proxy_no_match_rule);
ret = session_bus_run();
diff --git a/gio/tests/gdbus-test-codegen.c b/gio/tests/gdbus-test-codegen.c
index 0681e7ec8..22628c078 100644
--- a/gio/tests/gdbus-test-codegen.c
+++ b/gio/tests/gdbus-test-codegen.c
@@ -23,8 +23,6 @@
#include <string.h>
#include <stdio.h>
-#include "glib/glib-private.h"
-
#include "gdbus-tests.h"
#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_64
@@ -869,7 +867,7 @@ check_bar_proxy (FooiGenBar *proxy,
"s", "a string",
"o", "/a/path",
"g", "asig",
- "ay", g_variant_new_parsed ("[byte 0x65, 0x67]"),
+ "ay", "eg",
"as", array_of_strings,
"ao", array_of_objpaths,
"ag", g_variant_new_parsed ("[@g 'ass', 'git']"),
@@ -1304,18 +1302,6 @@ static gpointer
check_proxies_in_thread (gpointer user_data)
{
GMainLoop *loop = user_data;
-#ifdef _GLIB_ADDRESS_SANITIZER
-
- /* Silence "Not available before 2.38" when using old API */
- G_GNUC_BEGIN_IGNORE_DEPRECATIONS
- g_test_incomplete ("FIXME: Leaks a GWeakRef, see glib#2312");
- G_GNUC_END_IGNORE_DEPRECATIONS
-
- (void) check_thread_proxies;
- (void) check_authorize_proxy;
- (void) check_bat_proxy;
- (void) check_bar_proxy;
-#else
GMainContext *thread_context;
GMainLoop *thread_loop;
GError *error;
@@ -1382,9 +1368,14 @@ check_proxies_in_thread (gpointer user_data)
g_object_unref (thread_proxy_1);
g_object_unref (thread_proxy_2);
+ /* Wait for the proxy signals to all be unsubscribed. */
+ while (g_main_context_iteration (thread_context, FALSE))
+ {
+ /* Nothing needs to be done here */
+ }
+
g_main_loop_unref (thread_loop);
g_main_context_unref (thread_context);
-#endif
/* this breaks out of the loop in main() (below) */
g_main_loop_quit (loop);
diff --git a/gio/tests/gdbus-threading.c b/gio/tests/gdbus-threading.c
index 4519fda91..23dc1fde3 100644
--- a/gio/tests/gdbus-threading.c
+++ b/gio/tests/gdbus-threading.c
@@ -48,8 +48,9 @@ timeout_cb (gpointer user_data)
* unrefs complete first. This is typically used on the shared connection, to
* ensure it’s in a correct state before beginning the next test. */
static void
-assert_connection_has_one_ref (GDBusConnection *connection,
- GMainContext *context)
+(assert_connection_has_one_ref) (GDBusConnection *connection,
+ GMainContext *context,
+ const gchar *calling_function)
{
GSource *timeout_source = NULL;
TimeoutData data = { context, FALSE };
@@ -63,7 +64,8 @@ assert_connection_has_one_ref (GDBusConnection *connection,
while (g_atomic_int_get (&G_OBJECT (connection)->ref_count) != 1 && !data.timed_out)
{
- g_debug ("refcount of %p is not right, sleeping", connection);
+ g_debug ("refcount of %p is not right (%u rather than 1) in %s(), sleeping",
+ connection, g_atomic_int_get (&G_OBJECT (connection)->ref_count), calling_function);
g_main_context_iteration (NULL, TRUE);
}
@@ -71,9 +73,14 @@ assert_connection_has_one_ref (GDBusConnection *connection,
g_source_unref (timeout_source);
if (g_atomic_int_get (&G_OBJECT (connection)->ref_count) != 1)
- g_error ("connection %p had too many refs", connection);
+ g_error ("connection %p had too many refs (%u rather than 1) in %s()",
+ connection, g_atomic_int_get (&G_OBJECT (connection)->ref_count), calling_function);
}
+/* Macro wrapper to add in the calling function name */
+#define assert_connection_has_one_ref(connection, context) \
+ (assert_connection_has_one_ref) (connection, context, G_STRFUNC)
+
/* ---------------------------------------------------------------------------------------------------- */
/* Ensure that signal and method replies are delivered in the right thread */
/* ---------------------------------------------------------------------------------------------------- */
@@ -176,7 +183,7 @@ test_delivery_in_thread_func (gpointer _data)
/*
* Check that we never actually send a message if the GCancellable
- * is already cancelled - i.e. we should get #G_IO_ERROR_CANCELLED
+ * is already cancelled - i.e. we should get G_IO_ERROR_CANCELLED
* when the actual connection is not up.
*/
ca = g_cancellable_new ();
diff --git a/gio/tests/gio-du.c b/gio/tests/gio-du.c
index 58d1797d2..253a21f70 100644
--- a/gio/tests/gio-du.c
+++ b/gio/tests/gio-du.c
@@ -79,7 +79,6 @@ main (int argc, char **argv)
#ifdef G_OS_WIN32
argv = g_win32_get_command_line ();
- argc = g_strv_length (argv);
#endif
setlocale (LC_ALL, "");
diff --git a/gio/tests/gsettings.c b/gio/tests/gsettings.c
index dad1623b7..35d958e4d 100644
--- a/gio/tests/gsettings.c
+++ b/gio/tests/gsettings.c
@@ -2365,21 +2365,7 @@ G_GNUC_END_IGNORE_DEPRECATIONS
}
static gboolean
-strv_has_string (gchar **haystack,
- const gchar *needle)
-{
- guint n;
-
- for (n = 0; haystack != NULL && haystack[n] != NULL; n++)
- {
- if (g_strcmp0 (haystack[n], needle) == 0)
- return TRUE;
- }
- return FALSE;
-}
-
-static gboolean
-strv_set_equal (gchar **strv, ...)
+strv_set_equal (const gchar * const *strv, ...)
{
gsize count;
va_list list;
@@ -2394,7 +2380,7 @@ strv_set_equal (gchar **strv, ...)
str = va_arg (list, const gchar *);
if (str == NULL)
break;
- if (!strv_has_string (strv, str))
+ if (!g_strv_contains (strv, str))
{
res = FALSE;
break;
@@ -2422,8 +2408,8 @@ test_list_items (void)
children = g_settings_list_children (settings);
keys = g_settings_schema_list_keys (schema);
- g_assert_true (strv_set_equal (children, "basic-types", "complex-types", "localized", NULL));
- g_assert_true (strv_set_equal (keys, "greeting", "farewell", NULL));
+ g_assert_true (strv_set_equal ((const gchar * const *) children, "basic-types", "complex-types", "localized", NULL));
+ g_assert_true (strv_set_equal ((const gchar * const *) keys, "greeting", "farewell", NULL));
g_strfreev (children);
g_strfreev (keys);
@@ -2443,13 +2429,13 @@ G_GNUC_BEGIN_IGNORE_DEPRECATIONS
schemas = g_settings_list_schemas ();
G_GNUC_END_IGNORE_DEPRECATIONS
- g_assert_true (strv_set_equal ((gchar **)relocs,
+ g_assert_true (strv_set_equal (relocs,
"org.gtk.test.no-path",
"org.gtk.test.extends.base",
"org.gtk.test.extends.extended",
NULL));
- g_assert_true (strv_set_equal ((gchar **)schemas,
+ g_assert_true (strv_set_equal (schemas,
"org.gtk.test",
"org.gtk.test.basic-types",
"org.gtk.test.complex-types",
@@ -2658,7 +2644,7 @@ test_schema_list_keys (void)
keys = g_settings_schema_list_keys (schema);
- g_assert_true (strv_set_equal ((gchar **)keys,
+ g_assert_true (strv_set_equal ((const gchar * const *) keys,
"greeting",
"farewell",
NULL));
@@ -2969,7 +2955,7 @@ test_extended_schema (void)
settings = g_settings_new_with_path ("org.gtk.test.extends.extended", "/test/extendes/");
g_object_get (settings, "settings-schema", &schema, NULL);
keys = g_settings_schema_list_keys (schema);
- g_assert_true (strv_set_equal (keys, "int32", "string", "another-int32", NULL));
+ g_assert_true (strv_set_equal ((const gchar * const *) keys, "int32", "string", "another-int32", NULL));
g_strfreev (keys);
g_object_unref (settings);
g_settings_schema_unref (schema);
diff --git a/gio/tests/gsubprocess-testprog.c b/gio/tests/gsubprocess-testprog.c
index da3cf8d00..eee759dcd 100644
--- a/gio/tests/gsubprocess-testprog.c
+++ b/gio/tests/gsubprocess-testprog.c
@@ -5,8 +5,6 @@
#include <errno.h>
#ifdef G_OS_UNIX
#include <unistd.h>
-#include <gio/gunixinputstream.h>
-#include <gio/gunixoutputstream.h>
#else
#include <io.h>
#endif
@@ -151,6 +149,55 @@ write_to_fds (int argc, char **argv)
}
static int
+read_from_fd (int argc, char **argv)
+{
+ int fd;
+ const char expected_result[] = "Yay success!";
+ guint8 buf[sizeof (expected_result) + 1];
+ gsize bytes_read;
+ FILE *f;
+
+ if (argc != 3)
+ {
+ g_print ("Usage: %s read-from-fd FD\n", argv[0]);
+ return 1;
+ }
+
+ fd = atoi (argv[2]);
+ if (fd == 0)
+ {
+ g_warning ("Argument \"%s\" does not look like a valid nonzero file descriptor", argv[2]);
+ return 1;
+ }
+
+ f = fdopen (fd, "r");
+ if (f == NULL)
+ {
+ g_warning ("Failed to open fd %d: %s", fd, g_strerror (errno));
+ return 1;
+ }
+
+ bytes_read = fread (buf, 1, sizeof (buf), f);
+ if (bytes_read != sizeof (expected_result))
+ {
+ g_warning ("Read %zu bytes, but expected %zu", bytes_read, sizeof (expected_result));
+ return 1;
+ }
+
+ if (memcmp (expected_result, buf, sizeof (expected_result)) != 0)
+ {
+ buf[sizeof (expected_result)] = '\0';
+ g_warning ("Expected \"%s\" but read \"%s\"", expected_result, (char *)buf);
+ return 1;
+ }
+
+ if (fclose (f) == -1)
+ g_assert_not_reached ();
+
+ return 0;
+}
+
+static int
env_mode (int argc, char **argv)
{
char **env;
@@ -242,6 +289,8 @@ main (int argc, char **argv)
return sleep_forever_mode (argc, argv);
else if (strcmp (mode, "write-to-fds") == 0)
return write_to_fds (argc, argv);
+ else if (strcmp (mode, "read-from-fd") == 0)
+ return read_from_fd (argc, argv);
else if (strcmp (mode, "env") == 0)
return env_mode (argc, argv);
else if (strcmp (mode, "cwd") == 0)
diff --git a/gio/tests/gsubprocess.c b/gio/tests/gsubprocess.c
index 084b77df3..fc5d4624e 100644
--- a/gio/tests/gsubprocess.c
+++ b/gio/tests/gsubprocess.c
@@ -5,6 +5,7 @@
#include <sys/wait.h>
#include <glib-unix.h>
#include <gio/gunixinputstream.h>
+#include <gio/gunixoutputstream.h>
#include <gio/gfiledescriptorbased.h>
#include <unistd.h>
#include <fcntl.h>
@@ -26,6 +27,14 @@
#define SPLICELEN (TOTAL_HELLOS * strlen (HELLO_WORLD))
#endif
+
+
+#ifdef G_OS_WIN32
+#define TESTPROG "gsubprocess-testprog.exe"
+#else
+#define TESTPROG "gsubprocess-testprog"
+#endif
+
static GPtrArray *
get_test_subprocess_args (const char *mode,
...) G_GNUC_NULL_TERMINATED;
@@ -36,19 +45,12 @@ get_test_subprocess_args (const char *mode,
{
GPtrArray *ret;
char *path;
- const char *binname;
va_list args;
gpointer arg;
ret = g_ptr_array_new_with_free_func (g_free);
-#ifdef G_OS_WIN32
- binname = "gsubprocess-testprog.exe";
-#else
- binname = "gsubprocess-testprog";
-#endif
-
- path = g_test_build_filename (G_TEST_BUILT, binname, NULL);
+ path = g_test_build_filename (G_TEST_BUILT, TESTPROG, NULL);
g_ptr_array_add (ret, path);
g_ptr_array_add (ret, g_strdup (mode));
@@ -167,6 +169,31 @@ test_search_path (void)
g_object_unref (proc);
}
+
+static void
+test_search_path_from_envp (void)
+{
+ GError *local_error = NULL;
+ GError **error = &local_error;
+ GSubprocessLauncher *launcher;
+ GSubprocess *proc;
+ const char *path;
+
+ path = g_test_get_dir (G_TEST_BUILT);
+
+ launcher = g_subprocess_launcher_new (G_SUBPROCESS_FLAGS_SEARCH_PATH_FROM_ENVP);
+ g_subprocess_launcher_setenv (launcher, "PATH", path, TRUE);
+
+ proc = g_subprocess_launcher_spawn (launcher, error, TESTPROG, "exit1", NULL);
+ g_assert_no_error (local_error);
+ g_object_unref (launcher);
+
+ g_subprocess_wait_check (proc, NULL, error);
+ g_assert_error (local_error, G_SPAWN_EXIT_ERROR, 1);
+ g_clear_error (error);
+
+ g_object_unref (proc);
+}
#endif
static void
@@ -1697,7 +1724,8 @@ test_child_setup (void)
}
static void
-test_pass_fd (void)
+do_test_pass_fd (GSubprocessFlags flags,
+ GSpawnChildSetupFunc child_setup)
{
GError *local_error = NULL;
GError **error = &local_error;
@@ -1722,9 +1750,11 @@ test_pass_fd (void)
needdup_fd_str = g_strdup_printf ("%d", needdup_pipefds[1] + 1);
args = get_test_subprocess_args ("write-to-fds", basic_fd_str, needdup_fd_str, NULL);
- launcher = g_subprocess_launcher_new (G_SUBPROCESS_FLAGS_NONE);
+ launcher = g_subprocess_launcher_new (flags);
g_subprocess_launcher_take_fd (launcher, basic_pipefds[1], basic_pipefds[1]);
g_subprocess_launcher_take_fd (launcher, needdup_pipefds[1], needdup_pipefds[1] + 1);
+ if (child_setup != NULL)
+ g_subprocess_launcher_set_child_setup (launcher, child_setup, NULL, NULL);
proc = g_subprocess_launcher_spawnv (launcher, (const gchar * const *) args->pdata, error);
g_ptr_array_free (args, TRUE);
g_assert_no_error (local_error);
@@ -1754,6 +1784,206 @@ test_pass_fd (void)
g_object_unref (proc);
}
+static void
+test_pass_fd (void)
+{
+ do_test_pass_fd (G_SUBPROCESS_FLAGS_NONE, NULL);
+}
+
+static void
+empty_child_setup (gpointer user_data)
+{
+}
+
+static void
+test_pass_fd_empty_child_setup (void)
+{
+ /* Using a child setup function forces gspawn to use fork/exec
+ * rather than posix_spawn.
+ */
+ do_test_pass_fd (G_SUBPROCESS_FLAGS_NONE, empty_child_setup);
+}
+
+static void
+test_pass_fd_inherit_fds (void)
+{
+ /* Try to test the optimized posix_spawn codepath instead of
+ * fork/exec. Currently this requires using INHERIT_FDS since gspawn's
+ * posix_spawn codepath does not currently handle closing
+ * non-inherited fds. Note that using INHERIT_FDS means our testing of
+ * g_subprocess_launcher_take_fd() is less-comprehensive than when
+ * using G_SUBPROCESS_FLAGS_NONE.
+ */
+ do_test_pass_fd (G_SUBPROCESS_FLAGS_INHERIT_FDS, NULL);
+}
+
+static void
+do_test_fd_conflation (GSubprocessFlags flags,
+ GSpawnChildSetupFunc child_setup,
+ gboolean test_child_err_report_fd)
+{
+ char success_message[] = "Yay success!";
+ GError *error = NULL;
+ GOutputStream *output_stream;
+ GSubprocessLauncher *launcher;
+ GSubprocess *proc;
+ GPtrArray *args;
+ int unused_pipefds[2];
+ int pipefds[2];
+ int fd_to_pass_to_child;
+ gsize bytes_written;
+ gboolean success;
+ char *fd_str;
+
+ /* This test must run in a new process because it is extremely sensitive to
+ * order of opened fds.
+ */
+ if (!g_test_subprocess ())
+ {
+ g_test_trap_subprocess (NULL, 0, G_TEST_SUBPROCESS_INHERIT_STDOUT | G_TEST_SUBPROCESS_INHERIT_STDERR);
+ g_test_trap_assert_passed ();
+ return;
+ }
+
+ g_unix_open_pipe (unused_pipefds, FD_CLOEXEC, &error);
+ g_assert_no_error (error);
+
+ g_unix_open_pipe (pipefds, FD_CLOEXEC, &error);
+ g_assert_no_error (error);
+
+ /* The fds should be sequential since we are in a new process. */
+ g_assert_cmpint (unused_pipefds[0] /* 3 */, ==, unused_pipefds[1] - 1);
+ g_assert_cmpint (unused_pipefds[1] /* 4 */, ==, pipefds[0] - 1);
+ g_assert_cmpint (pipefds[0] /* 5 */, ==, pipefds[1] /* 6 */ - 1);
+
+ /* Because GSubprocess allows arbitrary remapping of fds, it has to be careful
+ * to avoid fd conflation issues, e.g. it should properly handle 5 -> 4 and
+ * 4 -> 5 at the same time. GIO previously attempted to handle this by naively
+ * dup'ing the source fds, but this was not good enough because it was
+ * possible that the dup'ed result could still conflict with one of the target
+ * fds. For example:
+ *
+ * source_fd 5 -> target_fd 9, source_fd 3 -> target_fd 7
+ *
+ * dup(5) -> dup returns 8
+ * dup(3) -> dup returns 9
+ *
+ * After dup'ing, we wind up with: 8 -> 9, 9 -> 7. That means that after we
+ * dup2(8, 9), we have clobbered fd 9 before we dup2(9, 7). The end result is
+ * we have remapped 5 -> 9 as expected, but then remapped 5 -> 7 instead of
+ * 3 -> 7 as the application intended.
+ *
+ * This issue has been fixed in the simplest way possible, by passing a
+ * minimum fd value when using F_DUPFD_CLOEXEC that is higher than any of the
+ * target fds, to guarantee all source fds are different than all target fds,
+ * eliminating any possibility of conflation.
+ *
+ * Anyway, that is why we have the unused_pipefds here. We need to open fds in
+ * a certain order in order to trick older GSubprocess into conflating the
+ * fds. The primary goal of this test is to ensure this particular conflation
+ * issue is not reintroduced. See glib#2503.
+ *
+ * This test also has an alternate mode of operation where it instead tests
+ * for conflation with gspawn's child_err_report_fd, glib#2506.
+ *
+ * Be aware this test is necessarily extremely fragile. To reproduce these
+ * bugs, it relies on internals of gspawn and gmain that will likely change
+ * in the future, eventually causing this test to no longer test the bugs
+ * it was originally designed to test. That is OK! If the test fails, at
+ * least you know *something* is wrong.
+ */
+ if (test_child_err_report_fd)
+ fd_to_pass_to_child = pipefds[1] + 2 /* 8 */;
+ else
+ fd_to_pass_to_child = pipefds[1] + 3 /* 9 */;
+
+ launcher = g_subprocess_launcher_new (flags);
+ g_subprocess_launcher_take_fd (launcher, pipefds[0] /* 5 */, fd_to_pass_to_child);
+ g_subprocess_launcher_take_fd (launcher, unused_pipefds[0] /* 3 */, pipefds[1] + 1 /* 7 */);
+ if (child_setup != NULL)
+ g_subprocess_launcher_set_child_setup (launcher, child_setup, NULL, NULL);
+ fd_str = g_strdup_printf ("%d", fd_to_pass_to_child);
+ args = get_test_subprocess_args ("read-from-fd", fd_str, NULL);
+ proc = g_subprocess_launcher_spawnv (launcher, (const gchar * const *) args->pdata, &error);
+ g_assert_no_error (error);
+ g_assert_nonnull (proc);
+ g_ptr_array_free (args, TRUE);
+ g_object_unref (launcher);
+ g_free (fd_str);
+
+ /* Close the read ends of the pipes. */
+ close (unused_pipefds[0]);
+ close (pipefds[0]);
+
+ /* Also close the write end of the unused pipe. */
+ close (unused_pipefds[1]);
+
+ /* If doing our normal test:
+ *
+ * So now pipefds[0] should be inherited into the subprocess as
+ * pipefds[1] + 2, and unused_pipefds[0] should be inherited as
+ * pipefds[1] + 1. We will write to pipefds[1] and the subprocess will verify
+ * that it reads the expected data. But older broken GIO will accidentally
+ * clobber pipefds[1] + 2 with pipefds[1] + 1! This will cause the subprocess
+ * to hang trying to read from the wrong pipe.
+ *
+ * If testing conflation with child_err_report_fd:
+ *
+ * We are actually already done. The real test succeeded if we made it this
+ * far without hanging while spawning the child. But let's continue with our
+ * write and read anyway, to ensure things are good.
+ */
+ output_stream = g_unix_output_stream_new (pipefds[1], TRUE);
+ success = g_output_stream_write_all (output_stream,
+ success_message, sizeof (success_message),
+ &bytes_written,
+ NULL,
+ &error);
+ g_assert_no_error (error);
+ g_assert_cmpint (bytes_written, ==, sizeof (success_message));
+ g_assert_true (success);
+ g_object_unref (output_stream);
+
+ success = g_subprocess_wait_check (proc, NULL, &error);
+ g_assert_no_error (error);
+ g_object_unref (proc);
+}
+
+static void
+test_fd_conflation (void)
+{
+ do_test_fd_conflation (G_SUBPROCESS_FLAGS_NONE, NULL, FALSE);
+}
+
+static void
+test_fd_conflation_empty_child_setup (void)
+{
+ /* Using a child setup function forces gspawn to use fork/exec
+ * rather than posix_spawn.
+ */
+ do_test_fd_conflation (G_SUBPROCESS_FLAGS_NONE, empty_child_setup, FALSE);
+}
+
+static void
+test_fd_conflation_inherit_fds (void)
+{
+ /* Try to test the optimized posix_spawn codepath instead of
+ * fork/exec. Currently this requires using INHERIT_FDS since gspawn's
+ * posix_spawn codepath does not currently handle closing
+ * non-inherited fds.
+ */
+ do_test_fd_conflation (G_SUBPROCESS_FLAGS_INHERIT_FDS, NULL, FALSE);
+}
+
+static void
+test_fd_conflation_child_err_report_fd (void)
+{
+ /* Using a child setup function forces gspawn to use fork/exec
+ * rather than posix_spawn.
+ */
+ do_test_fd_conflation (G_SUBPROCESS_FLAGS_NONE, empty_child_setup, TRUE);
+}
+
#endif
static void
@@ -1819,6 +2049,7 @@ main (int argc, char **argv)
g_test_add_func ("/gsubprocess/noop-stdin-inherit", test_noop_stdin_inherit);
#ifdef G_OS_UNIX
g_test_add_func ("/gsubprocess/search-path", test_search_path);
+ g_test_add_func ("/gsubprocess/search-path-from-envp", test_search_path_from_envp);
g_test_add_func ("/gsubprocess/signal", test_signal);
#endif
g_test_add_func ("/gsubprocess/exit1", test_exit1);
@@ -1890,7 +2121,13 @@ main (int argc, char **argv)
g_test_add_func ("/gsubprocess/stdout-file", test_stdout_file);
g_test_add_func ("/gsubprocess/stdout-fd", test_stdout_fd);
g_test_add_func ("/gsubprocess/child-setup", test_child_setup);
- g_test_add_func ("/gsubprocess/pass-fd", test_pass_fd);
+ g_test_add_func ("/gsubprocess/pass-fd/basic", test_pass_fd);
+ g_test_add_func ("/gsubprocess/pass-fd/empty-child-setup", test_pass_fd_empty_child_setup);
+ g_test_add_func ("/gsubprocess/pass-fd/inherit-fds", test_pass_fd_inherit_fds);
+ g_test_add_func ("/gsubprocess/fd-conflation/basic", test_fd_conflation);
+ g_test_add_func ("/gsubprocess/fd-conflation/empty-child-setup", test_fd_conflation_empty_child_setup);
+ g_test_add_func ("/gsubprocess/fd-conflation/inherit-fds", test_fd_conflation_inherit_fds);
+ g_test_add_func ("/gsubprocess/fd-conflation/child-err-report-fd", test_fd_conflation_child_err_report_fd);
#endif
g_test_add_func ("/gsubprocess/launcher-environment", test_launcher_environment);
diff --git a/gio/tests/memory-monitor.c b/gio/tests/memory-monitor.c
index 06eabefa2..bef6d0f2e 100644
--- a/gio/tests/memory-monitor.c
+++ b/gio/tests/memory-monitor.c
@@ -18,21 +18,6 @@
#include <gio/gio.h>
-static const char *
-get_level_string (GMemoryMonitorWarningLevel level)
-{
- GEnumClass *eclass;
- GEnumValue *value;
-
- eclass = G_ENUM_CLASS (g_type_class_peek (G_TYPE_MEMORY_MONITOR_WARNING_LEVEL));
- value = g_enum_get_value (eclass, level);
-
- if (value == NULL)
- return "unknown";
-
- return value->value_nick;
-}
-
static void
test_dup_default (void)
{
@@ -47,10 +32,9 @@ static void
warning_cb (GMemoryMonitor *m,
GMemoryMonitorWarningLevel level)
{
- const char *str;
-
- str = get_level_string (level);
- g_debug ("Warning level: %s (%d)", str , level);
+ char *str = g_enum_to_string (G_TYPE_MEMORY_MONITOR_WARNING_LEVEL, level);
+ g_message ("Warning level: %s (%d)", str , level);
+ g_free (str);
}
static void
diff --git a/gio/tests/memory-output-stream.c b/gio/tests/memory-output-stream.c
index b448516df..ec1644ed8 100644
--- a/gio/tests/memory-output-stream.c
+++ b/gio/tests/memory-output-stream.c
@@ -300,6 +300,25 @@ test_write_bytes (void)
g_bytes_unref (bytes2);
}
+static void
+test_write_null (void)
+{
+ GOutputStream *mo;
+ GError *error = NULL;
+
+ g_test_bug ("https://gitlab.gnome.org/GNOME/glib/-/issues/2471");
+
+ mo = g_memory_output_stream_new_resizable ();
+ g_output_stream_write_all (mo, NULL, 0, NULL, NULL, &error);
+ g_assert_no_error (error);
+
+ g_assert_cmpint (0, ==, g_memory_output_stream_get_data_size (G_MEMORY_OUTPUT_STREAM (mo)));
+
+ g_output_stream_close (mo, NULL, &error);
+ g_assert_no_error (error);
+ g_object_unref (mo);
+}
+
/* Test that writev() works on #GMemoryOutputStream with a non-empty set of vectors. This
* covers the default writev() implementation around write(). */
static void
@@ -437,6 +456,7 @@ main (int argc,
g_test_add_func ("/memory-output-stream/get-data-size", test_data_size);
g_test_add_func ("/memory-output-stream/properties", test_properties);
g_test_add_func ("/memory-output-stream/write-bytes", test_write_bytes);
+ g_test_add_func ("/memory-output-stream/write-null", test_write_null);
g_test_add_func ("/memory-output-stream/writev", test_writev);
g_test_add_func ("/memory-output-stream/writev_nonblocking", test_writev_nonblocking);
g_test_add_func ("/memory-output-stream/steal_as_bytes", test_steal_as_bytes);
diff --git a/gio/tests/meson.build b/gio/tests/meson.build
index b563e8dde..3ed23a5f2 100644
--- a/gio/tests/meson.build
+++ b/gio/tests/meson.build
@@ -42,25 +42,42 @@ giotypefuncs_inc = custom_target(
# Test programs buildable on all platforms
gio_tests = {
- 'appmonitor' : {},
+ 'appmonitor' : {
+ # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392
+ 'should_fail' : host_system == 'darwin',
+ },
'async-close-output-stream' : {},
'async-splice-output-stream' : {},
'buffered-input-stream' : {},
'buffered-output-stream' : {},
'cancellable' : {},
'contexts' : {},
- 'contenttype' : {},
+ 'contenttype' : {
+ # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392 / https://gitlab.gnome.org/GNOME/glib/-/issues/1251
+ 'should_fail' : host_system == 'darwin',
+ },
'converter-stream' : {},
'credentials' : {},
+ 'cxx' : {
+ 'source' : ['cxx.cpp'],
+ },
'data-input-stream' : {},
'data-output-stream' : {},
- 'defaultvalue' : {'extra_sources' : [giotypefuncs_inc]},
'fileattributematcher' : {},
'filter-streams' : {},
- 'giomodule' : {},
- 'gsubprocess' : {},
+ 'giomodule' : {
+ # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392
+ 'should_fail' : host_system == 'darwin',
+ },
+ 'gsubprocess' : {
+ # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392
+ 'should_fail' : host_system == 'darwin',
+ },
'g-file' : {},
- 'g-file-info' : {},
+ 'g-file-info' : {
+ # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392
+ 'should_fail' : host_system == 'darwin',
+ },
'g-icon' : {},
'gdbus-addresses' : {},
'gdbus-message' : {},
@@ -81,7 +98,10 @@ gio_tests = {
'simple-async-result' : {},
'simple-proxy' : {},
'sleepy-stream' : {},
- 'socket' : {},
+ 'socket' : {
+ # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392
+ 'should_fail' : host_system == 'darwin',
+ },
'socket-listener' : {},
'socket-service' : {},
'srvtarget' : {},
@@ -95,7 +115,10 @@ gio_tests = {
'tls-interaction' : {'extra_sources' : ['gtesttlsbackend.c']},
'tls-database' : {'extra_sources' : ['gtesttlsbackend.c']},
'tls-bindings' : {'extra_sources' : ['gtesttlsbackend.c']},
- 'gdbus-address-get-session' : {},
+ 'gdbus-address-get-session' : {
+ # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392
+ 'should_fail' : host_system == 'darwin',
+ },
'win32-appinfo' : {},
}
@@ -148,16 +171,27 @@ else
}
endif
+have_dbus_daemon = find_program('dbus-daemon', required : false).found()
+if have_dbus_daemon
+ gio_tests += {
+ 'debugcontroller' : {},
+ 'defaultvalue' : {'extra_sources' : [giotypefuncs_inc]},
+ }
+endif
+
# Test programs buildable on UNIX only
if host_machine.system() != 'windows'
gio_tests += {
'file' : {},
'gdbus-peer' : {
'dependencies' : [libgdbus_example_objectmanager_dep],
- 'install_rpath' : installed_tests_execdir
+ 'install_rpath' : installed_tests_execdir,
+ # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392
+ 'should_fail' : host_system == 'darwin',
},
'gdbus-peer-object-manager' : {},
'live-g-file' : {},
+ 'resolver-parsing' : {'dependencies' : [network_libs]},
'socket-address' : {},
'stream-rw_all' : {},
'unix-fd' : {},
@@ -219,8 +253,6 @@ if host_machine.system() != 'windows'
}
endif
- # Test programs that need to bring up a session bus (requires dbus-daemon)
- have_dbus_daemon = find_program('dbus-daemon', required : false).found()
if have_dbus_daemon
annotate_args = [
'--annotate', 'org.project.Bar', 'Key1', 'Value1',
@@ -306,6 +338,7 @@ if host_machine.system() != 'windows'
'suite' : ['slow'],
},
'gdbus-introspection' : {'extra_sources' : extra_sources},
+ 'gdbus-method-invocation' : {'extra_sources' : extra_sources},
'gdbus-names' : {'extra_sources' : extra_sources},
'gdbus-proxy' : {'extra_sources' : extra_sources},
'gdbus-proxy-threads' : {
@@ -572,12 +605,16 @@ endif
if not meson.is_cross_build() or meson.has_exe_wrapper()
+ compiler_type = '--compiler=@0@'.format(cc.get_id())
+
plugin_resources_c = custom_target('plugin-resources.c',
input : 'test4.gresource.xml',
output : 'plugin-resources.c',
command : [glib_compile_resources,
+ compiler_type,
'--target=@OUTPUT@',
'--sourcedir=' + meson.current_source_dir(),
+ '--internal',
'--generate-source',
'--c-name', '_g_plugin',
'@INPUT@'])
@@ -600,9 +637,11 @@ if not meson.is_cross_build() or meson.has_exe_wrapper()
input : 'test.gresource.xml',
output : 'test.gresource',
command : [glib_compile_resources,
+ compiler_type,
'--target=@OUTPUT@',
'--sourcedir=' + meson.current_source_dir(),
'--sourcedir=' + meson.current_build_dir(),
+ '--internal',
'@INPUT@'],
install_dir : installed_tests_execdir,
install : installed_tests_enabled)
@@ -611,8 +650,10 @@ if not meson.is_cross_build() or meson.has_exe_wrapper()
input : 'test3.gresource.xml',
output : 'test_resources2.c',
command : [glib_compile_resources,
+ compiler_type,
'--target=@OUTPUT@',
'--sourcedir=' + meson.current_source_dir(),
+ '--internal',
'--generate',
'--c-name', '_g_test2',
'--manual-register',
@@ -622,8 +663,10 @@ if not meson.is_cross_build() or meson.has_exe_wrapper()
input : 'test3.gresource.xml',
output : 'test_resources2.h',
command : [glib_compile_resources,
+ compiler_type,
'--target=@OUTPUT@',
'--sourcedir=' + meson.current_source_dir(),
+ '--internal',
'--generate',
'--c-name', '_g_test2',
'--manual-register',
@@ -634,9 +677,11 @@ if not meson.is_cross_build() or meson.has_exe_wrapper()
depends : big_test_resource,
output : 'test_resources.c',
command : [glib_compile_resources,
+ compiler_type,
'--target=@OUTPUT@',
'--sourcedir=' + meson.current_source_dir(),
'--sourcedir=' + meson.current_build_dir(),
+ '--internal',
'--generate-source',
'--c-name', '_g_test1',
'@INPUT@'])
@@ -645,9 +690,11 @@ if not meson.is_cross_build() or meson.has_exe_wrapper()
input : '111_digit_test.gresource.xml',
output : 'digit_test_resources.c',
command : [glib_compile_resources,
+ compiler_type,
'--target=@OUTPUT@',
'--sourcedir=' + meson.current_source_dir(),
'--sourcedir=' + meson.current_build_dir(),
+ '--internal',
'--generate-source',
'--manual-register',
'@INPUT@'])
@@ -656,8 +703,10 @@ if not meson.is_cross_build() or meson.has_exe_wrapper()
input : '111_digit_test.gresource.xml',
output : 'digit_test_resources.h',
command : [glib_compile_resources,
+ compiler_type,
'--target=@OUTPUT@',
'--sourcedir=' + meson.current_source_dir(),
+ '--internal',
'--generate',
'--manual-register',
'@INPUT@'])
@@ -700,9 +749,11 @@ if not meson.is_cross_build() or meson.has_exe_wrapper()
input : 'test5.gresource.xml',
output : 'test5.gresource',
command : [glib_compile_resources,
+ compiler_type,
'--target=@OUTPUT@',
'--sourcedir=' + meson.current_source_dir(),
'--sourcedir=' + meson.current_build_dir(),
+ '--internal',
'@INPUT@'],
install_dir : installed_tests_execdir,
install : installed_tests_enabled)
@@ -712,9 +763,11 @@ if not meson.is_cross_build() or meson.has_exe_wrapper()
input : 'test5.gresource.xml',
output : 'test_resources_binary.c',
command : [glib_compile_resources,
+ compiler_type,
'--target=@OUTPUT@',
'--sourcedir=' + meson.current_source_dir(),
'--sourcedir=' + meson.current_build_dir(),
+ '--internal',
'--generate-source',
'--external-data',
'--c-name', '_g_binary_test1',
@@ -725,17 +778,24 @@ if not meson.is_cross_build() or meson.has_exe_wrapper()
input : test_gresource_binary,
output : 'test_resources.o',
command : [ld,
+ '-z', 'noexecstack',
'-r',
'-b','binary',
'@INPUT@',
'-o','@OUTPUT@'])
# Rename symbol to match the one in the C file
+ if cc.get_id() == 'gcc' and host_system == 'windows'
+ underscore = '_'
+ else
+ underscore = ''
+ endif
test_resources_binary2 = custom_target('test_resources2.o',
input : test_resources_binary,
output : 'test_resources2.o',
command : [objcopy,
- '--add-symbol','_g_binary_test1_resource_data=.data:0',
+ '--strip-all',
+ '--add-symbol', underscore + '_g_binary_test1_resource_data=.data:0',
'@INPUT@',
'@OUTPUT@'])
@@ -748,6 +808,8 @@ if not meson.is_cross_build() or meson.has_exe_wrapper()
gio_tests += {
'resources' : {
'extra_sources' : resources_extra_sources,
+ # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392
+ 'should_fail' : host_system == 'darwin',
},
}
endif
@@ -801,6 +863,7 @@ foreach test_name, extra_args : gio_tests
suite : suite,
is_parallel : extra_args.get('is_parallel', true),
depends : extra_args.get('depends', []),
+ should_fail : extra_args.get('should_fail', false),
)
endforeach
diff --git a/gio/tests/mock-resolver.c b/gio/tests/mock-resolver.c
index 3a7532134..397be2792 100644
--- a/gio/tests/mock-resolver.c
+++ b/gio/tests/mock-resolver.c
@@ -87,18 +87,50 @@ mock_resolver_set_ipv6_error (MockResolver *self, GError *error)
self->ipv6_error = g_error_copy (error);
}
+static gboolean lookup_by_name_cb (gpointer user_data);
+
+/* Core of the implementation of `lookup_by_name()` in the mock resolver.
+ *
+ * It creates a #GSource which will become ready with the resolver results. It
+ * will become ready either after a timeout, or as an idle callback. This
+ * simulates doing some actual network-based resolution work.
+ *
+ * A previous implementation of this did the work in a thread, but that made it
+ * hard to synchronise the timeouts with the #GResolver failure timeouts in the
+ * calling thread, as spawning a worker thread could be subject to non-trivial
+ * delays. */
static void
-do_lookup_by_name (GTask *task,
- gpointer source_object,
- gpointer task_data,
- GCancellable *cancellable)
+do_lookup_by_name (MockResolver *self,
+ GTask *task,
+ GResolverNameLookupFlags flags)
{
- MockResolver *self = source_object;
- GResolverNameLookupFlags flags = GPOINTER_TO_UINT(task_data);
+ GSource *source = NULL;
+
+ g_task_set_task_data (task, GINT_TO_POINTER (flags), NULL);
+
+ if (flags == G_RESOLVER_NAME_LOOKUP_FLAGS_IPV4_ONLY)
+ source = g_timeout_source_new (self->ipv4_delay_ms);
+ else if (flags == G_RESOLVER_NAME_LOOKUP_FLAGS_IPV6_ONLY)
+ source = g_timeout_source_new (self->ipv6_delay_ms);
+ else if (flags == G_RESOLVER_NAME_LOOKUP_FLAGS_DEFAULT)
+ source = g_idle_source_new ();
+ else
+ g_assert_not_reached ();
+
+ g_source_set_callback (source, lookup_by_name_cb, g_object_ref (task), g_object_unref);
+ g_source_attach (source, g_main_context_get_thread_default ());
+ g_source_unref (source);
+}
+
+static gboolean
+lookup_by_name_cb (gpointer user_data)
+{
+ GTask *task = G_TASK (user_data);
+ MockResolver *self = g_task_get_source_object (task);
+ GResolverNameLookupFlags flags = GPOINTER_TO_INT (g_task_get_task_data (task));
if (flags == G_RESOLVER_NAME_LOOKUP_FLAGS_IPV4_ONLY)
{
- g_usleep (self->ipv4_delay_ms * 1000);
if (self->ipv4_error)
g_task_return_error (task, g_error_copy (self->ipv4_error));
else
@@ -106,7 +138,6 @@ do_lookup_by_name (GTask *task,
}
else if (flags == G_RESOLVER_NAME_LOOKUP_FLAGS_IPV6_ONLY)
{
- g_usleep (self->ipv6_delay_ms * 1000);
if (self->ipv6_error)
g_task_return_error (task, g_error_copy (self->ipv6_error));
else
@@ -120,6 +151,8 @@ do_lookup_by_name (GTask *task,
}
else
g_assert_not_reached ();
+
+ return G_SOURCE_REMOVE;
}
static void
@@ -130,27 +163,65 @@ lookup_by_name_with_flags_async (GResolver *resolver,
GAsyncReadyCallback callback,
gpointer user_data)
{
- GTask *task = g_task_new (resolver, cancellable, callback, user_data);
- g_task_set_task_data (task, GUINT_TO_POINTER(flags), NULL);
- g_task_run_in_thread (task, do_lookup_by_name);
+ MockResolver *self = MOCK_RESOLVER (resolver);
+ GTask *task = NULL;
+
+ task = g_task_new (resolver, cancellable, callback, user_data);
+ g_task_set_source_tag (task, lookup_by_name_with_flags_async);
+
+ do_lookup_by_name (self, task, flags);
+
g_object_unref (task);
}
+static void
+async_result_cb (GObject *source_object,
+ GAsyncResult *result,
+ gpointer user_data)
+{
+ GAsyncResult **result_out = user_data;
+
+ g_assert (*result_out == NULL);
+ *result_out = g_object_ref (result);
+
+ g_main_context_wakeup (g_main_context_get_thread_default ());
+}
+
static GList *
-lookup_by_name (GResolver *resolver,
- const gchar *hostname,
- GCancellable *cancellable,
+lookup_by_name (GResolver *resolver,
+ const gchar *hostname,
+ GCancellable *cancellable,
GError **error)
{
+ MockResolver *self = MOCK_RESOLVER (resolver);
+ GMainContext *context = NULL;
GList *result = NULL;
- GTask *task = g_task_new (resolver, cancellable, NULL, NULL);
- g_task_set_task_data (task, GUINT_TO_POINTER (G_RESOLVER_NAME_LOOKUP_FLAGS_DEFAULT), NULL);
- g_task_run_in_thread_sync (task, do_lookup_by_name);
- result = g_task_propagate_pointer (task, error);
- g_object_unref (task);
- return result;
-}
+ GAsyncResult *async_result = NULL;
+ GTask *task = NULL;
+ context = g_main_context_new ();
+ g_main_context_push_thread_default (context);
+
+ task = g_task_new (resolver, cancellable, async_result_cb, &async_result);
+ g_task_set_source_tag (task, lookup_by_name);
+
+ /* Set up the resolution job. */
+ do_lookup_by_name (self, task, G_RESOLVER_NAME_LOOKUP_FLAGS_DEFAULT);
+
+ /* Wait for it to complete synchronously. */
+ while (async_result == NULL)
+ g_main_context_iteration (context, TRUE);
+
+ result = g_task_propagate_pointer (G_TASK (async_result), error);
+ g_object_unref (async_result);
+
+ g_assert_finalize_object (task);
+
+ g_main_context_pop_thread_default (context);
+ g_main_context_unref (context);
+
+ return g_steal_pointer (&result);
+}
static GList *
lookup_by_name_with_flags_finish (GResolver *resolver,
diff --git a/gio/tests/modules/symbol-visibility.h b/gio/tests/modules/symbol-visibility.h
index f9f8826ce..e83894444 100644
--- a/gio/tests/modules/symbol-visibility.h
+++ b/gio/tests/modules/symbol-visibility.h
@@ -3,11 +3,15 @@
/* This is the same check that's done in configure to create config.h */
#ifdef _WIN32
-# ifdef _MSC_VER
-# define GLIB_TEST_EXPORT_SYMBOL __declspec(dllexport) extern
-# else
-# define GLIB_TEST_EXPORT_SYMBOL __attribute__((visibility("default"))) __declspec(dllexport) extern
-# endif
+#ifdef GLIB_STATIC_COMPILATION
+#define GLIB_TEST_EXPORT_SYMBOL extern
+#else
+#ifdef _MSC_VER
+#define GLIB_TEST_EXPORT_SYMBOL __declspec(dllexport) extern
+#else
+#define GLIB_TEST_EXPORT_SYMBOL __attribute__ ((visibility ("default"))) __declspec(dllexport) extern
+#endif
+#endif
/* Matches GCC and Clang */
#elif defined(__GNUC__) && (__GNUC__ >= 4)
# define GLIB_TEST_EXPORT_SYMBOL __attribute__((visibility("default"))) extern
diff --git a/gio/tests/network-address.c b/gio/tests/network-address.c
index 946a8f25f..da4d7f7e0 100644
--- a/gio/tests/network-address.c
+++ b/gio/tests/network-address.c
@@ -20,7 +20,7 @@ test_basic (void)
g_object_get (address, "hostname", &hostname, "port", &port, "scheme", &scheme, NULL);
g_assert_cmpstr (hostname, ==, "www.gnome.org");
g_assert_cmpint (port, ==, 8080);
- g_assert (scheme == NULL);
+ g_assert_null (scheme);
g_free (hostname);
g_object_unref (address);
@@ -284,8 +284,8 @@ test_scope_id (GSocketConnectable *addr)
saddr = g_socket_address_enumerator_next (addr_enum, NULL, &error);
g_assert_no_error (error);
- g_assert (saddr != NULL);
- g_assert (G_IS_INET_SOCKET_ADDRESS (saddr));
+ g_assert_nonnull (saddr);
+ g_assert_true (G_IS_INET_SOCKET_ADDRESS (saddr));
isaddr = G_INET_SOCKET_ADDRESS (saddr);
g_assert_cmpint (g_inet_socket_address_get_scope_id (isaddr), ==, SCOPE_ID_TEST_INDEX);
@@ -299,7 +299,7 @@ test_scope_id (GSocketConnectable *addr)
g_object_unref (saddr);
saddr = g_socket_address_enumerator_next (addr_enum, NULL, &error);
g_assert_no_error (error);
- g_assert (saddr == NULL);
+ g_assert_null (saddr);
g_object_unref (addr_enum);
#else
@@ -377,7 +377,7 @@ assert_socket_address_matches (GSocketAddress *a,
GInetSocketAddress *sa;
gchar *str; /* owned */
- g_assert (G_IS_INET_SOCKET_ADDRESS (a));
+ g_assert_true (G_IS_INET_SOCKET_ADDRESS (a));
sa = G_INET_SOCKET_ADDRESS (a);
g_assert_cmpint (g_inet_socket_address_get_port (sa), ==, expected_port);
@@ -593,7 +593,7 @@ got_addr (GObject *source_object,
}
else
{
- g_assert (G_IS_INET_SOCKET_ADDRESS (a));
+ g_assert_true (G_IS_INET_SOCKET_ADDRESS (a));
data->addrs = g_list_prepend (data->addrs, a);
if (!data->delay_ms)
@@ -768,16 +768,22 @@ sort_socket_addresses (gconstpointer a, gconstpointer b)
static void
assert_list_matches_expected (GList *result, GList *expected)
{
+ GList *result_copy = NULL;
+
g_assert_cmpint (g_list_length (result), ==, g_list_length (expected));
- /* Sort by ipv4 first which matches the expected list */
- result = g_list_sort (result, sort_socket_addresses);
+ /* Sort by ipv4 first which matches the expected list. Do this on a copy of
+ * @result to avoid modifying the original. */
+ result_copy = g_list_copy (result);
+ result = result_copy = g_list_sort (result_copy, sort_socket_addresses);
for (; result != NULL; result = result->next, expected = expected->next)
{
GInetAddress *address = g_inet_socket_address_get_address (G_INET_SOCKET_ADDRESS (result->data));
g_assert_true (g_inet_address_equal (address, expected->data));
}
+
+ g_list_free (result_copy);
}
typedef struct {
@@ -855,6 +861,8 @@ test_happy_eyeballs_basic (HappyEyeballsFixture *fixture,
g_main_loop_run (fixture->loop);
assert_list_matches_expected (data.addrs, fixture->input_all_results);
+
+ g_list_free_full (data.addrs, (GDestroyNotify) g_object_unref);
}
static void
@@ -879,6 +887,7 @@ test_happy_eyeballs_parallel (HappyEyeballsFixture *fixture,
/* Run again to ensure the cache from the previous one is correct */
+ g_list_free_full (data.addrs, (GDestroyNotify) g_object_unref);
data.addrs = NULL;
g_object_unref (enumerator2);
@@ -887,7 +896,9 @@ test_happy_eyeballs_parallel (HappyEyeballsFixture *fixture,
g_main_loop_run (fixture->loop);
assert_list_matches_expected (data.addrs, fixture->input_all_results);
+
g_object_unref (enumerator2);
+ g_list_free_full (data.addrs, (GDestroyNotify) g_object_unref);
}
static void
@@ -905,6 +916,8 @@ test_happy_eyeballs_slow_ipv4 (HappyEyeballsFixture *fixture,
g_main_loop_run (fixture->loop);
assert_list_matches_expected (data.addrs, fixture->input_all_results);
+
+ g_list_free_full (data.addrs, (GDestroyNotify) g_object_unref);
}
static void
@@ -922,6 +935,8 @@ test_happy_eyeballs_slow_ipv6 (HappyEyeballsFixture *fixture,
g_main_loop_run (fixture->loop);
assert_list_matches_expected (data.addrs, fixture->input_all_results);
+
+ g_list_free_full (data.addrs, (GDestroyNotify) g_object_unref);
}
static void
@@ -939,6 +954,8 @@ test_happy_eyeballs_very_slow_ipv6 (HappyEyeballsFixture *fixture,
g_main_loop_run (fixture->loop);
assert_list_matches_expected (data.addrs, fixture->input_all_results);
+
+ g_list_free_full (data.addrs, (GDestroyNotify) g_object_unref);
}
static void
@@ -958,6 +975,8 @@ test_happy_eyeballs_slow_connection_and_ipv4 (HappyEyeballsFixture *fixture,
g_main_loop_run (fixture->loop);
assert_list_matches_expected (data.addrs, fixture->input_all_results);
+
+ g_list_free_full (data.addrs, (GDestroyNotify) g_object_unref);
}
static void
@@ -979,6 +998,7 @@ test_happy_eyeballs_ipv6_error_ipv4_first (HappyEyeballsFixture *fixture,
assert_list_matches_expected (data.addrs, fixture->input_ipv4_results);
+ g_list_free_full (data.addrs, (GDestroyNotify) g_object_unref);
g_error_free (ipv6_error);
}
@@ -1001,6 +1021,7 @@ test_happy_eyeballs_ipv6_error_ipv6_first (HappyEyeballsFixture *fixture,
assert_list_matches_expected (data.addrs, fixture->input_ipv4_results);
+ g_list_free_full (data.addrs, (GDestroyNotify) g_object_unref);
g_error_free (ipv6_error);
}
@@ -1026,6 +1047,7 @@ test_happy_eyeballs_ipv6_error_ipv4_very_slow (HappyEyeballsFixture *fixture,
assert_list_matches_expected (data.addrs, fixture->input_ipv4_results);
+ g_list_free_full (data.addrs, (GDestroyNotify) g_object_unref);
g_error_free (ipv6_error);
}
@@ -1048,6 +1070,7 @@ test_happy_eyeballs_ipv4_error_ipv4_first (HappyEyeballsFixture *fixture,
assert_list_matches_expected (data.addrs, fixture->input_ipv6_results);
+ g_list_free_full (data.addrs, (GDestroyNotify) g_object_unref);
g_error_free (ipv4_error);
}
@@ -1070,6 +1093,7 @@ test_happy_eyeballs_ipv4_error_ipv6_first (HappyEyeballsFixture *fixture,
assert_list_matches_expected (data.addrs, fixture->input_ipv6_results);
+ g_list_free_full (data.addrs, (GDestroyNotify) g_object_unref);
g_error_free (ipv4_error);
}
diff --git a/gio/tests/proxy-test.c b/gio/tests/proxy-test.c
index eec4bf7ca..d4b71a432 100644
--- a/gio/tests/proxy-test.c
+++ b/gio/tests/proxy-test.c
@@ -41,9 +41,14 @@
* connects to @server_addr anyway).
*
* The default GProxyResolver (GTestProxyResolver) looks at its URI
- * and returns [ "direct://" ] for "simple://" URIs, and [
- * proxy_a.uri, proxy_b.uri ] for other URIs. The other GProxyResolver
- * (GTestAltProxyResolver) always returns [ proxy_a.uri ].
+ * and returns [ "direct://" ] for "simple://" URIs, and
+ * [ proxy_a.uri, proxy_b.uri ] for most other URIs. It can also return
+ * invalid results for other URIs (empty://, invalid://,
+ * invalid-then-simple://, and simple-then-invalid://) to test error
+ * handling.
+ *
+ * The other GProxyResolver (GTestAltProxyResolver) always returns
+ * [ proxy_a.uri ].
*/
typedef struct {
@@ -134,6 +139,28 @@ g_test_proxy_resolver_lookup (GProxyResolver *resolver,
proxies[0] = g_strdup ("direct://");
proxies[1] = NULL;
}
+ else if (g_str_has_prefix (uri, "empty://"))
+ {
+ proxies[0] = g_strdup ("");
+ proxies[1] = NULL;
+ }
+ else if (g_str_has_prefix (uri, "invalid://"))
+ {
+ proxies[0] = g_strdup ("😼");
+ proxies[1] = NULL;
+ }
+ else if (g_str_has_prefix (uri, "invalid-then-simple://"))
+ {
+ proxies[0] = g_strdup ("😼");
+ proxies[1] = g_strdup ("direct://");
+ proxies[2] = NULL;
+ }
+ else if (g_str_has_prefix (uri, "simple-then-invalid://"))
+ {
+ proxies[0] = g_strdup ("direct://");
+ proxies[1] = g_strdup ("😼");
+ proxies[2] = NULL;
+ }
else
{
/* Proxy A can only deal with "alpha://" URIs, not
@@ -824,11 +851,8 @@ static void
teardown_test (gpointer fixture,
gconstpointer user_data)
{
- if (last_proxies)
- {
- g_strfreev (last_proxies);
- last_proxies = NULL;
- }
+ g_clear_pointer (&last_proxies, g_strfreev);
+
g_clear_error (&proxy_a.last_error);
g_clear_error (&proxy_b.last_error);
}
@@ -1092,6 +1116,118 @@ test_multiple_async (gpointer fixture,
}
static void
+test_invalid_uris_sync (gpointer fixture,
+ gconstpointer user_data)
+{
+ GSocketConnection *conn;
+ gchar *uri;
+ GError *error = NULL;
+
+ g_test_bug ("https://gitlab.gnome.org/GNOME/glib/-/issues/2597");
+
+ /* The empty:// URI causes the proxy resolver to return an empty string. */
+ uri = g_strdup_printf ("empty://127.0.0.1:%u", server.server_port);
+ conn = g_socket_client_connect_to_uri (client, uri, 0, NULL, &error);
+ g_free (uri);
+ g_assert_error (error, G_IO_ERROR, G_IO_ERROR_FAILED);
+ g_assert_null (conn);
+ g_clear_error (&error);
+ g_clear_pointer (&last_proxies, g_strfreev);
+
+ /* The invalid:// URI causes the proxy resolver to return a cat emoji. */
+ uri = g_strdup_printf ("invalid://127.0.0.1:%u", server.server_port);
+ conn = g_socket_client_connect_to_uri (client, uri, 0, NULL, &error);
+ g_free (uri);
+ g_assert_error (error, G_IO_ERROR, G_IO_ERROR_FAILED);
+ g_assert_null (conn);
+ g_clear_error (&error);
+ g_clear_pointer (&last_proxies, g_strfreev);
+
+ /* If the proxy resolver returns an invalid URI before a valid URI,
+ * we should succeed.
+ */
+ uri = g_strdup_printf ("invalid-then-simple://127.0.0.1:%u", server.server_port);
+ conn = g_socket_client_connect_to_uri (client, uri, 0, NULL, &error);
+ g_free (uri);
+ g_assert_no_error (error);
+ do_echo_test (conn);
+ g_object_unref (conn);
+ g_clear_pointer (&last_proxies, g_strfreev);
+
+ /* If the proxy resolver returns a valid URI before an invalid URI,
+ * we should succeed.
+ */
+ uri = g_strdup_printf ("simple-then-invalid://127.0.0.1:%u", server.server_port);
+ conn = g_socket_client_connect_to_uri (client, uri, 0, NULL, &error);
+ g_free (uri);
+ g_assert_no_error (error);
+ do_echo_test (conn);
+ g_object_unref (conn);
+ g_clear_pointer (&last_proxies, g_strfreev);
+}
+
+static void
+test_invalid_uris_async (gpointer fixture,
+ gconstpointer user_data)
+{
+ GSocketConnection *conn;
+ GError *error = NULL;
+ gchar *uri;
+
+ g_test_bug ("https://gitlab.gnome.org/GNOME/glib/-/issues/2597");
+
+ /* The empty:// URI causes the proxy resolver to return an empty string. */
+ uri = g_strdup_printf ("empty://127.0.0.1:%u", server.server_port);
+ g_socket_client_connect_to_uri_async (client, uri, 0, NULL,
+ async_got_error, &error);
+ g_free (uri);
+ while (error == NULL)
+ g_main_context_iteration (NULL, TRUE);
+ g_assert_error (error, G_IO_ERROR, G_IO_ERROR_FAILED);
+ g_clear_error (&error);
+ g_clear_pointer (&last_proxies, g_strfreev);
+
+ /* The invalid:// URI causes the proxy resolver to return a cat emoji. */
+ uri = g_strdup_printf ("invalid://127.0.0.1:%u", server.server_port);
+ g_socket_client_connect_to_uri_async (client, uri, 0, NULL,
+ async_got_error, &error);
+ g_free (uri);
+ while (error == NULL)
+ g_main_context_iteration (NULL, TRUE);
+ g_assert_error (error, G_IO_ERROR, G_IO_ERROR_FAILED);
+ g_clear_error (&error);
+ g_clear_pointer (&last_proxies, g_strfreev);
+
+ /* If the proxy resolver returns an invalid URI before a valid URI,
+ * we should succeed.
+ */
+ uri = g_strdup_printf ("invalid-then-simple://127.0.0.1:%u", server.server_port);
+ conn = NULL;
+ g_socket_client_connect_to_uri_async (client, uri, 0, NULL,
+ async_got_conn, &conn);
+ g_free (uri);
+ while (conn == NULL)
+ g_main_context_iteration (NULL, TRUE);
+ do_echo_test (conn);
+ g_object_unref (conn);
+ g_clear_pointer (&last_proxies, g_strfreev);
+
+ /* If the proxy resolver returns a valid URI before an invalid URI,
+ * we should succeed.
+ */
+ uri = g_strdup_printf ("simple-then-invalid://127.0.0.1:%u", server.server_port);
+ conn = NULL;
+ g_socket_client_connect_to_uri_async (client, uri, 0, NULL,
+ async_got_conn, &conn);
+ g_free (uri);
+ while (conn == NULL)
+ g_main_context_iteration (NULL, TRUE);
+ do_echo_test (conn);
+ g_object_unref (conn);
+ g_clear_pointer (&last_proxies, g_strfreev);
+}
+
+static void
test_dns (gpointer fixture,
gconstpointer user_data)
{
@@ -1370,6 +1506,8 @@ main (int argc,
g_test_add_vtable ("/proxy/single_async", 0, NULL, setup_test, test_single_async, teardown_test);
g_test_add_vtable ("/proxy/multiple_sync", 0, NULL, setup_test, test_multiple_sync, teardown_test);
g_test_add_vtable ("/proxy/multiple_async", 0, NULL, setup_test, test_multiple_async, teardown_test);
+ g_test_add_vtable ("/proxy/invalid-uris-sync", 0, NULL, setup_test, test_invalid_uris_sync, teardown_test);
+ g_test_add_vtable ("/proxy/invalid-uris-async", 0, NULL, setup_test, test_invalid_uris_async, teardown_test);
g_test_add_vtable ("/proxy/dns", 0, NULL, setup_test, test_dns, teardown_test);
g_test_add_vtable ("/proxy/override", 0, NULL, setup_test, test_override, teardown_test);
g_test_add_func ("/proxy/enumerator-ports", test_proxy_enumerator_ports);
diff --git a/gio/tests/resolver-parsing.c b/gio/tests/resolver-parsing.c
new file mode 100644
index 000000000..d9cf05244
--- /dev/null
+++ b/gio/tests/resolver-parsing.c
@@ -0,0 +1,879 @@
+/*
+ * Copyright (c) 2021 Igalia S.L.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ *
+ * Authors: Patrick Griffis <pgriffis@igalia.com>
+ */
+
+#include "config.h"
+
+#include <glib.h>
+#include <gio/gnetworking.h>
+
+#define GIO_COMPILATION
+#include "gthreadedresolver.h"
+#undef GIO_COMPILATION
+
+#ifdef HAVE_DN_COMP
+static void
+dns_builder_add_uint8 (GByteArray *builder,
+ guint8 value)
+{
+ g_byte_array_append (builder, &value, 1);
+}
+
+static void
+dns_builder_add_uint16 (GByteArray *builder,
+ guint16 value)
+{
+ dns_builder_add_uint8 (builder, (value >> 8) & 0xFF);
+ dns_builder_add_uint8 (builder, (value) & 0xFF);
+}
+
+static void
+dns_builder_add_uint32 (GByteArray *builder,
+ guint32 value)
+{
+ dns_builder_add_uint8 (builder, (value >> 24) & 0xFF);
+ dns_builder_add_uint8 (builder, (value >> 16) & 0xFF);
+ dns_builder_add_uint8 (builder, (value >> 8) & 0xFF);
+ dns_builder_add_uint8 (builder, (value) & 0xFF);
+}
+
+static void
+dns_builder_add_length_prefixed_string (GByteArray *builder,
+ const char *string)
+{
+ guint8 length;
+
+ g_assert (strlen (string) <= G_MAXUINT8);
+
+ length = (guint8) strlen (string);
+ dns_builder_add_uint8 (builder, length);
+
+ /* Don't include trailing NUL */
+ g_byte_array_append (builder, (const guchar *)string, length);
+}
+
+static void
+dns_builder_add_domain (GByteArray *builder,
+ const char *string)
+{
+ int ret;
+ guchar buffer[256];
+
+ ret = dn_comp (string, buffer, sizeof (buffer), NULL, NULL);
+ g_assert (ret != -1);
+
+ g_byte_array_append (builder, buffer, ret);
+}
+
+/* Append an invalid domain name to the DNS response. This is implemented by
+ * appending a single label followed by a pointer back to that label. This is
+ * invalid regardless of any other context in the response as its expansion is
+ * infinite.
+ *
+ * See https://datatracker.ietf.org/doc/html/rfc1035#section-4.1.4
+ *
+ * In order to create a pointer to the label, the label’s final offset in the
+ * DNS response must be known. The current length of @builder, plus @offset, is
+ * used for this. Hence, @offset is the additional offset (in bytes) to add, and
+ * typically corresponds to the length of the parent #GByteArray that @builder
+ * will eventually be added to. Potentially plus 2 bytes for the rdlength, as
+ * per dns_builder_add_answer_data(). */
+static void
+dns_builder_add_invalid_domain (GByteArray *builder,
+ gsize offset)
+{
+ offset += builder->len;
+ g_assert ((offset & 0xc0) == 0);
+
+ dns_builder_add_uint8 (builder, 1);
+ dns_builder_add_uint8 (builder, 'f');
+ dns_builder_add_uint8 (builder, 0xc0 | offset);
+}
+
+static void
+dns_builder_add_answer_data (GByteArray *builder,
+ GByteArray *answer)
+{
+ dns_builder_add_uint16 (builder, answer->len); /* rdlength */
+ g_byte_array_append (builder, answer->data, answer->len);
+}
+
+static GByteArray *
+dns_header (void)
+{
+ GByteArray *answer = g_byte_array_sized_new (2046);
+
+ /* Start with a header, we ignore everything except ancount.
+ https://datatracker.ietf.org/doc/html/rfc1035#section-4.1.1 */
+ dns_builder_add_uint16 (answer, 0); /* ID */
+ dns_builder_add_uint16 (answer, 0); /* |QR| Opcode |AA|TC|RD|RA| Z | RCODE | */
+ dns_builder_add_uint16 (answer, 0); /* QDCOUNT */
+ dns_builder_add_uint16 (answer, 1); /* ANCOUNT (1 answer) */
+ dns_builder_add_uint16 (answer, 0); /* NSCOUNT */
+ dns_builder_add_uint16 (answer, 0); /* ARCOUNT */
+
+ return g_steal_pointer (&answer);
+}
+
+static void
+assert_query_fails (const gchar *rrname,
+ GResolverRecordType record_type,
+ GByteArray *answer)
+{
+ GList *records = NULL;
+ GError *local_error = NULL;
+
+ records = g_resolver_records_from_res_query (rrname,
+ g_resolver_record_type_to_rrtype (record_type),
+ answer->data,
+ answer->len,
+ 0,
+ &local_error);
+
+ g_assert_error (local_error, G_RESOLVER_ERROR, G_RESOLVER_ERROR_INTERNAL);
+ g_assert_null (records);
+ g_clear_error (&local_error);
+}
+
+static void
+assert_query_succeeds (const gchar *rrname,
+ GResolverRecordType record_type,
+ GByteArray *answer,
+ const gchar *expected_answer_variant_str)
+{
+ GList *records = NULL;
+ GVariant *answer_variant, *expected_answer_variant = NULL;
+ GError *local_error = NULL;
+
+ records = g_resolver_records_from_res_query (rrname,
+ g_resolver_record_type_to_rrtype (record_type),
+ answer->data,
+ answer->len,
+ 0,
+ &local_error);
+
+ g_assert_no_error (local_error);
+ g_assert_nonnull (records);
+
+ /* Test the results. */
+ answer_variant = records->data;
+ expected_answer_variant = g_variant_new_parsed (expected_answer_variant_str);
+ g_assert_cmpvariant (answer_variant, expected_answer_variant);
+
+ g_variant_unref (expected_answer_variant);
+ g_list_free_full (records, (GDestroyNotify) g_variant_unref);
+}
+#endif /* HAVE_DN_COMP */
+
+static void
+test_invalid_header (void)
+{
+ const struct
+ {
+ const guint8 *answer;
+ gsize answer_len;
+ GResolverError expected_error_code;
+ }
+ vectors[] =
+ {
+ /* No answer: */
+ { (const guint8 *) "", 0, G_RESOLVER_ERROR_NOT_FOUND },
+ /* Definitely too short to be a valid header: */
+ { (const guint8 *) "\x20", 1, G_RESOLVER_ERROR_INTERNAL },
+ /* One byte too short to be a valid header: */
+ { (const guint8 *) "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", 11, G_RESOLVER_ERROR_INTERNAL },
+ /* Valid header indicating no answers: */
+ { (const guint8 *) "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", 12, G_RESOLVER_ERROR_NOT_FOUND },
+ };
+ gsize i;
+
+ for (i = 0; i < G_N_ELEMENTS (vectors); i++)
+ {
+ GList *records = NULL;
+ GError *local_error = NULL;
+
+ records = g_resolver_records_from_res_query ("example.org",
+ g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_NS),
+ vectors[i].answer,
+ vectors[i].answer_len,
+ 0,
+ &local_error);
+
+ g_assert_error (local_error, G_RESOLVER_ERROR, (gint) vectors[i].expected_error_code);
+ g_assert_null (records);
+ g_clear_error (&local_error);
+ }
+}
+
+static void
+test_unknown_record_type (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL;
+ GList *records = NULL;
+ GError *local_error = NULL;
+ const guint type_id = 20; /* ISDN, not supported anywhere */
+
+ /* An answer with an unsupported type chosen from
+ * https://en.wikipedia.org/wiki/List_of_DNS_record_types#[1]_Obsolete_record_types */
+ answer = dns_header ();
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, type_id);
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+ dns_builder_add_uint16 (answer, 0); /* rdlength */
+
+ records = g_resolver_records_from_res_query ("example.org",
+ type_id,
+ answer->data,
+ answer->len,
+ 0,
+ &local_error);
+
+ g_assert_error (local_error, G_RESOLVER_ERROR, G_RESOLVER_ERROR_NOT_FOUND);
+ g_assert_null (records);
+ g_clear_error (&local_error);
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_mx_valid (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *mx_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_MX));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* MX rdata, https://datatracker.ietf.org/doc/html/rfc1035#section-3.3.9 */
+ mx_rdata = g_byte_array_new ();
+ dns_builder_add_uint16 (mx_rdata, 0); /* preference */
+ dns_builder_add_domain (mx_rdata, "mail.example.org");
+ dns_builder_add_answer_data (answer, mx_rdata);
+ g_byte_array_unref (mx_rdata);
+
+ assert_query_succeeds ("example.org", G_RESOLVER_RECORD_MX, answer,
+ "(@q 0, 'mail.example.org')");
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_mx_invalid (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *mx_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_MX));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* MX rdata, https://datatracker.ietf.org/doc/html/rfc1035#section-3.3.9
+ *
+ * Use an invalid domain to trigger parsing failure. */
+ mx_rdata = g_byte_array_new ();
+ dns_builder_add_uint16 (mx_rdata, 0); /* preference */
+ dns_builder_add_invalid_domain (mx_rdata, answer->len + 2);
+ dns_builder_add_answer_data (answer, mx_rdata);
+ g_byte_array_unref (mx_rdata);
+
+ assert_query_fails ("example.org", G_RESOLVER_RECORD_MX, answer);
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_mx_invalid_too_short (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *mx_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_MX));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* MX rdata, https://datatracker.ietf.org/doc/html/rfc1035#section-3.3.9
+ *
+ * Miss out the domain field to trigger failure */
+ mx_rdata = g_byte_array_new ();
+ dns_builder_add_uint16 (mx_rdata, 0); /* preference */
+ /* missing domain field */
+ dns_builder_add_answer_data (answer, mx_rdata);
+ g_byte_array_unref (mx_rdata);
+
+ assert_query_fails ("example.org", G_RESOLVER_RECORD_MX, answer);
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_mx_invalid_too_short2 (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *mx_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_MX));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* MX rdata, https://datatracker.ietf.org/doc/html/rfc1035#section-3.3.9
+ *
+ * Miss out all fields to trigger failure */
+ mx_rdata = g_byte_array_new ();
+ /* missing preference and domain fields */
+ dns_builder_add_answer_data (answer, mx_rdata);
+ g_byte_array_unref (mx_rdata);
+
+ assert_query_fails ("example.org", G_RESOLVER_RECORD_MX, answer);
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_ns_valid (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *ns_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_NS));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* NS rdata, https://datatracker.ietf.org/doc/html/rfc1035#section-3.3.11 */
+ ns_rdata = g_byte_array_new ();
+ dns_builder_add_domain (ns_rdata, "ns.example.org");
+ dns_builder_add_answer_data (answer, ns_rdata);
+ g_byte_array_unref (ns_rdata);
+
+ assert_query_succeeds ("example.org", G_RESOLVER_RECORD_NS, answer,
+ "('ns.example.org',)");
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_ns_invalid (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *ns_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_NS));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* NS rdata, https://datatracker.ietf.org/doc/html/rfc1035#section-3.3.11
+ *
+ * Use an invalid domain to trigger parsing failure. */
+ ns_rdata = g_byte_array_new ();
+ dns_builder_add_invalid_domain (ns_rdata, answer->len + 2);
+ dns_builder_add_answer_data (answer, ns_rdata);
+ g_byte_array_unref (ns_rdata);
+
+ assert_query_fails ("example.org", G_RESOLVER_RECORD_NS, answer);
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_soa_valid (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *soa_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_SOA));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* SOA rdata, https://datatracker.ietf.org/doc/html/rfc1035#section-3.3.13 */
+ soa_rdata = g_byte_array_new ();
+ dns_builder_add_domain (soa_rdata, "mname.example.org");
+ dns_builder_add_domain (soa_rdata, "rname.example.org");
+ dns_builder_add_uint32 (soa_rdata, 0); /* serial */
+ dns_builder_add_uint32 (soa_rdata, 0); /* refresh */
+ dns_builder_add_uint32 (soa_rdata, 0); /* retry */
+ dns_builder_add_uint32 (soa_rdata, 0); /* expire */
+ dns_builder_add_uint32 (soa_rdata, 0); /* minimum */
+ dns_builder_add_answer_data (answer, soa_rdata);
+ g_byte_array_unref (soa_rdata);
+
+ assert_query_succeeds ("example.org", G_RESOLVER_RECORD_SOA, answer,
+ "('mname.example.org', 'rname.example.org', @u 0, @u 0, @u 0, @u 0, @u 0)");
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_soa_invalid_mname (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *soa_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_SOA));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* SOA rdata, https://datatracker.ietf.org/doc/html/rfc1035#section-3.3.13
+ *
+ * Use an invalid domain to trigger parsing failure. */
+ soa_rdata = g_byte_array_new ();
+ dns_builder_add_invalid_domain (soa_rdata, answer->len + 2); /* mname */
+ dns_builder_add_domain (soa_rdata, "rname.example.org");
+ dns_builder_add_uint32 (soa_rdata, 0); /* serial */
+ dns_builder_add_uint32 (soa_rdata, 0); /* refresh */
+ dns_builder_add_uint32 (soa_rdata, 0); /* retry */
+ dns_builder_add_uint32 (soa_rdata, 0); /* expire */
+ dns_builder_add_uint32 (soa_rdata, 0); /* minimum */
+ dns_builder_add_answer_data (answer, soa_rdata);
+ g_byte_array_unref (soa_rdata);
+
+ assert_query_fails ("example.org", G_RESOLVER_RECORD_SOA, answer);
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_soa_invalid_rname (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *soa_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_SOA));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* SOA rdata, https://datatracker.ietf.org/doc/html/rfc1035#section-3.3.13
+ *
+ * Use an invalid domain to trigger parsing failure. */
+ soa_rdata = g_byte_array_new ();
+ dns_builder_add_domain (soa_rdata, "mname.example.org");
+ dns_builder_add_invalid_domain (soa_rdata, answer->len + 2); /* rname */
+ dns_builder_add_uint32 (soa_rdata, 0); /* serial */
+ dns_builder_add_uint32 (soa_rdata, 0); /* refresh */
+ dns_builder_add_uint32 (soa_rdata, 0); /* retry */
+ dns_builder_add_uint32 (soa_rdata, 0); /* expire */
+ dns_builder_add_uint32 (soa_rdata, 0); /* minimum */
+ dns_builder_add_answer_data (answer, soa_rdata);
+ g_byte_array_unref (soa_rdata);
+
+ assert_query_fails ("example.org", G_RESOLVER_RECORD_SOA, answer);
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_soa_invalid_too_short (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *soa_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_SOA));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* SOA rdata, https://datatracker.ietf.org/doc/html/rfc1035#section-3.3.13
+ *
+ * Miss out one of the fields to trigger a failure. */
+ soa_rdata = g_byte_array_new ();
+ dns_builder_add_domain (soa_rdata, "mname.example.org");
+ dns_builder_add_domain (soa_rdata, "rname.example.org");
+ dns_builder_add_uint32 (soa_rdata, 0); /* serial */
+ dns_builder_add_uint32 (soa_rdata, 0); /* refresh */
+ dns_builder_add_uint32 (soa_rdata, 0); /* retry */
+ dns_builder_add_uint32 (soa_rdata, 0); /* expire */
+ /* missing minimum field */
+ dns_builder_add_answer_data (answer, soa_rdata);
+ g_byte_array_unref (soa_rdata);
+
+ assert_query_fails ("example.org", G_RESOLVER_RECORD_SOA, answer);
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_txt_valid (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *txt_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_TXT));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* TXT rdata, https://datatracker.ietf.org/doc/html/rfc1035#section-3.3.14 */
+ txt_rdata = g_byte_array_new ();
+ dns_builder_add_length_prefixed_string (txt_rdata, "some test content");
+ dns_builder_add_answer_data (answer, txt_rdata);
+ g_byte_array_unref (txt_rdata);
+
+ assert_query_succeeds ("example.org", G_RESOLVER_RECORD_TXT, answer,
+ "(['some test content'],)");
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_txt_valid_multiple_strings (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *txt_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_TXT));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* TXT rdata, https://datatracker.ietf.org/doc/html/rfc1035#section-3.3.14 */
+ txt_rdata = g_byte_array_new ();
+ dns_builder_add_length_prefixed_string (txt_rdata, "some test content");
+ dns_builder_add_length_prefixed_string (txt_rdata, "more test content");
+ dns_builder_add_answer_data (answer, txt_rdata);
+ g_byte_array_unref (txt_rdata);
+
+ assert_query_succeeds ("example.org", G_RESOLVER_RECORD_TXT, answer,
+ "(['some test content', 'more test content'],)");
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_txt_invalid_empty (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *txt_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_TXT));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* TXT rdata, https://datatracker.ietf.org/doc/html/rfc1035#section-3.3.14
+ *
+ * Provide zero character strings (i.e. an empty rdata section) to trigger
+ * failure. */
+ txt_rdata = g_byte_array_new ();
+ dns_builder_add_answer_data (answer, txt_rdata);
+ g_byte_array_unref (txt_rdata);
+
+ assert_query_fails ("example.org", G_RESOLVER_RECORD_TXT, answer);
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_txt_invalid_overflow (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *txt_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_TXT));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* TXT rdata, https://datatracker.ietf.org/doc/html/rfc1035#section-3.3.14
+ *
+ * Use a character string whose length exceeds the remaining length in the
+ * answer record, to trigger failure. */
+ txt_rdata = g_byte_array_new ();
+ dns_builder_add_uint8 (txt_rdata, 10); /* length, but no content */
+ dns_builder_add_answer_data (answer, txt_rdata);
+ g_byte_array_unref (txt_rdata);
+
+ assert_query_fails ("example.org", G_RESOLVER_RECORD_TXT, answer);
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_srv_valid (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *srv_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_SRV));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* SRV rdata, https://datatracker.ietf.org/doc/html/rfc2782 */
+ srv_rdata = g_byte_array_new ();
+ dns_builder_add_uint16 (srv_rdata, 0); /* priority */
+ dns_builder_add_uint16 (srv_rdata, 0); /* weight */
+ dns_builder_add_uint16 (srv_rdata, 0); /* port */
+ dns_builder_add_domain (srv_rdata, "target.example.org");
+ dns_builder_add_answer_data (answer, srv_rdata);
+ g_byte_array_unref (srv_rdata);
+
+ assert_query_succeeds ("example.org", G_RESOLVER_RECORD_SRV, answer,
+ "(@q 0, @q 0, @q 0, 'target.example.org')");
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_srv_invalid (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *srv_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_SRV));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* SRV rdata, https://datatracker.ietf.org/doc/html/rfc2782
+ *
+ * Use an invalid domain to trigger parsing failure. */
+ srv_rdata = g_byte_array_new ();
+ dns_builder_add_uint16 (srv_rdata, 0); /* priority */
+ dns_builder_add_uint16 (srv_rdata, 0); /* weight */
+ dns_builder_add_uint16 (srv_rdata, 0); /* port */
+ dns_builder_add_invalid_domain (srv_rdata, answer->len + 2);
+ dns_builder_add_answer_data (answer, srv_rdata);
+ g_byte_array_unref (srv_rdata);
+
+ assert_query_fails ("example.org", G_RESOLVER_RECORD_SRV, answer);
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_srv_invalid_too_short (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *srv_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_SRV));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* SRV rdata, https://datatracker.ietf.org/doc/html/rfc2782
+ *
+ * Miss out the target field to trigger failure */
+ srv_rdata = g_byte_array_new ();
+ dns_builder_add_uint16 (srv_rdata, 0); /* priority */
+ dns_builder_add_uint16 (srv_rdata, 0); /* weight */
+ dns_builder_add_uint16 (srv_rdata, 0); /* port */
+ /* missing target field */
+ dns_builder_add_answer_data (answer, srv_rdata);
+ g_byte_array_unref (srv_rdata);
+
+ assert_query_fails ("example.org", G_RESOLVER_RECORD_SRV, answer);
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+static void
+test_srv_invalid_too_short2 (void)
+{
+#ifndef HAVE_DN_COMP
+ g_test_skip ("The dn_comp() function was not available.");
+ return;
+#else
+ GByteArray *answer = NULL, *srv_rdata = NULL;
+
+ answer = dns_header ();
+
+ /* Resource record */
+ dns_builder_add_domain (answer, "example.org");
+ dns_builder_add_uint16 (answer, g_resolver_record_type_to_rrtype (G_RESOLVER_RECORD_SRV));
+ dns_builder_add_uint16 (answer, 1); /* qclass=C_IN */
+ dns_builder_add_uint32 (answer, 0); /* ttl (ignored) */
+
+ /* SRV rdata, https://datatracker.ietf.org/doc/html/rfc2782
+ *
+ * Miss out the target and port fields to trigger failure */
+ srv_rdata = g_byte_array_new ();
+ dns_builder_add_uint16 (srv_rdata, 0); /* priority */
+ dns_builder_add_uint16 (srv_rdata, 0); /* weight */
+ /* missing port and target fields */
+ dns_builder_add_answer_data (answer, srv_rdata);
+ g_byte_array_unref (srv_rdata);
+
+ assert_query_fails ("example.org", G_RESOLVER_RECORD_SRV, answer);
+
+ g_byte_array_free (answer, TRUE);
+#endif
+}
+
+int
+main (int argc,
+ char *argv[])
+{
+ g_test_init (&argc, &argv, G_TEST_OPTION_ISOLATE_DIRS, NULL);
+
+ g_test_add_func ("/gresolver/invalid-header", test_invalid_header);
+ g_test_add_func ("/gresolver/unknown-record-type", test_unknown_record_type);
+ g_test_add_func ("/gresolver/mx/valid", test_mx_valid);
+ g_test_add_func ("/gresolver/mx/invalid", test_mx_invalid);
+ g_test_add_func ("/gresolver/mx/invalid/too-short", test_mx_invalid_too_short);
+ g_test_add_func ("/gresolver/mx/invalid/too-short2", test_mx_invalid_too_short2);
+ g_test_add_func ("/gresolver/ns/valid", test_ns_valid);
+ g_test_add_func ("/gresolver/ns/invalid", test_ns_invalid);
+ g_test_add_func ("/gresolver/soa/valid", test_soa_valid);
+ g_test_add_func ("/gresolver/soa/invalid/mname", test_soa_invalid_mname);
+ g_test_add_func ("/gresolver/soa/invalid/rname", test_soa_invalid_rname);
+ g_test_add_func ("/gresolver/soa/invalid/too-short", test_soa_invalid_too_short);
+ g_test_add_func ("/gresolver/srv/valid", test_srv_valid);
+ g_test_add_func ("/gresolver/srv/invalid", test_srv_invalid);
+ g_test_add_func ("/gresolver/srv/invalid/too-short", test_srv_invalid_too_short);
+ g_test_add_func ("/gresolver/srv/invalid/too-short2", test_srv_invalid_too_short2);
+ g_test_add_func ("/gresolver/txt/valid", test_txt_valid);
+ g_test_add_func ("/gresolver/txt/valid/multiple-strings", test_txt_valid_multiple_strings);
+ g_test_add_func ("/gresolver/txt/invalid/empty", test_txt_invalid_empty);
+ g_test_add_func ("/gresolver/txt/invalid/overflow", test_txt_invalid_overflow);
+
+ return g_test_run ();
+}
diff --git a/gio/tests/resolver.c b/gio/tests/resolver.c
index 6e0c4d73b..d62a4fd18 100644
--- a/gio/tests/resolver.c
+++ b/gio/tests/resolver.c
@@ -44,12 +44,12 @@ static G_NORETURN void
usage (void)
{
fprintf (stderr, "Usage: resolver [-s] [hostname | IP | service/protocol/domain ] ...\n");
- fprintf (stderr, "Usage: resolver [-s] [-t MX|TXT|NS|SOA] rrname ...\n");
+ fprintf (stderr, "Usage: resolver [-s] [-t MX|TXT|NS|SOA|SRV] rrname ...\n");
fprintf (stderr, " resolver [-s] -c NUMBER [hostname | IP | service/protocol/domain ]\n");
fprintf (stderr, " Use -s to do synchronous lookups.\n");
fprintf (stderr, " Use -c NUMBER (and only a single resolvable argument) to test GSocketConnectable.\n");
fprintf (stderr, " The given NUMBER determines how many times the connectable will be enumerated.\n");
- fprintf (stderr, " Use -t with MX, TXT, NS or SOA to look up DNS records of those types.\n");
+ fprintf (stderr, " Use -t with MX, TXT, NS, SOA or SRV to look up DNS records of those types.\n");
exit (1);
}
@@ -233,6 +233,46 @@ print_resolved_txt (const char *rrname,
}
static void
+print_resolved_srv (const char *rrname,
+ GList *records,
+ GError *error)
+{
+ G_LOCK (response);
+ printf ("Domain: %s\n", rrname);
+ if (error)
+ {
+ printf ("Error: %s\n", error->message);
+ g_error_free (error);
+ }
+ else if (!records)
+ {
+ printf ("no SRV records\n");
+ }
+ else
+ {
+ GList *t;
+
+ for (t = records; t != NULL; t = t->next)
+ {
+ guint16 priority, weight, port;
+ const gchar *target;
+
+ g_variant_get (t->data, "(qqq&s)", &priority, &weight, &port, &target);
+
+ printf ("%s (priority %u, weight %u, port %u)\n",
+ target, (guint) priority, (guint) weight, (guint) port);
+ g_variant_unref (t->data);
+ }
+
+ g_list_free (records);
+ }
+ printf ("\n");
+
+ done_lookup ();
+ G_UNLOCK (response);
+}
+
+static void
print_resolved_soa (const char *rrname,
GList *records,
GError *error)
@@ -331,6 +371,9 @@ lookup_one_sync (const char *arg)
case G_RESOLVER_RECORD_TXT:
print_resolved_txt (arg, records, error);
break;
+ case G_RESOLVER_RECORD_SRV:
+ print_resolved_srv (arg, records, error);
+ break;
default:
g_warn_if_reached ();
break;
@@ -449,6 +492,9 @@ lookup_records_callback (GObject *source,
case G_RESOLVER_RECORD_TXT:
print_resolved_txt (arg, records, error);
break;
+ case G_RESOLVER_RECORD_SRV:
+ print_resolved_srv (arg, records, error);
+ break;
default:
g_warn_if_reached ();
break;
@@ -659,9 +705,11 @@ record_type_arg (const gchar *option_name,
record_type = G_RESOLVER_RECORD_SOA;
} else if (g_ascii_strcasecmp (value, "NS") == 0) {
record_type = G_RESOLVER_RECORD_NS;
+ } else if (g_ascii_strcasecmp (value, "SRV") == 0) {
+ record_type = G_RESOLVER_RECORD_SRV;
} else {
g_set_error (error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE,
- "Specify MX, TXT, NS or SOA for the special record lookup types");
+ "Specify MX, TXT, NS, SOA or SRV for the special record lookup types");
return FALSE;
}
diff --git a/gio/tests/resources.c b/gio/tests/resources.c
index 325775fd6..7ba5896a0 100644
--- a/gio/tests/resources.c
+++ b/gio/tests/resources.c
@@ -63,7 +63,7 @@ test_resource (GResource *resource)
"/test1.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&size, &flags, &error);
- g_assert (found);
+ g_assert_true (found);
g_assert_no_error (error);
g_assert_cmpint (size, ==, 6);
g_assert_cmpuint (flags, ==, G_RESOURCE_FLAGS_COMPRESSED);
@@ -81,7 +81,7 @@ test_resource (GResource *resource)
"/a_prefix/test2.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&size, &flags, &error);
- g_assert (found);
+ g_assert_true (found);
g_assert_no_error (error);
g_assert_cmpint (size, ==, 6);
g_assert_cmpuint (flags, ==, 0);
@@ -90,7 +90,7 @@ test_resource (GResource *resource)
"/a_prefix/test2-alias.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&size, &flags, &error);
- g_assert (found);
+ g_assert_true (found);
g_assert_no_error (error);
g_assert_cmpint (size, ==, 6);
g_assert_cmpuint (flags, ==, 0);
@@ -137,13 +137,13 @@ test_resource (GResource *resource)
"/test1.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&error);
- g_assert (in != NULL);
+ g_assert_nonnull (in);
g_assert_no_error (error);
success = g_input_stream_read_all (in, buffer, sizeof (buffer) - 1,
&size,
NULL, &error);
- g_assert (success);
+ g_assert_true (success);
g_assert_no_error (error);
g_assert_cmpint (size, ==, 6);
buffer[size] = 0;
@@ -175,7 +175,7 @@ test_resource (GResource *resource)
"/a_prefix/test2.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&error);
- g_assert (data != NULL);
+ g_assert_nonnull (data);
g_assert_no_error (error);
size = g_bytes_get_size (data);
g_assert_cmpint (size, ==, 6);
@@ -186,7 +186,7 @@ test_resource (GResource *resource)
"/a_prefix/test2-alias.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&error);
- g_assert (data != NULL);
+ g_assert_nonnull (data);
g_assert_no_error (error);
size = g_bytes_get_size (data);
g_assert_cmpint (size, ==, 6);
@@ -211,7 +211,7 @@ test_resource (GResource *resource)
"/a_prefix",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&error);
- g_assert (children != NULL);
+ g_assert_nonnull (children);
g_assert_no_error (error);
g_assert_cmpint (g_strv_length (children), ==, 2);
g_strfreev (children);
@@ -221,7 +221,7 @@ test_resource (GResource *resource)
"/a_prefix/",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&error);
- g_assert (children != NULL);
+ g_assert_nonnull (children);
g_assert_no_error (error);
g_assert_cmpint (g_strv_length (children), ==, 2);
g_strfreev (children);
@@ -238,7 +238,7 @@ test_resource (GResource *resource)
"/with/no/trailing/slash",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&error);
- g_assert (children == NULL);
+ g_assert_null (children);
g_assert_error (error, G_RESOURCE_ERROR, G_RESOURCE_ERROR_NOT_FOUND);
g_clear_error (&error);
}
@@ -250,12 +250,12 @@ test_resource_file (void)
GError *error = NULL;
resource = g_resource_load ("not-there", &error);
- g_assert (resource == NULL);
+ g_assert_null (resource);
g_assert_error (error, G_FILE_ERROR, G_FILE_ERROR_NOENT);
g_clear_error (&error);
resource = g_resource_load (g_test_get_filename (G_TEST_BUILT, "test.gresource", NULL), &error);
- g_assert (resource != NULL);
+ g_assert_nonnull (resource);
g_assert_no_error (error);
test_resource (resource);
@@ -293,10 +293,10 @@ test_resource_file_path (void)
gchar *uri;
file = g_file_new_for_uri (test_uris[i].input);
- g_assert (file != NULL);
+ g_assert_nonnull (file);
uri = g_file_get_uri (file);
- g_assert (uri != NULL);
+ g_assert_nonnull (uri);
g_assert_cmpstr (uri, ==, test_uris[i].expected);
@@ -317,12 +317,12 @@ test_resource_data (void)
loaded_file = g_file_get_contents (g_test_get_filename (G_TEST_BUILT, "test.gresource", NULL),
&content, &content_size, NULL);
- g_assert (loaded_file);
+ g_assert_true (loaded_file);
data = g_bytes_new_take (content, content_size);
resource = g_resource_new_from_data (data, &error);
g_bytes_unref (data);
- g_assert (resource != NULL);
+ g_assert_nonnull (resource);
g_assert_no_error (error);
test_resource (resource);
@@ -342,7 +342,7 @@ test_resource_data_unaligned (void)
loaded_file = g_file_get_contents (g_test_get_filename (G_TEST_BUILT, "test.gresource", NULL),
&content, &content_size, NULL);
- g_assert (loaded_file);
+ g_assert_true (loaded_file);
content_copy = g_new (char, content_size + 1);
memcpy (content_copy + 1, content, content_size);
@@ -352,7 +352,7 @@ test_resource_data_unaligned (void)
g_free (content);
resource = g_resource_new_from_data (data, &error);
g_bytes_unref (data);
- g_assert (resource != NULL);
+ g_assert_nonnull (resource);
g_assert_no_error (error);
test_resource (resource);
@@ -413,13 +413,13 @@ test_resource_registered (void)
char buffer[128];
resource = g_resource_load (g_test_get_filename (G_TEST_BUILT, "test.gresource", NULL), &error);
- g_assert (resource != NULL);
+ g_assert_nonnull (resource);
g_assert_no_error (error);
found = g_resources_get_info ("/test1.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&size, &flags, &error);
- g_assert (!found);
+ g_assert_false (found);
g_assert_error (error, G_RESOURCE_ERROR, G_RESOURCE_ERROR_NOT_FOUND);
g_clear_error (&error);
@@ -428,10 +428,10 @@ test_resource_registered (void)
found = g_resources_get_info ("/test1.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&size, &flags, &error);
- g_assert (found);
+ g_assert_true (found);
g_assert_no_error (error);
g_assert_cmpint (size, ==, 6);
- g_assert (flags == (G_RESOURCE_FLAGS_COMPRESSED));
+ g_assert_cmpint (flags, ==, G_RESOURCE_FLAGS_COMPRESSED);
found = g_resources_get_info ("/empty.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
@@ -439,12 +439,12 @@ test_resource_registered (void)
g_assert_no_error (error);
g_assert_true (found);
g_assert_cmpint (size, ==, 0);
- g_assert (flags == (G_RESOURCE_FLAGS_COMPRESSED));
+ g_assert_cmpint (flags, ==, G_RESOURCE_FLAGS_COMPRESSED);
found = g_resources_get_info ("/a_prefix/test2.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&size, &flags, &error);
- g_assert (found);
+ g_assert_true (found);
g_assert_no_error (error);
g_assert_cmpint (size, ==, 6);
g_assert_cmpint (flags, ==, 0);
@@ -452,7 +452,7 @@ test_resource_registered (void)
found = g_resources_get_info ("/a_prefix/test2-alias.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&size, &flags, &error);
- g_assert (found);
+ g_assert_true (found);
g_assert_no_error (error);
g_assert_cmpint (size, ==, 6);
g_assert_cmpuint (flags, ==, 0);
@@ -467,13 +467,13 @@ test_resource_registered (void)
in = g_resources_open_stream ("/test1.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&error);
- g_assert (in != NULL);
+ g_assert_nonnull (in);
g_assert_no_error (error);
success = g_input_stream_read_all (in, buffer, sizeof (buffer) - 1,
&size,
NULL, &error);
- g_assert (success);
+ g_assert_true (success);
g_assert_no_error (error);
g_assert_cmpint (size, ==, 6);
buffer[size] = 0;
@@ -510,7 +510,7 @@ test_resource_registered (void)
data = g_resources_lookup_data ("/a_prefix/test2.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&error);
- g_assert (data != NULL);
+ g_assert_nonnull (data);
g_assert_no_error (error);
size = g_bytes_get_size (data);
g_assert_cmpint (size, ==, 6);
@@ -520,7 +520,7 @@ test_resource_registered (void)
data = g_resources_lookup_data ("/a_prefix/test2-alias.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&error);
- g_assert (data != NULL);
+ g_assert_nonnull (data);
g_assert_no_error (error);
size = g_bytes_get_size (data);
g_assert_cmpint (size, ==, 6);
@@ -530,14 +530,14 @@ test_resource_registered (void)
children = g_resources_enumerate_children ("/not/here",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&error);
- g_assert (children == NULL);
+ g_assert_null (children);
g_assert_error (error, G_RESOURCE_ERROR, G_RESOURCE_ERROR_NOT_FOUND);
g_clear_error (&error);
children = g_resources_enumerate_children ("/a_prefix",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&error);
- g_assert (children != NULL);
+ g_assert_nonnull (children);
g_assert_no_error (error);
g_assert_cmpint (g_strv_length (children), ==, 2);
g_strfreev (children);
@@ -548,7 +548,7 @@ test_resource_registered (void)
found = g_resources_get_info ("/test1.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&size, &flags, &error);
- g_assert (!found);
+ g_assert_false (found);
g_assert_error (error, G_RESOURCE_ERROR, G_RESOURCE_ERROR_NOT_FOUND);
g_clear_error (&error);
}
@@ -565,7 +565,7 @@ test_resource_automatic (void)
found = g_resources_get_info ("/auto_loaded/test1.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&size, &flags, &error);
- g_assert (found);
+ g_assert_true (found);
g_assert_no_error (error);
g_assert_cmpint (size, ==, 6);
g_assert_cmpint (flags, ==, 0);
@@ -573,7 +573,7 @@ test_resource_automatic (void)
data = g_resources_lookup_data ("/auto_loaded/test1.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&error);
- g_assert (data != NULL);
+ g_assert_nonnull (data);
g_assert_no_error (error);
size = g_bytes_get_size (data);
g_assert_cmpint (size, ==, 6);
@@ -593,7 +593,7 @@ test_resource_manual (void)
found = g_resources_get_info ("/manual_loaded/test1.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&size, &flags, &error);
- g_assert (found);
+ g_assert_true (found);
g_assert_no_error (error);
g_assert_cmpint (size, ==, 6);
g_assert_cmpuint (flags, ==, 0);
@@ -601,7 +601,7 @@ test_resource_manual (void)
data = g_resources_lookup_data ("/manual_loaded/test1.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&error);
- g_assert (data != NULL);
+ g_assert_nonnull (data);
g_assert_no_error (error);
size = g_bytes_get_size (data);
g_assert_cmpint (size, ==, 6);
@@ -623,7 +623,7 @@ test_resource_manual2 (void)
"/manual_loaded/test1.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&error);
- g_assert (data != NULL);
+ g_assert_nonnull (data);
g_assert_no_error (error);
size = g_bytes_get_size (data);
g_assert_cmpint (size, ==, 6);
@@ -730,7 +730,7 @@ test_resource_module (void)
found = g_resources_get_info ("/resourceplugin/test1.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&size, &flags, &error);
- g_assert (!found);
+ g_assert_false (found);
g_assert_error (error, G_RESOURCE_ERROR, G_RESOURCE_ERROR_NOT_FOUND);
g_clear_error (&error);
@@ -739,7 +739,7 @@ test_resource_module (void)
found = g_resources_get_info ("/resourceplugin/test1.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&size, &flags, &error);
- g_assert (found);
+ g_assert_true (found);
g_assert_no_error (error);
g_assert_cmpint (size, ==, 6);
g_assert_cmpuint (flags, ==, 0);
@@ -747,7 +747,7 @@ test_resource_module (void)
data = g_resources_lookup_data ("/resourceplugin/test1.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&error);
- g_assert (data != NULL);
+ g_assert_nonnull (data);
g_assert_no_error (error);
size = g_bytes_get_size (data);
g_assert_cmpint (size, ==, 6);
@@ -759,9 +759,11 @@ test_resource_module (void)
found = g_resources_get_info ("/resourceplugin/test1.txt",
G_RESOURCE_LOOKUP_FLAGS_NONE,
&size, &flags, &error);
- g_assert (!found);
+ g_assert_false (found);
g_assert_error (error, G_RESOURCE_ERROR, G_RESOURCE_ERROR_NOT_FOUND);
g_clear_error (&error);
+
+ g_clear_object (&module);
}
}
@@ -783,12 +785,12 @@ test_uri_query_info (void)
loaded_file = g_file_get_contents (g_test_get_filename (G_TEST_BUILT, "test.gresource", NULL),
&content, &content_size, NULL);
- g_assert (loaded_file);
+ g_assert_true (loaded_file);
data = g_bytes_new_take (content, content_size);
resource = g_resource_new_from_data (data, &error);
g_bytes_unref (data);
- g_assert (resource != NULL);
+ g_assert_nonnull (resource);
g_assert_no_error (error);
g_resources_register (resource);
@@ -798,9 +800,9 @@ test_uri_query_info (void)
g_assert_no_error (error);
content_type = g_file_info_get_content_type (info);
- g_assert (content_type);
+ g_assert_nonnull (content_type);
mime_type = g_content_type_get_mime_type (content_type);
- g_assert (mime_type);
+ g_assert_nonnull (mime_type);
g_assert_cmpstr (mime_type, ==, "text/plain");
g_free (mime_type);
@@ -847,19 +849,19 @@ test_uri_file (void)
loaded_file = g_file_get_contents (g_test_get_filename (G_TEST_BUILT, "test.gresource", NULL),
&content, &content_size, NULL);
- g_assert (loaded_file);
+ g_assert_true (loaded_file);
data = g_bytes_new_take (content, content_size);
resource = g_resource_new_from_data (data, &error);
g_bytes_unref (data);
- g_assert (resource != NULL);
+ g_assert_nonnull (resource);
g_assert_no_error (error);
g_resources_register (resource);
file = g_file_new_for_uri ("resource://" "/a_prefix/test2-alias.txt");
- g_assert (g_file_get_path (file) == NULL);
+ g_assert_null (g_file_get_path (file));
name = g_file_get_parse_name (file);
g_assert_cmpstr (name, ==, "resource:///a_prefix/test2-alias.txt");
@@ -869,15 +871,15 @@ test_uri_file (void)
g_assert_cmpstr (name, ==, "resource:///a_prefix/test2-alias.txt");
g_free (name);
- g_assert (!g_file_is_native (file));
- g_assert (!g_file_has_uri_scheme (file, "http"));
- g_assert (g_file_has_uri_scheme (file, "resource"));
+ g_assert_false (g_file_is_native (file));
+ g_assert_false (g_file_has_uri_scheme (file, "http"));
+ g_assert_true (g_file_has_uri_scheme (file, "resource"));
scheme = g_file_get_uri_scheme (file);
g_assert_cmpstr (scheme, ==, "resource");
g_free (scheme);
file2 = g_file_dup (file);
- g_assert (g_file_equal (file, file2));
+ g_assert_true (g_file_equal (file, file2));
g_object_unref (file2);
parent = g_file_get_parent (file);
@@ -886,31 +888,31 @@ test_uri_file (void)
file2 = g_file_get_child_for_display_name (parent, "test2-alias.txt", &error);
g_assert_no_error (error);
- g_assert (g_file_equal (file, file2));
+ g_assert_true (g_file_equal (file, file2));
g_object_unref (file2);
info = g_file_enumerator_next_file (enumerator, NULL, &error);
g_assert_no_error (error);
- g_assert (info != NULL);
+ g_assert_nonnull (info);
g_object_unref (info);
info = g_file_enumerator_next_file (enumerator, NULL, &error);
g_assert_no_error (error);
- g_assert (info != NULL);
+ g_assert_nonnull (info);
g_object_unref (info);
info = g_file_enumerator_next_file (enumerator, NULL, &error);
g_assert_no_error (error);
- g_assert (info == NULL);
+ g_assert_null (info);
g_file_enumerator_close (enumerator, NULL, &error);
g_assert_no_error (error);
g_object_unref (enumerator);
file2 = g_file_new_for_uri ("resource://" "a_prefix/../a_prefix//test2-alias.txt");
- g_assert (g_file_equal (file, file2));
+ g_assert_true (g_file_equal (file, file2));
- g_assert (g_file_has_prefix (file, parent));
+ g_assert_true (g_file_has_prefix (file, parent));
name = g_file_get_relative_path (parent, file);
g_assert_cmpstr (name, ==, "test2-alias.txt");
@@ -929,9 +931,9 @@ test_uri_file (void)
stream = G_INPUT_STREAM (g_file_read (file, NULL, &error));
g_assert_no_error (error);
g_assert_cmpint (g_seekable_tell (G_SEEKABLE (stream)), ==, 0);
- g_assert (g_seekable_can_seek (G_SEEKABLE (G_SEEKABLE (stream))));
+ g_assert_true (g_seekable_can_seek (G_SEEKABLE (G_SEEKABLE (stream))));
ret = g_seekable_seek (G_SEEKABLE (stream), 1, G_SEEK_SET, NULL, &error);
- g_assert (ret);
+ g_assert_true (ret);
g_assert_no_error (error);
skipped = g_input_stream_skip (stream, 1, NULL, &error);
g_assert_cmpint (skipped, ==, 1);
@@ -939,7 +941,7 @@ test_uri_file (void)
memset (buf, 0, 1024);
ret = g_input_stream_read_all (stream, &buf, 1024, NULL, NULL, &error);
- g_assert (ret);
+ g_assert_true (ret);
g_assert_no_error (error);
g_assert_cmpstr (buf, ==, "st2\n");
info = g_file_input_stream_query_info (G_FILE_INPUT_STREAM (stream),
@@ -947,12 +949,12 @@ test_uri_file (void)
NULL,
&error);
g_assert_no_error (error);
- g_assert (info != NULL);
+ g_assert_nonnull (info);
g_assert_cmpint (g_file_info_get_size (info), ==, 6);
g_object_unref (info);
ret = g_input_stream_close (stream, NULL, &error);
- g_assert (ret);
+ g_assert_true (ret);
g_assert_no_error (error);
g_object_unref (stream);
diff --git a/gio/tests/socket.c b/gio/tests/socket.c
index ee38fabcd..4dae36b17 100644
--- a/gio/tests/socket.c
+++ b/gio/tests/socket.c
@@ -17,15 +17,21 @@
*/
#include <gio/gio.h>
+#include <glib/gstdio.h>
#include <gio/gcredentialsprivate.h>
+#include <gio/gunixconnection.h>
+
#ifdef G_OS_UNIX
#include <errno.h>
#include <sys/wait.h>
#include <string.h>
#include <stdlib.h>
#include <gio/gnetworking.h>
-#include <gio/gunixconnection.h>
+#endif
+
+#ifdef G_OS_WIN32
+#include "giowin32-afunix.h"
#endif
#include "gnetworkingprivate.h"
@@ -1327,7 +1333,23 @@ test_sockaddr (void)
g_object_unref (saddr);
}
-#ifdef G_OS_UNIX
+static void
+bind_win32_unixfd (int fd)
+{
+#ifdef G_OS_WIN32
+ gint len, ret;
+ struct sockaddr_un addr;
+
+ memset (&addr, 0, sizeof addr);
+ addr.sun_family = AF_UNIX;
+ len = g_snprintf (addr.sun_path, sizeof addr.sun_path, "%s" G_DIR_SEPARATOR_S "%d.sock", g_get_tmp_dir (), fd);
+ g_assert_cmpint (len, <=, sizeof addr.sun_path);
+ ret = bind (fd, (struct sockaddr *)&addr, sizeof addr);
+ g_assert_cmpint (ret, ==, 0);
+ g_remove (addr.sun_path);
+#endif
+}
+
static void
test_unix_from_fd (void)
{
@@ -1336,8 +1358,17 @@ test_unix_from_fd (void)
GSocket *s;
fd = socket (AF_UNIX, SOCK_STREAM, 0);
+#ifdef G_OS_WIN32
+ if (fd == -1)
+ {
+ g_test_skip ("AF_UNIX not supported on this Windows system.");
+ return;
+ }
+#endif
g_assert_cmpint (fd, !=, -1);
+ bind_win32_unixfd (fd);
+
error = NULL;
s = g_socket_new_from_fd (fd, &error);
g_assert_no_error (error);
@@ -1356,8 +1387,17 @@ test_unix_connection (void)
GSocketConnection *c;
fd = socket (AF_UNIX, SOCK_STREAM, 0);
+#ifdef G_OS_WIN32
+ if (fd == -1)
+ {
+ g_test_skip ("AF_UNIX not supported on this Windows system.");
+ return;
+ }
+#endif
g_assert_cmpint (fd, !=, -1);
+ bind_win32_unixfd (fd);
+
error = NULL;
s = g_socket_new_from_fd (fd, &error);
g_assert_no_error (error);
@@ -1367,6 +1407,7 @@ test_unix_connection (void)
g_object_unref (s);
}
+#ifdef G_OS_UNIX
static GSocketConnection *
create_connection_for_fd (int fd)
{
@@ -1466,6 +1507,7 @@ test_unix_connection_ancillary_data (void)
* g_unix_connection_receive_credentials().
*/
}
+#endif
static gboolean
postmortem_source_cb (GSocket *socket,
@@ -1490,6 +1532,14 @@ test_source_postmortem (void)
gboolean callback_visited = FALSE;
socket = g_socket_new (G_SOCKET_FAMILY_UNIX, G_SOCKET_TYPE_STREAM, G_SOCKET_PROTOCOL_DEFAULT, &error);
+#ifdef G_OS_WIN32
+ if (error)
+ {
+ g_test_skip_printf ("AF_UNIX not supported on this Windows system: %s", error->message);
+ g_clear_error (&error);
+ return;
+ }
+#endif
g_assert_no_error (error);
context = g_main_context_new ();
@@ -1513,8 +1563,6 @@ test_source_postmortem (void)
g_main_context_unref (context);
}
-#endif /* G_OS_UNIX */
-
static void
test_reuse_tcp (void)
{
@@ -2076,22 +2124,145 @@ client_setup_thread (gpointer user_data)
return NULL;
}
-#ifdef G_OS_UNIX
+#ifdef G_OS_WIN32
+/*
+ * _g_win32_socketpair:
+ *
+ * Create a pair of connected sockets, similar to POSIX/BSD socketpair().
+ *
+ * Windows does not (yet) provide a socketpair() function. However, since the
+ * introduction of AF_UNIX sockets, it is possible to implement a fairly close
+ * function.
+ */
+static gint
+_g_win32_socketpair (gint domain,
+ gint type,
+ gint protocol,
+ gint sv[2])
+{
+ struct sockaddr_un addr = { 0, };
+ socklen_t socklen;
+ SOCKET listener = INVALID_SOCKET;
+ SOCKET client = INVALID_SOCKET;
+ SOCKET server = INVALID_SOCKET;
+ gchar *path = NULL;
+ int tmpfd, rv = -1;
+ u_long arg, br;
+
+ g_return_val_if_fail (sv != NULL, -1);
+
+ addr.sun_family = AF_UNIX;
+ socklen = sizeof (addr);
+
+ tmpfd = g_file_open_tmp (NULL, &path, NULL);
+ if (tmpfd == -1)
+ {
+ WSASetLastError (WSAEACCES);
+ goto out;
+ }
+
+ g_close (tmpfd, NULL);
+
+ if (strlen (path) >= sizeof (addr.sun_path))
+ {
+ WSASetLastError (WSAEACCES);
+ goto out;
+ }
+
+ strncpy (addr.sun_path, path, sizeof (addr.sun_path) - 1);
+
+ listener = socket (domain, type, protocol);
+ if (listener == INVALID_SOCKET)
+ goto out;
+
+ if (DeleteFile (path) == 0)
+ {
+ if (GetLastError () != ERROR_FILE_NOT_FOUND)
+ goto out;
+ }
+
+ if (bind (listener, (struct sockaddr *) &addr, socklen) == SOCKET_ERROR)
+ goto out;
+
+ if (listen (listener, 1) == SOCKET_ERROR)
+ goto out;
+
+ client = socket (domain, type, protocol);
+ if (client == INVALID_SOCKET)
+ goto out;
+
+ arg = 1;
+ if (ioctlsocket (client, FIONBIO, &arg) == SOCKET_ERROR)
+ goto out;
+
+ if (connect (client, (struct sockaddr *) &addr, socklen) == SOCKET_ERROR &&
+ WSAGetLastError () != WSAEWOULDBLOCK)
+ goto out;
+
+ server = accept (listener, NULL, NULL);
+ if (server == INVALID_SOCKET)
+ goto out;
+
+ arg = 0;
+ if (ioctlsocket (client, FIONBIO, &arg) == SOCKET_ERROR)
+ goto out;
+
+ if (WSAIoctl (server, SIO_AF_UNIX_GETPEERPID,
+ NULL, 0U,
+ &arg, sizeof (arg), &br,
+ NULL, NULL) == SOCKET_ERROR || arg != GetCurrentProcessId ())
+ {
+ WSASetLastError (WSAEACCES);
+ goto out;
+ }
+
+ sv[0] = server;
+ server = INVALID_SOCKET;
+ sv[1] = client;
+ client = INVALID_SOCKET;
+ rv = 0;
+
+ out:
+ if (listener != INVALID_SOCKET)
+ closesocket (listener);
+ if (client != INVALID_SOCKET)
+ closesocket (client);
+ if (server != INVALID_SOCKET)
+ closesocket (server);
+
+ DeleteFile (path);
+ g_free (path);
+ return rv;
+}
+#endif /* G_OS_WIN32 */
+
static void
test_credentials_unix_socketpair (void)
{
gint fds[2];
gint status;
- GSocket *sock;
+ GSocket *sock[2];
GError *error = NULL;
GCredentials *creds;
+#ifdef G_OS_WIN32
+ status = _g_win32_socketpair (PF_UNIX, SOCK_STREAM, 0, fds);
+ if (status != 0)
+ {
+ g_test_skip ("AF_UNIX not supported on this Windows system.");
+ return;
+ }
+#else
status = socketpair (PF_UNIX, SOCK_STREAM, 0, fds);
+#endif
g_assert_cmpint (status, ==, 0);
- sock = g_socket_new_from_fd (fds[0], &error);
+ sock[0] = g_socket_new_from_fd (fds[0], &error);
+ g_assert_no_error (error);
+ sock[1] = g_socket_new_from_fd (fds[1], &error);
+ g_assert_no_error (error);
- creds = g_socket_get_credentials (sock, &error);
+ creds = g_socket_get_credentials (sock[0], &error);
if (creds != NULL)
{
gchar *str = g_credentials_to_string (creds);
@@ -2106,11 +2277,10 @@ test_credentials_unix_socketpair (void)
g_clear_error (&error);
}
- g_object_unref (sock);
- close (fds[1]);
+ g_object_unref (sock[0]);
+ g_object_unref (sock[1]);
}
#endif
-#endif
int
main (int argc,
@@ -2151,12 +2321,12 @@ main (int argc,
g_test_add_func ("/socket/timed_wait", test_timed_wait);
g_test_add_func ("/socket/fd_reuse", test_fd_reuse);
g_test_add_func ("/socket/address", test_sockaddr);
-#ifdef G_OS_UNIX
g_test_add_func ("/socket/unix-from-fd", test_unix_from_fd);
g_test_add_func ("/socket/unix-connection", test_unix_connection);
+#ifdef G_OS_UNIX
g_test_add_func ("/socket/unix-connection-ancillary-data", test_unix_connection_ancillary_data);
- g_test_add_func ("/socket/source-postmortem", test_source_postmortem);
#endif
+ g_test_add_func ("/socket/source-postmortem", test_source_postmortem);
g_test_add_func ("/socket/reuse/tcp", test_reuse_tcp);
g_test_add_func ("/socket/reuse/udp", test_reuse_udp);
g_test_add_data_func ("/socket/get_available/datagram", GUINT_TO_POINTER (G_SOCKET_TYPE_DATAGRAM),
@@ -2173,10 +2343,8 @@ main (int argc,
#if G_CREDENTIALS_SUPPORTED
g_test_add_func ("/socket/credentials/tcp_client", test_credentials_tcp_client);
g_test_add_func ("/socket/credentials/tcp_server", test_credentials_tcp_server);
-#ifdef G_OS_UNIX
g_test_add_func ("/socket/credentials/unix_socketpair", test_credentials_unix_socketpair);
#endif
-#endif
return g_test_run();
}
diff --git a/gio/tests/testfilemonitor.c b/gio/tests/testfilemonitor.c
index a52ade715..082f0db26 100644
--- a/gio/tests/testfilemonitor.c
+++ b/gio/tests/testfilemonitor.c
@@ -4,6 +4,17 @@
#include <stdlib.h>
#include <gio/gio.h>
+static gboolean
+skip_win32 (void)
+{
+#ifdef G_OS_WIN32
+ g_test_skip ("FIXME, test is broken on win32");
+ return TRUE;
+#else
+ return FALSE;
+#endif
+}
+
/* These tests were written for the inotify implementation.
* Other implementations may require slight adjustments in
* the tests, e.g. the length of timeouts
@@ -361,6 +372,9 @@ test_atomic_replace (Fixture *fixture,
GError *error = NULL;
TestData data;
+ if (skip_win32 ())
+ return;
+
data.step = 0;
data.events = NULL;
@@ -466,6 +480,9 @@ test_file_changes (Fixture *fixture,
GError *error = NULL;
TestData data;
+ if (skip_win32 ())
+ return;
+
data.step = 0;
data.events = NULL;
@@ -583,6 +600,9 @@ test_dir_monitor (Fixture *fixture,
GError *error = NULL;
TestData data;
+ if (skip_win32 ())
+ return;
+
data.step = 0;
data.events = NULL;
@@ -680,6 +700,9 @@ test_dir_non_existent (Fixture *fixture,
TestData data;
GError *error = NULL;
+ if (skip_win32 ())
+ return;
+
data.step = 0;
data.events = NULL;
@@ -789,6 +812,9 @@ test_cross_dir_moves (Fixture *fixture,
GError *error = NULL;
TestData data[2];
+ if (skip_win32 ())
+ return;
+
data[0].step = 0;
data[0].events = NULL;
@@ -960,6 +986,9 @@ test_file_hard_links (Fixture *fixture,
g_test_bug ("https://bugzilla.gnome.org/show_bug.cgi?id=755721");
+ if (skip_win32 ())
+ return;
+
#ifdef HAVE_LINK
g_test_message ("Running with hard link tests");
#else /* if !HAVE_LINK */
@@ -1007,6 +1036,57 @@ test_file_hard_links (Fixture *fixture,
g_object_unref (data.output_stream);
}
+static void
+test_finalize_in_callback (Fixture *fixture,
+ gconstpointer user_data)
+{
+ GFile *file = NULL;
+ guint i;
+
+ g_test_summary ("Test that finalization of a GFileMonitor in one of its "
+ "callbacks doesn’t cause a deadlock.");
+ g_test_bug ("https://gitlab.gnome.org/GNOME/glib/-/issues/1941");
+
+ file = g_file_get_child (fixture->tmp_dir, "race-file");
+
+ for (i = 0; i < 50; i++)
+ {
+ GFileMonitor *monitor = NULL;
+ GError *local_error = NULL;
+
+ /* Monitor the file. */
+ monitor = g_file_monitor_file (file, G_FILE_MONITOR_NONE, NULL, &local_error);
+ g_assert_no_error (local_error);
+ g_assert_nonnull (monitor);
+
+ /* Create the file. */
+ g_file_replace_contents (file, "hello", 5, NULL, FALSE,
+ G_FILE_CREATE_NONE, NULL, NULL, &local_error);
+ g_assert_no_error (local_error);
+
+ /* Immediately drop the last ref to the monitor in the hope that this
+ * happens in the middle of the critical section in
+ * g_file_monitor_source_handle_event(), so that any cleanup at the end
+ * of that function is done with a now-finalised file monitor. */
+ g_object_unref (monitor);
+
+ /* Re-create the monitor and do the same again for deleting the file, to
+ * give a second chance at hitting the race condition. */
+ monitor = g_file_monitor_file (file, G_FILE_MONITOR_NONE, NULL, &local_error);
+ g_assert_no_error (local_error);
+ g_assert_nonnull (monitor);
+
+ /* Delete the file. */
+ g_file_delete (file, NULL, &local_error);
+ g_assert_no_error (local_error);
+
+ /* Drop the ref again. */
+ g_object_unref (monitor);
+ }
+
+ g_object_unref (file);
+}
+
int
main (int argc, char *argv[])
{
@@ -1018,6 +1098,7 @@ main (int argc, char *argv[])
g_test_add ("/monitor/dir-not-existent", Fixture, NULL, setup, test_dir_non_existent, teardown);
g_test_add ("/monitor/cross-dir-moves", Fixture, NULL, setup, test_cross_dir_moves, teardown);
g_test_add ("/monitor/file/hard-links", Fixture, NULL, setup, test_file_hard_links, teardown);
+ g_test_add ("/monitor/finalize-in-callback", Fixture, NULL, setup, test_finalize_in_callback, teardown);
return g_test_run ();
}
diff --git a/gio/tests/tls-certificate.c b/gio/tests/tls-certificate.c
index 2995b1028..bae582357 100644
--- a/gio/tests/tls-certificate.c
+++ b/gio/tests/tls-certificate.c
@@ -559,7 +559,7 @@ dns_names (void)
g_assert_cmpuint (actual->len, ==, 1);
g_assert_true (g_ptr_array_find_with_equal_func (actual, expected, (GEqualFunc)g_bytes_equal, NULL));
- g_ptr_array_free (actual, FALSE);
+ g_ptr_array_unref (actual);
g_bytes_unref (expected);
g_object_unref (cert);
}
@@ -586,6 +586,45 @@ ip_addresses (void)
g_object_unref (cert);
}
+static void
+from_pkcs12 (void)
+{
+ GTlsCertificate *cert;
+ GError *error = NULL;
+ const guint8 data[1] = { 0 };
+
+ /* This simply fails because our test backend doesn't support this
+ * property. This reflects using a backend that doesn't support it.
+ * The real test lives in glib-networking. */
+ cert = g_tls_certificate_new_from_pkcs12 (data, 1, NULL, &error);
+
+ g_assert_null (cert);
+ g_assert_error (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED);
+ g_error_free (error);
+}
+
+static void
+from_pkcs12_file (void)
+{
+ GTlsCertificate *cert;
+ GError *error = NULL;
+ char *path = g_test_build_filename (G_TEST_DIST, "cert-tests", "key-cert-password-123.p12", NULL);
+
+ /* Fails on our test backend, see from_pkcs12() above. */
+ cert = g_tls_certificate_new_from_file_with_password (path, "123", &error);
+ g_assert_null (cert);
+ g_assert_error (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED);
+ g_clear_error (&error);
+
+ /* Just for coverage. */
+ cert = g_tls_certificate_new_from_file (path, &error);
+ g_assert_null (cert);
+ g_assert_error (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED);
+ g_error_free (error);
+
+ g_free (path);
+}
+
int
main (int argc,
char *argv[])
@@ -656,6 +695,10 @@ main (int argc,
from_pkcs11_uri);
g_test_add_func ("/tls-certificate/pkcs11-uri-unsupported",
from_unsupported_pkcs11_uri);
+ g_test_add_func ("/tls-certificate/from_pkcs12",
+ from_pkcs12);
+ g_test_add_func ("/tls-certificate/from_pkcs12_file",
+ from_pkcs12_file);
g_test_add_func ("/tls-certificate/not-valid-before",
not_valid_before);
g_test_add_func ("/tls-certificate/not-valid-after",
diff --git a/gio/win32/gwin32fsmonitorutils.c b/gio/win32/gwin32fsmonitorutils.c
index b47124634..f2ab5472a 100644
--- a/gio/win32/gwin32fsmonitorutils.c
+++ b/gio/win32/gwin32fsmonitorutils.c
@@ -92,7 +92,7 @@ g_win32_fs_monitor_handle_event (GWin32FSMonitorPrivate *monitor,
monitor->pfni_prev->Action == FILE_ACTION_RENAMED_OLD_NAME)
{
/* don't bother sending events, was already sent (rename) */
- fme = -1;
+ fme = (GFileMonitorEvent) -1;
}
else
fme = G_FILE_MONITOR_EVENT_MOVED_IN;
@@ -104,7 +104,7 @@ g_win32_fs_monitor_handle_event (GWin32FSMonitorPrivate *monitor,
break;
}
- if (fme != -1)
+ if (fme != (GFileMonitorEvent) -1)
return g_file_monitor_source_handle_event (monitor->fms,
fme,
filename,
diff --git a/gio/win32/gwinhttpfile.c b/gio/win32/gwinhttpfile.c
index 5b8dcfe0b..e73c87658 100644
--- a/gio/win32/gwinhttpfile.c
+++ b/gio/win32/gwinhttpfile.c
@@ -546,7 +546,7 @@ g_winhttp_file_query_info (GFile *file,
NULL))
{
gint64 cl;
- int n;
+ size_t n;
const char *gint64_format = "%"G_GINT64_FORMAT"%n";
wchar_t *gint64_format_w = g_utf8_to_utf16 (gint64_format, -1, NULL, NULL, NULL);
diff --git a/gio/win32/gwinhttpvfs.c b/gio/win32/gwinhttpvfs.c
index 03feaf983..4d5f51498 100644
--- a/gio/win32/gwinhttpvfs.c
+++ b/gio/win32/gwinhttpvfs.c
@@ -165,7 +165,7 @@ g_winhttp_vfs_get_file_for_uri (GVfs *vfs,
const char *uri)
{
GWinHttpVfs *winhttp_vfs = G_WINHTTP_VFS (vfs);
- int i;
+ gsize i;
GFile *ret = NULL;
/* If it matches one of "our" schemes, handle it */
@@ -192,7 +192,7 @@ g_winhttp_vfs_get_supported_uri_schemes (GVfs *vfs)
{
GWinHttpVfs *winhttp_vfs = G_WINHTTP_VFS (vfs);
const gchar * const *wrapped_vfs_uri_schemes = g_vfs_get_supported_uri_schemes (winhttp_vfs->wrapped_vfs);
- int i, n;
+ gsize i, n;
const gchar **retval;
n = 0;
diff --git a/gio/xdgmime/meson.build b/gio/xdgmime/meson.build
index d107f71bb..4c8a552a2 100644
--- a/gio/xdgmime/meson.build
+++ b/gio/xdgmime/meson.build
@@ -13,4 +13,5 @@ xdgmime_lib = static_library('xdgmime',
sources : xdgmime_sources,
include_directories : [configinc],
pic : true,
- c_args : [ '-DXDG_PREFIX=_gio_xdg' ] + glib_hidden_visibility_args)
+ c_args : [ '-DHAVE_CONFIG_H',
+ '-DXDG_PREFIX=_gio_xdg' ] + glib_hidden_visibility_args)
diff --git a/gio/xdgmime/xdgmime.c b/gio/xdgmime/xdgmime.c
index 9bb93f791..9ab676048 100644
--- a/gio/xdgmime/xdgmime.c
+++ b/gio/xdgmime/xdgmime.c
@@ -20,10 +20,14 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
*/
-#include "config.h"
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
#include "xdgmime.h"
#include "xdgmimeint.h"
@@ -41,6 +45,10 @@
#include <unistd.h>
#include <assert.h>
+#ifndef S_ISREG
+#define S_ISREG(m) (((m) & _S_IFMT) == _S_IFREG)
+#endif
+
typedef struct XdgDirTimeList XdgDirTimeList;
typedef struct XdgCallbackList XdgCallbackList;
@@ -134,7 +142,8 @@ xdg_dir_time_list_free (XdgDirTimeList *list)
}
static int
-xdg_mime_init_from_directory (const char *directory)
+xdg_mime_init_from_directory (const char *directory,
+ void *user_data)
{
char *file_name;
struct stat st;
@@ -400,10 +409,11 @@ xdg_check_file (const char *file_path,
static int
xdg_check_dir (const char *directory,
- int *invalid_dir_list)
+ void *user_data)
{
int invalid, exists;
char *file_name;
+ int* invalid_dir_list = user_data;
assert (directory != NULL);
@@ -458,8 +468,7 @@ xdg_check_dirs (void)
for (list = dir_time_list; list; list = list->next)
list->checked = XDG_CHECKED_UNCHECKED;
- xdg_run_command_on_dirs ((XdgDirectoryFunc) xdg_check_dir,
- &invalid_dir_list);
+ xdg_run_command_on_dirs (xdg_check_dir, &invalid_dir_list);
if (invalid_dir_list)
return TRUE;
@@ -515,8 +524,7 @@ xdg_mime_init (void)
icon_list = _xdg_mime_icon_list_new ();
generic_icon_list = _xdg_mime_icon_list_new ();
- xdg_run_command_on_dirs ((XdgDirectoryFunc) xdg_mime_init_from_directory,
- NULL);
+ xdg_run_command_on_dirs (xdg_mime_init_from_directory, NULL);
need_reread = FALSE;
}
@@ -549,8 +557,6 @@ xdg_mime_get_mime_type_for_data (const void *data,
return _xdg_binary_or_text_fallback(data, len);
}
-#ifdef NOT_USED_IN_GIO
-
const char *
xdg_mime_get_mime_type_for_file (const char *file_name,
struct stat *statbuf)
@@ -621,13 +627,13 @@ xdg_mime_get_mime_type_for_file (const char *file_name,
mime_type = _xdg_mime_magic_lookup_data (global_magic, data, bytes_read, NULL,
mime_types, n);
+ if (!mime_type)
+ mime_type = _xdg_binary_or_text_fallback (data, bytes_read);
+
free (data);
fclose (file);
- if (mime_type)
- return mime_type;
-
- return _xdg_binary_or_text_fallback(data, bytes_read);
+ return mime_type;
}
const char *
@@ -646,8 +652,6 @@ xdg_mime_get_mime_type_from_file_name (const char *file_name)
return XDG_MIME_TYPE_UNKNOWN;
}
-#endif
-
int
xdg_mime_get_mime_types_from_file_name (const char *file_name,
const char *mime_types[],
@@ -661,8 +665,6 @@ xdg_mime_get_mime_types_from_file_name (const char *file_name,
return _xdg_glob_hash_lookup_file_name (global_hash, file_name, mime_types, n_mime_types);
}
-#ifdef NOT_USED_IN_GIO
-
int
xdg_mime_is_valid_mime_type (const char *mime_type)
{
@@ -671,8 +673,6 @@ xdg_mime_is_valid_mime_type (const char *mime_type)
return _xdg_utf8_validate (mime_type);
}
-#endif
-
void
xdg_mime_shutdown (void)
{
@@ -888,19 +888,14 @@ xdg_mime_mime_type_subclass (const char *mime,
char **
xdg_mime_list_mime_parents (const char *mime)
{
- const char *umime;
const char **parents;
char **result;
int i, n;
- xdg_mime_init ();
-
if (_caches)
return _xdg_mime_cache_list_mime_parents (mime);
- umime = _xdg_mime_unalias_mime_type (mime);
-
- parents = _xdg_mime_parent_list_lookup (parent_list, umime);
+ parents = xdg_mime_get_mime_parents (mime);
if (!parents)
return NULL;
@@ -914,8 +909,6 @@ xdg_mime_list_mime_parents (const char *mime)
return result;
}
-#ifdef NOT_USED_IN_GIO
-
const char **
xdg_mime_get_mime_parents (const char *mime)
{
@@ -945,7 +938,6 @@ xdg_mime_dump (void)
_xdg_mime_cache_glob_dump ();
}
-#endif
/* Registers a function to be called every time the mime database reloads its files
*/
@@ -973,8 +965,6 @@ xdg_mime_register_reload_callback (XdgMimeCallback callback,
return callback_id - 1;
}
-#ifdef NOT_USED_IN_GIO
-
void
xdg_mime_remove_callback (int callback_id)
{
@@ -1000,8 +990,6 @@ xdg_mime_remove_callback (int callback_id)
}
}
-#endif
-
const char *
xdg_mime_get_icon (const char *mime)
{
diff --git a/gio/xdgmime/xdgmime.h b/gio/xdgmime/xdgmime.h
index b175de107..c5909967f 100644
--- a/gio/xdgmime/xdgmime.h
+++ b/gio/xdgmime/xdgmime.h
@@ -20,7 +20,9 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
*/
@@ -71,9 +73,9 @@ typedef void (*XdgMimeDestroy) (void *user_data);
#define xdg_mime_get_icon XDG_ENTRY(get_icon)
#define xdg_mime_get_generic_icon XDG_ENTRY(get_generic_icon)
-#define _xdg_mime_mime_type_subclass XDG_RESERVED_ENTRY(mime_type_subclass)
#define _xdg_mime_mime_type_equal XDG_RESERVED_ENTRY(mime_type_equal)
-#define _xdg_mime_unalias_mime_type XDG_RESERVED_ENTRY(unalias_mime_type)
+#define _xdg_mime_mime_type_subclass XDG_RESERVED_ENTRY(mime_type_subclass)
+#define _xdg_mime_unalias_mime_type XDG_RESERVED_ENTRY(unalias_mime_type)
#endif
extern const char xdg_mime_type_unknown[];
@@ -86,17 +88,13 @@ extern const char xdg_mime_type_textplain[];
const char *xdg_mime_get_mime_type_for_data (const void *data,
size_t len,
int *result_prio);
-#ifdef NOT_USED_IN_GIO
const char *xdg_mime_get_mime_type_for_file (const char *file_name,
struct stat *statbuf);
const char *xdg_mime_get_mime_type_from_file_name (const char *file_name);
-#endif
int xdg_mime_get_mime_types_from_file_name(const char *file_name,
const char *mime_types[],
int n_mime_types);
-#ifdef NOT_USED_IN_GIO
int xdg_mime_is_valid_mime_type (const char *mime_type);
-#endif
int xdg_mime_mime_type_equal (const char *mime_a,
const char *mime_b);
int xdg_mime_media_type_equal (const char *mime_a,
@@ -108,24 +106,18 @@ int xdg_mime_mime_type_subclass (const char *mime_a,
* instead, but notice that that function expects you to free
* the array it returns.
*/
-#ifdef NOT_USED_IN_GIO
const char **xdg_mime_get_mime_parents (const char *mime);
-#endif
char ** xdg_mime_list_mime_parents (const char *mime);
const char *xdg_mime_unalias_mime_type (const char *mime);
const char *xdg_mime_get_icon (const char *mime);
const char *xdg_mime_get_generic_icon (const char *mime);
int xdg_mime_get_max_buffer_extents (void);
void xdg_mime_shutdown (void);
-#ifdef NOT_USED_IN_GIO
void xdg_mime_dump (void);
-#endif
int xdg_mime_register_reload_callback (XdgMimeCallback callback,
void *data,
XdgMimeDestroy destroy);
-#ifdef NOT_USED_IN_GIO
void xdg_mime_remove_callback (int callback_id);
-#endif
void xdg_mime_set_dirs (const char * const *dirs);
diff --git a/gio/xdgmime/xdgmimealias.c b/gio/xdgmime/xdgmimealias.c
index bf95bc0d3..0fc51f94c 100644
--- a/gio/xdgmime/xdgmimealias.c
+++ b/gio/xdgmime/xdgmimealias.c
@@ -20,10 +20,14 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
*/
-#include "config.h"
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
#include "xdgmimealias.h"
#include "xdgmimeint.h"
@@ -161,8 +165,6 @@ _xdg_mime_alias_read_from_file (XdgAliasList *list,
}
-#ifdef NOT_USED_IN_GIO
-
void
_xdg_mime_alias_list_dump (XdgAliasList *list)
{
@@ -179,4 +181,4 @@ _xdg_mime_alias_list_dump (XdgAliasList *list)
}
}
-#endif
+
diff --git a/gio/xdgmime/xdgmimealias.h b/gio/xdgmime/xdgmimealias.h
index 46cbc99c3..6e0cfff3b 100644
--- a/gio/xdgmime/xdgmimealias.h
+++ b/gio/xdgmime/xdgmimealias.h
@@ -20,7 +20,9 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
*/
#ifndef __XDG_MIME_ALIAS_H__
@@ -44,7 +46,6 @@ XdgAliasList *_xdg_mime_alias_list_new (void);
void _xdg_mime_alias_list_free (XdgAliasList *list);
const char *_xdg_mime_alias_list_lookup (XdgAliasList *list,
const char *alias);
-#ifdef NOT_USED_IN_GIO
void _xdg_mime_alias_list_dump (XdgAliasList *list);
-#endif
+
#endif /* __XDG_MIME_ALIAS_H__ */
diff --git a/gio/xdgmime/xdgmimecache.c b/gio/xdgmime/xdgmimecache.c
index 769b57836..234e4b467 100644
--- a/gio/xdgmime/xdgmimecache.c
+++ b/gio/xdgmime/xdgmimecache.c
@@ -19,10 +19,14 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
*/
-#include "config.h"
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
#include <stdio.h>
#include <stdlib.h>
@@ -39,7 +43,7 @@
#ifdef HAVE_MMAP
#include <sys/mman.h>
#else
-#warning Building xdgmime without MMAP support. Binary "mime.info" cache files will not be used.
+#warning Building xdgmime without MMAP support. Binary "mime.cache" files will not be used.
#endif
#include <sys/stat.h>
@@ -68,6 +72,10 @@
#define MAP_FAILED ((void *) -1)
#endif
+#ifndef S_ISREG
+#define S_ISREG(m) (((m) & _S_IFMT) == _S_IFREG)
+#endif
+
#define MAJOR_VERSION 1
#define MINOR_VERSION_MIN 1
#define MINOR_VERSION_MAX 2
@@ -117,9 +125,9 @@ _xdg_mime_cache_new_from_file (const char *file_name)
int minor;
/* Open the file and map it into memory */
- do
+ do {
fd = open (file_name, O_RDONLY|_O_BINARY, 0);
- while (fd == -1 && errno == EINTR);
+ } while (fd == -1 && errno == EINTR);
if (fd < 0)
return NULL;
@@ -176,7 +184,7 @@ cache_magic_matchlet_compare_to_data (XdgMimeCache *cache,
xdg_uint32_t data_offset = GET_UINT32 (cache->buffer, offset + 16);
xdg_uint32_t mask_offset = GET_UINT32 (cache->buffer, offset + 20);
- int i, j;
+ xdg_uint32_t i, j;
for (i = range_start; i < range_start + range_length; i++)
{
@@ -199,16 +207,9 @@ cache_magic_matchlet_compare_to_data (XdgMimeCache *cache,
}
else
{
- for (j = 0; j < data_length; j++)
- {
- if (((unsigned char *)cache->buffer)[data_offset + j] != ((unsigned char *) data)[j + i])
- {
- valid_matchlet = FALSE;
- break;
- }
- }
+ valid_matchlet = memcmp(cache->buffer + data_offset, (unsigned char *)data + i, data_length) == 0;
}
-
+
if (valid_matchlet)
return TRUE;
}
@@ -225,7 +226,7 @@ cache_magic_matchlet_compare (XdgMimeCache *cache,
xdg_uint32_t n_children = GET_UINT32 (cache->buffer, offset + 24);
xdg_uint32_t child_offset = GET_UINT32 (cache->buffer, offset + 28);
- int i;
+ xdg_uint32_t i;
if (cache_magic_matchlet_compare_to_data (cache, offset, data, len))
{
@@ -255,7 +256,7 @@ cache_magic_compare_to_data (XdgMimeCache *cache,
xdg_uint32_t n_matchlets = GET_UINT32 (cache->buffer, offset + 8);
xdg_uint32_t matchlet_offset = GET_UINT32 (cache->buffer, offset + 12);
- int i;
+ xdg_uint32_t i;
for (i = 0; i < n_matchlets; i++)
{
@@ -275,15 +276,13 @@ static const char *
cache_magic_lookup_data (XdgMimeCache *cache,
const void *data,
size_t len,
- int *prio,
- const char *mime_types[],
- int n_mime_types)
+ int *prio)
{
xdg_uint32_t list_offset;
xdg_uint32_t n_entries;
xdg_uint32_t offset;
- int j, n;
+ xdg_uint32_t j;
*prio = 0;
@@ -299,21 +298,6 @@ cache_magic_lookup_data (XdgMimeCache *cache,
data, len, prio);
if (match)
return match;
- else
- {
- xdg_uint32_t mimetype_offset;
- const char *non_match;
-
- mimetype_offset = GET_UINT32 (cache->buffer, offset + 16 * j + 4);
- non_match = cache->buffer + mimetype_offset;
-
- for (n = 0; n < n_mime_types; n++)
- {
- if (mime_types[n] &&
- _xdg_mime_mime_type_equal (mime_types[n], non_match))
- mime_types[n] = NULL;
- }
- }
}
return NULL;
@@ -428,12 +412,14 @@ cache_glob_lookup_literal (const char *file_name,
static int
cache_glob_lookup_fnmatch (const char *file_name,
MimeWeight mime_types[],
- int n_mime_types)
+ int n_mime_types,
+ int case_sensitive_check)
{
const char *mime_type;
const char *ptr;
- int i, j, n;
+ int i, n;
+ xdg_uint32_t j;
n = 0;
for (i = 0; _caches[i]; i++)
@@ -454,16 +440,19 @@ cache_glob_lookup_fnmatch (const char *file_name,
xdg_uint32_t offset = GET_UINT32 (cache->buffer, list_offset + 4 + 12 * j);
xdg_uint32_t mimetype_offset = GET_UINT32 (cache->buffer, list_offset + 4 + 12 * j + 4);
int weight = GET_UINT32 (cache->buffer, list_offset + 4 + 12 * j + 8);
+ int case_sensitive = weight & 0x100;
weight = weight & 0xff;
ptr = cache->buffer + offset;
mime_type = cache->buffer + mimetype_offset;
-
- /* FIXME: Not UTF-8 safe */
- if (fnmatch (ptr, file_name, 0) == 0)
+ if (case_sensitive_check || !case_sensitive)
{
- mime_types[n].mime = mime_type;
- mime_types[n].weight = weight;
- n++;
+ /* FIXME: Not UTF-8 safe */
+ if (fnmatch (ptr, file_name, 0) == 0)
+ {
+ mime_types[n].mime = mime_type;
+ mime_types[n].weight = weight;
+ n++;
+ }
}
}
@@ -492,7 +481,8 @@ cache_glob_node_lookup_suffix (XdgMimeCache *cache,
int weight;
int case_sensitive;
- int min, max, mid, n, i;
+ xdg_uint32_t i;
+ int min, max, mid, n;
character = file_name[len - 1];
@@ -578,8 +568,8 @@ cache_glob_lookup_suffix (const char *file_name,
n_entries = GET_UINT32 (cache->buffer, list_offset);
offset = GET_UINT32 (cache->buffer, list_offset + 4);
- n += cache_glob_node_lookup_suffix (cache,
- n_entries, offset,
+ n += cache_glob_node_lookup_suffix (cache,
+ n_entries, offset,
file_name, len,
ignore_case,
mime_types + n,
@@ -680,14 +670,16 @@ cache_glob_lookup_file_name (const char *file_name,
if (n < 2)
n += cache_glob_lookup_suffix (file_name, len, TRUE, mimes + n, n_mimes - n);
- free (lower_case);
-
/* Last, try fnmatch */
+ if (n == 0)
+ n = cache_glob_lookup_fnmatch (lower_case, mimes, n_mimes, FALSE);
if (n < 2)
- n += cache_glob_lookup_fnmatch (file_name, mimes + n, n_mimes - n);
+ n += cache_glob_lookup_fnmatch (file_name, mimes + n, n_mimes - n, TRUE);
n = filter_out_dupes (mimes, n);
+ free (lower_case);
+
qsort (mimes, n, sizeof (MimeWeight), compare_mime_weight);
if (n_mime_types < n)
@@ -743,8 +735,7 @@ cache_get_mime_type_for_data (const void *data,
if (cache->buffer == NULL)
continue;
- match = cache_magic_lookup_data (cache, data, len, &prio,
- mime_types, n_mime_types);
+ match = cache_magic_lookup_data (cache, data, len, &prio);
if (prio > priority)
{
priority = prio;
@@ -754,14 +745,27 @@ cache_get_mime_type_for_data (const void *data,
if (result_prio)
*result_prio = priority;
-
+
if (priority > 0)
- return mime_type;
+ {
+ /* Pick glob-result R where mime_type inherits from R */
+ for (n = 0; n < n_mime_types; n++)
+ {
+ if (mime_types[n] && _xdg_mime_cache_mime_type_subclass(mime_types[n], mime_type))
+ return mime_types[n];
+ }
+ if (n == 0)
+ {
+ /* No globs: return magic match */
+ return mime_type;
+ }
+ }
+ /* Pick first glob result, as fallback */
for (n = 0; n < n_mime_types; n++)
{
if (mime_types[n])
- return mime_types[n];
+ return mime_types[n];
}
return NULL;
@@ -775,8 +779,6 @@ _xdg_mime_cache_get_mime_type_for_data (const void *data,
return cache_get_mime_type_for_data (data, len, result_prio, NULL, 0);
}
-#ifdef NOT_USED_IN_GIO
-
const char *
_xdg_mime_cache_get_mime_type_for_file (const char *file_name,
struct stat *statbuf)
@@ -844,7 +846,7 @@ _xdg_mime_cache_get_mime_type_for_file (const char *file_name,
mime_types, n);
if (!mime_type)
- mime_type = _xdg_binary_or_text_fallback(data, bytes_read);
+ mime_type = _xdg_binary_or_text_fallback (data, bytes_read);
free (data);
fclose (file);
@@ -863,8 +865,6 @@ _xdg_mime_cache_get_mime_type_from_file_name (const char *file_name)
return XDG_MIME_TYPE_UNKNOWN;
}
-#endif
-
int
_xdg_mime_cache_get_mime_types_from_file_name (const char *file_name,
const char *mime_types[],
@@ -905,7 +905,8 @@ _xdg_mime_cache_mime_type_subclass (const char *mime,
{
const char *umime, *ubase;
- int i, j, min, max, med, cmp;
+ xdg_uint32_t j;
+ int i, min, max, med, cmp;
umime = _xdg_mime_cache_unalias_mime_type (mime);
ubase = _xdg_mime_cache_unalias_mime_type (base);
@@ -995,7 +996,8 @@ _xdg_mime_cache_unalias_mime_type (const char *mime)
char **
_xdg_mime_cache_list_mime_parents (const char *mime)
{
- int i, j, k, l, p;
+ int i, l, p;
+ xdg_uint32_t j, k;
char *all_parents[128]; /* we'll stop at 128 */
char **result;
@@ -1109,8 +1111,6 @@ _xdg_mime_cache_get_icon (const char *mime)
return cache_lookup_icon (mime, 32);
}
-#ifdef NOT_USED_IN_GIO
-
static void
dump_glob_node (XdgMimeCache *cache,
xdg_uint32_t offset,
@@ -1120,6 +1120,7 @@ dump_glob_node (XdgMimeCache *cache,
xdg_uint32_t mime_offset;
xdg_uint32_t n_children;
xdg_uint32_t child_offset;
+ xdg_uint32_t k;
int i;
character = GET_UINT32 (cache->buffer, offset);
@@ -1134,15 +1135,15 @@ dump_glob_node (XdgMimeCache *cache,
printf ("\n");
if (child_offset)
{
- for (i = 0; i < n_children; i++)
- dump_glob_node (cache, child_offset + 20 * i, depth + 1);
+ for (k = 0; k < n_children; k++)
+ dump_glob_node (cache, child_offset + 20 * k, depth + 1);
}
}
void
_xdg_mime_cache_glob_dump (void)
{
- int i, j;
+ xdg_uint32_t i, j;
for (i = 0; _caches[i]; i++)
{
XdgMimeCache *cache = _caches[i];
@@ -1161,4 +1162,4 @@ _xdg_mime_cache_glob_dump (void)
}
}
-#endif
+
diff --git a/gio/xdgmime/xdgmimecache.h b/gio/xdgmime/xdgmimecache.h
index 2723c5396..df25b2a57 100644
--- a/gio/xdgmime/xdgmimecache.h
+++ b/gio/xdgmime/xdgmimecache.h
@@ -19,7 +19,9 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
*/
#ifndef __XDG_MIME_CACHE_H__
@@ -56,16 +58,12 @@ void _xdg_mime_cache_unref (XdgMimeCache *cache);
const char *_xdg_mime_cache_get_mime_type_for_data (const void *data,
size_t len,
int *result_prio);
-#ifdef NOT_USED_IN_GIO
const char *_xdg_mime_cache_get_mime_type_for_file (const char *file_name,
struct stat *statbuf);
-#endif
int _xdg_mime_cache_get_mime_types_from_file_name (const char *file_name,
const char *mime_types[],
int n_mime_types);
-#ifdef NOT_USED_IN_GIO
const char *_xdg_mime_cache_get_mime_type_from_file_name (const char *file_name);
-#endif
int _xdg_mime_cache_is_valid_mime_type (const char *mime_type);
int _xdg_mime_cache_mime_type_equal (const char *mime_a,
const char *mime_b);
@@ -78,8 +76,6 @@ const char *_xdg_mime_cache_unalias_mime_type (const char *mime);
int _xdg_mime_cache_get_max_buffer_extents (void);
const char *_xdg_mime_cache_get_icon (const char *mime);
const char *_xdg_mime_cache_get_generic_icon (const char *mime);
-#ifdef NOT_USED_IN_GIO
void _xdg_mime_cache_glob_dump (void);
-#endif
#endif /* __XDG_MIME_CACHE_H__ */
diff --git a/gio/xdgmime/xdgmimeglob.c b/gio/xdgmime/xdgmimeglob.c
index c18762e9a..d68435c89 100644
--- a/gio/xdgmime/xdgmimeglob.c
+++ b/gio/xdgmime/xdgmimeglob.c
@@ -20,10 +20,14 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
*/
-#include "config.h"
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
#include "xdgmimeglob.h"
#include "xdgmimeint.h"
@@ -86,7 +90,7 @@ _xdg_glob_list_new (void)
return new_element;
}
-/* Frees glob_list and all of it's children */
+/* Frees glob_list and all of its children */
static void
_xdg_glob_list_free (XdgGlobList *glob_list)
{
@@ -158,8 +162,6 @@ _xdg_glob_hash_node_new (void)
return glob_hash_node;
}
-#ifdef NOT_USED_IN_GIO
-
static void
_xdg_glob_hash_node_dump (XdgGlobHashNode *glob_hash_node,
int depth)
@@ -179,8 +181,6 @@ _xdg_glob_hash_node_dump (XdgGlobHashNode *glob_hash_node,
_xdg_glob_hash_node_dump (glob_hash_node->next, depth);
}
-#endif
-
static XdgGlobHashNode *
_xdg_glob_hash_insert_ucs4 (XdgGlobHashNode *glob_hash_node,
xdg_unichar_t *text,
@@ -603,8 +603,6 @@ _xdg_glob_hash_append_glob (XdgGlobHash *glob_hash,
}
}
-#ifdef NOT_USED_IN_GIO
-
void
_xdg_glob_hash_dump (XdgGlobHash *glob_hash)
{
@@ -641,7 +639,6 @@ _xdg_glob_hash_dump (XdgGlobHash *glob_hash)
}
}
-#endif
void
_xdg_mime_glob_read_from_file (XdgGlobHash *glob_hash,
diff --git a/gio/xdgmime/xdgmimeglob.h b/gio/xdgmime/xdgmimeglob.h
index 79ccdc292..8b1fa3ad4 100644
--- a/gio/xdgmime/xdgmimeglob.h
+++ b/gio/xdgmime/xdgmimeglob.h
@@ -20,7 +20,9 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
*/
#ifndef __XDG_MIME_GLOB_H__
@@ -63,8 +65,6 @@ void _xdg_glob_hash_append_glob (XdgGlobHash *glob_hash,
int weight,
int case_sensitive);
XdgGlobType _xdg_glob_determine_type (const char *glob);
-#ifdef NOT_USED_IN_GIO
void _xdg_glob_hash_dump (XdgGlobHash *glob_hash);
-#endif
#endif /* __XDG_MIME_GLOB_H__ */
diff --git a/gio/xdgmime/xdgmimeicon.c b/gio/xdgmime/xdgmimeicon.c
index a2f4dd2a7..feb6c869c 100644
--- a/gio/xdgmime/xdgmimeicon.c
+++ b/gio/xdgmime/xdgmimeicon.c
@@ -19,10 +19,14 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
*/
-#include "config.h"
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
#include "xdgmimeicon.h"
#include "xdgmimeint.h"
@@ -159,7 +163,6 @@ _xdg_mime_icon_read_from_file (XdgIconList *list,
sizeof (XdgIcon), icon_entry_cmp);
}
-#ifdef NOT_USED_IN_GIO
void
_xdg_mime_icon_list_dump (XdgIconList *list)
@@ -177,4 +180,4 @@ _xdg_mime_icon_list_dump (XdgIconList *list)
}
}
-#endif
+
diff --git a/gio/xdgmime/xdgmimeicon.h b/gio/xdgmime/xdgmimeicon.h
index 6141a8668..c416b3c5e 100644
--- a/gio/xdgmime/xdgmimeicon.h
+++ b/gio/xdgmime/xdgmimeicon.h
@@ -19,7 +19,9 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
*/
#ifndef __XDG_MIME_ICON_H__
@@ -43,8 +45,6 @@ XdgIconList *_xdg_mime_icon_list_new (void);
void _xdg_mime_icon_list_free (XdgIconList *list);
const char *_xdg_mime_icon_list_lookup (XdgIconList *list,
const char *mime);
-#ifdef NOT_USED_IN_GIO
void _xdg_mime_icon_list_dump (XdgIconList *list);
-#endif
#endif /* __XDG_MIME_ICON_H__ */
diff --git a/gio/xdgmime/xdgmimeint.c b/gio/xdgmime/xdgmimeint.c
index 35c3635e2..5e4513c50 100644
--- a/gio/xdgmime/xdgmimeint.c
+++ b/gio/xdgmime/xdgmimeint.c
@@ -20,10 +20,14 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
*/
-#include "config.h"
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
#include "xdgmimeint.h"
#include <ctype.h>
@@ -189,7 +193,7 @@ const char *
_xdg_binary_or_text_fallback(const void *data, size_t len)
{
unsigned char *chardata;
- int i;
+ size_t i;
chardata = (unsigned char *) data;
for (i = 0; i < 128 && i < len; ++i)
diff --git a/gio/xdgmime/xdgmimeint.h b/gio/xdgmime/xdgmimeint.h
index c9270139e..9a8256d17 100644
--- a/gio/xdgmime/xdgmimeint.h
+++ b/gio/xdgmime/xdgmimeint.h
@@ -20,7 +20,9 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
*/
#ifndef __XDG_MIME_INT_H__
diff --git a/gio/xdgmime/xdgmimemagic.c b/gio/xdgmime/xdgmimemagic.c
index ea986652d..dcee0fd59 100644
--- a/gio/xdgmime/xdgmimemagic.c
+++ b/gio/xdgmime/xdgmimemagic.c
@@ -20,10 +20,14 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
*/
-#include "config.h"
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
#include <assert.h>
#include "xdgmimemagic.h"
@@ -318,7 +322,7 @@ _xdg_mime_magic_parse_magic_line (FILE *magic_file,
int c;
int end_of_file;
int indent = 0;
- int bytes_read;
+ size_t bytes_read;
assert (magic_file != NULL);
@@ -410,7 +414,7 @@ _xdg_mime_magic_parse_magic_line (FILE *magic_file,
return XDG_MIME_MAGIC_ERROR;
}
bytes_read = fread (matchlet->value, 1, matchlet->value_length, magic_file);
- if (bytes_read != matchlet->value_length)
+ if (bytes_read != (size_t) matchlet->value_length)
{
_xdg_mime_magic_matchlet_free (matchlet);
if (feof (magic_file))
@@ -430,7 +434,7 @@ _xdg_mime_magic_parse_magic_line (FILE *magic_file,
return XDG_MIME_MAGIC_ERROR;
}
bytes_read = fread (matchlet->mask, 1, matchlet->value_length, magic_file);
- if (bytes_read != matchlet->value_length)
+ if (bytes_read != (size_t) matchlet->value_length)
{
_xdg_mime_magic_matchlet_free (matchlet);
if (feof (magic_file))
@@ -468,7 +472,7 @@ _xdg_mime_magic_parse_magic_line (FILE *magic_file,
_xdg_mime_magic_matchlet_free (matchlet);
return XDG_MIME_MAGIC_EOF;
}
- if (matchlet->range_length == -1)
+ if (matchlet->range_length == (unsigned int) -1)
{
_xdg_mime_magic_matchlet_free (matchlet);
return XDG_MIME_MAGIC_ERROR;
@@ -483,7 +487,7 @@ _xdg_mime_magic_parse_magic_line (FILE *magic_file,
if (matchlet->word_size > 1)
{
#if LITTLE_ENDIAN
- int i;
+ unsigned int i;
#endif
if (matchlet->value_length % matchlet->word_size != 0)
{
@@ -529,7 +533,7 @@ _xdg_mime_magic_matchlet_compare_to_data (XdgMimeMagicMatchlet *matchlet,
const void *data,
size_t len)
{
- int i, j;
+ unsigned int i, j;
for (i = matchlet->offset; i < matchlet->offset + matchlet->range_length; i++)
{
int valid_matchlet = TRUE;
diff --git a/gio/xdgmime/xdgmimemagic.h b/gio/xdgmime/xdgmimemagic.h
index c990acee8..eb06a81f8 100644
--- a/gio/xdgmime/xdgmimemagic.h
+++ b/gio/xdgmime/xdgmimemagic.h
@@ -20,7 +20,9 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
*/
#ifndef __XDG_MIME_MAGIC_H__
diff --git a/gio/xdgmime/xdgmimeparent.c b/gio/xdgmime/xdgmimeparent.c
index b06b749d4..89b48fc16 100644
--- a/gio/xdgmime/xdgmimeparent.c
+++ b/gio/xdgmime/xdgmimeparent.c
@@ -20,10 +20,14 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
*/
-#include "config.h"
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
#include "xdgmimeparent.h"
#include "xdgmimeint.h"
@@ -196,7 +200,6 @@ _xdg_mime_parent_read_from_file (XdgParentList *list,
sizeof (XdgMimeParents), &parent_entry_cmp);
}
-#ifdef NOT_USED_IN_GIO
void
_xdg_mime_parent_list_dump (XdgParentList *list)
@@ -214,4 +217,4 @@ _xdg_mime_parent_list_dump (XdgParentList *list)
}
}
-#endif
+
diff --git a/gio/xdgmime/xdgmimeparent.h b/gio/xdgmime/xdgmimeparent.h
index e3cdad5bf..29f43bc1f 100644
--- a/gio/xdgmime/xdgmimeparent.h
+++ b/gio/xdgmime/xdgmimeparent.h
@@ -20,7 +20,9 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
*/
#ifndef __XDG_MIME_PARENT_H__
@@ -44,8 +46,6 @@ XdgParentList *_xdg_mime_parent_list_new (void);
void _xdg_mime_parent_list_free (XdgParentList *list);
const char **_xdg_mime_parent_list_lookup (XdgParentList *list,
const char *mime);
-#ifdef NOT_USED_IN_GIO
void _xdg_mime_parent_list_dump (XdgParentList *list);
-#endif
#endif /* __XDG_MIME_PARENT_H__ */
diff --git a/glib.supp b/glib.supp
index 6dc3d2c7e..79faa9fd9 100644
--- a/glib.supp
+++ b/glib.supp
@@ -862,6 +862,17 @@
fun:g_get_user_data_dir
}
+# g_get_home_dir() caches a one-time allocation
+{
+ g_get_home_dir
+ Memcheck:Leak
+ match-leak-kinds:reachable
+ fun:malloc
+ ...
+ fun:g_build_home_dir
+ fun:g_get_home_dir
+}
+
# gdesktopappinfo.c caches a one-time allocation global table of @desktop_file_dirs.
{
desktop_file_dirs_malloc
diff --git a/glib/deprecated/gcompletion.c b/glib/deprecated/gcompletion.c
index d09c1f1fa..5f0979bb0 100644
--- a/glib/deprecated/gcompletion.c
+++ b/glib/deprecated/gcompletion.c
@@ -463,7 +463,8 @@ main (int argc,
if (argc < 3)
{
- g_warning ("Usage: %s filename prefix1 [prefix2 ...]", argv[0]);
+ g_warning ("Usage: %s filename prefix1 [prefix2 ...]",
+ (argc > 0) ? argv[0] : "gcompletion");
return 1;
}
diff --git a/glib/deprecated/gthread-deprecated.c b/glib/deprecated/gthread-deprecated.c
index e7e68fbd6..be98a74b6 100644
--- a/glib/deprecated/gthread-deprecated.c
+++ b/glib/deprecated/gthread-deprecated.c
@@ -97,7 +97,7 @@
* This macro is defined if POSIX style threads are used.
*
* Deprecated:2.32:POSIX threads are in use on all non-Windows systems.
- * Use G_OS_WIN32 to detect Windows.
+ * Use %G_OS_WIN32 to detect Windows.
*/
/**
@@ -105,7 +105,7 @@
*
* This macro is defined if Windows style threads are used.
*
- * Deprecated:2.32:Use G_OS_WIN32 to detect Windows.
+ * Deprecated:2.32:Use %G_OS_WIN32 to detect Windows.
*/
@@ -463,7 +463,7 @@ g_once_init_enter_impl (volatile gsize *location)
* @mutex: a #GStaticMutex to be initialized.
*
* Initializes @mutex.
- * Alternatively you can initialize it with #G_STATIC_MUTEX_INIT.
+ * Alternatively you can initialize it with %G_STATIC_MUTEX_INIT.
*
* Deprecated: 2.32: Use g_mutex_init()
*/
@@ -649,7 +649,7 @@ g_static_mutex_free (GStaticMutex* mutex)
*
* A #GStaticRecMutex must be initialized with this function before it
* can be used. Alternatively you can initialize it with
- * #G_STATIC_REC_MUTEX_INIT.
+ * %G_STATIC_REC_MUTEX_INIT.
*
* Deprecated: 2.32: Use g_rec_mutex_init()
*/
@@ -949,7 +949,7 @@ g_static_rec_mutex_free (GStaticRecMutex *mutex)
*
* A #GStaticRWLock must be initialized with this function before it
* can be used. Alternatively you can initialize it with
- * #G_STATIC_RW_LOCK_INIT.
+ * %G_STATIC_RW_LOCK_INIT.
*
* Deprecated: 2.32: Use g_rw_lock_init() instead
*/
@@ -1295,7 +1295,7 @@ GPrivate static_private_private = G_PRIVATE_INIT (g_static_private_cleanup);
* @private_key: a #GStaticPrivate to be initialized
*
* Initializes @private_key. Alternatively you can initialize it with
- * #G_STATIC_PRIVATE_INIT.
+ * %G_STATIC_PRIVATE_INIT.
*/
void
g_static_private_init (GStaticPrivate *private_key)
diff --git a/glib/docs.c b/glib/docs.c
index 1194a2dcd..9d6321b8a 100644
--- a/glib/docs.c
+++ b/glib/docs.c
@@ -108,7 +108,7 @@
* gint:
*
* Corresponds to the standard C int type.
- * Values of this type can range from #G_MININT to #G_MAXINT.
+ * Values of this type can range from %G_MININT to %G_MAXINT.
*/
/**
@@ -127,7 +127,7 @@
* guint:
*
* Corresponds to the standard C unsigned int type.
- * Values of this type can range from 0 to #G_MAXUINT.
+ * Values of this type can range from 0 to %G_MAXUINT.
*/
/**
@@ -140,7 +140,7 @@
* gshort:
*
* Corresponds to the standard C short type.
- * Values of this type can range from #G_MINSHORT to #G_MAXSHORT.
+ * Values of this type can range from %G_MINSHORT to %G_MAXSHORT.
*/
/**
@@ -159,7 +159,7 @@
* gushort:
*
* Corresponds to the standard C unsigned short type.
- * Values of this type can range from 0 to #G_MAXUSHORT.
+ * Values of this type can range from 0 to %G_MAXUSHORT.
*/
/**
@@ -172,7 +172,7 @@
* glong:
*
* Corresponds to the standard C long type.
- * Values of this type can range from #G_MINLONG to #G_MAXLONG.
+ * Values of this type can range from %G_MINLONG to %G_MAXLONG.
*/
/**
@@ -191,7 +191,7 @@
* gulong:
*
* Corresponds to the standard C unsigned long type.
- * Values of this type can range from 0 to #G_MAXULONG.
+ * Values of this type can range from 0 to %G_MAXULONG.
*/
/**
@@ -204,8 +204,8 @@
* gint8:
*
* A signed integer guaranteed to be 8 bits on all platforms.
- * Values of this type can range from #G_MININT8 (= -128) to
- * #G_MAXINT8 (= 127).
+ * Values of this type can range from %G_MININT8 (= -128) to
+ * %G_MAXINT8 (= 127).
*/
/**
@@ -220,7 +220,7 @@
* guint8:
*
* An unsigned integer guaranteed to be 8 bits on all platforms.
- * Values of this type can range from 0 to #G_MAXUINT8 (= 255).
+ * Values of this type can range from 0 to %G_MAXUINT8 (= 255).
*/
/**
@@ -235,8 +235,8 @@
* gint16:
*
* A signed integer guaranteed to be 16 bits on all platforms.
- * Values of this type can range from #G_MININT16 (= -32,768) to
- * #G_MAXINT16 (= 32,767).
+ * Values of this type can range from %G_MININT16 (= -32,768) to
+ * %G_MAXINT16 (= 32,767).
*
* To print or scan values of this type, use
* %G_GINT16_MODIFIER and/or %G_GINT16_FORMAT.
@@ -289,7 +289,7 @@
* guint16:
*
* An unsigned integer guaranteed to be 16 bits on all platforms.
- * Values of this type can range from 0 to #G_MAXUINT16 (= 65,535).
+ * Values of this type can range from 0 to %G_MAXUINT16 (= 65,535).
*
* To print or scan values of this type, use
* %G_GINT16_MODIFIER and/or %G_GUINT16_FORMAT.
@@ -307,15 +307,15 @@
* G_GUINT16_FORMAT:
*
* This is the platform dependent conversion specifier for scanning
- * and printing values of type #guint16. See also #G_GINT16_FORMAT
+ * and printing values of type #guint16. See also %G_GINT16_FORMAT
*/
/**
* gint32:
*
* A signed integer guaranteed to be 32 bits on all platforms.
- * Values of this type can range from #G_MININT32 (= -2,147,483,648)
- * to #G_MAXINT32 (= 2,147,483,647).
+ * Values of this type can range from %G_MININT32 (= -2,147,483,648)
+ * to %G_MAXINT32 (= 2,147,483,647).
*
* To print or scan values of this type, use
* %G_GINT32_MODIFIER and/or %G_GINT32_FORMAT.
@@ -334,7 +334,7 @@
*
* The platform dependent length modifier for conversion specifiers
* for scanning and printing values of type #gint32 or #guint32. It
- * is a string literal. See also #G_GINT16_MODIFIER.
+ * is a string literal. See also %G_GINT16_MODIFIER.
*
* Since: 2.4
*/
@@ -343,14 +343,14 @@
* G_GINT32_FORMAT:
*
* This is the platform dependent conversion specifier for scanning
- * and printing values of type #gint32. See also #G_GINT16_FORMAT.
+ * and printing values of type #gint32. See also %G_GINT16_FORMAT.
*/
/**
* guint32:
*
* An unsigned integer guaranteed to be 32 bits on all platforms.
- * Values of this type can range from 0 to #G_MAXUINT32 (= 4,294,967,295).
+ * Values of this type can range from 0 to %G_MAXUINT32 (= 4,294,967,295).
*
* To print or scan values of this type, use
* %G_GINT32_MODIFIER and/or %G_GUINT32_FORMAT.
@@ -368,15 +368,15 @@
* G_GUINT32_FORMAT:
*
* This is the platform dependent conversion specifier for scanning
- * and printing values of type #guint32. See also #G_GINT16_FORMAT.
+ * and printing values of type #guint32. See also %G_GINT16_FORMAT.
*/
/**
* gint64:
*
* A signed integer guaranteed to be 64 bits on all platforms.
- * Values of this type can range from #G_MININT64
- * (= -9,223,372,036,854,775,808) to #G_MAXINT64
+ * Values of this type can range from %G_MININT64
+ * (= -9,223,372,036,854,775,808) to %G_MAXINT64
* (= 9,223,372,036,854,775,807).
*
* To print or scan values of this type, use
@@ -407,7 +407,7 @@
* G_GINT64_FORMAT:
*
* This is the platform dependent conversion specifier for scanning
- * and printing values of type #gint64. See also #G_GINT16_FORMAT.
+ * and printing values of type #gint64. See also %G_GINT16_FORMAT.
*
* Some platforms do not support scanning and printing 64-bit integers,
* even though the types are supported. On such platforms %G_GINT64_FORMAT
@@ -421,7 +421,7 @@
* guint64:
*
* An unsigned integer guaranteed to be 64-bits on all platforms.
- * Values of this type can range from 0 to #G_MAXUINT64
+ * Values of this type can range from 0 to %G_MAXUINT64
* (= 18,446,744,073,709,551,615).
*
* To print or scan values of this type, use
@@ -438,7 +438,7 @@
* G_GUINT64_FORMAT:
*
* This is the platform dependent conversion specifier for scanning
- * and printing values of type #guint64. See also #G_GINT16_FORMAT.
+ * and printing values of type #guint64. See also %G_GINT16_FORMAT.
*
* Some platforms do not support scanning and printing 64-bit integers,
* even though the types are supported. On such platforms %G_GUINT64_FORMAT
@@ -470,7 +470,7 @@
* gfloat:
*
* Corresponds to the standard C float type.
- * Values of this type can range from -#G_MAXFLOAT to #G_MAXFLOAT.
+ * Values of this type can range from -%G_MAXFLOAT to %G_MAXFLOAT.
*/
/**
@@ -492,7 +492,7 @@
* gdouble:
*
* Corresponds to the standard C double type.
- * Values of this type can range from -#G_MAXDOUBLE to #G_MAXDOUBLE.
+ * Values of this type can range from -%G_MAXDOUBLE to %G_MAXDOUBLE.
*/
/**
@@ -518,7 +518,7 @@
* This type is wide enough to hold the numeric value of a pointer,
* so it is usually 32 bit wide on a 32-bit platform and 64 bit wide
* on a 64-bit platform. Values of this type can range from 0 to
- * #G_MAXSIZE.
+ * %G_MAXSIZE.
*
* To print or scan values of this type, use
* %G_GSIZE_MODIFIER and/or %G_GSIZE_FORMAT.
@@ -546,7 +546,7 @@
* G_GSIZE_FORMAT:
*
* This is the platform dependent conversion specifier for scanning
- * and printing values of type #gsize. See also #G_GINT16_FORMAT.
+ * and printing values of type #gsize. See also %G_GINT16_FORMAT.
*
* Since: 2.6
*/
@@ -556,8 +556,8 @@
*
* A signed variant of #gsize, corresponding to the
* ssize_t defined on most platforms.
- * Values of this type can range from #G_MINSSIZE
- * to #G_MAXSSIZE.
+ * Values of this type can range from %G_MINSSIZE
+ * to %G_MAXSSIZE.
*
* To print or scan values of this type, use
* %G_GSSIZE_MODIFIER and/or %G_GSSIZE_FORMAT.
@@ -583,7 +583,7 @@
* G_GSSIZE_FORMAT:
*
* This is the platform dependent conversion specifier for scanning
- * and printing values of type #gssize. See also #G_GINT16_FORMAT.
+ * and printing values of type #gssize. See also %G_GINT16_FORMAT.
*
* Since: 2.6
*/
@@ -605,8 +605,8 @@
* corresponding to the POSIX type `off_t` as if compiling with
* `_FILE_OFFSET_BITS` set to 64. #goffset is always 64 bits wide, even on
* 32-bit architectures.
- * Values of this type can range from #G_MINOFFSET to
- * #G_MAXOFFSET.
+ * Values of this type can range from %G_MINOFFSET to
+ * %G_MAXOFFSET.
*
* To print or scan values of this type, use
* %G_GOFFSET_MODIFIER and/or %G_GOFFSET_FORMAT.
@@ -631,7 +631,7 @@
*
* The platform dependent length modifier for conversion specifiers
* for scanning and printing values of type #goffset. It is a string
- * literal. See also #G_GINT64_MODIFIER.
+ * literal. See also %G_GINT64_MODIFIER.
*
* Since: 2.20
*/
@@ -640,7 +640,7 @@
* G_GOFFSET_FORMAT:
*
* This is the platform dependent conversion specifier for scanning
- * and printing values of type #goffset. See also #G_GINT64_FORMAT.
+ * and printing values of type #goffset. See also %G_GINT64_FORMAT.
*
* Since: 2.20
*/
@@ -652,7 +652,7 @@
* This macro is used to insert #goffset 64-bit integer literals
* into the source code.
*
- * See also #G_GINT64_CONSTANT.
+ * See also G_GINT64_CONSTANT().
*
* Since: 2.20
*/
@@ -849,29 +849,29 @@
* G_BYTE_ORDER:
*
* The host byte order.
- * This can be either #G_LITTLE_ENDIAN or #G_BIG_ENDIAN (support for
- * #G_PDP_ENDIAN may be added in future.)
+ * This can be either %G_LITTLE_ENDIAN or %G_BIG_ENDIAN (support for
+ * %G_PDP_ENDIAN may be added in future.)
*/
/**
* G_LITTLE_ENDIAN:
*
* Specifies one of the possible types of byte order.
- * See #G_BYTE_ORDER.
+ * See %G_BYTE_ORDER.
*/
/**
* G_BIG_ENDIAN:
*
* Specifies one of the possible types of byte order.
- * See #G_BYTE_ORDER.
+ * See %G_BYTE_ORDER.
*/
/**
* G_PDP_ENDIAN:
*
* Specifies one of the possible types of byte order
- * (currently unused). See #G_BYTE_ORDER.
+ * (currently unused). See %G_BYTE_ORDER.
*/
/**
@@ -1543,7 +1543,7 @@
* @title: Numerical Definitions
* @short_description: mathematical constants, and floating point decomposition
*
- * GLib offers mathematical constants such as #G_PI for the value of pi;
+ * GLib offers mathematical constants such as %G_PI for the value of pi;
* many platforms have these in the C library, but some don't, the GLib
* versions always exist.
*
@@ -1857,7 +1857,7 @@
/**
* G_BEGIN_DECLS:
*
- * Used (along with #G_END_DECLS) to bracket header files. If the
+ * Used (along with %G_END_DECLS) to bracket header files. If the
* compiler in use is a C++ compiler, adds extern "C"
* around the header.
*/
@@ -1865,7 +1865,7 @@
/**
* G_END_DECLS:
*
- * Used (along with #G_BEGIN_DECLS) to bracket header files. If the
+ * Used (along with %G_BEGIN_DECLS) to bracket header files. If the
* compiler in use is a C++ compiler, adds extern "C"
* around the header.
*/
diff --git a/glib/galloca.h b/glib/galloca.h
index 014a0efcb..86f0d7665 100644
--- a/glib/galloca.h
+++ b/glib/galloca.h
@@ -30,6 +30,7 @@
#endif
#include <glib/gtypes.h>
+#include <string.h>
#if defined(__BIONIC__) && defined (GLIB_HAVE_ALLOCA_H)
# include <alloca.h>
@@ -94,6 +95,22 @@ G_END_DECLS
* Returns: space for @size bytes, allocated on the stack
*/
#define g_alloca(size) alloca (size)
+
+/**
+ * g_alloca0:
+ * @size: number of bytes to allocate.
+ *
+ * Wraps g_alloca() and initializes allocated memory to zeroes.
+ * If @size is `0` it returns %NULL.
+ *
+ * Note that the @size argument will be evaluated multiple times.
+ *
+ * Returns: (nullable) (transfer full): space for @size bytes, allocated on the stack
+ *
+ * Since: 2.72
+ */
+#define g_alloca0(size) ((size) == 0 ? NULL : memset (g_alloca (size), 0, (size)))
+
/**
* g_newa:
* @struct_type: Type of memory chunks to be allocated
@@ -111,4 +128,18 @@ G_END_DECLS
*/
#define g_newa(struct_type, n_structs) ((struct_type*) g_alloca (sizeof (struct_type) * (gsize) (n_structs)))
+/**
+ * g_newa0:
+ * @struct_type: the type of the elements to allocate.
+ * @n_structs: the number of elements to allocate.
+ *
+ * Wraps g_alloca0() in a more typesafe manner.
+ *
+ * Returns: (nullable) (transfer full): Pointer to stack space for @n_structs
+ * chunks of type @struct_type
+ *
+ * Since: 2.72
+ */
+#define g_newa0(struct_type, n_structs) ((struct_type*) g_alloca0 (sizeof (struct_type) * (gsize) (n_structs)))
+
#endif /* __G_ALLOCA_H__ */
diff --git a/glib/garray.c b/glib/garray.c
index 025747ee5..1ab3beeda 100644
--- a/glib/garray.c
+++ b/glib/garray.c
@@ -42,6 +42,7 @@
#include "gmessages.h"
#include "gqsort.h"
#include "grefcount.h"
+#include "gutilsprivate.h"
/**
* SECTION:arrays
@@ -107,7 +108,7 @@ struct _GRealArray
{
guint8 *data;
guint len;
- guint alloc;
+ guint elt_capacity;
guint elt_size;
guint zero_terminated : 1;
guint clear : 1;
@@ -150,7 +151,7 @@ struct _GRealArray
* Returns: the element of the #GArray at the index given by @i
*/
-#define g_array_elt_len(array,i) ((array)->elt_size * (i))
+#define g_array_elt_len(array,i) ((gsize)(array)->elt_size * (i))
#define g_array_elt_pos(array,i) ((array)->data + g_array_elt_len((array),(i)))
#define g_array_elt_zero(array, pos, len) \
(memset (g_array_elt_pos ((array), pos), 0, g_array_elt_len ((array), len)))
@@ -159,7 +160,6 @@ struct _GRealArray
g_array_elt_zero ((array), (array)->len, 1); \
}G_STMT_END
-static guint g_nearest_pow (guint num) G_GNUC_CONST;
static void g_array_maybe_expand (GRealArray *array,
guint len);
@@ -181,6 +181,9 @@ g_array_new (gboolean zero_terminated,
guint elt_size)
{
g_return_val_if_fail (elt_size > 0, NULL);
+#if (UINT_WIDTH / 8) >= GLIB_SIZEOF_SIZE_T
+ g_return_val_if_fail (elt_size <= G_MAXSIZE / 2 - 1, NULL);
+#endif
return g_array_sized_new (zero_terminated, clear, elt_size, 0);
}
@@ -232,7 +235,7 @@ g_array_steal (GArray *array,
rarray->data = NULL;
rarray->len = 0;
- rarray->alloc = 0;
+ rarray->elt_capacity = 0;
return segment;
}
@@ -261,12 +264,15 @@ g_array_sized_new (gboolean zero_terminated,
GRealArray *array;
g_return_val_if_fail (elt_size > 0, NULL);
+#if (UINT_WIDTH / 8) >= GLIB_SIZEOF_SIZE_T
+ g_return_val_if_fail (elt_size <= G_MAXSIZE / 2 - 1, NULL);
+#endif
array = g_slice_new (GRealArray);
array->data = NULL;
array->len = 0;
- array->alloc = 0;
+ array->elt_capacity = 0;
array->zero_terminated = (zero_terminated ? 1 : 0);
array->clear = (clear ? 1 : 0);
array->elt_size = elt_size;
@@ -471,7 +477,7 @@ array_free (GRealArray *array,
{
array->data = NULL;
array->len = 0;
- array->alloc = 0;
+ array->elt_capacity = 0;
}
else
{
@@ -930,7 +936,7 @@ g_array_binary_search (GArray *array,
{
gboolean result = FALSE;
GRealArray *_array = (GRealArray *) array;
- guint left, middle, right;
+ guint left, middle = 0, right;
gint val;
g_return_val_if_fail (_array != NULL, FALSE);
@@ -966,52 +972,36 @@ g_array_binary_search (GArray *array,
return result;
}
-/* Returns the smallest power of 2 greater than n, or n if
- * such power does not fit in a guint
- */
-static guint
-g_nearest_pow (guint num)
-{
- guint n = num - 1;
-
- g_assert (num > 0);
-
- n |= n >> 1;
- n |= n >> 2;
- n |= n >> 4;
- n |= n >> 8;
- n |= n >> 16;
-#if SIZEOF_INT == 8
- n |= n >> 32;
-#endif
-
- return n + 1;
-}
-
static void
g_array_maybe_expand (GRealArray *array,
guint len)
{
- guint want_alloc;
+ guint max_len, want_len;
+
+ /* The maximum array length is derived from following constraints:
+ * - The number of bytes must fit into a gsize / 2.
+ * - The number of elements must fit into guint.
+ * - zero terminated arrays must leave space for the terminating element
+ */
+ max_len = MIN (G_MAXSIZE / 2 / array->elt_size, G_MAXUINT) - array->zero_terminated;
/* Detect potential overflow */
- if G_UNLIKELY ((G_MAXUINT - array->len) < len)
+ if G_UNLIKELY ((max_len - array->len) < len)
g_error ("adding %u to array would overflow", len);
- want_alloc = g_array_elt_len (array, array->len + len +
- array->zero_terminated);
-
- if (want_alloc > array->alloc)
+ want_len = array->len + len + array->zero_terminated;
+ if (want_len > array->elt_capacity)
{
- want_alloc = g_nearest_pow (want_alloc);
+ gsize want_alloc = g_nearest_pow (g_array_elt_len (array, want_len));
want_alloc = MAX (want_alloc, MIN_ARRAY_SIZE);
array->data = g_realloc (array->data, want_alloc);
if (G_UNLIKELY (g_mem_gc_friendly))
- memset (array->data + array->alloc, 0, want_alloc - array->alloc);
+ memset (g_array_elt_pos (array, array->elt_capacity), 0,
+ g_array_elt_len (array, want_len - array->elt_capacity));
- array->alloc = want_alloc;
+ array->elt_capacity = MIN (want_alloc / array->elt_size, G_MAXUINT);
}
}
@@ -1297,7 +1287,7 @@ g_array_copy (GArray *array)
new_rarray =
(GRealArray *) g_array_sized_new (rarray->zero_terminated, rarray->clear,
- rarray->elt_size, rarray->alloc / rarray->elt_size);
+ rarray->elt_size, rarray->elt_capacity);
new_rarray->len = rarray->len;
if (rarray->len > 0)
memcpy (new_rarray->data, rarray->data, rarray->len * rarray->elt_size);
@@ -1513,16 +1503,25 @@ static void
g_ptr_array_maybe_expand (GRealPtrArray *array,
guint len)
{
+ guint max_len;
+
+ /* The maximum array length is derived from following constraints:
+ * - The number of bytes must fit into a gsize / 2.
+ * - The number of elements must fit into guint.
+ */
+ max_len = MIN (G_MAXSIZE / 2 / sizeof (gpointer), G_MAXUINT);
+
/* Detect potential overflow */
- if G_UNLIKELY ((G_MAXUINT - array->len) < len)
+ if G_UNLIKELY ((max_len - array->len) < len)
g_error ("adding %u to array would overflow", len);
if ((array->len + len) > array->alloc)
{
guint old_alloc = array->alloc;
- array->alloc = g_nearest_pow (array->len + len);
- array->alloc = MAX (array->alloc, MIN_ARRAY_SIZE);
- array->pdata = g_realloc (array->pdata, sizeof (gpointer) * array->alloc);
+ gsize want_alloc = g_nearest_pow (sizeof (gpointer) * (array->len + len));
+ want_alloc = MAX (want_alloc, MIN_ARRAY_SIZE);
+ array->alloc = MIN (want_alloc / sizeof (gpointer), G_MAXUINT);
+ array->pdata = g_realloc (array->pdata, want_alloc);
if (G_UNLIKELY (g_mem_gc_friendly))
for ( ; old_alloc < array->alloc; old_alloc++)
array->pdata [old_alloc] = NULL;
@@ -2298,7 +2297,6 @@ g_byte_array_new_take (guint8 *data,
GRealArray *real;
g_return_val_if_fail (len <= G_MAXUINT, NULL);
-
array = g_byte_array_new ();
real = (GRealArray *)array;
g_assert (real->data == NULL);
@@ -2306,7 +2304,7 @@ g_byte_array_new_take (guint8 *data,
real->data = data;
real->len = len;
- real->alloc = len;
+ real->elt_capacity = len;
return array;
}
diff --git a/glib/gatomic.h b/glib/gatomic.h
index 5583fb0c9..8b2b880c8 100644
--- a/glib/gatomic.h
+++ b/glib/gatomic.h
@@ -152,13 +152,25 @@ G_END_DECLS
(void) (0 ? *(atomic) ^ *(atomic) : 1); \
__atomic_fetch_sub ((atomic), 1, __ATOMIC_SEQ_CST) == 1; \
}))
+#if defined(glib_typeof) && defined(__cplusplus) && __cplusplus >= 201103L
+/* See comments below about equivalent g_atomic_pointer_compare_and_exchange()
+ * shenanigans for type-safety when compiling in C++ mode. */
#define g_atomic_int_compare_and_exchange(atomic, oldval, newval) \
(G_GNUC_EXTENSION ({ \
- gint gaicae_oldval = (oldval); \
+ glib_typeof (*(atomic)) gaicae_oldval = (oldval); \
G_STATIC_ASSERT (sizeof *(atomic) == sizeof (gint)); \
(void) (0 ? *(atomic) ^ (newval) ^ (oldval) : 1); \
__atomic_compare_exchange_n ((atomic), &gaicae_oldval, (newval), FALSE, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST) ? TRUE : FALSE; \
}))
+#else /* if !(defined(glib_typeof) && defined(__cplusplus) && __cplusplus >= 201103L) */
+#define g_atomic_int_compare_and_exchange(atomic, oldval, newval) \
+ (G_GNUC_EXTENSION ({ \
+ gint gaicae_oldval = (oldval); \
+ G_STATIC_ASSERT (sizeof *(atomic) == sizeof (gint)); \
+ (void) (0 ? *(atomic) ^ (newval) ^ (oldval) : 1); \
+ __atomic_compare_exchange_n ((atomic), (void *) (&(gaicae_oldval)), (newval), FALSE, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST) ? TRUE : FALSE; \
+ }))
+#endif /* defined(glib_typeof) */
#define g_atomic_int_add(atomic, val) \
(G_GNUC_EXTENSION ({ \
G_STATIC_ASSERT (sizeof *(atomic) == sizeof (gint)); \
@@ -208,7 +220,7 @@ G_END_DECLS
gpointer gapcae_oldval = (gpointer)(oldval); \
G_STATIC_ASSERT (sizeof *(atomic) == sizeof (gpointer)); \
(void) (0 ? (gpointer) *(atomic) : NULL); \
- __atomic_compare_exchange_n ((atomic), &gapcae_oldval, (newval), FALSE, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST) ? TRUE : FALSE; \
+ __atomic_compare_exchange_n ((atomic), (void *) (&(gapcae_oldval)), (newval), FALSE, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST) ? TRUE : FALSE; \
}))
#endif /* defined(glib_typeof) */
#define g_atomic_pointer_add(atomic, val) \
diff --git a/glib/gbacktrace.c b/glib/gbacktrace.c
index eb9ec8d66..77cef100a 100644
--- a/glib/gbacktrace.c
+++ b/glib/gbacktrace.c
@@ -321,7 +321,10 @@ stack_trace (const char * const *args)
fd_set fdset;
fd_set readset;
struct timeval tv;
- int sel, idx, state, line_idx;
+ int sel, idx, state;
+#ifdef USE_LLDB
+ int line_idx;
+#endif
char buffer[BUFSIZE];
char c;
@@ -382,7 +385,9 @@ stack_trace (const char * const *args)
#endif
idx = 0;
+#ifdef USE_LLDB
line_idx = 0;
+#endif
state = 0;
while (1)
@@ -399,7 +404,10 @@ stack_trace (const char * const *args)
{
if (read (out_fd[0], &c, 1))
{
+#ifdef USE_LLDB
line_idx += 1;
+#endif
+
switch (state)
{
case 0:
@@ -423,7 +431,9 @@ stack_trace (const char * const *args)
_g_fprintf (stdout, "%s", buffer);
state = 0;
idx = 0;
+#ifdef USE_LLDB
line_idx = 0;
+#endif
}
break;
default:
diff --git a/glib/gbookmarkfile.c b/glib/gbookmarkfile.c
index 14536ec9b..51dfa23d3 100644
--- a/glib/gbookmarkfile.c
+++ b/glib/gbookmarkfile.c
@@ -2217,7 +2217,7 @@ g_bookmark_file_set_title (GBookmarkFile *bookmark,
* If @uri is %NULL, the title of @bookmark is returned.
*
* In the event the URI cannot be found, %NULL is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
*
* Returns: (transfer full): a newly allocated string or %NULL if the specified
* URI cannot be found.
@@ -2302,7 +2302,7 @@ g_bookmark_file_set_description (GBookmarkFile *bookmark,
* Retrieves the description of the bookmark for @uri.
*
* In the event the URI cannot be found, %NULL is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
*
* Returns: (transfer full): a newly allocated string or %NULL if the specified
* URI cannot be found.
@@ -2382,9 +2382,9 @@ g_bookmark_file_set_mime_type (GBookmarkFile *bookmark,
* Retrieves the MIME type of the resource pointed by @uri.
*
* In the event the URI cannot be found, %NULL is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND. In the
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND. In the
* event that the MIME type cannot be found, %NULL is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_INVALID_VALUE.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_INVALID_VALUE.
*
* Returns: (transfer full): a newly allocated string or %NULL if the specified
* URI cannot be found.
@@ -2468,9 +2468,9 @@ g_bookmark_file_set_is_private (GBookmarkFile *bookmark,
* Gets whether the private flag of the bookmark for @uri is set.
*
* In the event the URI cannot be found, %FALSE is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND. In the
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND. In the
* event that the private flag cannot be found, %FALSE is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_INVALID_VALUE.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_INVALID_VALUE.
*
* Returns: %TRUE if the private flag is set, %FALSE otherwise.
*
@@ -2577,7 +2577,7 @@ g_bookmark_file_set_added_date_time (GBookmarkFile *bookmark,
* Gets the time the bookmark for @uri was added to @bookmark
*
* In the event the URI cannot be found, -1 is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
*
* Returns: a timestamp
*
@@ -2603,7 +2603,7 @@ g_bookmark_file_get_added (GBookmarkFile *bookmark,
* Gets the time the bookmark for @uri was added to @bookmark
*
* In the event the URI cannot be found, %NULL is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
*
* Returns: (transfer none): a #GDateTime
*
@@ -2710,7 +2710,7 @@ g_bookmark_file_set_modified_date_time (GBookmarkFile *bookmark,
* Gets the time when the bookmark for @uri was last modified.
*
* In the event the URI cannot be found, -1 is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
*
* Returns: a timestamp
*
@@ -2736,7 +2736,7 @@ g_bookmark_file_get_modified (GBookmarkFile *bookmark,
* Gets the time when the bookmark for @uri was last modified.
*
* In the event the URI cannot be found, %NULL is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
*
* Returns: (transfer none): a #GDateTime
*
@@ -2845,7 +2845,7 @@ g_bookmark_file_set_visited_date_time (GBookmarkFile *bookmark,
* Gets the time the bookmark for @uri was last visited.
*
* In the event the URI cannot be found, -1 is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
*
* Returns: a timestamp.
*
@@ -2871,7 +2871,7 @@ g_bookmark_file_get_visited (GBookmarkFile *bookmark,
* Gets the time the bookmark for @uri was last visited.
*
* In the event the URI cannot be found, %NULL is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
*
* Returns: (transfer none): a #GDateTime
*
@@ -2912,7 +2912,7 @@ g_bookmark_file_get_visited_date_time (GBookmarkFile *bookmark,
* the bookmark for @uri belongs to.
*
* In the event the URI cannot be found, %FALSE is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
*
* Returns: %TRUE if @group was found.
*
@@ -3007,9 +3007,9 @@ g_bookmark_file_add_group (GBookmarkFile *bookmark,
* for @uri belongs to.
*
* In the event the URI cannot be found, %FALSE is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
* In the event no group was defined, %FALSE is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_INVALID_VALUE.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_INVALID_VALUE.
*
* Returns: %TRUE if @group was successfully removed.
*
@@ -3124,7 +3124,7 @@ g_bookmark_file_set_groups (GBookmarkFile *bookmark,
* Retrieves the list of group names of the bookmark for @uri.
*
* In the event the URI cannot be found, %NULL is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
*
* The returned array is %NULL terminated, so @length may optionally
* be %NULL.
@@ -3274,10 +3274,10 @@ g_bookmark_file_add_application (GBookmarkFile *bookmark,
* that have registered a bookmark for @uri inside @bookmark.
*
* In the event the URI cannot be found, %FALSE is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
* In the event that no application with name @app_name has registered
* a bookmark for @uri, %FALSE is returned and error is set to
- * #G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED.
+ * %G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED.
*
* Returns: %TRUE if the application was successfully removed.
*
@@ -3324,7 +3324,7 @@ g_bookmark_file_remove_application (GBookmarkFile *bookmark,
* registered by application @name.
*
* In the event the URI cannot be found, %FALSE is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
*
* Returns: %TRUE if the application @name was found
*
@@ -3388,10 +3388,10 @@ g_bookmark_file_has_application (GBookmarkFile *bookmark,
*
* If you try to remove an application by setting its registration count to
* zero, and no bookmark for @uri is found, %FALSE is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND; similarly,
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND; similarly,
* in the event that no application @name has registered a bookmark
* for @uri, %FALSE is returned and error is set to
- * #G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED. Otherwise, if no bookmark
+ * %G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED. Otherwise, if no bookmark
* for @uri is found, one is created.
*
* Returns: %TRUE if the application's meta-data was successfully
@@ -3451,10 +3451,10 @@ g_bookmark_file_set_app_info (GBookmarkFile *bookmark,
*
* If you try to remove an application by setting its registration count to
* zero, and no bookmark for @uri is found, %FALSE is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND; similarly,
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND; similarly,
* in the event that no application @name has registered a bookmark
* for @uri, %FALSE is returned and error is set to
- * #G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED. Otherwise, if no bookmark
+ * %G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED. Otherwise, if no bookmark
* for @uri is found, one is created.
*
* Returns: %TRUE if the application's meta-data was successfully
@@ -3622,11 +3622,11 @@ expand_exec_line (const gchar *exec_fmt,
* The string returned in @app_exec must be freed.
*
* In the event the URI cannot be found, %FALSE is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND. In the
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND. In the
* event that no application with name @app_name has registered a bookmark
* for @uri, %FALSE is returned and error is set to
- * #G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED. In the event that unquoting
- * the command line fails, an error of the #G_SHELL_ERROR domain is
+ * %G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED. In the event that unquoting
+ * the command line fails, an error of the %G_SHELL_ERROR domain is
* set and %FALSE is returned.
*
* Returns: %TRUE on success.
@@ -3674,11 +3674,11 @@ g_bookmark_file_get_app_info (GBookmarkFile *bookmark,
* The string returned in @app_exec must be freed.
*
* In the event the URI cannot be found, %FALSE is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND. In the
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND. In the
* event that no application with name @app_name has registered a bookmark
* for @uri, %FALSE is returned and error is set to
- * #G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED. In the event that unquoting
- * the command line fails, an error of the #G_SHELL_ERROR domain is
+ * %G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED. In the event that unquoting
+ * the command line fails, an error of the %G_SHELL_ERROR domain is
* set and %FALSE is returned.
*
* Returns: %TRUE on success.
@@ -3770,7 +3770,7 @@ g_bookmark_file_get_application_info (GBookmarkFile *bookmark,
* bookmark for @uri.
*
* In the event the URI cannot be found, %NULL is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
*
* Returns: (array length=length) (transfer full): a newly allocated %NULL-terminated array of strings.
* Use g_strfreev() to free it.
@@ -3863,7 +3863,7 @@ g_bookmark_file_get_size (GBookmarkFile *bookmark)
* %NULL, then the bookmark is removed.
*
* In the event the URI cannot be found, %FALSE is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
*
* Returns: %TRUE if the URI was successfully changed
*
@@ -3980,7 +3980,7 @@ g_bookmark_file_set_icon (GBookmarkFile *bookmark,
* Gets the icon of the bookmark for @uri.
*
* In the event the URI cannot be found, %FALSE is returned and
- * @error is set to #G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
+ * @error is set to %G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND.
*
* Returns: %TRUE if the icon for the bookmark for the URI was found.
* You should free the returned strings.
diff --git a/glib/gcharset.c b/glib/gcharset.c
index 9f91a9b48..09d3fa4cc 100644
--- a/glib/gcharset.c
+++ b/glib/gcharset.c
@@ -109,6 +109,12 @@ static gboolean
g_utf8_get_charset_internal (const char *raw_data,
const char **a)
{
+ /* Allow CHARSET to override the charset of any locale category. Users should
+ * probably never be setting this — instead, just add the charset after a `.`
+ * in `LANGUAGE`/`LC_ALL`/`LC_*`/`LANG`. I can’t find any reference (in
+ * `git log`, code comments, or man pages) to this environment variable being
+ * standardised or documented or even used anywhere outside GLib. Perhaps it
+ * should eventually be removed. */
const char *charset = g_getenv ("CHARSET");
if (charset && *charset)
@@ -377,7 +383,7 @@ g_get_console_charset (const char **charset)
modifier = strchr (dot, '@');
if (modifier == NULL)
raw = dot;
- else if (modifier - dot < sizeof (buf))
+ else if ((gsize) (modifier - dot) < sizeof (buf))
{
memcpy (buf, dot, modifier - dot);
buf[modifier - dot] = '\0';
diff --git a/glib/gconstructor.h b/glib/gconstructor.h
index 407202167..c5e0dfaa6 100644
--- a/glib/gconstructor.h
+++ b/glib/gconstructor.h
@@ -1,3 +1,30 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000. See the AUTHORS
+ * file for a list of people on the GLib Team. See the ChangeLog
+ * files for a list of changes. These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/.
+ */
+
+#ifndef __G_CONSTRUCTOR_H__
+#define __G_CONSTRUCTOR_H__
+
/*
If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and
destructors, in a usable way, including e.g. on library unload. If not you're on
@@ -28,6 +55,15 @@
#elif defined (_MSC_VER) && (_MSC_VER >= 1500)
/* Visual studio 2008 and later has _Pragma */
+/*
+ * Only try to include gslist.h if not already included via glib.h,
+ * so that items using gconstructor.h outside of GLib (such as
+ * GResources) continue to build properly.
+ */
+#ifndef __G_LIB_H__
+#include "gslist.h"
+#endif
+
#include <stdlib.h>
#define G_HAS_CONSTRUCTORS 1
@@ -120,3 +156,4 @@
#endif
#endif /* __GTK_DOC_IGNORE__ */
+#endif /* __G_CONSTRUCTOR_H__ */
diff --git a/glib/gconvert.c b/glib/gconvert.c
index 7697ff65d..052f019e2 100644
--- a/glib/gconvert.c
+++ b/glib/gconvert.c
@@ -142,7 +142,7 @@
* "Unknown file name" in its title bar but still let the user save
* the file, as it would keep the raw file name internally. This
* can happen if the user has not set the `G_FILENAME_ENCODING`
- * environment variable even though he has files whose names are
+ * environment variable even though they have files whose names are
* not encoded in UTF-8.
*
* 3. If your user interface lets the user type a file name for saving
@@ -354,7 +354,7 @@ close_converter (GIConv cd)
* Even if the conversion was successful, this may be
* less than @len if there were partial characters
* at the end of the input. If the error
- * #G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
+ * %G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
* stored will be the byte offset after the last valid
* input sequence.
* @bytes_written: (out) (optional): the number of bytes stored in
@@ -525,7 +525,7 @@ g_convert_with_iconv (const gchar *str,
* Even if the conversion was successful, this may be
* less than @len if there were partial characters
* at the end of the input. If the error
- * #G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
+ * %G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value
* stored will be the byte offset after the last valid
* input sequence.
* @bytes_written: (out) (optional): the number of bytes stored in
@@ -1420,7 +1420,7 @@ static const guchar acceptable[96] = {
0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x20,0x20,0x20,0x3F,0x20
};
-static const gchar hex[16] = "0123456789ABCDEF";
+static const gchar hex[] = "0123456789ABCDEF";
/* Note: This escape function works on file: URIs, but if you want to
* escape something else, please read RFC-2396 */
diff --git a/glib/gdataset.c b/glib/gdataset.c
index 793e21f8b..796d203d8 100644
--- a/glib/gdataset.c
+++ b/glib/gdataset.c
@@ -901,7 +901,7 @@ g_datalist_id_dup_data (GData **datalist,
* If the previous value was replaced then ownership of the
* old value (@oldval) is passed to the caller, including
* the registered destroy notify for it (passed out in @old_destroy).
- * Its up to the caller to free this as he wishes, which may
+ * Its up to the caller to free this as they wish, which may
* or may not include using @old_destroy as sometimes replacement
* should not destroy the object in the normal way.
*
diff --git a/glib/gdate.c b/glib/gdate.c
index 59a85c4f6..68c8689ef 100644
--- a/glib/gdate.c
+++ b/glib/gdate.c
@@ -242,8 +242,8 @@
* @G_DATE_SATURDAY: Saturday
* @G_DATE_SUNDAY: Sunday
*
- * Enumeration representing a day of the week; #G_DATE_MONDAY,
- * #G_DATE_TUESDAY, etc. #G_DATE_BAD_WEEKDAY is an invalid weekday.
+ * Enumeration representing a day of the week; %G_DATE_MONDAY,
+ * %G_DATE_TUESDAY, etc. %G_DATE_BAD_WEEKDAY is an invalid weekday.
*/
/**
@@ -288,11 +288,14 @@ g_date_new (void)
* @month: month of the year
* @year: year
*
- * Like g_date_new(), but also sets the value of the date. Assuming the
- * day-month-year triplet you pass in represents an existing day, the
- * returned date will be valid.
+ * Create a new #GDate representing the given day-month-year triplet.
*
- * Returns: a newly-allocated #GDate initialized with @day, @month, and @year
+ * The triplet you pass in must represent a valid date. Use g_date_valid_dmy()
+ * if needed to validate it. The returned #GDate is guaranteed to be non-%NULL
+ * and valid.
+ *
+ * Returns: (transfer full) (not nullable): a newly-allocated #GDate
+ * initialized with @day, @month, and @year
*/
GDate*
g_date_new_dmy (GDateDay day,
@@ -320,11 +323,14 @@ g_date_new_dmy (GDateDay day,
* g_date_new_julian:
* @julian_day: days since January 1, Year 1
*
- * Like g_date_new(), but also sets the value of the date. Assuming the
- * Julian day number you pass in is valid (greater than 0, less than an
- * unreasonably large number), the returned date will be valid.
+ * Create a new #GDate representing the given Julian date.
+ *
+ * The @julian_day you pass in must be valid. Use g_date_valid_julian() if
+ * needed to validate it. The returned #GDate is guaranteed to be non-%NULL and
+ * valid.
*
- * Returns: a newly-allocated #GDate initialized with @julian_day
+ * Returns: (transfer full) (not nullable): a newly-allocated #GDate initialized
+ * with @julian_day
*/
GDate*
g_date_new_julian (guint32 julian_day)
@@ -2550,9 +2556,7 @@ win32_strftime_helper (const GDate *d,
break;
case 'Z':
n = GetTimeZoneInformation (&tzinfo);
- if (n == TIME_ZONE_ID_UNKNOWN)
- ;
- else if (n == TIME_ZONE_ID_STANDARD)
+ if (n == TIME_ZONE_ID_UNKNOWN || n == TIME_ZONE_ID_STANDARD)
g_array_append_vals (result, tzinfo.StandardName, wcslen (tzinfo.StandardName));
else if (n == TIME_ZONE_ID_DAYLIGHT)
g_array_append_vals (result, tzinfo.DaylightName, wcslen (tzinfo.DaylightName));
@@ -2588,7 +2592,8 @@ win32_strftime_helper (const GDate *d,
return 0;
}
- if (slen <= convlen)
+ g_assert (convlen >= 0);
+ if ((gsize) convlen >= slen)
{
/* Ensure only whole characters are copied into the buffer. */
gchar *end = g_utf8_find_prev_char (convbuf, convbuf + slen);
diff --git a/glib/gdatetime.c b/glib/gdatetime.c
index a31afe713..0ec390c94 100644
--- a/glib/gdatetime.c
+++ b/glib/gdatetime.c
@@ -622,7 +622,7 @@ g_date_time_get_week_number (GDateTime *datetime,
gint *day_of_week,
gint *day_of_year)
{
- gint a, b, c, d, e, f, g, n, s, month, day, year;
+ gint a, b, c, d, e, f, g, n, s, month = -1, day = -1, year = -1;
g_date_time_get_ymd (datetime, &year, &month, &day);
@@ -893,8 +893,9 @@ static GDateTime *
g_date_time_new_from_timeval (GTimeZone *tz,
const GTimeVal *tv)
{
- if ((gint64) tv->tv_sec > G_MAXINT64 - 1 ||
- !UNIX_TO_INSTANT_IS_VALID ((gint64) tv->tv_sec + 1))
+ gint64 tv_sec = tv->tv_sec;
+
+ if (tv_sec > G_MAXINT64 - 1 || !UNIX_TO_INSTANT_IS_VALID (tv_sec + 1))
return NULL;
return g_date_time_from_instant (tz, tv->tv_usec +
@@ -2341,7 +2342,7 @@ g_date_time_get_day_of_month (GDateTime *datetime)
gint
g_date_time_get_week_numbering_year (GDateTime *datetime)
{
- gint year, month, day, weekday;
+ gint year = -1, month = -1, day = -1, weekday;
g_date_time_get_ymd (datetime, &year, &month, &day);
weekday = g_date_time_get_day_of_week (datetime);
@@ -3491,12 +3492,12 @@ g_date_time_format_iso8601 (GDateTime *datetime)
GString *outstr = NULL;
gchar *main_date = NULL;
gint64 offset;
- gchar *format = "%Y-%m-%dT%H:%M:%S";
+ gchar *format = "%C%y-%m-%dT%H:%M:%S";
/* if datetime has sub-second non-zero values below the second precision we
* should print them as well */
if (datetime->usec % G_TIME_SPAN_SECOND != 0)
- format = "%Y-%m-%dT%H:%M:%S.%f";
+ format = "%C%y-%m-%dT%H:%M:%S.%f";
/* Main date and time. */
main_date = g_date_time_format (datetime, format);
diff --git a/glib/genviron.c b/glib/genviron.c
index 04e9ab0a0..485531ca2 100644
--- a/glib/genviron.c
+++ b/glib/genviron.c
@@ -88,7 +88,7 @@ g_environ_find (gchar **envp,
* Returns the value of the environment variable @variable in the
* provided list @envp.
*
- * Returns: (type filename): the value of the environment variable, or %NULL if
+ * Returns: (type filename) (nullable): the value of the environment variable, or %NULL if
* the environment variable is not set in @envp. The returned
* string is owned by @envp, and will be freed if @variable is
* set or unset again.
@@ -242,7 +242,7 @@ g_environ_unsetenv (gchar **envp,
* On Windows, in case the environment variable's value contains
* references to other environment variables, they are expanded.
*
- * Returns: (type filename): the value of the environment variable, or %NULL if
+ * Returns: (type filename) (nullable): the value of the environment variable, or %NULL if
* the environment variable is not found. The returned string
* may be overwritten by the next call to g_getenv(), g_setenv()
* or g_unsetenv().
@@ -454,7 +454,7 @@ g_getenv (const gchar *variable)
GQuark quark;
gchar *value;
wchar_t dummy[2], *wname, *wvalue;
- int len;
+ DWORD len;
g_return_val_if_fail (variable != NULL, NULL);
g_return_val_if_fail (g_utf8_validate (variable, -1, NULL), NULL);
diff --git a/glib/gerror.h b/glib/gerror.h
index bc9c03a91..33e1d5aa5 100644
--- a/glib/gerror.h
+++ b/glib/gerror.h
@@ -31,7 +31,7 @@ G_BEGIN_DECLS
/**
* GError:
- * @domain: error domain, e.g. #G_FILE_ERROR
+ * @domain: error domain, e.g. %G_FILE_ERROR
* @code: error code, e.g. %G_FILE_ERROR_NOENT
* @message: human-readable informative error message
*
diff --git a/glib/gfileutils.c b/glib/gfileutils.c
index 9ef473101..8681b1326 100644
--- a/glib/gfileutils.c
+++ b/glib/gfileutils.c
@@ -294,14 +294,14 @@ g_mkdir_with_parents (const gchar *pathname,
* @filename: (type filename): a filename to test in the
* GLib file name encoding
* @test: bitfield of #GFileTest flags
- *
+ *
* Returns %TRUE if any of the tests in the bitfield @test are
* %TRUE. For example, `(G_FILE_TEST_EXISTS | G_FILE_TEST_IS_DIR)`
* will return %TRUE if the file exists; the check whether it's a
* directory doesn't matter since the existence test is %TRUE. With
* the current set of available tests, there's no point passing in
* more than one test at a time.
- *
+ *
* Apart from %G_FILE_TEST_IS_SYMLINK all tests follow symbolic links,
* so for a symbolic link to a regular file g_file_test() will return
* %TRUE for both %G_FILE_TEST_IS_SYMLINK and %G_FILE_TEST_IS_REGULAR.
@@ -344,7 +344,7 @@ g_file_test (const gchar *filename,
GFileTest test)
{
#ifdef G_OS_WIN32
- int attributes;
+ DWORD attributes;
wchar_t *wfilename;
#endif
@@ -495,7 +495,7 @@ G_DEFINE_QUARK (g-file-error-quark, g_file_error)
/**
* g_file_error_from_errno:
* @err_no: an "errno" value
- *
+ *
* Gets a #GFileError constant based on the passed-in @err_no.
*
* For example, if you pass in `EEXIST` this function returns
@@ -505,7 +505,7 @@ G_DEFINE_QUARK (g-file-error-quark, g_file_error)
* Normally a #GFileError value goes into a #GError returned
* from a function that manipulates files. So you would use
* g_file_error_from_errno() when constructing a #GError.
- *
+ *
* Returns: #GFileError corresponding to the given @err_no
**/
GFileError
@@ -1000,7 +1000,7 @@ get_contents_win32 (const gchar *filename,
* contents and @length to the length of the file contents in bytes. The string
* stored in @contents will be nul-terminated, so for text files you can pass
* %NULL for the @length argument. If the call was not successful, it returns
- * %FALSE and sets @error. The error domain is #G_FILE_ERROR. Possible error
+ * %FALSE and sets @error. The error domain is %G_FILE_ERROR. Possible error
* codes are those in the #GFileError enumeration. In the error case,
* @contents is set to %NULL and @length is set to zero.
*
@@ -1271,7 +1271,7 @@ g_file_set_contents (const gchar *filename,
* @filename already exists and is open.
*
* If the call was successful, it returns %TRUE. If the call was not successful,
- * it returns %FALSE and sets @error. The error domain is #G_FILE_ERROR.
+ * it returns %FALSE and sets @error. The error domain is %G_FILE_ERROR.
* Possible error codes are those in the #GFileError enumeration.
*
* Note that the name for the temporary file is constructed by appending up
@@ -1833,7 +1833,7 @@ g_file_open_tmp (const gchar *tmpl,
* Note that in contrast to g_mkdtemp() (and mkdtemp()) @tmpl is not
* modified, and might thus be a read-only literal string.
*
- * Returns: (type filename): The actual name used. This string
+ * Returns: (type filename) (transfer full): The actual name used. This string
* should be freed with g_free() when not needed any longer and is
* is in the GLib file name encoding. In case of errors, %NULL is
* returned and @error will be set.
@@ -1967,8 +1967,8 @@ g_build_path_va (const gchar *separator,
* as a string array, instead of varargs. This function is mainly
* meant for language bindings.
*
- * Returns: (type filename): a newly-allocated string that must be freed
- * with g_free().
+ * Returns: (type filename) (transfer full): a newly-allocated string that
+ * must be freed with g_free().
*
* Since: 2.8
*/
@@ -2015,9 +2015,9 @@ g_build_pathv (const gchar *separator,
* Other than for determination of the number of leading and trailing
* copies of the separator, elements consisting only of copies
* of the separator are ignored.
- *
- * Returns: (type filename): a newly-allocated string that must be freed with
- * g_free().
+ *
+ * Returns: (type filename) (transfer full): a newly-allocated string that
+ * must be freed with g_free().
**/
gchar *
g_build_path (const gchar *separator,
@@ -2176,8 +2176,8 @@ g_build_filename_va (const gchar *first_argument,
* Behaves exactly like g_build_filename(), but takes the path elements
* as a va_list. This function is mainly meant for language bindings.
*
- * Returns: (type filename): a newly-allocated string that must be freed
- * with g_free().
+ * Returns: (type filename) (transfer full): a newly-allocated string that
+ * must be freed with g_free().
*
* Since: 2.56
*/
@@ -2199,9 +2199,9 @@ g_build_filename_valist (const gchar *first_element,
* as a string array, instead of varargs. This function is mainly
* meant for language bindings.
*
- * Returns: (type filename): a newly-allocated string that must be freed
- * with g_free().
- *
+ * Returns: (type filename) (transfer full): a newly-allocated string that
+ * must be freed with g_free().
+ *
* Since: 2.8
*/
gchar *
@@ -2229,10 +2229,10 @@ g_build_filenamev (gchar **args)
*
* No attempt is made to force the resulting filename to be an absolute
* path. If the first element is a relative path, the result will
- * be a relative path.
- *
- * Returns: (type filename): a newly-allocated string that must be freed with
- * g_free().
+ * be a relative path.
+ *
+ * Returns: (type filename) (transfer full): a newly-allocated string that
+ * must be freed with g_free().
**/
gchar *
g_build_filename (const gchar *first_element,
@@ -2257,8 +2257,8 @@ g_build_filename (const gchar *first_element,
* readlink() function. The returned string is in the encoding used
* for filenames. Use g_filename_to_utf8() to convert it to UTF-8.
*
- * Returns: (type filename): A newly-allocated string with the contents of
- * the symbolic link, or %NULL if an error occurred.
+ * Returns: (type filename) (transfer full): A newly-allocated string with
+ * the contents of the symbolic link, or %NULL if an error occurred.
*
* Since: 2.4
*/
@@ -2512,8 +2512,8 @@ g_basename (const gchar *file_name)
* separators (and on Windows, possibly a drive letter), a single
* separator is returned. If @file_name is empty, it gets ".".
*
- * Returns: (type filename): a newly allocated string containing the last
- * component of the filename
+ * Returns: (type filename) (transfer full): a newly allocated string
+ * containing the last component of the filename
*/
gchar *
g_path_get_basename (const gchar *file_name)
@@ -2573,7 +2573,7 @@ g_path_get_basename (const gchar *file_name)
* If the file name has no directory components "." is returned.
* The returned string should be freed when no longer needed.
*
- * Returns: (type filename): the directory components of the file
+ * Returns: (type filename) (transfer full): the directory components of the file
*
* Deprecated: use g_path_get_dirname() instead
*/
@@ -2589,7 +2589,7 @@ g_path_get_basename (const gchar *file_name)
* If the file name has no directory components "." is returned.
* The returned string should be freed when no longer needed.
*
- * Returns: (type filename): the directory components of the file
+ * Returns: (type filename) (transfer full): the directory components of the file
*/
gchar *
g_path_get_dirname (const gchar *file_name)
@@ -2852,7 +2852,7 @@ g_canonicalize_filename (const gchar *filename,
* the current directory. This can make a difference in the case that
* the current directory is the target of a symbolic link.
*
- * Returns: (type filename): the current directory
+ * Returns: (type filename) (transfer full): the current directory
*/
gchar *
g_get_current_dir (void)
@@ -2861,7 +2861,7 @@ g_get_current_dir (void)
gchar *dir = NULL;
wchar_t dummy[2], *wdir;
- int len;
+ DWORD len;
len = GetCurrentDirectoryW (2, dummy);
wdir = g_new (wchar_t, len);
diff --git a/glib/ghash.c b/glib/ghash.c
index 48a7db0e2..3d71643c7 100644
--- a/glib/ghash.c
+++ b/glib/ghash.c
@@ -1086,6 +1086,33 @@ g_hash_table_new_full (GHashFunc hash_func,
}
/**
+ * g_hash_table_new_similar:
+ * @other_hash_table: (not nullable) (transfer none): Another #GHashTable
+ *
+ * Creates a new #GHashTable like g_hash_table_new_full() with a reference
+ * count of 1.
+ *
+ * It inherits the hash function, the key equal function, the key destroy function,
+ * as well as the value destroy function, from @other_hash_table.
+ *
+ * The returned hash table will be empty; it will not contain the keys
+ * or values from @other_hash_table.
+ *
+ * Returns: (transfer full) (not nullable): a new #GHashTable
+ * Since: 2.72
+ */
+GHashTable *
+g_hash_table_new_similar (GHashTable *other_hash_table)
+{
+ g_return_val_if_fail (other_hash_table, NULL);
+
+ return g_hash_table_new_full (other_hash_table->hash_func,
+ other_hash_table->key_equal_func,
+ other_hash_table->key_destroy_func,
+ other_hash_table->value_destroy_func);
+}
+
+/**
* g_hash_table_iter_init:
* @iter: an uninitialized #GHashTableIter
* @hash_table: a #GHashTable
diff --git a/glib/ghash.h b/glib/ghash.h
index e9ce64505..4e81d6263 100644
--- a/glib/ghash.h
+++ b/glib/ghash.h
@@ -61,6 +61,8 @@ GHashTable* g_hash_table_new_full (GHashFunc hash_func,
GEqualFunc key_equal_func,
GDestroyNotify key_destroy_func,
GDestroyNotify value_destroy_func);
+GLIB_AVAILABLE_IN_2_72
+GHashTable *g_hash_table_new_similar (GHashTable *other_hash_table);
GLIB_AVAILABLE_IN_ALL
void g_hash_table_destroy (GHashTable *hash_table);
GLIB_AVAILABLE_IN_ALL
diff --git a/glib/ghmac.c b/glib/ghmac.c
index 49fd272f0..54da9f936 100644
--- a/glib/ghmac.c
+++ b/glib/ghmac.c
@@ -127,11 +127,9 @@ g_hmac_new (GChecksumType digest_type,
hmac->digesti = checksum;
hmac->digesto = g_checksum_new (digest_type);
- buffer = g_alloca (block_size);
+ buffer = g_alloca0 (block_size);
pad = g_alloca (block_size);
- memset (buffer, 0, block_size);
-
/* If the key is too long, hash it */
if (key_len > block_size)
{
diff --git a/glib/ghostutils.c b/glib/ghostutils.c
index dff4a1997..24a7d37bb 100644
--- a/glib/ghostutils.c
+++ b/glib/ghostutils.c
@@ -128,15 +128,18 @@ punycode_encode (const gchar *input_utf8,
{
guint delta, handled_chars, num_basic_chars, bias, j, q, k, t, digit;
gunichar n, m, *input;
- glong input_length;
+ glong written_chars;
+ gsize input_length;
gboolean success = FALSE;
/* Convert from UTF-8 to Unicode code points */
input = g_utf8_to_ucs4 (input_utf8, input_utf8_length, NULL,
- &input_length, NULL);
+ &written_chars, NULL);
if (!input)
return FALSE;
+ input_length = (gsize) (written_chars > 0 ? written_chars : 0);
+
/* Copy basic chars */
for (j = num_basic_chars = 0; j < input_length; j++)
{
diff --git a/glib/giochannel.c b/glib/giochannel.c
index e93c4b458..12ca051ad 100644
--- a/glib/giochannel.c
+++ b/glib/giochannel.c
@@ -593,7 +593,7 @@ g_io_channel_purge (GIOChannel *channel)
* @condition: conditions to watch for
*
* Creates a #GSource that's dispatched when @condition is met for the
- * given @channel. For example, if condition is #G_IO_IN, the source will
+ * given @channel. For example, if condition is %G_IO_IN, the source will
* be dispatched when there's data available for reading.
*
* The callback function invoked by the #GSource should be added with
@@ -1180,8 +1180,8 @@ g_io_channel_seek_position (GIOChannel *channel,
* Flushes the write buffer for the GIOChannel.
*
* Returns: the status of the operation: One of
- * #G_IO_STATUS_NORMAL, #G_IO_STATUS_AGAIN, or
- * #G_IO_STATUS_ERROR.
+ * %G_IO_STATUS_NORMAL, %G_IO_STATUS_AGAIN, or
+ * %G_IO_STATUS_ERROR.
**/
GIOStatus
g_io_channel_flush (GIOChannel *channel,
diff --git a/glib/giowin32.c b/glib/giowin32.c
index e4c246d38..7282e1a54 100644
--- a/glib/giowin32.c
+++ b/glib/giowin32.c
@@ -815,7 +815,7 @@ g_io_win32_check (GSource *source)
GIOWin32Watch *watch = (GIOWin32Watch *)source;
GIOWin32Channel *channel = (GIOWin32Channel *)watch->channel;
GIOCondition buffer_condition = g_io_channel_get_buffer_condition (watch->channel);
- WSANETWORKEVENTS events;
+ WSANETWORKEVENTS events = { 0 };
if (channel->debug)
g_print ("g_io_win32_check: source=%p channel=%p", source, channel);
@@ -1023,7 +1023,9 @@ GSourceFuncs g_io_watch_funcs = {
g_io_win32_prepare,
g_io_win32_check,
g_io_win32_dispatch,
- g_io_win32_finalize
+ g_io_win32_finalize,
+ NULL,
+ NULL
};
static GIOStatus
@@ -1289,8 +1291,7 @@ g_io_win32_fd_seek (GIOChannel *channel,
{
GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
int whence, errsv;
- off_t tmp_offset;
- off_t result;
+ gint64 result;
switch (type)
{
@@ -1309,16 +1310,7 @@ g_io_win32_fd_seek (GIOChannel *channel,
g_abort ();
}
- tmp_offset = offset;
- if (tmp_offset != offset)
- {
- g_set_error_literal (err, G_IO_CHANNEL_ERROR,
- g_io_channel_error_from_errno (EINVAL),
- g_strerror (EINVAL));
- return G_IO_STATUS_ERROR;
- }
-
- result = lseek (win32_channel->fd, tmp_offset, whence);
+ result = _lseeki64 (win32_channel->fd, offset, whence);
errsv = errno;
if (result < 0)
@@ -1460,7 +1452,7 @@ g_io_win32_sock_read (GIOChannel *channel,
GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
gint result;
GIOChannelError error;
- int winsock_error;
+ int winsock_error = 0;
if (win32_channel->debug)
g_print ("g_io_win32_sock_read: channel=%p sock=%d count=%" G_GSIZE_FORMAT,
@@ -1521,8 +1513,8 @@ g_io_win32_sock_write (GIOChannel *channel,
GIOWin32Channel *win32_channel = (GIOWin32Channel *)channel;
gint result;
GIOChannelError error;
- int winsock_error;
-
+ int winsock_error = 0;
+
if (win32_channel->debug)
g_print ("g_io_win32_sock_write: channel=%p sock=%d count=%" G_GSIZE_FORMAT,
channel, win32_channel->fd, count);
diff --git a/glib/gkeyfile.c b/glib/gkeyfile.c
index 17cf85660..646097044 100644
--- a/glib/gkeyfile.c
+++ b/glib/gkeyfile.c
@@ -511,8 +511,8 @@ struct _GKeyFile
GKeyFileFlags flags;
- gboolean checked_locales;
- gchar **locales;
+ gboolean checked_locales; /* TRUE if @locales has been initialised */
+ gchar **locales; /* (nullable) */
gint ref_count; /* (atomic) */
};
@@ -575,7 +575,8 @@ static void g_key_file_add_key (GKeyFile
static void g_key_file_add_group (GKeyFile *key_file,
const gchar *group_name);
static gboolean g_key_file_is_group_name (const gchar *name);
-static gboolean g_key_file_is_key_name (const gchar *name);
+static gboolean g_key_file_is_key_name (const gchar *name,
+ gsize len);
static void g_key_file_key_value_pair_free (GKeyFileKeyValuePair *pair);
static gboolean g_key_file_line_is_comment (const gchar *line);
static gboolean g_key_file_line_is_group (const gchar *line);
@@ -598,7 +599,7 @@ static gdouble g_key_file_parse_value_as_double (GKeyFile
static gboolean g_key_file_parse_value_as_boolean (GKeyFile *key_file,
const gchar *value,
GError **error);
-static gchar *g_key_file_parse_boolean_as_value (GKeyFile *key_file,
+static const gchar *g_key_file_parse_boolean_as_value (GKeyFile *key_file,
gboolean value);
static gchar *g_key_file_parse_value_as_comment (GKeyFile *key_file,
const gchar *value,
@@ -617,7 +618,8 @@ static void g_key_file_parse_group (GKeyFile
const gchar *line,
gsize length,
GError **error);
-static gchar *key_get_locale (const gchar *key);
+static const gchar *key_get_locale (const gchar *key,
+ gsize *len_out);
static void g_key_file_parse_data (GKeyFile *key_file,
const gchar *data,
gsize length,
@@ -745,9 +747,10 @@ find_file_in_data_dirs (const gchar *file,
while (data_dirs && (data_dir = *data_dirs) && fd == -1)
{
- gchar *candidate_file, *sub_dir;
+ const gchar *candidate_file;
+ gchar *sub_dir;
- candidate_file = (gchar *) file;
+ candidate_file = file;
sub_dir = g_strdup ("");
while (candidate_file != NULL && fd == -1)
{
@@ -1227,7 +1230,8 @@ g_key_file_unref (GKeyFile *key_file)
*/
static gboolean
g_key_file_locale_is_interesting (GKeyFile *key_file,
- const gchar *locale)
+ const gchar *locale,
+ gsize locale_len)
{
gsize i;
@@ -1236,13 +1240,15 @@ g_key_file_locale_is_interesting (GKeyFile *key_file,
if (!key_file->checked_locales)
{
+ g_assert (key_file->locales == NULL);
key_file->locales = g_strdupv ((gchar **)g_get_language_names ());
key_file->checked_locales = TRUE;
}
for (i = 0; key_file->locales[i] != NULL; i++)
{
- if (g_ascii_strcasecmp (key_file->locales[i], locale) == 0)
+ if (g_ascii_strncasecmp (key_file->locales[i], locale, locale_len) == 0 &&
+ key_file->locales[i][locale_len] == '\0')
return TRUE;
}
@@ -1256,12 +1262,12 @@ g_key_file_parse_line (GKeyFile *key_file,
GError **error)
{
GError *parse_error = NULL;
- gchar *line_start;
+ const gchar *line_start;
g_return_if_fail (key_file != NULL);
g_return_if_fail (line != NULL);
- line_start = (gchar *) line;
+ line_start = line;
while (g_ascii_isspace (*line_start))
line_start++;
@@ -1352,7 +1358,9 @@ g_key_file_parse_key_value_pair (GKeyFile *key_file,
gsize length,
GError **error)
{
- gchar *key, *value, *key_end, *value_start, *locale;
+ gchar *key, *key_end, *value_start;
+ const gchar *locale;
+ gsize locale_len;
gsize key_len, value_len;
if (key_file->current_group == NULL || key_file->current_group->name == NULL)
@@ -1379,37 +1387,36 @@ g_key_file_parse_key_value_pair (GKeyFile *key_file,
g_warn_if_fail (key_len <= length);
- key = g_strndup (line, key_len - 1);
-
- if (!g_key_file_is_key_name (key))
+ if (!g_key_file_is_key_name (line, key_len - 1))
{
g_set_error (error, G_KEY_FILE_ERROR,
G_KEY_FILE_ERROR_PARSE,
- _("Invalid key name: %s"), key);
- g_free (key);
+ _("Invalid key name: %.*s"), (int) key_len - 1, line);
return;
}
+ key = g_strndup (line, key_len - 1);
+
/* Pull the value from the line (chugging leading whitespace)
*/
while (g_ascii_isspace (*value_start))
value_start++;
- value_len = line + length - value_start + 1;
-
- value = g_strndup (value_start, value_len);
+ value_len = line + length - value_start;
g_warn_if_fail (key_file->start_group != NULL);
- if (key_file->current_group
- && key_file->current_group->name
- && strcmp (key_file->start_group->name,
- key_file->current_group->name) == 0
+ /* Checked on entry to this function */
+ g_assert (key_file->current_group != NULL);
+ g_assert (key_file->current_group->name != NULL);
+
+ if (key_file->start_group == key_file->current_group
&& strcmp (key, "Encoding") == 0)
{
- if (g_ascii_strcasecmp (value, "UTF-8") != 0)
+ if (value_len != strlen ("UTF-8") ||
+ g_ascii_strncasecmp (value_start, "UTF-8", value_len) != 0)
{
- gchar *value_utf8 = g_utf8_make_valid (value, value_len);
+ gchar *value_utf8 = g_utf8_make_valid (value_start, value_len);
g_set_error (error, G_KEY_FILE_ERROR,
G_KEY_FILE_ERROR_UNKNOWN_ENCODING,
_("Key file contains unsupported "
@@ -1417,47 +1424,53 @@ g_key_file_parse_key_value_pair (GKeyFile *key_file,
g_free (value_utf8);
g_free (key);
- g_free (value);
return;
}
}
/* Is this key a translation? If so, is it one that we care about?
*/
- locale = key_get_locale (key);
+ locale = key_get_locale (key, &locale_len);
- if (locale == NULL || g_key_file_locale_is_interesting (key_file, locale))
+ if (locale == NULL || g_key_file_locale_is_interesting (key_file, locale, locale_len))
{
GKeyFileKeyValuePair *pair;
pair = g_slice_new (GKeyFileKeyValuePair);
- pair->key = key;
- pair->value = value;
+ pair->key = g_steal_pointer (&key);
+ pair->value = g_strndup (value_start, value_len);
g_key_file_add_key_value_pair (key_file, key_file->current_group, pair);
}
- else
- {
- g_free (key);
- g_free (value);
- }
- g_free (locale);
+ g_free (key);
}
-static gchar *
-key_get_locale (const gchar *key)
+static const gchar *
+key_get_locale (const gchar *key,
+ gsize *len_out)
{
- gchar *locale;
+ const gchar *locale;
+ gsize locale_len;
locale = g_strrstr (key, "[");
+ if (locale != NULL)
+ locale_len = strlen (locale);
+ else
+ locale_len = 0;
- if (locale && strlen (locale) <= 2)
- locale = NULL;
-
- if (locale)
- locale = g_strndup (locale + 1, strlen (locale) - 2);
+ if (locale_len > 2)
+ {
+ locale++; /* skip `[` */
+ locale_len -= 2; /* drop `[` and `]` */
+ }
+ else
+ {
+ locale = NULL;
+ locale_len = 0;
+ }
+ *len_out = locale_len;
return locale;
}
@@ -1634,7 +1647,7 @@ g_key_file_to_data (GKeyFile *key_file,
* returned keys will be %NULL-terminated, so @length may
* optionally be %NULL. In the event that the @group_name cannot
* be found, %NULL is returned and @error is set to
- * #G_KEY_FILE_ERROR_GROUP_NOT_FOUND.
+ * %G_KEY_FILE_ERROR_GROUP_NOT_FOUND.
*
* Returns: (array zero-terminated=1) (transfer full): a newly-allocated %NULL-terminated array of strings.
* Use g_strfreev() to free it.
@@ -1804,9 +1817,9 @@ set_not_found_key_error (const char *group_name,
* Use g_key_file_get_string() to retrieve an unescaped UTF-8 string.
*
* In the event the key cannot be found, %NULL is returned and
- * @error is set to #G_KEY_FILE_ERROR_KEY_NOT_FOUND. In the
+ * @error is set to %G_KEY_FILE_ERROR_KEY_NOT_FOUND. In the
* event that the @group_name cannot be found, %NULL is returned
- * and @error is set to #G_KEY_FILE_ERROR_GROUP_NOT_FOUND.
+ * and @error is set to %G_KEY_FILE_ERROR_GROUP_NOT_FOUND.
*
*
* Returns: a newly allocated string or %NULL if the specified
@@ -1875,8 +1888,8 @@ g_key_file_set_value (GKeyFile *key_file,
GKeyFileKeyValuePair *pair;
g_return_if_fail (key_file != NULL);
- g_return_if_fail (g_key_file_is_group_name (group_name));
- g_return_if_fail (g_key_file_is_key_name (key));
+ g_return_if_fail (group_name != NULL && g_key_file_is_group_name (group_name));
+ g_return_if_fail (key != NULL && g_key_file_is_key_name (key, strlen (key)));
g_return_if_fail (value != NULL);
group = g_key_file_lookup_group (key_file, group_name);
@@ -1914,9 +1927,9 @@ g_key_file_set_value (GKeyFile *key_file,
* like \s.
*
* In the event the key cannot be found, %NULL is returned and
- * @error is set to #G_KEY_FILE_ERROR_KEY_NOT_FOUND. In the
+ * @error is set to %G_KEY_FILE_ERROR_KEY_NOT_FOUND. In the
* event that the @group_name cannot be found, %NULL is returned
- * and @error is set to #G_KEY_FILE_ERROR_GROUP_NOT_FOUND.
+ * and @error is set to %G_KEY_FILE_ERROR_GROUP_NOT_FOUND.
*
* Returns: a newly allocated string or %NULL if the specified
* key cannot be found.
@@ -2025,9 +2038,9 @@ g_key_file_set_string (GKeyFile *key_file,
* Returns the values associated with @key under @group_name.
*
* In the event the key cannot be found, %NULL is returned and
- * @error is set to #G_KEY_FILE_ERROR_KEY_NOT_FOUND. In the
+ * @error is set to %G_KEY_FILE_ERROR_KEY_NOT_FOUND. In the
* event that the @group_name cannot be found, %NULL is returned
- * and @error is set to #G_KEY_FILE_ERROR_GROUP_NOT_FOUND.
+ * and @error is set to %G_KEY_FILE_ERROR_GROUP_NOT_FOUND.
*
* Returns: (array zero-terminated=1 length=length) (element-type utf8) (transfer full):
* a %NULL-terminated string array or %NULL if the specified
@@ -2207,7 +2220,7 @@ g_key_file_set_locale_string (GKeyFile *key_file,
* %G_KEY_FILE_KEEP_TRANSLATIONS in order to load strings for all locales.
*
* If @key cannot be found then %NULL is returned and @error is set
- * to #G_KEY_FILE_ERROR_KEY_NOT_FOUND. If the value associated
+ * to %G_KEY_FILE_ERROR_KEY_NOT_FOUND. If the value associated
* with @key cannot be interpreted or no suitable translation can
* be found then the untranslated value is returned.
*
@@ -2361,7 +2374,7 @@ g_key_file_get_locale_for_key (GKeyFile *key_file,
* %G_KEY_FILE_KEEP_TRANSLATIONS in order to load strings for all locales.
*
* If @key cannot be found then %NULL is returned and @error is set
- * to #G_KEY_FILE_ERROR_KEY_NOT_FOUND. If the values associated
+ * to %G_KEY_FILE_ERROR_KEY_NOT_FOUND. If the values associated
* with @key cannot be interpreted or no suitable translations
* can be found then the untranslated values are returned. The
* returned array is %NULL-terminated, so @length may optionally
@@ -2483,9 +2496,9 @@ g_key_file_set_locale_string_list (GKeyFile *key_file,
* boolean.
*
* If @key cannot be found then %FALSE is returned and @error is set
- * to #G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the value
+ * to %G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the value
* associated with @key cannot be interpreted as a boolean then %FALSE
- * is returned and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
+ * is returned and @error is set to %G_KEY_FILE_ERROR_INVALID_VALUE.
*
* Returns: the value associated with the key as a boolean,
* or %FALSE if the key was not found or could not be parsed.
@@ -2556,13 +2569,12 @@ g_key_file_set_boolean (GKeyFile *key_file,
const gchar *key,
gboolean value)
{
- gchar *result;
+ const gchar *result;
g_return_if_fail (key_file != NULL);
result = g_key_file_parse_boolean_as_value (key_file, value);
g_key_file_set_value (key_file, group_name, key, result);
- g_free (result);
}
/**
@@ -2577,9 +2589,9 @@ g_key_file_set_boolean (GKeyFile *key_file,
* booleans.
*
* If @key cannot be found then %NULL is returned and @error is set to
- * #G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the values associated
+ * %G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the values associated
* with @key cannot be interpreted as booleans then %NULL is returned
- * and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
+ * and @error is set to %G_KEY_FILE_ERROR_INVALID_VALUE.
*
* Returns: (array length=length) (element-type gboolean) (transfer container):
* the values associated with the key as a list of booleans, or %NULL if the
@@ -2673,14 +2685,12 @@ g_key_file_set_boolean_list (GKeyFile *key_file,
value_list = g_string_sized_new (length * 8);
for (i = 0; i < length; i++)
{
- gchar *value;
+ const gchar *value;
value = g_key_file_parse_boolean_as_value (key_file, list[i]);
g_string_append (value_list, value);
g_string_append_c (value_list, key_file->list_separator);
-
- g_free (value);
}
g_key_file_set_value (key_file, group_name, key, value_list->str);
@@ -2698,10 +2708,10 @@ g_key_file_set_boolean_list (GKeyFile *key_file,
* integer.
*
* If @key cannot be found then 0 is returned and @error is set to
- * #G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the value associated
+ * %G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the value associated
* with @key cannot be interpreted as an integer, or is out of range
* for a #gint, then 0 is returned
- * and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
+ * and @error is set to %G_KEY_FILE_ERROR_INVALID_VALUE.
*
* Returns: the value associated with the key as an integer, or
* 0 if the key was not found or could not be parsed.
@@ -2949,10 +2959,10 @@ g_key_file_set_uint64 (GKeyFile *key_file,
* integers.
*
* If @key cannot be found then %NULL is returned and @error is set to
- * #G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the values associated
+ * %G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the values associated
* with @key cannot be interpreted as integers, or are out of range for
* #gint, then %NULL is returned
- * and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
+ * and @error is set to %G_KEY_FILE_ERROR_INVALID_VALUE.
*
* Returns: (array length=length) (element-type gint) (transfer container):
* the values associated with the key as a list of integers, or %NULL if
@@ -3068,9 +3078,9 @@ g_key_file_set_integer_list (GKeyFile *key_file,
* double. If @group_name is %NULL, the start_group is used.
*
* If @key cannot be found then 0.0 is returned and @error is set to
- * #G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the value associated
+ * %G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the value associated
* with @key cannot be interpreted as a double then 0.0 is returned
- * and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
+ * and @error is set to %G_KEY_FILE_ERROR_INVALID_VALUE.
*
* Returns: the value associated with the key as a double, or
* 0.0 if the key was not found or could not be parsed.
@@ -3163,9 +3173,9 @@ g_key_file_set_double (GKeyFile *key_file,
* doubles.
*
* If @key cannot be found then %NULL is returned and @error is set to
- * #G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the values associated
+ * %G_KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if the values associated
* with @key cannot be interpreted as doubles then %NULL is returned
- * and @error is set to #G_KEY_FILE_ERROR_INVALID_VALUE.
+ * and @error is set to %G_KEY_FILE_ERROR_INVALID_VALUE.
*
* Returns: (array length=length) (element-type gdouble) (transfer container):
* the values associated with the key as a list of doubles, or %NULL if the
@@ -3341,7 +3351,7 @@ g_key_file_set_group_comment (GKeyFile *key_file,
{
GKeyFileGroup *group;
- g_return_val_if_fail (g_key_file_is_group_name (group_name), FALSE);
+ g_return_val_if_fail (group_name != NULL && g_key_file_is_group_name (group_name), FALSE);
group = g_key_file_lookup_group (key_file, group_name);
if (!group)
@@ -3471,7 +3481,7 @@ g_key_file_get_key_comment (GKeyFile *key_file,
GString *string;
gchar *comment;
- g_return_val_if_fail (g_key_file_is_group_name (group_name), NULL);
+ g_return_val_if_fail (group_name != NULL && g_key_file_is_group_name (group_name), NULL);
group = g_key_file_lookup_group (key_file, group_name);
if (!group)
@@ -3818,7 +3828,7 @@ g_key_file_add_group (GKeyFile *key_file,
GKeyFileGroup *group;
g_return_if_fail (key_file != NULL);
- g_return_if_fail (g_key_file_is_group_name (group_name));
+ g_return_if_fail (group_name != NULL && g_key_file_is_group_name (group_name));
group = g_key_file_lookup_group (key_file, group_name);
if (group != NULL)
@@ -4083,17 +4093,12 @@ g_key_file_lookup_group_node (GKeyFile *key_file,
const gchar *group_name)
{
GKeyFileGroup *group;
- GList *tmp;
-
- for (tmp = key_file->groups; tmp != NULL; tmp = tmp->next)
- {
- group = (GKeyFileGroup *) tmp->data;
- if (group && group->name && strcmp (group->name, group_name) == 0)
- break;
- }
+ group = g_key_file_lookup_group (key_file, group_name);
+ if (group == NULL)
+ return NULL;
- return tmp;
+ return g_list_find (key_file->groups, group);
}
static GKeyFileGroup *
@@ -4149,12 +4154,11 @@ g_key_file_line_is_comment (const gchar *line)
static gboolean
g_key_file_is_group_name (const gchar *name)
{
- gchar *p, *q;
+ const gchar *p, *q;
- if (name == NULL)
- return FALSE;
+ g_assert (name != NULL);
- p = q = (gchar *) name;
+ p = q = name;
while (*q && *q != ']' && *q != '[' && !g_ascii_iscntrl (*q))
q = g_utf8_find_next_char (q, NULL);
@@ -4165,19 +4169,25 @@ g_key_file_is_group_name (const gchar *name)
}
static gboolean
-g_key_file_is_key_name (const gchar *name)
+g_key_file_is_key_name (const gchar *name,
+ gsize len)
{
- gchar *p, *q;
+ const gchar *p, *q, *end;
- if (name == NULL)
- return FALSE;
+ g_assert (name != NULL);
+
+ p = q = name;
+ end = name + len;
- p = q = (gchar *) name;
/* We accept a little more than the desktop entry spec says,
* since gnome-vfs uses mime-types as keys in its cache.
*/
- while (*q && *q != '=' && *q != '[' && *q != ']')
- q = g_utf8_find_next_char (q, NULL);
+ while (q < end && *q && *q != '=' && *q != '[' && *q != ']')
+ {
+ q = g_utf8_find_next_char (q, end);
+ if (q == NULL)
+ q = end;
+ }
/* No empty keys, please */
if (q == p)
@@ -4194,8 +4204,17 @@ g_key_file_is_key_name (const gchar *name)
if (*q == '[')
{
q++;
- while (*q && (g_unichar_isalnum (g_utf8_get_char_validated (q, -1)) || *q == '-' || *q == '_' || *q == '.' || *q == '@'))
- q = g_utf8_find_next_char (q, NULL);
+ while (q < end &&
+ *q != '\0' &&
+ (g_unichar_isalnum (g_utf8_get_char_validated (q, end - q)) || *q == '-' || *q == '_' || *q == '.' || *q == '@'))
+ {
+ q = g_utf8_find_next_char (q, end);
+ if (q == NULL)
+ {
+ q = end;
+ break;
+ }
+ }
if (*q != ']')
return FALSE;
@@ -4203,7 +4222,7 @@ g_key_file_is_key_name (const gchar *name)
q++;
}
- if (*q != '\0')
+ if (q < end)
return FALSE;
return TRUE;
@@ -4215,9 +4234,9 @@ g_key_file_is_key_name (const gchar *name)
static gboolean
g_key_file_line_is_group (const gchar *line)
{
- gchar *p;
+ const gchar *p;
- p = (gchar *) line;
+ p = line;
if (*p != '[')
return FALSE;
@@ -4243,9 +4262,9 @@ g_key_file_line_is_group (const gchar *line)
static gboolean
g_key_file_line_is_key_value_pair (const gchar *line)
{
- gchar *p;
+ const gchar *p;
- p = (gchar *) g_utf8_strchr (line, -1, '=');
+ p = g_utf8_strchr (line, -1, '=');
if (!p)
return FALSE;
@@ -4264,11 +4283,12 @@ g_key_file_parse_value_as_string (GKeyFile *key_file,
GSList **pieces,
GError **error)
{
- gchar *string_value, *p, *q0, *q;
+ gchar *string_value, *q0, *q;
+ const gchar *p;
string_value = g_new (gchar, strlen (value) + 1);
- p = (gchar *) value;
+ p = value;
q0 = q = string_value;
while (*p)
{
@@ -4363,7 +4383,8 @@ g_key_file_parse_string_as_value (GKeyFile *key_file,
const gchar *string,
gboolean escape_separator)
{
- gchar *value, *p, *q;
+ gchar *value, *q;
+ const gchar *p;
gsize length;
gboolean parsing_leading_space;
@@ -4374,7 +4395,7 @@ g_key_file_parse_string_as_value (GKeyFile *key_file,
*/
value = g_new (gchar, 2 * length);
- p = (gchar *) string;
+ p = string;
q = value;
parsing_leading_space = TRUE;
while (p < (string + length - 1))
@@ -4560,14 +4581,14 @@ g_key_file_parse_value_as_boolean (GKeyFile *key_file,
return FALSE;
}
-static gchar *
+static const gchar *
g_key_file_parse_boolean_as_value (GKeyFile *key_file,
gboolean value)
{
if (value)
- return g_strdup ("true");
+ return "true";
else
- return g_strdup ("false");
+ return "false";
}
static gchar *
diff --git a/glib/glib-init.c b/glib/glib-init.c
index 2958fb5be..e7b4984e6 100644
--- a/glib/glib-init.c
+++ b/glib/glib-init.c
@@ -340,14 +340,48 @@ glib_init (void)
g_error_init ();
}
-#if defined (G_OS_WIN32)
+#ifdef G_PLATFORM_WIN32
+
+HMODULE glib_dll = NULL;
+void glib_win32_init (void);
+
+void
+glib_win32_init (void)
+{
+ /* May be called more than once in static compilation mode */
+ static gboolean win32_already_init = FALSE;
+ if (!win32_already_init)
+ {
+ win32_already_init = TRUE;
+
+ g_crash_handler_win32_init ();
+#ifdef THREADS_WIN32
+ g_thread_win32_init ();
+#endif
+
+ g_clock_win32_init ();
+ glib_init ();
+ /* must go after glib_init */
+ g_console_win32_init ();
+ }
+}
+
+static void
+glib_win32_deinit (gboolean detach_thread)
+{
+#ifdef THREADS_WIN32
+ if (detach_thread)
+ g_thread_win32_process_detach ();
+#endif
+ g_crash_handler_win32_deinit ();
+}
+
+#ifndef GLIB_STATIC_COMPILATION
BOOL WINAPI DllMain (HINSTANCE hinstDLL,
DWORD fdwReason,
LPVOID lpvReserved);
-HMODULE glib_dll;
-
BOOL WINAPI
DllMain (HINSTANCE hinstDLL,
DWORD fdwReason,
@@ -357,14 +391,7 @@ DllMain (HINSTANCE hinstDLL,
{
case DLL_PROCESS_ATTACH:
glib_dll = hinstDLL;
- g_crash_handler_win32_init ();
- g_clock_win32_init ();
-#ifdef THREADS_WIN32
- g_thread_win32_init ();
-#endif
- glib_init ();
- /* must go after glib_init */
- g_console_win32_init ();
+ glib_win32_init ();
break;
case DLL_THREAD_DETACH:
@@ -374,11 +401,7 @@ DllMain (HINSTANCE hinstDLL,
break;
case DLL_PROCESS_DETACH:
-#ifdef THREADS_WIN32
- if (lpvReserved == NULL)
- g_thread_win32_process_detach ();
-#endif
- g_crash_handler_win32_deinit ();
+ glib_win32_deinit (lpvReserved == NULL);
break;
default:
@@ -389,7 +412,35 @@ DllMain (HINSTANCE hinstDLL,
return TRUE;
}
-#elif defined (G_HAS_CONSTRUCTORS)
+#elif defined(G_HAS_CONSTRUCTORS) /* && G_PLATFORM_WIN32 && GLIB_STATIC_COMPILATION */
+#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA
+#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(glib_init_ctor)
+#endif
+#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA
+#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(glib_init_dtor)
+#endif
+
+G_DEFINE_CONSTRUCTOR (glib_init_ctor)
+
+static void
+glib_init_ctor (void)
+{
+ glib_win32_init ();
+}
+
+G_DEFINE_DESTRUCTOR (glib_init_dtor)
+
+static void
+glib_init_dtor (void)
+{
+ glib_win32_deinit (FALSE);
+}
+
+#else /* G_PLATFORM_WIN32 && GLIB_STATIC_COMPILATION && !G_HAS_CONSTRUCTORS */
+#error Your platform/compiler is missing constructor support
+#endif /* GLIB_STATIC_COMPILATION */
+
+#elif defined(G_HAS_CONSTRUCTORS) /* && !G_PLATFORM_WIN32 */
#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA
#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(glib_init_ctor)
@@ -402,6 +453,6 @@ glib_init_ctor (void)
glib_init ();
}
-#else
+#else /* !G_PLATFORM_WIN32 && !G_HAS_CONSTRUCTORS */
# error Your platform/compiler is missing constructor support
-#endif
+#endif /* G_PLATFORM_WIN32 */
diff --git a/glib/glib-init.h b/glib/glib-init.h
index 4c812d9d6..b77164c73 100644
--- a/glib/glib-init.h
+++ b/glib/glib-init.h
@@ -40,7 +40,9 @@ void g_clock_win32_init (void);
void g_crash_handler_win32_init (void);
void g_crash_handler_win32_deinit (void);
gboolean _g_win32_call_rtl_version (OSVERSIONINFOEXW *info);
+
extern HMODULE glib_dll;
+gchar *g_win32_find_helper_executable_path (const gchar *process_name, void *dll_handle);
#endif
#endif /* __GLIB_INIT_H__ */
diff --git a/glib/glib-object.h b/glib/glib-object.h
index fa824f3bb..915a29901 100644
--- a/glib/glib-object.h
+++ b/glib/glib-object.h
@@ -20,6 +20,7 @@
#define __GLIB_GOBJECT_H_INSIDE__
#include <gobject/gbinding.h>
+#include <gobject/gbindinggroup.h>
#include <gobject/gboxed.h>
#include <gobject/genums.h>
#include <gobject/glib-enumtypes.h>
@@ -27,6 +28,7 @@
#include <gobject/gparam.h>
#include <gobject/gparamspecs.h>
#include <gobject/gsignal.h>
+#include <gobject/gsignalgroup.h>
#include <gobject/gsourceclosure.h>
#include <gobject/gtype.h>
#include <gobject/gtypemodule.h>
diff --git a/glib/glib-private.c b/glib/glib-private.c
index 1c0da1947..0a59c6f16 100644
--- a/glib/glib-private.c
+++ b/glib/glib-private.c
@@ -54,6 +54,7 @@ glib__private__ (void)
g_win32_lstat_utf8,
g_win32_readlink_utf8,
g_win32_fstat,
+ g_win32_find_helper_executable_path,
#endif
};
diff --git a/glib/glib-private.h b/glib/glib-private.h
index 1b53fccc0..943252f1b 100644
--- a/glib/glib-private.h
+++ b/glib/glib-private.h
@@ -84,12 +84,42 @@ g_ignore_strv_leak (GStrv strv)
#endif
}
+/*
+ * g_begin_ignore_leaks:
+ *
+ * Tell AddressSanitizer and similar tools to ignore all leaks from this point
+ * onwards, until g_end_ignore_leaks() is called.
+ *
+ * Try to use g_ignore_leak() where possible to target deliberate leaks more
+ * specifically.
+ */
+static inline void
+g_begin_ignore_leaks (void)
+{
+#ifdef _GLIB_ADDRESS_SANITIZER
+ __lsan_disable ();
+#endif
+}
+
+/*
+ * g_end_ignore_leaks:
+ *
+ * Start ignoring leaks again; this must be paired with a previous call to
+ * g_begin_ignore_leaks().
+ */
+static inline void
+g_end_ignore_leaks (void)
+{
+#ifdef _GLIB_ADDRESS_SANITIZER
+ __lsan_enable ();
+#endif
+}
+
GMainContext * g_get_worker_context (void);
gboolean g_check_setuid (void);
GMainContext * g_main_context_new_with_next_id (guint next_id);
#ifdef G_OS_WIN32
-gchar *_glib_get_dll_directory (void);
GLIB_AVAILABLE_IN_ALL
gchar *_glib_get_locale_dir (void);
#endif
@@ -137,6 +167,10 @@ typedef struct {
int (* g_win32_fstat) (int fd,
GWin32PrivateStat *buf);
+
+ /* See gwin32.c */
+ gchar *(*g_win32_find_helper_executable_path) (const gchar *process_name,
+ void *dll_handle);
#endif
diff --git a/glib/glib-unix.c b/glib/glib-unix.c
index 83726da73..fd799eaf7 100644
--- a/glib/glib-unix.c
+++ b/glib/glib-unix.c
@@ -48,7 +48,7 @@ G_STATIC_ASSERT (G_ALIGNOF (GPid) == G_ALIGNOF (pid_t));
* Most of GLib is intended to be portable; in contrast, this set of
* functions is designed for programs which explicitly target UNIX,
* or are using it to build higher level abstractions which would be
- * conditionally compiled if the platform matches G_OS_UNIX.
+ * conditionally compiled if the platform matches %G_OS_UNIX.
*
* To use these functions, you must explicitly include the
* "glib-unix.h" header.
@@ -233,7 +233,7 @@ g_unix_signal_source_new (int signum)
/**
* g_unix_signal_add_full: (rename-to g_unix_signal_add)
* @priority: the priority of the signal source. Typically this will be in
- * the range between #G_PRIORITY_DEFAULT and #G_PRIORITY_HIGH.
+ * the range between %G_PRIORITY_DEFAULT and %G_PRIORITY_HIGH.
* @signum: Signal number
* @handler: Callback
* @user_data: Data for @handler
diff --git a/glib/glib-unix.h b/glib/glib-unix.h
index a5ea9a1c5..53f193b87 100644
--- a/glib/glib-unix.h
+++ b/glib/glib-unix.h
@@ -43,7 +43,7 @@ G_BEGIN_DECLS
*
* Error domain for API in the g_unix_ namespace. Note that there is no
* exported enumeration mapping %errno. Instead, all functions ensure that
- * %errno is relevant. The code for all #G_UNIX_ERROR is always 0, and the
+ * %errno is relevant. The code for all %G_UNIX_ERROR is always 0, and the
* error message is always generated via g_strerror().
*
* It is expected that most code will not look at %errno from these APIs.
diff --git a/glib/glibconfig.h.in b/glib/glibconfig.h.in
index 873cb0314..e66748d95 100644
--- a/glib/glibconfig.h.in
+++ b/glib/glibconfig.h.in
@@ -20,6 +20,8 @@
#mesondefine GLIB_STATIC_COMPILATION
#mesondefine GOBJECT_STATIC_COMPILATION
+#mesondefine G_INTL_STATIC_COMPILATION
+#mesondefine FFI_STATIC_BUILD
G_BEGIN_DECLS
diff --git a/glib/gmacros.h b/glib/gmacros.h
index 7fc34d59d..d528531f4 100644
--- a/glib/gmacros.h
+++ b/glib/gmacros.h
@@ -142,6 +142,7 @@
#define g_macro__has_attribute___deprecated__ G_GNUC_CHECK_VERSION (3, 1)
#define g_macro__has_attribute_may_alias G_GNUC_CHECK_VERSION (3, 3)
#define g_macro__has_attribute_warn_unused_result G_GNUC_CHECK_VERSION (3, 4)
+#define g_macro__has_attribute_cleanup G_GNUC_CHECK_VERSION (3, 3)
#endif
@@ -1187,7 +1188,7 @@
#ifndef __GI_SCANNER__
-#if defined (__GNUC__) || defined (__clang__)
+#if g_macro__has_attribute(cleanup)
/* these macros are private */
#define _GLIB_AUTOPTR_FUNC_NAME(TypeName) glib_autoptr_cleanup_##TypeName
diff --git a/glib/gmain.c b/glib/gmain.c
index ba8e0b08c..94aa1152a 100644
--- a/glib/gmain.c
+++ b/glib/gmain.c
@@ -124,10 +124,14 @@
* Each event source is assigned a priority. The default priority,
* %G_PRIORITY_DEFAULT, is 0. Values less than 0 denote higher priorities.
* Values greater than 0 denote lower priorities. Events from high priority
- * sources are always processed before events from lower priority sources.
+ * sources are always processed before events from lower priority sources: if
+ * several sources are ready to dispatch, the ones with equal-highest priority
+ * will be dispatched on the current #GMainContext iteration, and the rest wait
+ * until a subsequent #GMainContext iteration when they have the highest
+ * priority of the sources which are ready for dispatch.
*
* Idle functions can also be added, and assigned a priority. These will
- * be run whenever no events with a higher priority are ready to be processed.
+ * be run whenever no events with a higher priority are ready to be dispatched.
*
* The #GMainLoop data type represents a main event loop. A GMainLoop is
* created with g_main_loop_new(). After adding the initial event sources,
@@ -177,6 +181,15 @@
* g_main_context_prepare(), g_main_context_query(),
* g_main_context_check() and g_main_context_dispatch().
*
+ * If the event loop thread releases #GMainContext ownership until the results
+ * required by g_main_context_check() are ready you must create a context with
+ * the flag %G_MAIN_CONTEXT_FLAGS_OWNERLESS_POLLING or else you'll lose
+ * g_source_attach() notifications. This happens for instance when you integrate
+ * the GLib event loop into implementations that follow the proactor pattern
+ * (i.e. in these contexts the `poll()` implementation will reclaim the thread for
+ * other tasks until the results are ready). One example of the proactor pattern
+ * is the Boost.Asio library.
+ *
* ## State of a Main Context # {#mainloop-states}
*
* The operation of these functions can best be seen in terms
@@ -270,6 +283,7 @@ struct _GMainContext
GCond cond;
GThread *owner;
guint owner_count;
+ GMainContextFlags flags;
GSList *waiters;
gint ref_count; /* (atomic) */
@@ -659,6 +673,23 @@ g_main_context_new_with_next_id (guint next_id)
GMainContext *
g_main_context_new (void)
{
+ return g_main_context_new_with_flags (G_MAIN_CONTEXT_FLAGS_NONE);
+}
+
+/**
+ * g_main_context_new_with_flags:
+ * @flags: a bitwise-OR combination of #GMainContextFlags flags that can only be
+ * set at creation time.
+ *
+ * Creates a new #GMainContext structure.
+ *
+ * Returns: (transfer full): the new #GMainContext
+ *
+ * Since: 2.72
+ */
+GMainContext *
+g_main_context_new_with_flags (GMainContextFlags flags)
+{
static gsize initialised;
GMainContext *context;
@@ -681,6 +712,7 @@ g_main_context_new (void)
context->sources = g_hash_table_new (NULL, NULL);
context->owner = NULL;
+ context->flags = flags;
context->waiters = NULL;
context->ref_count = 1;
@@ -1248,8 +1280,12 @@ g_source_attach_unlocked (GSource *source,
/* If another thread has acquired the context, wake it up since it
* might be in poll() right now.
*/
- if (do_wakeup && context->owner && context->owner != G_THREAD_SELF)
- g_wakeup_signal (context->wakeup);
+ if (do_wakeup &&
+ (context->flags & G_MAIN_CONTEXT_FLAGS_OWNERLESS_POLLING ||
+ (context->owner && context->owner != G_THREAD_SELF)))
+ {
+ g_wakeup_signal (context->wakeup);
+ }
g_trace_mark (G_TRACE_CURRENT_TIME, 0,
"GLib", "g_source_attach",
@@ -2527,7 +2563,7 @@ g_main_context_find_source_by_user_data (GMainContext *context,
* been reissued, leading to the operation being performed against the
* wrong source.
*
- * Returns: For historical reasons, this function always returns %TRUE
+ * Returns: %TRUE if the source was found and removed.
**/
gboolean
g_source_remove (guint tag)
@@ -4331,6 +4367,9 @@ g_main_loop_run (GMainLoop *loop)
g_return_if_fail (loop != NULL);
g_return_if_fail (g_atomic_int_get (&loop->ref_count) > 0);
+ /* Hold a reference in case the loop is unreffed from a callback function */
+ g_atomic_int_inc (&loop->ref_count);
+
if (!g_main_context_acquire (loop->context))
{
gboolean got_ownership = FALSE;
@@ -4338,7 +4377,6 @@ g_main_loop_run (GMainLoop *loop)
/* Another thread owns this context */
LOCK_CONTEXT (loop->context);
- g_atomic_int_inc (&loop->ref_count);
g_atomic_int_set (&loop->is_running, TRUE);
while (g_atomic_int_get (&loop->is_running) && !got_ownership)
@@ -4364,10 +4402,10 @@ g_main_loop_run (GMainLoop *loop)
{
g_warning ("g_main_loop_run(): called recursively from within a source's "
"check() or prepare() member, iteration not possible.");
+ g_main_loop_unref (loop);
return;
}
- g_atomic_int_inc (&loop->ref_count);
g_atomic_int_set (&loop->is_running, TRUE);
while (g_atomic_int_get (&loop->is_running))
g_main_context_iterate (loop->context, TRUE, TRUE, self);
diff --git a/glib/gmain.h b/glib/gmain.h
index 8e15f3da4..895814a9c 100644
--- a/glib/gmain.h
+++ b/glib/gmain.h
@@ -38,6 +38,26 @@ typedef enum /*< flags >*/
G_IO_NVAL GLIB_SYSDEF_POLLNVAL
} GIOCondition;
+/**
+ * GMainContextFlags:
+ * @G_MAIN_CONTEXT_FLAGS_NONE: Default behaviour.
+ * @G_MAIN_CONTEXT_FLAGS_OWNERLESS_POLLING: Assume that polling for events will
+ * free the thread to process other jobs. That's useful if you're using
+ * `g_main_context_{prepare,query,check,dispatch}` to integrate GMainContext in
+ * other event loops.
+ *
+ * Flags to pass to g_main_context_new_with_flags() which affect the behaviour
+ * of a #GMainContext.
+ *
+ * Since: 2.72
+ */
+GLIB_AVAILABLE_TYPE_IN_2_72
+typedef enum /*< flags >*/
+{
+ G_MAIN_CONTEXT_FLAGS_NONE = 0,
+ G_MAIN_CONTEXT_FLAGS_OWNERLESS_POLLING = 1
+} GMainContextFlags;
+
/**
* GMainContext:
@@ -102,8 +122,8 @@ typedef struct _GSourceCallbackFuncs GSourceCallbackFuncs;
* connected to a callback using g_source_set_callback(). The @dispatch
* function should call the callback function with @user_data and whatever
* additional parameters are needed for this type of event source. The
- * return value of the @dispatch function should be #G_SOURCE_REMOVE if the
- * source should be removed or #G_SOURCE_CONTINUE to keep it.
+ * return value of the @dispatch function should be %G_SOURCE_REMOVE if the
+ * source should be removed or %G_SOURCE_CONTINUE to keep it.
* @finalize: Called when the source is finalized. At this point, the source
* will have been destroyed, had its callback cleared, and have been removed
* from its #GMainContext, but it will still have its final reference count,
@@ -167,8 +187,8 @@ typedef struct _GSourceFuncs GSourceFuncs;
* different type to this type. Use G_SOURCE_FUNC() to avoid warnings about
* incompatible function types.
*
- * Returns: %FALSE if the source should be removed. #G_SOURCE_CONTINUE and
- * #G_SOURCE_REMOVE are more memorable names for the return value.
+ * Returns: %FALSE if the source should be removed. %G_SOURCE_CONTINUE and
+ * %G_SOURCE_REMOVE are more memorable names for the return value.
*/
typedef gboolean (*GSourceFunc) (gpointer user_data);
@@ -308,8 +328,8 @@ struct _GSourceFuncs
*
* Use this for high priority idle functions.
*
- * GTK+ uses #G_PRIORITY_HIGH_IDLE + 10 for resizing operations,
- * and #G_PRIORITY_HIGH_IDLE + 20 for redrawing operations. (This is
+ * GTK+ uses %G_PRIORITY_HIGH_IDLE + 10 for resizing operations,
+ * and %G_PRIORITY_HIGH_IDLE + 20 for redrawing operations. (This is
* done to ensure that any pending resizes are processed before any
* pending redraws, so that widgets are not redrawn twice unnecessarily.)
*/
@@ -358,6 +378,10 @@ struct _GSourceFuncs
GLIB_AVAILABLE_IN_ALL
GMainContext *g_main_context_new (void);
+G_GNUC_BEGIN_IGNORE_DEPRECATIONS
+GLIB_AVAILABLE_IN_2_72
+GMainContext *g_main_context_new_with_flags (GMainContextFlags flags);
+G_GNUC_END_IGNORE_DEPRECATIONS
GLIB_AVAILABLE_IN_ALL
GMainContext *g_main_context_ref (GMainContext *context);
GLIB_AVAILABLE_IN_ALL
diff --git a/glib/gmappedfile.c b/glib/gmappedfile.c
index 36e7ca5a8..fb42011b5 100644
--- a/glib/gmappedfile.c
+++ b/glib/gmappedfile.c
@@ -232,7 +232,7 @@ mapped_file_new_from_fd (int fd,
* If @filename is the name of an empty, regular file, the function
* will successfully return an empty #GMappedFile. In other cases of
* size 0 (e.g. device files such as /dev/null), @error will be set
- * to the #GFileError value #G_FILE_ERROR_INVAL.
+ * to the #GFileError value %G_FILE_ERROR_INVAL.
*
* Returns: a newly allocated #GMappedFile which must be unref'd
* with g_mapped_file_unref(), or %NULL if the mapping failed.
diff --git a/glib/gmarkup.c b/glib/gmarkup.c
index b8327fb6d..cfebed3e2 100644
--- a/glib/gmarkup.c
+++ b/glib/gmarkup.c
@@ -1032,7 +1032,7 @@ emit_start_element (GMarkupParseContext *context,
*/
if ((context->flags & G_MARKUP_IGNORE_QUALIFIED) && strchr (current_element (context), ':'))
{
- static const GMarkupParser ignore_parser;
+ static const GMarkupParser ignore_parser = { 0 };
g_markup_parse_context_push (context, &ignore_parser, NULL);
clear_attributes (context);
return;
diff --git a/glib/gmem.c b/glib/gmem.c
index 605eac1ff..060e91af9 100644
--- a/glib/gmem.c
+++ b/glib/gmem.c
@@ -30,6 +30,25 @@
#include "gmem.h"
+#if defined(HAVE_POSIX_MEMALIGN) && !defined(_XOPEN_SOURCE)
+# define _XOPEN_SOURCE 600
+#endif
+
+#if defined(HAVE_MEMALIGN) || defined(HAVE__ALIGNED_MALLOC)
+/* Required for _aligned_malloc() and _aligned_free() on Windows */
+#include <malloc.h>
+#endif
+
+#ifdef HAVE__ALIGNED_MALLOC
+/* _aligned_malloc() takes parameters of aligned_malloc() in reverse order */
+# define aligned_alloc(alignment, size) _aligned_malloc (size, alignment)
+
+/* _aligned_malloc()'ed memory must be freed by _align_free() on MSVC */
+# define aligned_free(x) _aligned_free (x)
+#else
+# define aligned_free(x) free (x)
+#endif
+
#include <stdlib.h>
#include <string.h>
#include <signal.h>
@@ -522,3 +541,141 @@ g_mem_profile (void)
{
g_warning (G_STRLOC ": memory profiling not supported");
}
+
+/**
+ * g_aligned_alloc:
+ * @n_blocks: the number of blocks to allocate
+ * @n_block_bytes: the size of each block in bytes
+ * @alignment: the alignment to be enforced, which must be a positive power of 2
+ * and a multiple of `sizeof(void*)`
+ *
+ * This function is similar to g_malloc(), allocating (@n_blocks * @n_block_bytes)
+ * bytes, but care is taken to align the allocated memory to with the given
+ * alignment value. Additionally, it will detect possible overflow during
+ * multiplication.
+ *
+ * Aligned memory allocations returned by this function can only be
+ * freed using g_aligned_free().
+ *
+ * Returns: (transfer full): the allocated memory
+ *
+ * Since: 2.72
+ */
+gpointer
+g_aligned_alloc (gsize n_blocks,
+ gsize n_block_bytes,
+ gsize alignment)
+{
+ gpointer res = NULL;
+ gsize real_size;
+
+ if (G_UNLIKELY ((alignment == 0) || (alignment & (alignment - 1)) != 0))
+ {
+ g_error ("%s: alignment %"G_GSIZE_FORMAT" must be a positive power of two",
+ G_STRLOC, alignment);
+ }
+
+ if (G_UNLIKELY ((alignment % sizeof (void *)) != 0))
+ {
+ g_error ("%s: alignment %"G_GSIZE_FORMAT" must be a multiple of %"G_GSIZE_FORMAT,
+ G_STRLOC, alignment, sizeof (void *));
+ }
+
+ if (SIZE_OVERFLOWS (n_blocks, n_block_bytes))
+ {
+ g_error ("%s: overflow allocating %"G_GSIZE_FORMAT"*%"G_GSIZE_FORMAT" bytes",
+ G_STRLOC, n_blocks, n_block_bytes);
+ }
+
+ real_size = n_blocks * n_block_bytes;
+
+ if (G_UNLIKELY (real_size == 0))
+ {
+ TRACE(GLIB_MEM_ALLOC((void*) NULL, (int) real_size, 0, 0));
+ return NULL;
+ }
+
+ /* We need to clear errno because posix_memalign() will use its return
+ * value in the same way memalign() and aligned_alloc() will set errno.
+ * Additionally, posix_memalign() will warn if its return value is left
+ * unassigned.
+ *
+ * We handle all possible return values (ENOMEM and EINVAL) with either
+ * precondition or postcondition checking.
+ */
+ errno = 0;
+
+#if defined(HAVE_POSIX_MEMALIGN)
+ errno = posix_memalign (&res, alignment, real_size);
+#elif defined(HAVE_ALIGNED_ALLOC) || defined(HAVE__ALIGNED_MALLOC)
+ /* real_size must be a multiple of alignment */
+ if (real_size % alignment != 0)
+ {
+ gsize offset = real_size % alignment;
+
+ if (G_MAXSIZE - real_size < (alignment - offset))
+ {
+ g_error ("%s: overflow allocating %"G_GSIZE_FORMAT"+%"G_GSIZE_FORMAT" bytes",
+ G_STRLOC, real_size, (alignment - offset));
+ }
+
+ real_size += (alignment - offset);
+ }
+
+ res = aligned_alloc (alignment, real_size);
+#elif defined(HAVE_MEMALIGN)
+ res = memalign (alignment, real_size);
+#else
+# error "This platform does not have an aligned memory allocator."
+#endif
+
+ TRACE (GLIB_MEM_ALLOC((void*) res, (unsigned int) real_size, 0, 0));
+ if (res)
+ return res;
+
+ g_error ("%s: failed to allocate %"G_GSIZE_FORMAT" bytes",
+ G_STRLOC, real_size);
+
+ return NULL;
+}
+
+/**
+ * g_aligned_alloc0:
+ * @n_blocks: the number of blocks to allocate
+ * @n_block_bytes: the size of each block in bytes
+ * @alignment: the alignment to be enforced, which must be a positive power of 2
+ * and a multiple of `sizeof(void*)`
+ *
+ * This function is similar to g_aligned_alloc(), but it will
+ * also clear the allocated memory before returning it.
+ *
+ * Returns: (transfer full): the allocated, cleared memory
+ *
+ * Since: 2.72
+ */
+gpointer
+g_aligned_alloc0 (gsize n_blocks,
+ gsize n_block_bytes,
+ gsize alignment)
+{
+ gpointer res = g_aligned_alloc (n_blocks, n_block_bytes, alignment);
+
+ if (G_LIKELY (res != NULL))
+ memset (res, 0, n_blocks * n_block_bytes);
+
+ return res;
+}
+
+/**
+ * g_aligned_free:
+ * @mem: (nullable): the memory to deallocate
+ *
+ * Frees the memory allocated by g_aligned_alloc().
+ *
+ * Since: 2.72
+ */
+void
+g_aligned_free (gpointer mem)
+{
+ aligned_free (mem);
+}
diff --git a/glib/gmem.h b/glib/gmem.h
index 47c4735ac..d29907a67 100644
--- a/glib/gmem.h
+++ b/glib/gmem.h
@@ -111,6 +111,17 @@ gpointer g_try_realloc_n (gpointer mem,
gsize n_blocks,
gsize n_block_bytes) G_GNUC_WARN_UNUSED_RESULT;
+GLIB_AVAILABLE_IN_2_72
+gpointer g_aligned_alloc (gsize n_blocks,
+ gsize n_block_bytes,
+ gsize alignment) G_GNUC_WARN_UNUSED_RESULT G_GNUC_ALLOC_SIZE2(1,2);
+GLIB_AVAILABLE_IN_2_72
+gpointer g_aligned_alloc0 (gsize n_blocks,
+ gsize n_block_bytes,
+ gsize alignment) G_GNUC_WARN_UNUSED_RESULT G_GNUC_ALLOC_SIZE2(1,2);
+GLIB_AVAILABLE_IN_2_72
+void g_aligned_free (gpointer mem);
+
#if defined(glib_typeof) && GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_58
#define g_clear_pointer(pp, destroy) \
G_STMT_START \
diff --git a/glib/gmessages.c b/glib/gmessages.c
index 2e8a34817..008bf5c13 100644
--- a/glib/gmessages.c
+++ b/glib/gmessages.c
@@ -525,6 +525,7 @@ static gpointer fatal_log_data;
static GLogWriterFunc log_writer_func = g_log_writer_default;
static gpointer log_writer_user_data = NULL;
static GDestroyNotify log_writer_user_data_free = NULL;
+static gboolean g_log_debug_enabled = FALSE; /* (atomic) */
/* --- functions --- */
@@ -1819,7 +1820,7 @@ g_log_structured (const gchar *log_domain,
* contain the text shown to the user.
*
* The values in the @fields dictionary are likely to be of type String
- * (#G_VARIANT_TYPE_STRING). Array of bytes (#G_VARIANT_TYPE_BYTESTRING) is also
+ * (%G_VARIANT_TYPE_STRING). Array of bytes (%G_VARIANT_TYPE_BYTESTRING) is also
* supported. In this case the message is handled as binary and will be forwarded
* to the log writer as such. The size of the array should not be higher than
* %G_MAXSSIZE. Otherwise it will be truncated to this size. For other types
@@ -2650,7 +2651,9 @@ should_drop_message (GLogLevelFlags log_level,
gsize n_fields)
{
/* Disable debug message output unless specified in G_MESSAGES_DEBUG. */
- if (!(log_level & DEFAULT_LEVELS) && !(log_level >> G_LOG_LEVEL_USER_SHIFT))
+ if (!(log_level & DEFAULT_LEVELS) &&
+ !(log_level >> G_LOG_LEVEL_USER_SHIFT) &&
+ !g_log_get_debug_enabled ())
{
const gchar *domains;
gsize i;
@@ -2882,6 +2885,47 @@ _g_log_writer_fallback (GLogLevelFlags log_level,
}
/**
+ * g_log_get_debug_enabled:
+ *
+ * Return whether debug output from the GLib logging system is enabled.
+ *
+ * Note that this should not be used to conditionalise calls to g_debug() or
+ * other logging functions; it should only be used from %GLogWriterFunc
+ * implementations.
+ *
+ * Note also that the value of this does not depend on `G_MESSAGES_DEBUG`; see
+ * the docs for g_log_set_debug_enabled().
+ *
+ * Returns: %TRUE if debug output is enabled, %FALSE otherwise
+ *
+ * Since: 2.72
+ */
+gboolean
+g_log_get_debug_enabled (void)
+{
+ return g_atomic_int_get (&g_log_debug_enabled);
+}
+
+/**
+ * g_log_set_debug_enabled:
+ * @enabled: %TRUE to enable debug output, %FALSE otherwise
+ *
+ * Enable or disable debug output from the GLib logging system for all domains.
+ * This value interacts disjunctively with `G_MESSAGES_DEBUG` — if either of
+ * them would allow a debug message to be outputted, it will be.
+ *
+ * Note that this should not be used from within library code to enable debug
+ * output — it is intended for external use.
+ *
+ * Since: 2.72
+ */
+void
+g_log_set_debug_enabled (gboolean enabled)
+{
+ g_atomic_int_set (&g_log_debug_enabled, enabled);
+}
+
+/**
* g_return_if_fail_warning: (skip)
* @log_domain: (nullable): log domain
* @pretty_function: function containing the assertion
diff --git a/glib/gmessages.h b/glib/gmessages.h
index f0b3a8685..c7efd5376 100644
--- a/glib/gmessages.h
+++ b/glib/gmessages.h
@@ -249,6 +249,12 @@ GLIB_AVAILABLE_IN_2_68
gboolean g_log_writer_default_would_drop (GLogLevelFlags log_level,
const char *log_domain);
+/* G_MESSAGES_DEBUG enablement */
+GLIB_AVAILABLE_IN_2_72
+gboolean g_log_get_debug_enabled (void);
+GLIB_AVAILABLE_IN_2_72
+void g_log_set_debug_enabled (gboolean enabled);
+
/**
* G_DEBUG_HERE:
*
diff --git a/glib/gmirroringtable.h b/glib/gmirroringtable.h
index dd8f18a7c..891e650c0 100644
--- a/glib/gmirroringtable.h
+++ b/glib/gmirroringtable.h
@@ -12,15 +12,15 @@
use GLIB_GET_MIRRORING_DELTA(key) to access your table
assumed sizeof(gint16): 2
- required memory: 1008
+ required memory: 1116
lookups: 4
partition shape: Mir[256][16][4][4]
- different table entries: 1 14 56 38
+ different table entries: 1 15 57 49
*/
/* *INDENT-OFF* */
-static const gint16 MirLev3[4*38] = {
+static const gint16 MirLev3[4*49] = {
#define MirLev3_0000 0x0
0,0,0,0,
#define MirLev3_0028 0x4
@@ -49,57 +49,79 @@ static const gint16 MirLev3[4*38] = {
-3,-3,0,0,
#define MirLev3_2214 0x34
0,2016,0,0,
-#define MirLev3_2240 0x38
+#define MirLev3_221C 0x38
+ 0,0,0,2527,
+#define MirLev3_2220 0x3C
+ 1923,1914,1918,0,
+#define MirLev3_2224 0x40
+ 2250,0,0,0,
+#define MirLev3_2240 0x44
0,0,0,138,
-#define MirLev3_2264 0x3C
+#define MirLev3_2244 0x48
+ 0,7,0,0,
+#define MirLev3_224C 0x4C
+ -7,0,0,0,
+#define MirLev3_2264 0x50
1,-1,1,-1,
-#define MirLev3_2290 0x40
+#define MirLev3_2290 0x54
-1,1,-1,0,
-#define MirLev3_2298 0x44
+#define MirLev3_2298 0x58
1824,0,0,0,
-#define MirLev3_22A4 0x48
+#define MirLev3_22A4 0x5C
0,0,2104,0,
-#define MirLev3_22A8 0x4C
+#define MirLev3_22A8 0x60
2108,2106,0,2106,
-#define MirLev3_22C8 0x50
+#define MirLev3_22B8 0x64
+ 1316,0,0,0,
+#define MirLev3_22C8 0x68
0,1,-1,1,
-#define MirLev3_22CC 0x54
+#define MirLev3_22CC 0x6C
-1,-138,0,0,
-#define MirLev3_22F0 0x58
+#define MirLev3_22F0 0x70
1,-1,8,8,
-#define MirLev3_22F4 0x5C
+#define MirLev3_22F4 0x74
8,0,7,7,
-#define MirLev3_22F8 0x60
+#define MirLev3_22F8 0x78
0,0,-8,-8,
-#define MirLev3_22FC 0x64
+#define MirLev3_22FC 0x7C
-8,-7,-7,0,
-#define MirLev3_2984 0x68
+#define MirLev3_27C8 0x80
+ 1,-1,0,2,
+#define MirLev3_27DC 0x84
+ -1316,1,-1,0,
+#define MirLev3_2984 0x88
-1,1,-1,1,
-#define MirLev3_298C 0x6C
+#define MirLev3_298C 0x8C
-1,3,1,-1,
-#define MirLev3_2990 0x70
+#define MirLev3_2990 0x90
-3,1,-1,1,
-#define MirLev3_29B8 0x74
+#define MirLev3_2998 0x94
+ -1,0,0,-1914,
+#define MirLev3_29A0 0x98
+ -1918,0,0,-1923,
+#define MirLev3_29B8 0x9C
-1824,0,0,0,
-#define MirLev3_29F4 0x78
+#define MirLev3_29F4 0xA0
0,-2016,0,0,
-#define MirLev3_2AAC 0x7C
+#define MirLev3_2AAC 0xA4
1,-1,0,1,
-#define MirLev3_2AB0 0x80
- -1,0,0,1,
-#define MirLev3_2ADC 0x84
+#define MirLev3_2ADC 0xA8
0,0,-2104,0,
-#define MirLev3_2AE0 0x88
+#define MirLev3_2AE0 0xAC
0,0,0,-2106,
-#define MirLev3_2AE4 0x8C
+#define MirLev3_2AE4 0xB0
-2108,-2106,0,0,
-#define MirLev3_FF5C 0x90
+#define MirLev3_2AEC 0xB4
+ 1,-1,-2250,0,
+#define MirLev3_2BFC 0xB8
+ 0,0,-2527,0,
+#define MirLev3_FF5C 0xBC
0,-2,0,1,
-#define MirLev3_FF60 0x94
+#define MirLev3_FF60 0xC0
-1,0,1,-1,
};
-static const PACKTAB_UINT8 MirLev2[4*56] = {
+static const PACKTAB_UINT8 MirLev2[4*57] = {
#define MirLev2_0000 0x0
MirLev3_0000, /* 0000..0003 */
MirLev3_0000, /* 0004..0007 */
@@ -164,192 +186,192 @@ static const PACKTAB_UINT8 MirLev2[4*56] = {
MirLev3_0000, /* 2210..2213 */
MirLev3_2214, /* 2214..2217 */
MirLev3_0000, /* 2218..221B */
- MirLev3_0000, /* 221C..221F */
-#define MirLev2_2230 0x34
+ MirLev3_221C, /* 221C..221F */
+#define MirLev2_2220 0x34
+ MirLev3_2220, /* 2220..2223 */
+ MirLev3_2224, /* 2224..2227 */
+ MirLev3_0000, /* 2228..222B */
+ MirLev3_0000, /* 222C..222F */
+#define MirLev2_2230 0x38
MirLev3_0000, /* 2230..2233 */
MirLev3_0000, /* 2234..2237 */
MirLev3_0000, /* 2238..223B */
MirLev3_0028, /* 223C..223F */
-#define MirLev2_2240 0x38
+#define MirLev2_2240 0x3C
MirLev3_2240, /* 2240..2243 */
- MirLev3_0000, /* 2244..2247 */
+ MirLev3_2244, /* 2244..2247 */
MirLev3_0000, /* 2248..224B */
- MirLev3_0000, /* 224C..224F */
-#define MirLev2_2250 0x3C
+ MirLev3_224C, /* 224C..224F */
+#define MirLev2_2250 0x40
MirLev3_0F38, /* 2250..2253 */
MirLev3_0028, /* 2254..2257 */
MirLev3_0000, /* 2258..225B */
MirLev3_0000, /* 225C..225F */
-#define MirLev2_2260 0x40
+#define MirLev2_2260 0x44
MirLev3_0000, /* 2260..2263 */
MirLev3_2264, /* 2264..2267 */
MirLev3_2264, /* 2268..226B */
MirLev3_0F38, /* 226C..226F */
-#define MirLev2_2270 0x44
+#define MirLev2_2270 0x48
MirLev3_2264, /* 2270..2273 */
MirLev3_2264, /* 2274..2277 */
MirLev3_2264, /* 2278..227B */
MirLev3_2264, /* 227C..227F */
-#define MirLev2_2280 0x48
+#define MirLev2_2280 0x4C
MirLev3_2264, /* 2280..2283 */
MirLev3_2264, /* 2284..2287 */
MirLev3_2264, /* 2288..228B */
MirLev3_1698, /* 228C..228F */
-#define MirLev2_2290 0x4C
+#define MirLev2_2290 0x50
MirLev3_2290, /* 2290..2293 */
MirLev3_0000, /* 2294..2297 */
MirLev3_2298, /* 2298..229B */
MirLev3_0000, /* 229C..229F */
-#define MirLev2_22A0 0x50
+#define MirLev2_22A0 0x54
MirLev3_0F38, /* 22A0..22A3 */
MirLev3_22A4, /* 22A4..22A7 */
MirLev3_22A8, /* 22A8..22AB */
MirLev3_0000, /* 22AC..22AF */
-#define MirLev2_22B0 0x54
+#define MirLev2_22B0 0x58
MirLev3_2264, /* 22B0..22B3 */
MirLev3_2264, /* 22B4..22B7 */
- MirLev3_0000, /* 22B8..22BB */
+ MirLev3_22B8, /* 22B8..22BB */
MirLev3_0000, /* 22BC..22BF */
-#define MirLev2_22C0 0x58
+#define MirLev2_22C0 0x5C
MirLev3_0000, /* 22C0..22C3 */
MirLev3_0000, /* 22C4..22C7 */
MirLev3_22C8, /* 22C8..22CB */
MirLev3_22CC, /* 22CC..22CF */
-#define MirLev2_22D0 0x5C
+#define MirLev2_22D0 0x60
MirLev3_0028, /* 22D0..22D3 */
MirLev3_0F38, /* 22D4..22D7 */
MirLev3_2264, /* 22D8..22DB */
MirLev3_2264, /* 22DC..22DF */
-#define MirLev2_22E0 0x60
+#define MirLev2_22E0 0x64
MirLev3_2264, /* 22E0..22E3 */
MirLev3_2264, /* 22E4..22E7 */
MirLev3_2264, /* 22E8..22EB */
MirLev3_0028, /* 22EC..22EF */
-#define MirLev2_22F0 0x64
+#define MirLev2_22F0 0x68
MirLev3_22F0, /* 22F0..22F3 */
MirLev3_22F4, /* 22F4..22F7 */
MirLev3_22F8, /* 22F8..22FB */
MirLev3_22FC, /* 22FC..22FF */
-#define MirLev2_2300 0x68
+#define MirLev2_2300 0x6C
MirLev3_0000, /* 2300..2303 */
MirLev3_0000, /* 2304..2307 */
MirLev3_2264, /* 2308..230B */
MirLev3_0000, /* 230C..230F */
-#define MirLev2_2760 0x6C
+#define MirLev2_2760 0x70
MirLev3_0000, /* 2760..2763 */
MirLev3_0000, /* 2764..2767 */
MirLev3_2264, /* 2768..276B */
MirLev3_2264, /* 276C..276F */
-#define MirLev2_2770 0x70
+#define MirLev2_2770 0x74
MirLev3_2264, /* 2770..2773 */
MirLev3_0028, /* 2774..2777 */
MirLev3_0000, /* 2778..277B */
MirLev3_0000, /* 277C..277F */
-#define MirLev2_27C0 0x74
+#define MirLev2_27C0 0x78
MirLev3_1698, /* 27C0..27C3 */
MirLev3_2290, /* 27C4..27C7 */
- MirLev3_0028, /* 27C8..27CB */
- MirLev3_0000, /* 27CC..27CF */
-#define MirLev2_27D0 0x78
+ MirLev3_27C8, /* 27C8..27CB */
+ MirLev3_005C, /* 27CC..27CF */
+#define MirLev2_27D0 0x7C
MirLev3_0000, /* 27D0..27D3 */
MirLev3_2038, /* 27D4..27D7 */
MirLev3_0000, /* 27D8..27DB */
- MirLev3_2038, /* 27DC..27DF */
-#define MirLev2_27E0 0x7C
+ MirLev3_27DC, /* 27DC..27DF */
+#define MirLev2_27E0 0x80
MirLev3_0F38, /* 27E0..27E3 */
MirLev3_2264, /* 27E4..27E7 */
MirLev3_2264, /* 27E8..27EB */
MirLev3_2264, /* 27EC..27EF */
-#define MirLev2_2980 0x80
+#define MirLev2_2980 0x84
MirLev3_1698, /* 2980..2983 */
MirLev3_2984, /* 2984..2987 */
MirLev3_2984, /* 2988..298B */
MirLev3_298C, /* 298C..298F */
-#define MirLev2_2990 0x84
+#define MirLev2_2990 0x88
MirLev3_2990, /* 2990..2993 */
MirLev3_2984, /* 2994..2997 */
- MirLev3_169C, /* 2998..299B */
+ MirLev3_2998, /* 2998..299B */
MirLev3_0000, /* 299C..299F */
-#define MirLev2_29B0 0x88
+#define MirLev2_29A0 0x8C
+ MirLev3_29A0, /* 29A0..29A3 */
+ MirLev3_0028, /* 29A4..29A7 */
+ MirLev3_2264, /* 29A8..29AB */
+ MirLev3_2264, /* 29AC..29AF */
+#define MirLev2_29B0 0x90
MirLev3_0000, /* 29B0..29B3 */
MirLev3_0000, /* 29B4..29B7 */
MirLev3_29B8, /* 29B8..29BB */
MirLev3_0000, /* 29BC..29BF */
-#define MirLev2_29C0 0x8C
+#define MirLev2_29C0 0x94
MirLev3_0028, /* 29C0..29C3 */
MirLev3_0028, /* 29C4..29C7 */
MirLev3_0000, /* 29C8..29CB */
MirLev3_1698, /* 29CC..29CF */
-#define MirLev2_29D0 0x90
+#define MirLev2_29D0 0x98
MirLev3_2290, /* 29D0..29D3 */
MirLev3_0028, /* 29D4..29D7 */
MirLev3_2264, /* 29D8..29DB */
MirLev3_0000, /* 29DC..29DF */
-#define MirLev2_29F0 0x94
+#define MirLev2_29F0 0x9C
MirLev3_0000, /* 29F0..29F3 */
MirLev3_29F4, /* 29F4..29F7 */
MirLev3_0028, /* 29F8..29FB */
MirLev3_0028, /* 29FC..29FF */
-#define MirLev2_2A20 0x98
+#define MirLev2_2A20 0xA0
MirLev3_0000, /* 2A20..2A23 */
MirLev3_0000, /* 2A24..2A27 */
MirLev3_1698, /* 2A28..2A2B */
MirLev3_2290, /* 2A2C..2A2F */
-#define MirLev2_2A30 0x9C
+#define MirLev2_2A30 0xA4
MirLev3_0000, /* 2A30..2A33 */
MirLev3_0028, /* 2A34..2A37 */
MirLev3_0000, /* 2A38..2A3B */
MirLev3_0028, /* 2A3C..2A3F */
-#define MirLev2_2A60 0xA0
+#define MirLev2_2A60 0xA8
MirLev3_0000, /* 2A60..2A63 */
MirLev3_0028, /* 2A64..2A67 */
MirLev3_0000, /* 2A68..2A6B */
MirLev3_0000, /* 2A6C..2A6F */
-#define MirLev2_2A70 0xA4
+#define MirLev2_2A70 0xAC
MirLev3_0000, /* 2A70..2A73 */
MirLev3_0000, /* 2A74..2A77 */
- MirLev3_2038, /* 2A78..2A7B */
- MirLev3_22C8, /* 2A7C..2A7F */
-#define MirLev2_2A80 0xA8
+ MirLev3_22C8, /* 2A78..2A7B */
+ MirLev3_2984, /* 2A7C..2A7F */
+#define MirLev2_2A80 0xB0
MirLev3_2984, /* 2A80..2A83 */
- MirLev3_169C, /* 2A84..2A87 */
- MirLev3_1698, /* 2A88..2A8B */
- MirLev3_169C, /* 2A8C..2A8F */
-#define MirLev2_2A90 0xAC
- MirLev3_22C8, /* 2A90..2A93 */
- MirLev3_2984, /* 2A94..2A97 */
- MirLev3_2984, /* 2A98..2A9B */
- MirLev3_169C, /* 2A9C..2A9F */
-#define MirLev2_2AA0 0xB0
- MirLev3_2038, /* 2AA0..2AA3 */
+ MirLev3_2984, /* 2A84..2A87 */
+ MirLev3_2984, /* 2A88..2A8B */
+ MirLev3_2984, /* 2A8C..2A8F */
+#define MirLev2_2AA0 0xB4
+ MirLev3_2290, /* 2AA0..2AA3 */
MirLev3_0F38, /* 2AA4..2AA7 */
MirLev3_2264, /* 2AA8..2AAB */
MirLev3_2AAC, /* 2AAC..2AAF */
-#define MirLev2_2AB0 0xB4
- MirLev3_2AB0, /* 2AB0..2AB3 */
- MirLev3_169C, /* 2AB4..2AB7 */
- MirLev3_1698, /* 2AB8..2ABB */
- MirLev3_2984, /* 2ABC..2ABF */
-#define MirLev2_2AC0 0xB8
- MirLev3_2984, /* 2AC0..2AC3 */
- MirLev3_2290, /* 2AC4..2AC7 */
- MirLev3_0000, /* 2AC8..2ACB */
- MirLev3_22C8, /* 2ACC..2ACF */
-#define MirLev2_2AD0 0xBC
+#define MirLev2_2AD0 0xB8
MirLev3_2984, /* 2AD0..2AD3 */
MirLev3_2290, /* 2AD4..2AD7 */
MirLev3_0000, /* 2AD8..2ADB */
MirLev3_2ADC, /* 2ADC..2ADF */
-#define MirLev2_2AE0 0xC0
+#define MirLev2_2AE0 0xBC
MirLev3_2AE0, /* 2AE0..2AE3 */
MirLev3_2AE4, /* 2AE4..2AE7 */
MirLev3_0000, /* 2AE8..2AEB */
- MirLev3_0028, /* 2AEC..2AEF */
-#define MirLev2_2AF0 0xC4
+ MirLev3_2AEC, /* 2AEC..2AEF */
+#define MirLev2_2AF0 0xC0
MirLev3_0000, /* 2AF0..2AF3 */
MirLev3_1698, /* 2AF4..2AF7 */
MirLev3_2290, /* 2AF8..2AFB */
MirLev3_0000, /* 2AFC..2AFF */
+#define MirLev2_2BF0 0xC4
+ MirLev3_0000, /* 2BF0..2BF3 */
+ MirLev3_0000, /* 2BF4..2BF7 */
+ MirLev3_0000, /* 2BF8..2BFB */
+ MirLev3_2BFC, /* 2BFC..2BFF */
#define MirLev2_2E00 0xC8
MirLev3_0F38, /* 2E00..2E03 */
MirLev3_0028, /* 2E04..2E07 */
@@ -360,29 +382,34 @@ static const PACKTAB_UINT8 MirLev2[4*56] = {
MirLev3_2264, /* 2E24..2E27 */
MirLev3_0028, /* 2E28..2E2B */
MirLev3_0000, /* 2E2C..2E2F */
-#define MirLev2_3010 0xD0
+#define MirLev2_2E50 0xD0
+ MirLev3_0000, /* 2E50..2E53 */
+ MirLev3_22C8, /* 2E54..2E57 */
+ MirLev3_2984, /* 2E58..2E5B */
+ MirLev3_169C, /* 2E5C..2E5F */
+#define MirLev2_3010 0xD4
MirLev3_0028, /* 3010..3013 */
MirLev3_2264, /* 3014..3017 */
MirLev3_2264, /* 3018..301B */
MirLev3_0000, /* 301C..301F */
-#define MirLev2_FE50 0xD4
+#define MirLev2_FE50 0xD8
MirLev3_0000, /* FE50..FE53 */
MirLev3_0000, /* FE54..FE57 */
MirLev3_22C8, /* FE58..FE5B */
MirLev3_2290, /* FE5C..FE5F */
-#define MirLev2_FF50 0xD8
+#define MirLev2_FF50 0xDC
MirLev3_0000, /* FF50..FF53 */
MirLev3_0000, /* FF54..FF57 */
MirLev3_0058, /* FF58..FF5B */
MirLev3_FF5C, /* FF5C..FF5F */
-#define MirLev2_FF60 0xDC
+#define MirLev2_FF60 0xE0
MirLev3_FF60, /* FF60..FF63 */
MirLev3_0000, /* FF64..FF67 */
MirLev3_0000, /* FF68..FF6B */
MirLev3_0000, /* FF6C..FF6F */
};
-static const PACKTAB_UINT8 MirLev1[16*14] = {
+static const PACKTAB_UINT8 MirLev1[16*15] = {
#define MirLev1_0000 0x0
MirLev2_0000, /* 0000..000F */
MirLev2_0000, /* 0010..001F */
@@ -471,7 +498,7 @@ static const PACKTAB_UINT8 MirLev1[16*14] = {
#define MirLev1_2200 0x50
MirLev2_2200, /* 2200..220F */
MirLev2_2210, /* 2210..221F */
- MirLev2_0000, /* 2220..222F */
+ MirLev2_2220, /* 2220..222F */
MirLev2_2230, /* 2230..223F */
MirLev2_2240, /* 2240..224F */
MirLev2_2250, /* 2250..225F */
@@ -530,11 +557,11 @@ static const PACKTAB_UINT8 MirLev1[16*14] = {
MirLev2_0000, /* 2970..297F */
MirLev2_2980, /* 2980..298F */
MirLev2_2990, /* 2990..299F */
- MirLev2_0000, /* 29A0..29AF */
+ MirLev2_29A0, /* 29A0..29AF */
MirLev2_29B0, /* 29B0..29BF */
MirLev2_29C0, /* 29C0..29CF */
MirLev2_29D0, /* 29D0..29DF */
- MirLev2_0000, /* 29E0..29EF */
+ MirLev2_0020, /* 29E0..29EF */
MirLev2_29F0, /* 29F0..29FF */
#define MirLev1_2A00 0x90
MirLev2_0000, /* 2A00..2A0F */
@@ -546,20 +573,37 @@ static const PACKTAB_UINT8 MirLev1[16*14] = {
MirLev2_2A60, /* 2A60..2A6F */
MirLev2_2A70, /* 2A70..2A7F */
MirLev2_2A80, /* 2A80..2A8F */
- MirLev2_2A90, /* 2A90..2A9F */
+ MirLev2_2A80, /* 2A90..2A9F */
MirLev2_2AA0, /* 2AA0..2AAF */
- MirLev2_2AB0, /* 2AB0..2ABF */
- MirLev2_2AC0, /* 2AC0..2ACF */
+ MirLev2_2A80, /* 2AB0..2ABF */
+ MirLev2_2A80, /* 2AC0..2ACF */
MirLev2_2AD0, /* 2AD0..2ADF */
MirLev2_2AE0, /* 2AE0..2AEF */
MirLev2_2AF0, /* 2AF0..2AFF */
-#define MirLev1_2E00 0xA0
+#define MirLev1_2B00 0xA0
+ MirLev2_0000, /* 2B00..2B0F */
+ MirLev2_0000, /* 2B10..2B1F */
+ MirLev2_0000, /* 2B20..2B2F */
+ MirLev2_0000, /* 2B30..2B3F */
+ MirLev2_0000, /* 2B40..2B4F */
+ MirLev2_0000, /* 2B50..2B5F */
+ MirLev2_0000, /* 2B60..2B6F */
+ MirLev2_0000, /* 2B70..2B7F */
+ MirLev2_0000, /* 2B80..2B8F */
+ MirLev2_0000, /* 2B90..2B9F */
+ MirLev2_0000, /* 2BA0..2BAF */
+ MirLev2_0000, /* 2BB0..2BBF */
+ MirLev2_0000, /* 2BC0..2BCF */
+ MirLev2_0000, /* 2BD0..2BDF */
+ MirLev2_0000, /* 2BE0..2BEF */
+ MirLev2_2BF0, /* 2BF0..2BFF */
+#define MirLev1_2E00 0xB0
MirLev2_2E00, /* 2E00..2E0F */
MirLev2_2230, /* 2E10..2E1F */
MirLev2_2E20, /* 2E20..2E2F */
MirLev2_0000, /* 2E30..2E3F */
MirLev2_0000, /* 2E40..2E4F */
- MirLev2_0000, /* 2E50..2E5F */
+ MirLev2_2E50, /* 2E50..2E5F */
MirLev2_0000, /* 2E60..2E6F */
MirLev2_0000, /* 2E70..2E7F */
MirLev2_0000, /* 2E80..2E8F */
@@ -570,7 +614,7 @@ static const PACKTAB_UINT8 MirLev1[16*14] = {
MirLev2_0000, /* 2ED0..2EDF */
MirLev2_0000, /* 2EE0..2EEF */
MirLev2_0000, /* 2EF0..2EFF */
-#define MirLev1_3000 0xB0
+#define MirLev1_3000 0xC0
MirLev2_2760, /* 3000..300F */
MirLev2_3010, /* 3010..301F */
MirLev2_0000, /* 3020..302F */
@@ -587,7 +631,7 @@ static const PACKTAB_UINT8 MirLev1[16*14] = {
MirLev2_0000, /* 30D0..30DF */
MirLev2_0000, /* 30E0..30EF */
MirLev2_0000, /* 30F0..30FF */
-#define MirLev1_FE00 0xC0
+#define MirLev1_FE00 0xD0
MirLev2_0000, /* FE00..FE0F */
MirLev2_0000, /* FE10..FE1F */
MirLev2_0000, /* FE20..FE2F */
@@ -604,7 +648,7 @@ static const PACKTAB_UINT8 MirLev1[16*14] = {
MirLev2_0000, /* FED0..FEDF */
MirLev2_0000, /* FEE0..FEEF */
MirLev2_0000, /* FEF0..FEFF */
-#define MirLev1_FF00 0xD0
+#define MirLev1_FF00 0xE0
MirLev2_0020, /* FF00..FF0F */
MirLev2_0030, /* FF10..FF1F */
MirLev2_0000, /* FF20..FF2F */
@@ -668,7 +712,7 @@ static const PACKTAB_UINT8 MirLev0[256*1] = {
MirLev1_0100, /* 2800..28FF */
MirLev1_2900, /* 2900..29FF */
MirLev1_2A00, /* 2A00..2AFF */
- MirLev1_0100, /* 2B00..2BFF */
+ MirLev1_2B00, /* 2B00..2BFF */
MirLev1_0100, /* 2C00..2CFF */
MirLev1_0100, /* 2D00..2DFF */
MirLev1_2E00, /* 2E00..2EFF */
diff --git a/glib/goption.c b/glib/goption.c
index 8cb72376c..6806013a2 100644
--- a/glib/goption.c
+++ b/glib/goption.c
@@ -336,7 +336,7 @@ G_DEFINE_QUARK (g-option-context-error-quark, g_option_error)
* The @parameter_string can serve multiple purposes. It can be used
* to add descriptions for "rest" arguments, which are not parsed by
* the #GOptionContext, typically something like "FILES" or
- * "FILE1 FILE2...". If you are using #G_OPTION_REMAINING for
+ * "FILE1 FILE2...". If you are using %G_OPTION_REMAINING for
* collecting "rest" arguments, GLib handles this automatically by
* using the @arg_description of the corresponding #GOptionEntry in
* the usage summary.
@@ -2113,8 +2113,7 @@ g_option_context_parse (GOptionContext *context,
gboolean has_h_entry = context_has_h_entry (context);
arg = (*argv)[i] + 1;
arg_length = strlen (arg);
- nulled_out = g_newa (gboolean, arg_length);
- memset (nulled_out, 0, arg_length * sizeof (gboolean));
+ nulled_out = g_newa0 (gboolean, arg_length);
for (j = 0; j < arg_length; j++)
{
if (context->help_enabled && (arg[j] == '?' ||
diff --git a/glib/goption.h b/glib/goption.h
index 44815a77d..7e9c1a3f1 100644
--- a/glib/goption.h
+++ b/glib/goption.h
@@ -278,7 +278,7 @@ struct _GOptionEntry
* or %G_OPTION_ARG_FILENAME_ARRAY.
*
*
- * Using #G_OPTION_REMAINING instead of simply scanning `argv`
+ * Using %G_OPTION_REMAINING instead of simply scanning `argv`
* for leftover arguments has the advantage that GOption takes care of
* necessary encoding conversions for strings or filenames.
*
diff --git a/glib/gosxutils.m b/glib/gosxutils.m
index 9b6601783..4d2d962ef 100644
--- a/glib/gosxutils.m
+++ b/glib/gosxutils.m
@@ -21,6 +21,8 @@
#include "gutils.h"
#include "gstrfuncs.h"
+void load_user_special_dirs_macos (gchar **table);
+
static gchar *
find_folder (NSSearchPathDirectory type)
{
@@ -51,4 +53,4 @@ load_user_special_dirs_macos(gchar **table)
table[G_USER_DIRECTORY_PUBLIC_SHARE] = find_folder (NSSharedPublicDirectory);
table[G_USER_DIRECTORY_TEMPLATES] = NULL;
table[G_USER_DIRECTORY_VIDEOS] = find_folder (NSMoviesDirectory);
-} \ No newline at end of file
+}
diff --git a/glib/gpoll.c b/glib/gpoll.c
index 2681d91f9..bd29ea623 100644
--- a/glib/gpoll.c
+++ b/glib/gpoll.c
@@ -135,7 +135,7 @@ poll_rest (GPollFD *msg_fd,
HANDLE *handles,
GPollFD *handle_to_fd[],
gint nhandles,
- gint timeout_ms)
+ DWORD timeout_ms)
{
DWORD ready;
GPollFD *f;
@@ -147,7 +147,7 @@ poll_rest (GPollFD *msg_fd,
* -> Use MsgWaitForMultipleObjectsEx
*/
if (_g_main_poll_debug)
- g_print (" MsgWaitForMultipleObjectsEx(%d, %d)\n", nhandles, timeout_ms);
+ g_print (" MsgWaitForMultipleObjectsEx(%d, %lu)\n", nhandles, timeout_ms);
ready = MsgWaitForMultipleObjectsEx (nhandles, handles, timeout_ms,
QS_ALLINPUT, MWMO_ALERTABLE);
@@ -177,7 +177,7 @@ poll_rest (GPollFD *msg_fd,
* -> Use WaitForMultipleObjectsEx
*/
if (_g_main_poll_debug)
- g_print (" WaitForMultipleObjectsEx(%d, %d)\n", nhandles, timeout_ms);
+ g_print (" WaitForMultipleObjectsEx(%d, %lu)\n", nhandles, timeout_ms);
ready = WaitForMultipleObjectsEx (nhandles, handles, FALSE, timeout_ms, TRUE);
if (ready == WAIT_FAILED)
@@ -216,7 +216,7 @@ poll_rest (GPollFD *msg_fd,
recursed_result = poll_rest (NULL, stop_fd, handles, handle_to_fd, nhandles, 0);
return (recursed_result == -1) ? -1 : 1 + recursed_result;
}
- else if (ready >= WAIT_OBJECT_0 && ready < WAIT_OBJECT_0 + nhandles)
+ else if (ready < WAIT_OBJECT_0 + nhandles)
{
int retval;
@@ -258,7 +258,7 @@ typedef struct
GPollFD *msg_fd;
GPollFD *stop_fd;
gint nhandles;
- gint timeout_ms;
+ DWORD timeout_ms;
} GWin32PollThreadData;
static gint
@@ -295,7 +295,7 @@ poll_single_thread (GWin32PollThreadData *data)
static void
fill_poll_thread_data (GPollFD *fds,
guint nfds,
- gint timeout_ms,
+ DWORD timeout_ms,
GPollFD *stop_fd,
GWin32PollThreadData *data)
{
@@ -474,7 +474,7 @@ g_poll (GPollFD *fds,
for (i = 0; i < nthreads; i++)
{
if (GetExitCodeThread (thread_handles[i], &thread_retval))
- retval = retval == -1 ? -1 : thread_retval == -1 ? -1 : retval + thread_retval;
+ retval = (retval == -1) ? -1 : ((thread_retval == (DWORD) -1) ? -1 : (int) (retval + thread_retval));
CloseHandle (thread_handles[i]);
}
diff --git a/glib/gprintf.c b/glib/gprintf.c
index 555a630bc..7a8803351 100644
--- a/glib/gprintf.c
+++ b/glib/gprintf.c
@@ -295,7 +295,8 @@ g_vsnprintf (gchar *string,
/**
* g_vasprintf:
- * @string: (not optional) (nullable): the return location for the newly-allocated string.
+ * @string: (not optional) (nullable): the return location for the newly-allocated string,
+ * which will be %NULL if (and only if) this function fails
* @format: (not nullable): a standard printf() format string, but notice
* [string precision pitfalls][string-precision]
* @args: the list of arguments to insert in the output.
@@ -312,7 +313,7 @@ g_vsnprintf (gchar *string,
*
* `glib/gprintf.h` must be explicitly included in order to use this function.
*
- * Returns: the number of bytes printed.
+ * Returns: the number of bytes printed, or `-1` on failure
*
* Since: 2.4
**/
@@ -356,6 +357,12 @@ g_vasprintf (gchar **string,
len = _g_vsprintf (*string, format, args2);
va_end (args2);
+
+ if (len < 0)
+ {
+ g_free (*string);
+ *string = NULL;
+ }
}
#endif
diff --git a/glib/gqsort.c b/glib/gqsort.c
index 90e65aefe..86580f524 100644
--- a/glib/gqsort.c
+++ b/glib/gqsort.c
@@ -263,16 +263,15 @@ msort_r (void *b, size_t n, size_t s, GCompareDataFunc cmp, void *arg)
else
{
if ((s & (sizeof (guint32) - 1)) == 0
- && ((char *) b - (char *) 0) % ALIGNOF_GUINT32 == 0)
+ && (guintptr) b % ALIGNOF_GUINT32 == 0)
{
if (s == sizeof (guint32))
p.var = 0;
else if (s == sizeof (guint64)
- && ((char *) b - (char *) 0) % ALIGNOF_GUINT64 == 0)
+ && (guintptr) b % ALIGNOF_GUINT64 == 0)
p.var = 1;
else if ((s & (sizeof (unsigned long) - 1)) == 0
- && ((char *) b - (char *) 0)
- % ALIGNOF_UNSIGNED_LONG == 0)
+ && (guintptr) b % ALIGNOF_UNSIGNED_LONG == 0)
p.var = 2;
}
msort_with_tmp (&p, b, n);
diff --git a/glib/gqueue.c b/glib/gqueue.c
index f7acb945a..d53af7ded 100644
--- a/glib/gqueue.c
+++ b/glib/gqueue.c
@@ -41,7 +41,7 @@
*
* To create a new GQueue, use g_queue_new().
*
- * To initialize a statically-allocated GQueue, use #G_QUEUE_INIT or
+ * To initialize a statically-allocated GQueue, use %G_QUEUE_INIT or
* g_queue_init().
*
* To add elements, use g_queue_push_head(), g_queue_push_head_link(),
@@ -118,7 +118,7 @@ g_queue_free_full (GQueue *queue,
*
* A statically-allocated #GQueue must be initialized with this function
* before it can be used. Alternatively you can initialize it with
- * #G_QUEUE_INIT. It is not necessary to initialize queues created with
+ * %G_QUEUE_INIT. It is not necessary to initialize queues created with
* g_queue_new().
*
* Since: 2.14
diff --git a/glib/gregex.c b/glib/gregex.c
index a8a35a424..1aa8416ff 100644
--- a/glib/gregex.c
+++ b/glib/gregex.c
@@ -45,7 +45,7 @@
* Perl regular expression.
*
* Some functions accept a @start_position argument, setting it differs
- * from just passing over a shortened string and setting #G_REGEX_MATCH_NOTBOL
+ * from just passing over a shortened string and setting %G_REGEX_MATCH_NOTBOL
* in the case of a pattern that begins with any kind of lookbehind assertion.
* For example, consider the pattern "\Biss\B" which finds occurrences of "iss"
* in the middle of words. ("\B" matches only if the current position in the
@@ -57,11 +57,11 @@
* it is able to look behind the starting point to discover that it is
* preceded by a letter.
*
- * Note that, unless you set the #G_REGEX_RAW flag, all the strings passed
+ * Note that, unless you set the %G_REGEX_RAW flag, all the strings passed
* to these functions must be encoded in UTF-8. The lengths and the positions
* inside the strings are in bytes and not in characters, so, for instance,
* "\xc3\xa0" (i.e. "à") is two bytes long but it is treated as a
- * single character. If you set #G_REGEX_RAW the strings can be non-valid
+ * single character. If you set %G_REGEX_RAW the strings can be non-valid
* UTF-8 strings and a byte is treated as a character, so "\xc3\xa0" is two
* bytes and two characters long.
*
@@ -76,11 +76,11 @@
* The behaviour of the dot, circumflex, and dollar metacharacters are
* affected by newline characters, the default is to recognize any newline
* character (the same characters recognized by "\R"). This can be changed
- * with #G_REGEX_NEWLINE_CR, #G_REGEX_NEWLINE_LF and #G_REGEX_NEWLINE_CRLF
- * compile options, and with #G_REGEX_MATCH_NEWLINE_ANY,
- * #G_REGEX_MATCH_NEWLINE_CR, #G_REGEX_MATCH_NEWLINE_LF and
- * #G_REGEX_MATCH_NEWLINE_CRLF match options. These settings are also
- * relevant when compiling a pattern if #G_REGEX_EXTENDED is set, and an
+ * with %G_REGEX_NEWLINE_CR, %G_REGEX_NEWLINE_LF and %G_REGEX_NEWLINE_CRLF
+ * compile options, and with %G_REGEX_MATCH_NEWLINE_ANY,
+ * %G_REGEX_MATCH_NEWLINE_CR, %G_REGEX_MATCH_NEWLINE_LF and
+ * %G_REGEX_MATCH_NEWLINE_CRLF match options. These settings are also
+ * relevant when compiling a pattern if %G_REGEX_EXTENDED is set, and an
* unescaped "#" outside a character class is encountered. This indicates
* a comment that lasts until after the next newline.
*
@@ -860,19 +860,19 @@ g_match_info_get_match_count (const GMatchInfo *match_info)
* able to raise an error as soon as a mistake is made.
*
* GRegex supports the concept of partial matching by means of the
- * #G_REGEX_MATCH_PARTIAL_SOFT and #G_REGEX_MATCH_PARTIAL_HARD flags.
+ * %G_REGEX_MATCH_PARTIAL_SOFT and %G_REGEX_MATCH_PARTIAL_HARD flags.
* When they are used, the return code for
* g_regex_match() or g_regex_match_full() is, as usual, %TRUE
* for a complete match, %FALSE otherwise. But, when these functions
* return %FALSE, you can check if the match was partial calling
* g_match_info_is_partial_match().
*
- * The difference between #G_REGEX_MATCH_PARTIAL_SOFT and
- * #G_REGEX_MATCH_PARTIAL_HARD is that when a partial match is encountered
- * with #G_REGEX_MATCH_PARTIAL_SOFT, matching continues to search for a
- * possible complete match, while with #G_REGEX_MATCH_PARTIAL_HARD matching
+ * The difference between %G_REGEX_MATCH_PARTIAL_SOFT and
+ * %G_REGEX_MATCH_PARTIAL_HARD is that when a partial match is encountered
+ * with %G_REGEX_MATCH_PARTIAL_SOFT, matching continues to search for a
+ * possible complete match, while with %G_REGEX_MATCH_PARTIAL_HARD matching
* stops at the partial match.
- * When both #G_REGEX_MATCH_PARTIAL_SOFT and #G_REGEX_MATCH_PARTIAL_HARD
+ * When both %G_REGEX_MATCH_PARTIAL_SOFT and %G_REGEX_MATCH_PARTIAL_HARD
* are set, the latter takes precedence.
*
* There were formerly some restrictions on the pattern for partial matching.
@@ -903,7 +903,7 @@ g_match_info_is_partial_match (const GMatchInfo *match_info)
* match done with @string against @regex and have the same syntax used by
* g_regex_replace().
*
- * The @string_to_expand must be UTF-8 encoded even if #G_REGEX_RAW was
+ * The @string_to_expand must be UTF-8 encoded even if %G_REGEX_RAW was
* passed to g_regex_new().
*
* The backreferences are extracted from the string passed to the match
@@ -1739,7 +1739,7 @@ g_regex_match (const GRegex *regex,
* flexibility in reusing #GRegex structures.
*
* Setting @start_position differs from just passing over a shortened
- * string and setting #G_REGEX_MATCH_NOTBOL in the case of a pattern
+ * string and setting %G_REGEX_MATCH_NOTBOL in the case of a pattern
* that begins with any kind of lookbehind assertion, such as "\b".
*
* Unless %G_REGEX_RAW is specified in the options, @string must be valid UTF-8.
@@ -1890,7 +1890,7 @@ g_regex_match_all (const GRegex *regex,
* is not able to capture substrings, so backreferences do not work.
*
* Setting @start_position differs from just passing over a shortened
- * string and setting #G_REGEX_MATCH_NOTBOL in the case of a pattern
+ * string and setting %G_REGEX_MATCH_NOTBOL in the case of a pattern
* that begins with any kind of lookbehind assertion, such as "\b".
*
* Unless %G_REGEX_RAW is specified in the options, @string must be valid UTF-8.
@@ -2163,7 +2163,7 @@ g_regex_split (const GRegex *regex,
* "a", "b" and "c".
*
* Setting @start_position differs from just passing over a shortened
- * string and setting #G_REGEX_MATCH_NOTBOL in the case of a pattern
+ * string and setting %G_REGEX_MATCH_NOTBOL in the case of a pattern
* that begins with any kind of lookbehind assertion, such as "\b".
*
* Returns: (transfer full): a %NULL-terminated gchar ** array. Free
@@ -2792,12 +2792,12 @@ interpolation_list_needs_match (GList *list)
*
* If you do not need to use backreferences use g_regex_replace_literal().
*
- * The @replacement string must be UTF-8 encoded even if #G_REGEX_RAW was
+ * The @replacement string must be UTF-8 encoded even if %G_REGEX_RAW was
* passed to g_regex_new(). If you want to use not UTF-8 encoded strings
* you can use g_regex_replace_literal().
*
* Setting @start_position differs from just passing over a shortened
- * string and setting #G_REGEX_MATCH_NOTBOL in the case of a pattern that
+ * string and setting %G_REGEX_MATCH_NOTBOL in the case of a pattern that
* begins with any kind of lookbehind assertion, such as "\b".
*
* Returns: a newly allocated string containing the replacements
@@ -2869,7 +2869,7 @@ literal_replacement (const GMatchInfo *match_info,
* include backreferences use g_regex_replace().
*
* Setting @start_position differs from just passing over a
- * shortened string and setting #G_REGEX_MATCH_NOTBOL in the
+ * shortened string and setting %G_REGEX_MATCH_NOTBOL in the
* case of a pattern that begins with any kind of lookbehind
* assertion, such as "\b".
*
@@ -2912,7 +2912,7 @@ g_regex_replace_literal (const GRegex *regex,
* @eval for that occurrence.
*
* Setting @start_position differs from just passing over a shortened
- * string and setting #G_REGEX_MATCH_NOTBOL in the case of a pattern
+ * string and setting %G_REGEX_MATCH_NOTBOL in the case of a pattern
* that begins with any kind of lookbehind assertion, such as "\b".
*
* The following example uses g_regex_replace_eval() to replace multiple
diff --git a/glib/gregex.h b/glib/gregex.h
index 45e198df6..b982f6931 100644
--- a/glib/gregex.h
+++ b/glib/gregex.h
@@ -224,8 +224,8 @@ GQuark g_regex_error_quark (void);
* newlines). The "start of line" metacharacter ("^") matches only
* at the start of the string, while the "end of line" metacharacter
* ("$") matches only at the end of the string, or before a terminating
- * newline (unless #G_REGEX_DOLLAR_ENDONLY is set). When
- * #G_REGEX_MULTILINE is set, the "start of line" and "end of line"
+ * newline (unless %G_REGEX_DOLLAR_ENDONLY is set). When
+ * %G_REGEX_MULTILINE is set, the "start of line" and "end of line"
* constructs match immediately following or immediately before any
* newline in the string, respectively, as well as at the very start
* and end. This can be changed within a pattern by a "(?m)" option
@@ -248,7 +248,7 @@ GQuark g_regex_error_quark (void);
* matches only at the end of the string. Without this option, a
* dollar also matches immediately before the final character if
* it is a newline (but not before any other newlines). This option
- * is ignored if #G_REGEX_MULTILINE is set.
+ * is ignored if %G_REGEX_MULTILINE is set.
* @G_REGEX_UNGREEDY: Inverts the "greediness" of the quantifiers so that
* they are not greedy by default, but become greedy if followed by "?".
* It can also be set by a "(?U)" option setting within the pattern.
@@ -324,14 +324,14 @@ typedef enum
* metacharacter.
* @G_REGEX_MATCH_NOTBOL: Specifies that first character of the string is
* not the beginning of a line, so the circumflex metacharacter should
- * not match before it. Setting this without #G_REGEX_MULTILINE (at
+ * not match before it. Setting this without %G_REGEX_MULTILINE (at
* compile time) causes circumflex never to match. This option affects
* only the behaviour of the circumflex metacharacter, it does not
* affect "\A".
* @G_REGEX_MATCH_NOTEOL: Specifies that the end of the subject string is
* not the end of a line, so the dollar metacharacter should not match
* it nor (except in multiline mode) a newline immediately before it.
- * Setting this without #G_REGEX_MULTILINE (at compile time) causes
+ * Setting this without %G_REGEX_MULTILINE (at compile time) causes
* dollar never to match. This option affects only the behaviour of
* the dollar metacharacter, it does not affect "\Z" or "\z".
* @G_REGEX_MATCH_NOTEMPTY: An empty string is not considered to be a valid
@@ -368,12 +368,12 @@ typedef enum
* single characters U+000B LINE TABULATION, U+000C FORM FEED (FF),
* U+0085 NEXT LINE (NEL), U+2028 LINE SEPARATOR and
* U+2029 PARAGRAPH SEPARATOR. Since: 2.34
- * @G_REGEX_MATCH_PARTIAL_SOFT: An alias for #G_REGEX_MATCH_PARTIAL. Since: 2.34
+ * @G_REGEX_MATCH_PARTIAL_SOFT: An alias for %G_REGEX_MATCH_PARTIAL. Since: 2.34
* @G_REGEX_MATCH_PARTIAL_HARD: Turns on the partial matching feature. In contrast to
- * to #G_REGEX_MATCH_PARTIAL_SOFT, this stops matching as soon as a partial match
+ * to %G_REGEX_MATCH_PARTIAL_SOFT, this stops matching as soon as a partial match
* is found, without continuing to search for a possible complete match. See
* g_match_info_is_partial_match() for more information. Since: 2.34
- * @G_REGEX_MATCH_NOTEMPTY_ATSTART: Like #G_REGEX_MATCH_NOTEMPTY, but only applied to
+ * @G_REGEX_MATCH_NOTEMPTY_ATSTART: Like %G_REGEX_MATCH_NOTEMPTY, but only applied to
* the start of the matched string. For anchored
* patterns this can only happen for pattern containing "\K". Since: 2.34
*
diff --git a/glib/gscanner.c b/glib/gscanner.c
index 9102b3a92..5f342183c 100644
--- a/glib/gscanner.c
+++ b/glib/gscanner.c
@@ -216,11 +216,11 @@
* by the scanner (the default is the whitespace characters: space,
* tab, carriage-return and line-feed).
* @cset_identifier_first: specifies the characters which can start
- * identifiers (the default is #G_CSET_a_2_z, "_", and #G_CSET_A_2_Z).
+ * identifiers (the default is %G_CSET_a_2_z, "_", and %G_CSET_A_2_Z).
* @cset_identifier_nth: specifies the characters which can be used
* in identifiers, after the first character (the default is
- * #G_CSET_a_2_z, "_0123456789", #G_CSET_A_2_Z, #G_CSET_LATINS,
- * #G_CSET_LATINC).
+ * %G_CSET_a_2_z, "_0123456789", %G_CSET_A_2_Z, %G_CSET_LATINS,
+ * %G_CSET_LATINC).
* @cpair_comment_single: specifies the characters at the start and
* end of single-line comments. The default is "#\n" which means
* that single-line comments start with a '#' and continue until
@@ -256,7 +256,7 @@
* @scan_string_dq: specifies if strings can be enclosed in double
* quotes (the default is %TRUE).
* @numbers_2_int: specifies if binary, octal and hexadecimal numbers
- * are reported as #G_TOKEN_INT (the default is %TRUE).
+ * are reported as %G_TOKEN_INT (the default is %TRUE).
* @int_2_float: specifies if all numbers are reported as %G_TOKEN_FLOAT
* (the default is %FALSE).
* @identifier_2_string: specifies if identifiers are reported as strings
diff --git a/glib/gscripttable.h b/glib/gscripttable.h
index 5ee843222..b7556877a 100644
--- a/glib/gscripttable.h
+++ b/glib/gscripttable.h
@@ -529,7 +529,7 @@ static const guchar g_script_easy_table[8192] = {
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
- G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_UNKNOWN,
+ G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_COMMON, G_UNICODE_SCRIPT_ARABIC,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
@@ -728,22 +728,6 @@ static const guchar g_script_easy_table[8192] = {
G_UNICODE_SCRIPT_SYRIAC, G_UNICODE_SCRIPT_SYRIAC, G_UNICODE_SCRIPT_SYRIAC,
G_UNICODE_SCRIPT_SYRIAC, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
@@ -751,16 +735,32 @@ static const guchar g_script_easy_table[8192] = {
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
+ G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
- G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
+ G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC, G_UNICODE_SCRIPT_ARABIC,
@@ -1052,7 +1052,7 @@ static const guchar g_script_easy_table[8192] = {
G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU,
G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU,
G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU,
+ G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU,
G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU,
G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU,
G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU,
@@ -1063,7 +1063,7 @@ static const guchar g_script_easy_table[8192] = {
G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU,
G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU,
G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
+ G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU,
G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU, G_UNICODE_SCRIPT_TELUGU,
@@ -1105,7 +1105,7 @@ static const guchar g_script_easy_table[8192] = {
G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
G_UNICODE_SCRIPT_KANNADA, G_UNICODE_SCRIPT_KANNADA, G_UNICODE_SCRIPT_UNKNOWN,
G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
+ G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_KANNADA,
G_UNICODE_SCRIPT_KANNADA, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_KANNADA,
G_UNICODE_SCRIPT_KANNADA, G_UNICODE_SCRIPT_KANNADA, G_UNICODE_SCRIPT_KANNADA,
G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_KANNADA,
@@ -1975,13 +1975,13 @@ static const guchar g_script_easy_table[8192] = {
G_UNICODE_SCRIPT_TAGALOG, G_UNICODE_SCRIPT_TAGALOG, G_UNICODE_SCRIPT_TAGALOG,
G_UNICODE_SCRIPT_TAGALOG, G_UNICODE_SCRIPT_TAGALOG, G_UNICODE_SCRIPT_TAGALOG,
G_UNICODE_SCRIPT_TAGALOG, G_UNICODE_SCRIPT_TAGALOG, G_UNICODE_SCRIPT_TAGALOG,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_TAGALOG, G_UNICODE_SCRIPT_TAGALOG,
G_UNICODE_SCRIPT_TAGALOG, G_UNICODE_SCRIPT_TAGALOG, G_UNICODE_SCRIPT_TAGALOG,
- G_UNICODE_SCRIPT_TAGALOG, G_UNICODE_SCRIPT_TAGALOG, G_UNICODE_SCRIPT_UNKNOWN,
+ G_UNICODE_SCRIPT_TAGALOG, G_UNICODE_SCRIPT_TAGALOG, G_UNICODE_SCRIPT_TAGALOG,
+ G_UNICODE_SCRIPT_TAGALOG, G_UNICODE_SCRIPT_TAGALOG, G_UNICODE_SCRIPT_TAGALOG,
G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_HANUNOO, G_UNICODE_SCRIPT_HANUNOO,
+ G_UNICODE_SCRIPT_TAGALOG, G_UNICODE_SCRIPT_HANUNOO, G_UNICODE_SCRIPT_HANUNOO,
G_UNICODE_SCRIPT_HANUNOO, G_UNICODE_SCRIPT_HANUNOO, G_UNICODE_SCRIPT_HANUNOO,
G_UNICODE_SCRIPT_HANUNOO, G_UNICODE_SCRIPT_HANUNOO, G_UNICODE_SCRIPT_HANUNOO,
G_UNICODE_SCRIPT_HANUNOO, G_UNICODE_SCRIPT_HANUNOO, G_UNICODE_SCRIPT_HANUNOO,
@@ -2061,7 +2061,7 @@ static const guchar g_script_easy_table[8192] = {
G_UNICODE_SCRIPT_MONGOLIAN, G_UNICODE_SCRIPT_MONGOLIAN, G_UNICODE_SCRIPT_MONGOLIAN,
G_UNICODE_SCRIPT_MONGOLIAN, G_UNICODE_SCRIPT_MONGOLIAN, G_UNICODE_SCRIPT_MONGOLIAN,
G_UNICODE_SCRIPT_MONGOLIAN, G_UNICODE_SCRIPT_MONGOLIAN, G_UNICODE_SCRIPT_MONGOLIAN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_MONGOLIAN, G_UNICODE_SCRIPT_MONGOLIAN,
+ G_UNICODE_SCRIPT_MONGOLIAN, G_UNICODE_SCRIPT_MONGOLIAN, G_UNICODE_SCRIPT_MONGOLIAN,
G_UNICODE_SCRIPT_MONGOLIAN, G_UNICODE_SCRIPT_MONGOLIAN, G_UNICODE_SCRIPT_MONGOLIAN,
G_UNICODE_SCRIPT_MONGOLIAN, G_UNICODE_SCRIPT_MONGOLIAN, G_UNICODE_SCRIPT_MONGOLIAN,
G_UNICODE_SCRIPT_MONGOLIAN, G_UNICODE_SCRIPT_MONGOLIAN, G_UNICODE_SCRIPT_UNKNOWN,
@@ -2291,11 +2291,11 @@ static const guchar g_script_easy_table[8192] = {
G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED,
G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED,
G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
+ G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED,
+ G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED,
+ G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED,
+ G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED,
+ G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_UNKNOWN,
G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
@@ -2337,7 +2337,7 @@ static const guchar g_script_easy_table[8192] = {
G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE,
G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE,
G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE,
- G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN,
+ G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_UNKNOWN,
G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_BALINESE,
G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE,
G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE,
@@ -2353,8 +2353,8 @@ static const guchar g_script_easy_table[8192] = {
G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE,
G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE,
G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE,
- G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_UNKNOWN,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_SUNDANESE,
+ G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_BALINESE,
+ G_UNICODE_SCRIPT_BALINESE, G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_SUNDANESE,
G_UNICODE_SCRIPT_SUNDANESE, G_UNICODE_SCRIPT_SUNDANESE, G_UNICODE_SCRIPT_SUNDANESE,
G_UNICODE_SCRIPT_SUNDANESE, G_UNICODE_SCRIPT_SUNDANESE, G_UNICODE_SCRIPT_SUNDANESE,
G_UNICODE_SCRIPT_SUNDANESE, G_UNICODE_SCRIPT_SUNDANESE, G_UNICODE_SCRIPT_SUNDANESE,
@@ -2566,7 +2566,7 @@ static const guchar g_script_easy_table[8192] = {
G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED,
G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED,
G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED,
- G_UNICODE_SCRIPT_UNKNOWN, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED,
+ G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED,
G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED, G_UNICODE_SCRIPT_INHERITED,
G_UNICODE_SCRIPT_LATIN, G_UNICODE_SCRIPT_LATIN, G_UNICODE_SCRIPT_LATIN,
G_UNICODE_SCRIPT_LATIN, G_UNICODE_SCRIPT_LATIN, G_UNICODE_SCRIPT_LATIN,
@@ -2755,7 +2755,7 @@ static const struct {
{ 0x207f, 1, G_UNICODE_SCRIPT_LATIN },
{ 0x2080, 15, G_UNICODE_SCRIPT_COMMON },
{ 0x2090, 13, G_UNICODE_SCRIPT_LATIN },
- { 0x20a0, 32, G_UNICODE_SCRIPT_COMMON },
+ { 0x20a0, 33, G_UNICODE_SCRIPT_COMMON },
{ 0x20d0, 33, G_UNICODE_SCRIPT_INHERITED },
{ 0x2100, 38, G_UNICODE_SCRIPT_COMMON },
{ 0x2126, 1, G_UNICODE_SCRIPT_GREEK },
@@ -2775,8 +2775,7 @@ static const struct {
{ 0x2900, 628, G_UNICODE_SCRIPT_COMMON },
{ 0x2b76, 32, G_UNICODE_SCRIPT_COMMON },
{ 0x2b97, 105, G_UNICODE_SCRIPT_COMMON },
- { 0x2c00, 47, G_UNICODE_SCRIPT_GLAGOLITIC },
- { 0x2c30, 47, G_UNICODE_SCRIPT_GLAGOLITIC },
+ { 0x2c00, 96, G_UNICODE_SCRIPT_GLAGOLITIC },
{ 0x2c60, 32, G_UNICODE_SCRIPT_LATIN },
{ 0x2c80, 116, G_UNICODE_SCRIPT_COPTIC },
{ 0x2cf9, 7, G_UNICODE_SCRIPT_COPTIC },
@@ -2796,7 +2795,7 @@ static const struct {
{ 0x2dd0, 7, G_UNICODE_SCRIPT_ETHIOPIC },
{ 0x2dd8, 7, G_UNICODE_SCRIPT_ETHIOPIC },
{ 0x2de0, 32, G_UNICODE_SCRIPT_CYRILLIC },
- { 0x2e00, 83, G_UNICODE_SCRIPT_COMMON },
+ { 0x2e00, 94, G_UNICODE_SCRIPT_COMMON },
{ 0x2e80, 26, G_UNICODE_SCRIPT_HAN },
{ 0x2e9b, 89, G_UNICODE_SCRIPT_HAN },
{ 0x2f00, 214, G_UNICODE_SCRIPT_HAN },
@@ -2836,7 +2835,7 @@ static const struct {
{ 0x3358, 168, G_UNICODE_SCRIPT_COMMON },
{ 0x3400, 6592, G_UNICODE_SCRIPT_HAN },
{ 0x4dc0, 64, G_UNICODE_SCRIPT_COMMON },
- { 0x4e00, 20989, G_UNICODE_SCRIPT_HAN },
+ { 0x4e00, 20992, G_UNICODE_SCRIPT_HAN },
{ 0xa000, 1165, G_UNICODE_SCRIPT_YI },
{ 0xa490, 55, G_UNICODE_SCRIPT_YI },
{ 0xa4d0, 48, G_UNICODE_SCRIPT_LISU },
@@ -2846,9 +2845,11 @@ static const struct {
{ 0xa700, 34, G_UNICODE_SCRIPT_COMMON },
{ 0xa722, 102, G_UNICODE_SCRIPT_LATIN },
{ 0xa788, 3, G_UNICODE_SCRIPT_COMMON },
- { 0xa78b, 53, G_UNICODE_SCRIPT_LATIN },
- { 0xa7c2, 9, G_UNICODE_SCRIPT_LATIN },
- { 0xa7f5, 11, G_UNICODE_SCRIPT_LATIN },
+ { 0xa78b, 64, G_UNICODE_SCRIPT_LATIN },
+ { 0xa7d0, 2, G_UNICODE_SCRIPT_LATIN },
+ { 0xa7d3, 1, G_UNICODE_SCRIPT_LATIN },
+ { 0xa7d5, 5, G_UNICODE_SCRIPT_LATIN },
+ { 0xa7f2, 14, G_UNICODE_SCRIPT_LATIN },
{ 0xa800, 45, G_UNICODE_SCRIPT_SYLOTI_NAGRI },
{ 0xa830, 10, G_UNICODE_SCRIPT_COMMON },
{ 0xa840, 56, G_UNICODE_SCRIPT_PHAGS_PA },
@@ -2901,12 +2902,13 @@ static const struct {
{ 0xfb40, 2, G_UNICODE_SCRIPT_HEBREW },
{ 0xfb43, 2, G_UNICODE_SCRIPT_HEBREW },
{ 0xfb46, 10, G_UNICODE_SCRIPT_HEBREW },
- { 0xfb50, 114, G_UNICODE_SCRIPT_ARABIC },
+ { 0xfb50, 115, G_UNICODE_SCRIPT_ARABIC },
{ 0xfbd3, 363, G_UNICODE_SCRIPT_ARABIC },
{ 0xfd3e, 2, G_UNICODE_SCRIPT_COMMON },
- { 0xfd50, 64, G_UNICODE_SCRIPT_ARABIC },
+ { 0xfd40, 80, G_UNICODE_SCRIPT_ARABIC },
{ 0xfd92, 54, G_UNICODE_SCRIPT_ARABIC },
- { 0xfdf0, 14, G_UNICODE_SCRIPT_ARABIC },
+ { 0xfdcf, 1, G_UNICODE_SCRIPT_ARABIC },
+ { 0xfdf0, 16, G_UNICODE_SCRIPT_ARABIC },
{ 0xfe00, 16, G_UNICODE_SCRIPT_INHERITED },
{ 0xfe10, 10, G_UNICODE_SCRIPT_COMMON },
{ 0xfe20, 14, G_UNICODE_SCRIPT_INHERITED },
@@ -2970,9 +2972,20 @@ static const struct {
{ 0x10500, 40, G_UNICODE_SCRIPT_ELBASAN },
{ 0x10530, 52, G_UNICODE_SCRIPT_CAUCASIAN_ALBANIAN },
{ 0x1056f, 1, G_UNICODE_SCRIPT_CAUCASIAN_ALBANIAN },
+ { 0x10570, 11, G_UNICODE_SCRIPT_VITHKUQI },
+ { 0x1057c, 15, G_UNICODE_SCRIPT_VITHKUQI },
+ { 0x1058c, 7, G_UNICODE_SCRIPT_VITHKUQI },
+ { 0x10594, 2, G_UNICODE_SCRIPT_VITHKUQI },
+ { 0x10597, 11, G_UNICODE_SCRIPT_VITHKUQI },
+ { 0x105a3, 15, G_UNICODE_SCRIPT_VITHKUQI },
+ { 0x105b3, 7, G_UNICODE_SCRIPT_VITHKUQI },
+ { 0x105bb, 2, G_UNICODE_SCRIPT_VITHKUQI },
{ 0x10600, 311, G_UNICODE_SCRIPT_LINEAR_A },
{ 0x10740, 22, G_UNICODE_SCRIPT_LINEAR_A },
{ 0x10760, 8, G_UNICODE_SCRIPT_LINEAR_A },
+ { 0x10780, 6, G_UNICODE_SCRIPT_LATIN },
+ { 0x10787, 42, G_UNICODE_SCRIPT_LATIN },
+ { 0x107b2, 9, G_UNICODE_SCRIPT_LATIN },
{ 0x10800, 6, G_UNICODE_SCRIPT_CYPRIOT },
{ 0x10808, 1, G_UNICODE_SCRIPT_CYPRIOT },
{ 0x1080a, 44, G_UNICODE_SCRIPT_CYPRIOT },
@@ -3028,12 +3041,13 @@ static const struct {
{ 0x10eb0, 2, G_UNICODE_SCRIPT_YEZIDI },
{ 0x10f00, 40, G_UNICODE_SCRIPT_OLD_SOGDIAN },
{ 0x10f30, 42, G_UNICODE_SCRIPT_SOGDIAN },
+ { 0x10f70, 26, G_UNICODE_SCRIPT_OLD_UYGHUR },
{ 0x10fb0, 28, G_UNICODE_SCRIPT_CHORASMIAN },
{ 0x10fe0, 23, G_UNICODE_SCRIPT_ELYMAIC },
{ 0x11000, 78, G_UNICODE_SCRIPT_BRAHMI },
- { 0x11052, 30, G_UNICODE_SCRIPT_BRAHMI },
+ { 0x11052, 36, G_UNICODE_SCRIPT_BRAHMI },
{ 0x1107f, 1, G_UNICODE_SCRIPT_BRAHMI },
- { 0x11080, 66, G_UNICODE_SCRIPT_KAITHI },
+ { 0x11080, 67, G_UNICODE_SCRIPT_KAITHI },
{ 0x110cd, 1, G_UNICODE_SCRIPT_KAITHI },
{ 0x110d0, 25, G_UNICODE_SCRIPT_SORA_SOMPENG },
{ 0x110f0, 10, G_UNICODE_SCRIPT_SORA_SOMPENG },
@@ -3076,11 +3090,11 @@ static const struct {
{ 0x11600, 69, G_UNICODE_SCRIPT_MODI },
{ 0x11650, 10, G_UNICODE_SCRIPT_MODI },
{ 0x11660, 13, G_UNICODE_SCRIPT_MONGOLIAN },
- { 0x11680, 57, G_UNICODE_SCRIPT_TAKRI },
+ { 0x11680, 58, G_UNICODE_SCRIPT_TAKRI },
{ 0x116c0, 10, G_UNICODE_SCRIPT_TAKRI },
{ 0x11700, 27, G_UNICODE_SCRIPT_AHOM },
{ 0x1171d, 15, G_UNICODE_SCRIPT_AHOM },
- { 0x11730, 16, G_UNICODE_SCRIPT_AHOM },
+ { 0x11730, 23, G_UNICODE_SCRIPT_AHOM },
{ 0x11800, 60, G_UNICODE_SCRIPT_DOGRA },
{ 0x118a0, 83, G_UNICODE_SCRIPT_WARANG_CITI },
{ 0x118ff, 1, G_UNICODE_SCRIPT_WARANG_CITI },
@@ -3097,6 +3111,7 @@ static const struct {
{ 0x119da, 11, G_UNICODE_SCRIPT_NANDINAGARI },
{ 0x11a00, 72, G_UNICODE_SCRIPT_ZANABAZAR_SQUARE },
{ 0x11a50, 83, G_UNICODE_SCRIPT_SOYOMBO },
+ { 0x11ab0, 16, G_UNICODE_SCRIPT_CANADIAN_ABORIGINAL },
{ 0x11ac0, 57, G_UNICODE_SCRIPT_PAU_CIN_HAU },
{ 0x11c00, 9, G_UNICODE_SCRIPT_BHAIKSUKI },
{ 0x11c0a, 45, G_UNICODE_SCRIPT_BHAIKSUKI },
@@ -3126,6 +3141,7 @@ static const struct {
{ 0x12400, 111, G_UNICODE_SCRIPT_CUNEIFORM },
{ 0x12470, 5, G_UNICODE_SCRIPT_CUNEIFORM },
{ 0x12480, 196, G_UNICODE_SCRIPT_CUNEIFORM },
+ { 0x12f90, 99, G_UNICODE_SCRIPT_CYPRO_MINOAN },
{ 0x13000, 1071, G_UNICODE_SCRIPT_EGYPTIAN_HIEROGLYPHS },
{ 0x13430, 9, G_UNICODE_SCRIPT_EGYPTIAN_HIEROGLYPHS },
{ 0x14400, 583, G_UNICODE_SCRIPT_ANATOLIAN_HIEROGLYPHS },
@@ -3133,6 +3149,8 @@ static const struct {
{ 0x16a40, 31, G_UNICODE_SCRIPT_MRO },
{ 0x16a60, 10, G_UNICODE_SCRIPT_MRO },
{ 0x16a6e, 2, G_UNICODE_SCRIPT_MRO },
+ { 0x16a70, 79, G_UNICODE_SCRIPT_TANGSA },
+ { 0x16ac0, 10, G_UNICODE_SCRIPT_TANGSA },
{ 0x16ad0, 30, G_UNICODE_SCRIPT_BASSA_VAH },
{ 0x16af0, 6, G_UNICODE_SCRIPT_BASSA_VAH },
{ 0x16b00, 70, G_UNICODE_SCRIPT_PAHAWH_HMONG },
@@ -3146,15 +3164,19 @@ static const struct {
{ 0x16f8f, 17, G_UNICODE_SCRIPT_MIAO },
{ 0x16fe0, 1, G_UNICODE_SCRIPT_TANGUT },
{ 0x16fe1, 1, G_UNICODE_SCRIPT_NUSHU },
- { 0x16fe2, 2, G_UNICODE_SCRIPT_COMMON },
+ { 0x16fe2, 2, G_UNICODE_SCRIPT_HAN },
{ 0x16fe4, 1, G_UNICODE_SCRIPT_KHITAN_SMALL_SCRIPT },
{ 0x16ff0, 2, G_UNICODE_SCRIPT_HAN },
{ 0x17000, 6136, G_UNICODE_SCRIPT_TANGUT },
{ 0x18800, 768, G_UNICODE_SCRIPT_TANGUT },
{ 0x18b00, 470, G_UNICODE_SCRIPT_KHITAN_SMALL_SCRIPT },
{ 0x18d00, 9, G_UNICODE_SCRIPT_TANGUT },
+ { 0x1aff0, 4, G_UNICODE_SCRIPT_KATAKANA },
+ { 0x1aff5, 7, G_UNICODE_SCRIPT_KATAKANA },
+ { 0x1affd, 2, G_UNICODE_SCRIPT_KATAKANA },
{ 0x1b000, 1, G_UNICODE_SCRIPT_KATAKANA },
- { 0x1b001, 286, G_UNICODE_SCRIPT_HIRAGANA },
+ { 0x1b001, 287, G_UNICODE_SCRIPT_HIRAGANA },
+ { 0x1b120, 3, G_UNICODE_SCRIPT_KATAKANA },
{ 0x1b150, 3, G_UNICODE_SCRIPT_HIRAGANA },
{ 0x1b164, 4, G_UNICODE_SCRIPT_KATAKANA },
{ 0x1b170, 396, G_UNICODE_SCRIPT_NUSHU },
@@ -3164,6 +3186,9 @@ static const struct {
{ 0x1bc90, 10, G_UNICODE_SCRIPT_DUPLOYAN },
{ 0x1bc9c, 4, G_UNICODE_SCRIPT_DUPLOYAN },
{ 0x1bca0, 4, G_UNICODE_SCRIPT_COMMON },
+ { 0x1cf00, 46, G_UNICODE_SCRIPT_INHERITED },
+ { 0x1cf30, 23, G_UNICODE_SCRIPT_INHERITED },
+ { 0x1cf50, 116, G_UNICODE_SCRIPT_COMMON },
{ 0x1d000, 246, G_UNICODE_SCRIPT_COMMON },
{ 0x1d100, 39, G_UNICODE_SCRIPT_COMMON },
{ 0x1d129, 62, G_UNICODE_SCRIPT_COMMON },
@@ -3174,7 +3199,7 @@ static const struct {
{ 0x1d185, 7, G_UNICODE_SCRIPT_INHERITED },
{ 0x1d18c, 30, G_UNICODE_SCRIPT_COMMON },
{ 0x1d1aa, 4, G_UNICODE_SCRIPT_INHERITED },
- { 0x1d1ae, 59, G_UNICODE_SCRIPT_COMMON },
+ { 0x1d1ae, 61, G_UNICODE_SCRIPT_COMMON },
{ 0x1d200, 70, G_UNICODE_SCRIPT_GREEK },
{ 0x1d2e0, 20, G_UNICODE_SCRIPT_COMMON },
{ 0x1d300, 87, G_UNICODE_SCRIPT_COMMON },
@@ -3203,6 +3228,7 @@ static const struct {
{ 0x1d800, 652, G_UNICODE_SCRIPT_SIGNWRITING },
{ 0x1da9b, 5, G_UNICODE_SCRIPT_SIGNWRITING },
{ 0x1daa1, 15, G_UNICODE_SCRIPT_SIGNWRITING },
+ { 0x1df00, 31, G_UNICODE_SCRIPT_LATIN },
{ 0x1e000, 7, G_UNICODE_SCRIPT_GLAGOLITIC },
{ 0x1e008, 17, G_UNICODE_SCRIPT_GLAGOLITIC },
{ 0x1e01b, 7, G_UNICODE_SCRIPT_GLAGOLITIC },
@@ -3212,8 +3238,13 @@ static const struct {
{ 0x1e130, 14, G_UNICODE_SCRIPT_NYIAKENG_PUACHUE_HMONG },
{ 0x1e140, 10, G_UNICODE_SCRIPT_NYIAKENG_PUACHUE_HMONG },
{ 0x1e14e, 2, G_UNICODE_SCRIPT_NYIAKENG_PUACHUE_HMONG },
+ { 0x1e290, 31, G_UNICODE_SCRIPT_TOTO },
{ 0x1e2c0, 58, G_UNICODE_SCRIPT_WANCHO },
{ 0x1e2ff, 1, G_UNICODE_SCRIPT_WANCHO },
+ { 0x1e7e0, 7, G_UNICODE_SCRIPT_ETHIOPIC },
+ { 0x1e7e8, 4, G_UNICODE_SCRIPT_ETHIOPIC },
+ { 0x1e7ed, 2, G_UNICODE_SCRIPT_ETHIOPIC },
+ { 0x1e7f0, 15, G_UNICODE_SCRIPT_ETHIOPIC },
{ 0x1e800, 197, G_UNICODE_SCRIPT_MENDE_KIKAKUI },
{ 0x1e8c7, 16, G_UNICODE_SCRIPT_MENDE_KIKAKUI },
{ 0x1e900, 76, G_UNICODE_SCRIPT_ADLAM },
@@ -3270,33 +3301,34 @@ static const struct {
{ 0x1f250, 2, G_UNICODE_SCRIPT_COMMON },
{ 0x1f260, 6, G_UNICODE_SCRIPT_COMMON },
{ 0x1f300, 984, G_UNICODE_SCRIPT_COMMON },
- { 0x1f6e0, 13, G_UNICODE_SCRIPT_COMMON },
+ { 0x1f6dd, 16, G_UNICODE_SCRIPT_COMMON },
{ 0x1f6f0, 13, G_UNICODE_SCRIPT_COMMON },
{ 0x1f700, 116, G_UNICODE_SCRIPT_COMMON },
{ 0x1f780, 89, G_UNICODE_SCRIPT_COMMON },
{ 0x1f7e0, 12, G_UNICODE_SCRIPT_COMMON },
+ { 0x1f7f0, 1, G_UNICODE_SCRIPT_COMMON },
{ 0x1f800, 12, G_UNICODE_SCRIPT_COMMON },
{ 0x1f810, 56, G_UNICODE_SCRIPT_COMMON },
{ 0x1f850, 10, G_UNICODE_SCRIPT_COMMON },
{ 0x1f860, 40, G_UNICODE_SCRIPT_COMMON },
{ 0x1f890, 30, G_UNICODE_SCRIPT_COMMON },
{ 0x1f8b0, 2, G_UNICODE_SCRIPT_COMMON },
- { 0x1f900, 121, G_UNICODE_SCRIPT_COMMON },
- { 0x1f97a, 82, G_UNICODE_SCRIPT_COMMON },
- { 0x1f9cd, 135, G_UNICODE_SCRIPT_COMMON },
+ { 0x1f900, 340, G_UNICODE_SCRIPT_COMMON },
{ 0x1fa60, 14, G_UNICODE_SCRIPT_COMMON },
{ 0x1fa70, 5, G_UNICODE_SCRIPT_COMMON },
- { 0x1fa78, 3, G_UNICODE_SCRIPT_COMMON },
+ { 0x1fa78, 5, G_UNICODE_SCRIPT_COMMON },
{ 0x1fa80, 7, G_UNICODE_SCRIPT_COMMON },
- { 0x1fa90, 25, G_UNICODE_SCRIPT_COMMON },
- { 0x1fab0, 7, G_UNICODE_SCRIPT_COMMON },
- { 0x1fac0, 3, G_UNICODE_SCRIPT_COMMON },
- { 0x1fad0, 7, G_UNICODE_SCRIPT_COMMON },
+ { 0x1fa90, 29, G_UNICODE_SCRIPT_COMMON },
+ { 0x1fab0, 11, G_UNICODE_SCRIPT_COMMON },
+ { 0x1fac0, 6, G_UNICODE_SCRIPT_COMMON },
+ { 0x1fad0, 10, G_UNICODE_SCRIPT_COMMON },
+ { 0x1fae0, 8, G_UNICODE_SCRIPT_COMMON },
+ { 0x1faf0, 7, G_UNICODE_SCRIPT_COMMON },
{ 0x1fb00, 147, G_UNICODE_SCRIPT_COMMON },
{ 0x1fb94, 55, G_UNICODE_SCRIPT_COMMON },
{ 0x1fbf0, 10, G_UNICODE_SCRIPT_COMMON },
- { 0x20000, 42718, G_UNICODE_SCRIPT_HAN },
- { 0x2a700, 4149, G_UNICODE_SCRIPT_HAN },
+ { 0x20000, 42720, G_UNICODE_SCRIPT_HAN },
+ { 0x2a700, 4153, G_UNICODE_SCRIPT_HAN },
{ 0x2b740, 222, G_UNICODE_SCRIPT_HAN },
{ 0x2b820, 5762, G_UNICODE_SCRIPT_HAN },
{ 0x2ceb0, 7473, G_UNICODE_SCRIPT_HAN },
diff --git a/glib/gsequence.c b/glib/gsequence.c
index 9d76dbb22..9cf1e8d3e 100644
--- a/glib/gsequence.c
+++ b/glib/gsequence.c
@@ -120,6 +120,7 @@ struct _GSequence
struct _GSequenceNode
{
gint n_nodes;
+ guint32 priority;
GSequenceNode * parent;
GSequenceNode * left;
GSequenceNode * right;
@@ -607,7 +608,7 @@ g_sequence_move_range (GSequenceIter *dest,
GSequenceIter *begin,
GSequenceIter *end)
{
- GSequence *src_seq, *end_seq, *dest_seq;
+ GSequence *src_seq, *end_seq, *dest_seq = NULL;
GSequenceNode *first;
g_return_if_fail (begin != NULL);
@@ -1572,11 +1573,9 @@ g_sequence_swap (GSequenceIter *a,
*
*
*/
-static guint
-get_priority (GSequenceNode *node)
+static guint32
+hash_uint32 (guint32 key)
{
- guint key = GPOINTER_TO_UINT (node);
-
/* This hash function is based on one found on Thomas Wang's
* web page at
*
@@ -1590,6 +1589,20 @@ get_priority (GSequenceNode *node)
key = key + (key << 3) + (key << 11);
key = key ^ (key >> 16);
+ return key;
+}
+
+static inline guint
+get_priority (GSequenceNode *node)
+{
+ return node->priority;
+}
+
+static guint
+make_priority (guint32 key)
+{
+ key = hash_uint32 (key);
+
/* We rely on 0 being less than all other priorities */
return key? key : 1;
}
@@ -1608,7 +1621,40 @@ node_new (gpointer data)
{
GSequenceNode *node = g_slice_new0 (GSequenceNode);
+ /*
+ * Make a random number quickly. Some binary magic is used to avoid
+ * the costs of proper RNG, such as locking around global GRand.
+ *
+ * Using just the node pointer alone is not enough, because in this
+ * case freeing and re-allocating sequence causes node's priorities
+ * to no longer be random. This happens for two reasons:
+ * 1) Nodes are freed from the root and the treap's property is that
+ * node's priority is >= than its children's priorities.
+ * 2) g_slice_new0() will reuse freed nodes in the order similar to
+ * the order of freeing.
+ * As a result, there are severe problems where building the treap is
+ * much slower (100x and more after a few sequence new/free
+ * iterations) and treap becomes more like a list (tree height
+ * approaches tree's number of elements), which increases costs of
+ * using the built treap.
+ *
+ * Note that for performance reasons, counter completely ignores
+ * multi-threading issues. This is fine because it's merely a source
+ * of additional randomness. Even if it fails to ++ sometimes, this
+ * won't really matter for its goal.
+ *
+ * Note that 64-bit counter is used to avoid undefined behavior on
+ * overflow.
+ *
+ * See https://gitlab.gnome.org/GNOME/glib/-/issues/2468
+ */
+ static guint64 counter = 0;
+ guint32 hash_key = (guint32) GPOINTER_TO_UINT (node);
+ hash_key ^= (guint32) counter;
+ counter++;
+
node->n_nodes = 1;
+ node->priority = make_priority (hash_key);
node->data = data;
node->left = NULL;
node->right = NULL;
diff --git a/glib/gshell.c b/glib/gshell.c
index 33c53497a..ed893905e 100644
--- a/glib/gshell.c
+++ b/glib/gshell.c
@@ -646,6 +646,11 @@ tokenize_command_line (const gchar *command_line,
*
* Possible errors are those from the %G_SHELL_ERROR domain.
*
+ * In particular, if @command_line is an empty string (or a string containing
+ * only whitespace), %G_SHELL_ERROR_EMPTY_STRING will be returned. It’s
+ * guaranteed that @argvp will be a non-empty array if this function returns
+ * successfully.
+ *
* Free the returned vector with g_strfreev().
*
* Returns: %TRUE on success, %FALSE if error set
@@ -702,7 +707,10 @@ g_shell_parse_argv (const gchar *command_line,
}
g_slist_free_full (tokens, g_free);
-
+
+ g_assert (argc > 0);
+ g_assert (argv != NULL && argv[0] != NULL);
+
if (argcp)
*argcp = argc;
diff --git a/glib/gslice.c b/glib/gslice.c
index 630b6bc85..4e999202e 100644
--- a/glib/gslice.c
+++ b/glib/gslice.c
@@ -380,7 +380,7 @@ slice_config_init (SliceConfig *config)
{
wchar_t wvalue[128]; /* at least big enough for `always-malloc,debug-blocks` */
- int len;
+ gsize len;
len = GetEnvironmentVariableW (L"G_SLICE", wvalue, G_N_ELEMENTS (wvalue));
@@ -610,8 +610,8 @@ magazine_count (ChunkLink *head)
#endif
static inline gsize
-allocator_get_magazine_threshold (Allocator *allocator,
- guint ix)
+allocator_get_magazine_threshold (Allocator *local_allocator,
+ guint ix)
{
/* the magazine size calculated here has a lower bound of MIN_MAGAZINE_SIZE,
* which is required by the implementation. also, for moderately sized chunks
@@ -622,9 +622,9 @@ allocator_get_magazine_threshold (Allocator *allocator,
* MAX_MAGAZINE_SIZE. for larger chunks, this number is scaled down so that
* the content of a single magazine doesn't exceed ca. 16KB.
*/
- gsize chunk_size = SLAB_CHUNK_SIZE (allocator, ix);
- guint threshold = MAX (MIN_MAGAZINE_SIZE, allocator->max_page_size / MAX (5 * chunk_size, 5 * 32));
- guint contention_counter = allocator->contention_counters[ix];
+ gsize chunk_size = SLAB_CHUNK_SIZE (local_allocator, ix);
+ guint threshold = MAX (MIN_MAGAZINE_SIZE, local_allocator->max_page_size / MAX (5 * chunk_size, 5 * 32));
+ guint contention_counter = local_allocator->contention_counters[ix];
if (G_UNLIKELY (contention_counter)) /* single CPU bias */
{
/* adapt contention counter thresholds to chunk sizes */
@@ -676,16 +676,16 @@ magazine_chain_prepare_fields (ChunkLink *magazine_chunks)
#define magazine_chain_count(mc) ((mc)->next->next->next->data)
static void
-magazine_cache_trim (Allocator *allocator,
- guint ix,
- guint stamp)
+magazine_cache_trim (Allocator *local_allocator,
+ guint ix,
+ guint stamp)
{
- /* g_mutex_lock (allocator->mutex); done by caller */
+ /* g_mutex_lock (local_allocator->mutex); done by caller */
/* trim magazine cache from tail */
- ChunkLink *current = magazine_chain_prev (allocator->magazines[ix]);
+ ChunkLink *current = magazine_chain_prev (local_allocator->magazines[ix]);
ChunkLink *trash = NULL;
- while (!G_APPROX_VALUE(stamp, magazine_chain_uint_stamp (current),
- allocator->config.working_set_msecs))
+ while (!G_APPROX_VALUE (stamp, magazine_chain_uint_stamp (current),
+ local_allocator->config.working_set_msecs))
{
/* unlink */
ChunkLink *prev = magazine_chain_prev (current);
@@ -699,19 +699,19 @@ magazine_cache_trim (Allocator *allocator,
magazine_chain_prev (current) = trash;
trash = current;
/* fixup list head if required */
- if (current == allocator->magazines[ix])
+ if (current == local_allocator->magazines[ix])
{
- allocator->magazines[ix] = NULL;
+ local_allocator->magazines[ix] = NULL;
break;
}
current = prev;
}
- g_mutex_unlock (&allocator->magazine_mutex);
+ g_mutex_unlock (&local_allocator->magazine_mutex);
/* free trash */
if (trash)
{
- const gsize chunk_size = SLAB_CHUNK_SIZE (allocator, ix);
- g_mutex_lock (&allocator->slab_mutex);
+ const gsize chunk_size = SLAB_CHUNK_SIZE (local_allocator, ix);
+ g_mutex_lock (&local_allocator->slab_mutex);
while (trash)
{
current = trash;
@@ -723,7 +723,7 @@ magazine_cache_trim (Allocator *allocator,
slab_allocator_free_chunk (chunk_size, chunk);
}
}
- g_mutex_unlock (&allocator->slab_mutex);
+ g_mutex_unlock (&local_allocator->slab_mutex);
}
}
@@ -1282,40 +1282,40 @@ g_slice_free_chain_with_offset (gsize mem_size,
/* --- single page allocator --- */
static void
-allocator_slab_stack_push (Allocator *allocator,
- guint ix,
- SlabInfo *sinfo)
+allocator_slab_stack_push (Allocator *local_allocator,
+ guint ix,
+ SlabInfo *sinfo)
{
/* insert slab at slab ring head */
- if (!allocator->slab_stack[ix])
+ if (!local_allocator->slab_stack[ix])
{
sinfo->next = sinfo;
sinfo->prev = sinfo;
}
else
{
- SlabInfo *next = allocator->slab_stack[ix], *prev = next->prev;
+ SlabInfo *next = local_allocator->slab_stack[ix], *prev = next->prev;
next->prev = sinfo;
prev->next = sinfo;
sinfo->next = next;
sinfo->prev = prev;
}
- allocator->slab_stack[ix] = sinfo;
+ local_allocator->slab_stack[ix] = sinfo;
}
static gsize
-allocator_aligned_page_size (Allocator *allocator,
- gsize n_bytes)
+allocator_aligned_page_size (Allocator *local_allocator,
+ gsize n_bytes)
{
gsize val = (gsize) 1 << g_bit_storage (n_bytes - 1);
- val = MAX (val, allocator->min_page_size);
+ val = MAX (val, local_allocator->min_page_size);
return val;
}
static void
-allocator_add_slab (Allocator *allocator,
- guint ix,
- gsize chunk_size)
+allocator_add_slab (Allocator *local_allocator,
+ guint ix,
+ gsize chunk_size)
{
ChunkLink *chunk;
SlabInfo *sinfo;
@@ -1326,7 +1326,7 @@ allocator_add_slab (Allocator *allocator,
guint8 *mem;
guint i;
- page_size = allocator_aligned_page_size (allocator, SLAB_BPAGE_SIZE (allocator, chunk_size));
+ page_size = allocator_aligned_page_size (local_allocator, SLAB_BPAGE_SIZE (local_allocator, chunk_size));
/* allocate 1 page for the chunks and the slab */
aligned_memory = allocator_memalign (page_size, page_size - NATIVE_MALLOC_PADDING);
errsv = errno;
@@ -1351,8 +1351,8 @@ allocator_add_slab (Allocator *allocator,
padding = ((guint8*) sinfo - mem) - n_chunks * chunk_size;
if (padding)
{
- color = (allocator->color_accu * P2ALIGNMENT) % padding;
- allocator->color_accu += allocator->config.color_increment;
+ color = (local_allocator->color_accu * P2ALIGNMENT) % padding;
+ local_allocator->color_accu += local_allocator->config.color_increment;
}
/* add chunks to free list */
chunk = (ChunkLink*) (mem + color);
@@ -1364,7 +1364,7 @@ allocator_add_slab (Allocator *allocator,
}
chunk->next = NULL; /* last chunk */
/* add slab to slab ring */
- allocator_slab_stack_push (allocator, ix, sinfo);
+ allocator_slab_stack_push (local_allocator, ix, sinfo);
}
static gpointer
diff --git a/glib/gspawn-win32-helper.c b/glib/gspawn-win32-helper.c
index efc2e4970..4729ee46e 100644
--- a/glib/gspawn-win32-helper.c
+++ b/glib/gspawn-win32-helper.c
@@ -153,6 +153,18 @@ protect_wargv (gint argc,
return argc;
}
+static int
+checked_dup2 (int oldfd, int newfd, int report_fd)
+{
+ if (oldfd == newfd)
+ return newfd;
+
+ if (dup2 (oldfd, newfd) == -1)
+ write_err_and_exit (report_fd, CHILD_DUP_FAILED);
+
+ return newfd;
+}
+
#if (defined (_MSC_VER) && _MSC_VER >= 1400)
/*
* This is the (empty) invalid parameter handler
@@ -188,12 +200,14 @@ int
main (int ignored_argc, char **ignored_argv)
#endif
{
+ GHashTable *fds; /* (element-type int int) */
int child_err_report_fd = -1;
int helper_sync_fd = -1;
int saved_stderr_fd = -1;
int i;
int fd;
int mode;
+ int maxfd = 2;
gintptr handle;
int saved_errno;
gintptr no_error = CHILD_NO_ERROR;
@@ -229,6 +243,7 @@ main (int ignored_argc, char **ignored_argv)
* which write error messages.
*/
child_err_report_fd = atoi (argv[ARG_CHILD_ERR_REPORT]);
+ maxfd = MAX (child_err_report_fd, maxfd);
/* Hack to implement G_SPAWN_FILE_AND_ARGV_ZERO. If
* argv[ARG_CHILD_ERR_REPORT] is suffixed with a '#' it means we get
@@ -244,6 +259,7 @@ main (int ignored_argc, char **ignored_argv)
* from another process works only if that other process exists.
*/
helper_sync_fd = atoi (argv[ARG_HELPER_SYNC]);
+ maxfd = MAX (helper_sync_fd, maxfd);
/* argv[ARG_STDIN..ARG_STDERR] are the file descriptor numbers that
* should be dup2'd to 0, 1 and 2. '-' if the corresponding fd
@@ -255,20 +271,12 @@ main (int ignored_argc, char **ignored_argv)
else if (argv[ARG_STDIN][0] == 'z')
{
fd = open ("NUL:", O_RDONLY);
- if (fd != 0)
- {
- dup2 (fd, 0);
- close (fd);
- }
+ checked_dup2 (fd, 0, child_err_report_fd);
}
else
{
fd = atoi (argv[ARG_STDIN]);
- if (fd != 0)
- {
- dup2 (fd, 0);
- close (fd);
- }
+ checked_dup2 (fd, 0, child_err_report_fd);
}
if (argv[ARG_STDOUT][0] == '-')
@@ -276,42 +284,34 @@ main (int ignored_argc, char **ignored_argv)
else if (argv[ARG_STDOUT][0] == 'z')
{
fd = open ("NUL:", O_WRONLY);
- if (fd != 1)
- {
- dup2 (fd, 1);
- close (fd);
- }
+ checked_dup2 (fd, 1, child_err_report_fd);
}
else
{
fd = atoi (argv[ARG_STDOUT]);
- if (fd != 1)
- {
- dup2 (fd, 1);
- close (fd);
- }
+ checked_dup2 (fd, 1, child_err_report_fd);
+ }
+
+ /* GUI application do not necessarily have a stderr */
+ if (_fileno (stderr) == 2)
+ {
+ saved_stderr_fd = reopen_noninherited (dup (2), _O_WRONLY);
+ if (saved_stderr_fd == -1)
+ write_err_and_exit (child_err_report_fd, CHILD_DUP_FAILED);
}
- saved_stderr_fd = reopen_noninherited (dup (2), _O_WRONLY);
+ maxfd = MAX (saved_stderr_fd, maxfd);
if (argv[ARG_STDERR][0] == '-')
; /* Nothing */
else if (argv[ARG_STDERR][0] == 'z')
{
fd = open ("NUL:", O_WRONLY);
- if (fd != 2)
- {
- dup2 (fd, 2);
- close (fd);
- }
+ checked_dup2 (fd, 2, child_err_report_fd);
}
else
{
fd = atoi (argv[ARG_STDERR]);
- if (fd != 2)
- {
- dup2 (fd, 2);
- close (fd);
- }
+ checked_dup2 (fd, 2, child_err_report_fd);
}
/* argv[ARG_WORKING_DIRECTORY] is the directory in which to run the
@@ -323,12 +323,80 @@ main (int ignored_argc, char **ignored_argv)
else if (_wchdir (wargv[ARG_WORKING_DIRECTORY]) < 0)
write_err_and_exit (child_err_report_fd, CHILD_CHDIR_FAILED);
+ fds = g_hash_table_new (NULL, NULL);
+ if (argv[ARG_FDS][0] != '-')
+ {
+ gchar **fdsv = g_strsplit (argv[ARG_FDS], ",", -1);
+ gsize i;
+
+ for (i = 0; fdsv[i]; i++)
+ {
+ char *endptr = NULL;
+ int sourcefd, targetfd;
+ gint64 val;
+
+ val = g_ascii_strtoll (fdsv[i], &endptr, 10);
+ g_assert (val <= G_MAXINT32);
+ sourcefd = val;
+ g_assert (endptr != fdsv[i]);
+ g_assert (*endptr == ':');
+ val = g_ascii_strtoll (endptr + 1, &endptr, 10);
+ targetfd = val;
+ g_assert (val <= G_MAXINT32);
+ g_assert (*endptr == '\0');
+
+ maxfd = MAX (maxfd, sourcefd);
+ maxfd = MAX (maxfd, targetfd);
+
+ g_hash_table_insert (fds, GINT_TO_POINTER (targetfd), GINT_TO_POINTER (sourcefd));
+ }
+
+ g_strfreev (fdsv);
+ }
+
+ maxfd++;
+ child_err_report_fd = checked_dup2 (child_err_report_fd, maxfd, child_err_report_fd);
+ maxfd++;
+ helper_sync_fd = checked_dup2 (helper_sync_fd, maxfd, child_err_report_fd);
+ if (saved_stderr_fd >= 0)
+ {
+ maxfd++;
+ saved_stderr_fd = checked_dup2 (saved_stderr_fd, maxfd, child_err_report_fd);
+ }
+
+ {
+ GHashTableIter iter;
+ gpointer sourcefd, targetfd;
+
+ g_hash_table_iter_init (&iter, fds);
+ while (g_hash_table_iter_next (&iter, &targetfd, &sourcefd))
+ {
+ /* If we're doing remapping fd assignments, we need to handle
+ * the case where the user has specified e.g. 5 -> 4, 4 -> 6.
+ * We do this by duping all source fds, taking care to ensure the new
+ * fds are larger than any target fd to avoid introducing new conflicts.
+ */
+ maxfd++;
+ checked_dup2 (GPOINTER_TO_INT (sourcefd), maxfd, child_err_report_fd);
+ g_hash_table_iter_replace (&iter, GINT_TO_POINTER (maxfd));
+ }
+
+ g_hash_table_iter_init (&iter, fds);
+ while (g_hash_table_iter_next (&iter, &targetfd, &sourcefd))
+ checked_dup2 (GPOINTER_TO_INT (sourcefd), GPOINTER_TO_INT (targetfd), child_err_report_fd);
+ }
+
+ g_hash_table_add (fds, GINT_TO_POINTER (child_err_report_fd));
+ g_hash_table_add (fds, GINT_TO_POINTER (helper_sync_fd));
+ if (saved_stderr_fd >= 0)
+ g_hash_table_add (fds, GINT_TO_POINTER (saved_stderr_fd));
+
/* argv[ARG_CLOSE_DESCRIPTORS] is "y" if file descriptors from 3
* upwards should be closed
*/
if (argv[ARG_CLOSE_DESCRIPTORS][0] == 'y')
for (i = 3; i < 1000; i++) /* FIXME real limit? */
- if (i != child_err_report_fd && i != helper_sync_fd && i != saved_stderr_fd)
+ if (!g_hash_table_contains (fds, GINT_TO_POINTER (i)))
if (_get_osfhandle (i) != -1)
close (i);
@@ -337,6 +405,8 @@ main (int ignored_argc, char **ignored_argv)
*/
child_err_report_fd = reopen_noninherited (child_err_report_fd, _O_WRONLY);
helper_sync_fd = reopen_noninherited (helper_sync_fd, _O_RDONLY);
+ if (helper_sync_fd == -1)
+ write_err_and_exit (child_err_report_fd, CHILD_DUP_FAILED);
/* argv[ARG_WAIT] is "w" to wait for the program to exit */
if (argv[ARG_WAIT][0] == 'w')
@@ -368,7 +438,9 @@ main (int ignored_argc, char **ignored_argv)
* Remove redirection so that they would go to original stderr
* instead of being treated as part of stderr of child process.
*/
- dup2 (saved_stderr_fd, 2);
+ if (saved_stderr_fd >= 0)
+ dup2 (saved_stderr_fd, 2);
+
if (handle == -1 && saved_errno != 0)
{
int ec = (saved_errno == ENOENT)
@@ -384,6 +456,7 @@ main (int ignored_argc, char **ignored_argv)
LocalFree (wargv);
g_strfreev (argv);
+ g_hash_table_unref (fds);
return 0;
}
diff --git a/glib/gspawn-win32.c b/glib/gspawn-win32.c
index 638bac5cd..fc2a96c94 100644
--- a/glib/gspawn-win32.c
+++ b/glib/gspawn-win32.c
@@ -42,10 +42,11 @@
#include "config.h"
-#include "glib.h"
+#include "glib-init.h"
#include "glib-private.h"
-#include "gprintfint.h"
+#include "glib.h"
#include "glibintl.h"
+#include "gprintfint.h"
#include "gspawn-private.h"
#include "gthread.h"
@@ -88,6 +89,7 @@ enum
CHILD_CHDIR_FAILED,
CHILD_SPAWN_FAILED,
CHILD_SPAWN_NOENT,
+ CHILD_DUP_FAILED,
};
enum {
@@ -100,6 +102,7 @@ enum {
ARG_CLOSE_DESCRIPTORS,
ARG_USE_PATH,
ARG_WAIT,
+ ARG_FDS,
ARG_PROGRAM,
ARG_COUNT = ARG_PROGRAM
};
@@ -233,7 +236,7 @@ g_spawn_async (const gchar *working_directory,
GPid *child_pid,
GError **error)
{
- g_return_val_if_fail (argv != NULL, FALSE);
+ g_return_val_if_fail (argv != NULL && argv[0] != NULL, FALSE);
return g_spawn_async_with_pipes (working_directory,
argv, envp,
@@ -324,7 +327,7 @@ read_helper_report (int fd,
gintptr report[2],
GError **error)
{
- gint bytes = 0;
+ gsize bytes = 0;
while (bytes < sizeof(gintptr)*2)
{
@@ -392,6 +395,11 @@ set_child_error (gintptr report[2],
_("Failed to execute child process (%s)"),
g_strerror (report[1]));
break;
+ case CHILD_DUP_FAILED:
+ g_set_error (error, G_SPAWN_ERROR, G_SPAWN_ERROR_FAILED,
+ _("Failed to dup() in child process (%s)"),
+ g_strerror (report[1]));
+ break;
default:
g_assert_not_reached ();
}
@@ -452,6 +460,8 @@ do_spawn_directly (gint *exit_status,
gint conv_error_index;
wchar_t *wargv0, **wargv, **wenvp;
+ g_assert (argv != NULL && argv[0] != NULL);
+
new_argv = (flags & G_SPAWN_FILE_AND_ARGV_ZERO) ? protected_argv + 1 : protected_argv;
wargv0 = g_utf8_to_utf16 (argv[0], -1, NULL, NULL, &conv_error);
@@ -568,6 +578,9 @@ fork_exec (gint *exit_status,
gint stdin_fd,
gint stdout_fd,
gint stderr_fd,
+ const gint *source_fds,
+ const gint *target_fds,
+ gsize n_fds,
gint *err_report,
GError **error)
{
@@ -586,11 +599,11 @@ fork_exec (gint *exit_status,
gint conv_error_index;
gchar *helper_process;
wchar_t *whelper, **wargv, **wenvp;
- gchar *glib_dll_directory;
int stdin_pipe[2] = { -1, -1 };
int stdout_pipe[2] = { -1, -1 };
int stderr_pipe[2] = { -1, -1 };
+ g_assert (argv != NULL && argv[0] != NULL);
g_assert (stdin_pipe_out == NULL || stdin_fd < 0);
g_assert (stdout_pipe_out == NULL || stdout_fd < 0);
g_assert (stderr_pipe_out == NULL || stderr_fd < 0);
@@ -624,12 +637,20 @@ fork_exec (gint *exit_status,
argc = protect_argv (argv, &protected_argv);
+ /*
+ * FIXME: Workaround broken spawnvpe functions that SEGV when "=X:="
+ * environment variables are missing. Calling chdir() will set the magic
+ * environment variable again.
+ */
+ _chdir (".");
+
if (stdin_fd == -1 && stdout_fd == -1 && stderr_fd == -1 &&
(flags & G_SPAWN_CHILD_INHERITS_STDIN) &&
!(flags & G_SPAWN_STDOUT_TO_DEV_NULL) &&
!(flags & G_SPAWN_STDERR_TO_DEV_NULL) &&
(working_directory == NULL || !*working_directory) &&
- (flags & G_SPAWN_LEAVE_DESCRIPTORS_OPEN))
+ (flags & G_SPAWN_LEAVE_DESCRIPTORS_OPEN) &&
+ n_fds == 0)
{
/* We can do without the helper process */
gboolean retval =
@@ -651,16 +672,8 @@ fork_exec (gint *exit_status,
helper_process = HELPER_PROCESS "-console.exe";
else
helper_process = HELPER_PROCESS ".exe";
-
- glib_dll_directory = _glib_get_dll_directory ();
- if (glib_dll_directory != NULL)
- {
- helper_process = g_build_filename (glib_dll_directory, helper_process, NULL);
- g_free (glib_dll_directory);
- }
- else
- helper_process = g_strdup (helper_process);
+ helper_process = g_win32_find_helper_executable_path (helper_process, glib_dll);
new_argv[0] = protect_argv_string (helper_process);
_g_sprintf (args[ARG_CHILD_ERR_REPORT], "%d", child_err_report_pipe[1]);
@@ -756,6 +769,21 @@ fork_exec (gint *exit_status,
else
new_argv[ARG_WAIT] = "w";
+ if (n_fds == 0)
+ new_argv[ARG_FDS] = g_strdup ("-");
+ else
+ {
+ GString *fds = g_string_new ("");
+ gsize n;
+
+ for (n = 0; n < n_fds; n++)
+ g_string_append_printf (fds, "%d:%d,", source_fds[n], target_fds[n]);
+
+ /* remove the trailing , */
+ g_string_truncate (fds, fds->len - 1);
+ new_argv[ARG_FDS] = g_string_free (fds, FALSE);
+ }
+
for (i = 0; i <= argc; i++)
new_argv[ARG_PROGRAM + i] = protected_argv[i];
@@ -782,6 +810,7 @@ fork_exec (gint *exit_status,
g_strfreev (protected_argv);
g_free (new_argv[0]);
g_free (new_argv[ARG_WORKING_DIRECTORY]);
+ g_free (new_argv[ARG_FDS]);
g_free (new_argv);
g_free (helper_process);
@@ -797,6 +826,7 @@ fork_exec (gint *exit_status,
g_strfreev (protected_argv);
g_free (new_argv[0]);
g_free (new_argv[ARG_WORKING_DIRECTORY]);
+ g_free (new_argv[ARG_FDS]);
g_free (new_argv);
g_free (helper_process);
g_strfreev ((gchar **) wargv);
@@ -828,6 +858,7 @@ fork_exec (gint *exit_status,
g_free (new_argv[0]);
g_free (new_argv[ARG_WORKING_DIRECTORY]);
+ g_free (new_argv[ARG_FDS]);
g_free (new_argv);
/* Check if gspawn-win32-helper couldn't be run */
@@ -957,7 +988,7 @@ g_spawn_sync (const gchar *working_directory,
gint reportpipe = -1;
GIOChannel *outchannel = NULL;
GIOChannel *errchannel = NULL;
- GPollFD outfd, errfd;
+ GPollFD outfd = { -1, 0, 0 }, errfd = { -1, 0, 0 };
GPollFD fds[2];
gint nfds;
gint outindex = -1;
@@ -968,7 +999,7 @@ g_spawn_sync (const gchar *working_directory,
gboolean failed;
gint status;
- g_return_val_if_fail (argv != NULL, FALSE);
+ g_return_val_if_fail (argv != NULL && argv[0] != NULL, FALSE);
g_return_val_if_fail (!(flags & G_SPAWN_DO_NOT_REAP_CHILD), FALSE);
g_return_val_if_fail (standard_output == NULL ||
!(flags & G_SPAWN_STDOUT_TO_DEV_NULL), FALSE);
@@ -999,6 +1030,7 @@ g_spawn_sync (const gchar *working_directory,
-1,
-1,
-1,
+ NULL, NULL, 0,
&reportpipe,
error))
return FALSE;
@@ -1199,7 +1231,7 @@ g_spawn_async_with_pipes (const gchar *working_directory,
gint *standard_error,
GError **error)
{
- g_return_val_if_fail (argv != NULL, FALSE);
+ g_return_val_if_fail (argv != NULL && argv[0] != NULL, FALSE);
g_return_val_if_fail (standard_output == NULL ||
!(flags & G_SPAWN_STDOUT_TO_DEV_NULL), FALSE);
g_return_val_if_fail (standard_error == NULL ||
@@ -1223,6 +1255,7 @@ g_spawn_async_with_pipes (const gchar *working_directory,
-1,
-1,
-1,
+ NULL, NULL, 0,
NULL,
error);
}
@@ -1240,7 +1273,7 @@ g_spawn_async_with_fds (const gchar *working_directory,
gint stderr_fd,
GError **error)
{
- g_return_val_if_fail (argv != NULL, FALSE);
+ g_return_val_if_fail (argv != NULL && argv[0] != NULL, FALSE);
g_return_val_if_fail (stdin_fd == -1 ||
!(flags & G_SPAWN_STDOUT_TO_DEV_NULL), FALSE);
g_return_val_if_fail (stderr_fd == -1 ||
@@ -1264,6 +1297,7 @@ g_spawn_async_with_fds (const gchar *working_directory,
stdin_fd,
stdout_fd,
stderr_fd,
+ NULL, NULL, 0,
NULL,
error);
@@ -1288,7 +1322,7 @@ g_spawn_async_with_pipes_and_fds (const gchar *working_directory,
gint *stderr_pipe_out,
GError **error)
{
- g_return_val_if_fail (argv != NULL, FALSE);
+ g_return_val_if_fail (argv != NULL && argv[0] != NULL, FALSE);
g_return_val_if_fail (stdout_pipe_out == NULL ||
!(flags & G_SPAWN_STDOUT_TO_DEV_NULL), FALSE);
g_return_val_if_fail (stderr_pipe_out == NULL ||
@@ -1301,14 +1335,6 @@ g_spawn_async_with_pipes_and_fds (const gchar *working_directory,
g_return_val_if_fail (stdout_pipe_out == NULL || stdout_fd < 0, FALSE);
g_return_val_if_fail (stderr_pipe_out == NULL || stderr_fd < 0, FALSE);
- /* source_fds/target_fds isn’t supported on Windows at the moment. */
- if (n_fds != 0)
- {
- g_set_error_literal (error, G_SPAWN_ERROR, G_SPAWN_ERROR_INVAL,
- "FD redirection is not supported on Windows at the moment");
- return FALSE;
- }
-
return fork_exec (NULL,
(flags & G_SPAWN_DO_NOT_REAP_CHILD),
working_directory,
@@ -1324,6 +1350,9 @@ g_spawn_async_with_pipes_and_fds (const gchar *working_directory,
stdin_fd,
stdout_fd,
stderr_fd,
+ source_fds,
+ target_fds,
+ n_fds,
NULL,
error);
}
@@ -1340,6 +1369,7 @@ g_spawn_command_line_sync (const gchar *command_line,
g_return_val_if_fail (command_line != NULL, FALSE);
+ /* This will return a runtime error if @command_line is the empty string. */
if (!g_shell_parse_argv (command_line,
NULL, &argv,
error))
@@ -1369,6 +1399,7 @@ g_spawn_command_line_async (const gchar *command_line,
g_return_val_if_fail (command_line != NULL, FALSE);
+ /* This will return a runtime error if @command_line is the empty string. */
if (!g_shell_parse_argv (command_line,
NULL, &argv,
error))
diff --git a/glib/gspawn.c b/glib/gspawn.c
index 67be6a6af..0a2cbe54a 100644
--- a/glib/gspawn.c
+++ b/glib/gspawn.c
@@ -319,7 +319,7 @@ read_data (GString *str,
* @working_directory: (type filename) (nullable): child's current working
* directory, or %NULL to inherit parent's
* @argv: (array zero-terminated=1) (element-type filename):
- * child's argument vector
+ * child's argument vector, which must be non-empty and %NULL-terminated
* @envp: (array zero-terminated=1) (element-type filename) (nullable):
* child's environment, or %NULL to inherit parent's
* @flags: flags from #GSpawnFlags
@@ -378,6 +378,7 @@ g_spawn_sync (const gchar *working_directory,
gint status;
g_return_val_if_fail (argv != NULL, FALSE);
+ g_return_val_if_fail (argv[0] != NULL, FALSE);
g_return_val_if_fail (!(flags & G_SPAWN_DO_NOT_REAP_CHILD), FALSE);
g_return_val_if_fail (standard_output == NULL ||
!(flags & G_SPAWN_STDOUT_TO_DEV_NULL), FALSE);
@@ -578,7 +579,7 @@ g_spawn_sync (const gchar *working_directory,
* @working_directory: (type filename) (nullable): child's current working
* directory, or %NULL to inherit parent's, in the GLib file name encoding
* @argv: (array zero-terminated=1) (element-type filename): child's argument
- * vector, in the GLib file name encoding
+ * vector, in the GLib file name encoding; it must be non-empty and %NULL-terminated
* @envp: (array zero-terminated=1) (element-type filename) (nullable):
* child's environment, or %NULL to inherit parent's, in the GLib file
* name encoding
@@ -610,6 +611,7 @@ g_spawn_async_with_pipes (const gchar *working_directory,
GError **error)
{
g_return_val_if_fail (argv != NULL, FALSE);
+ g_return_val_if_fail (argv[0] != NULL, FALSE);
g_return_val_if_fail (standard_output == NULL ||
!(flags & G_SPAWN_STDOUT_TO_DEV_NULL), FALSE);
g_return_val_if_fail (standard_error == NULL ||
@@ -646,7 +648,7 @@ g_spawn_async_with_pipes (const gchar *working_directory,
* @working_directory: (type filename) (nullable): child's current working
* directory, or %NULL to inherit parent's, in the GLib file name encoding
* @argv: (array zero-terminated=1) (element-type filename): child's argument
- * vector, in the GLib file name encoding
+ * vector, in the GLib file name encoding; it must be non-empty and %NULL-terminated
* @envp: (array zero-terminated=1) (element-type filename) (nullable):
* child's environment, or %NULL to inherit parent's, in the GLib file
* name encoding
@@ -772,6 +774,8 @@ g_spawn_async_with_pipes (const gchar *working_directory,
* any target FDs which equal @stdin_fd, @stdout_fd or @stderr_fd will overwrite
* them in the spawned process.
*
+ * @source_fds is supported on Windows since 2.72.
+ *
* %G_SPAWN_FILE_AND_ARGV_ZERO means that the first element of @argv is
* the file to execute, while the remaining elements are the actual
* argument vector to pass to the file. Normally g_spawn_async_with_pipes()
@@ -824,7 +828,7 @@ g_spawn_async_with_pipes (const gchar *working_directory,
* even if they occur in the child (for example if the executable in
* `@argv[0]` is not found). Typically the `message` field of returned
* errors should be displayed to users. Possible errors are those from
- * the #G_SPAWN_ERROR domain.
+ * the %G_SPAWN_ERROR domain.
*
* If an error occurs, @child_pid, @stdin_pipe_out, @stdout_pipe_out,
* and @stderr_pipe_out will not be filled with valid values.
@@ -878,6 +882,7 @@ g_spawn_async_with_pipes_and_fds (const gchar *working_directory,
GError **error)
{
g_return_val_if_fail (argv != NULL, FALSE);
+ g_return_val_if_fail (argv[0] != NULL, FALSE);
g_return_val_if_fail (stdout_pipe_out == NULL ||
!(flags & G_SPAWN_STDOUT_TO_DEV_NULL), FALSE);
g_return_val_if_fail (stderr_pipe_out == NULL ||
@@ -920,7 +925,8 @@ g_spawn_async_with_pipes_and_fds (const gchar *working_directory,
/**
* g_spawn_async_with_fds:
* @working_directory: (type filename) (nullable): child's current working directory, or %NULL to inherit parent's, in the GLib file name encoding
- * @argv: (array zero-terminated=1): child's argument vector, in the GLib file name encoding
+ * @argv: (array zero-terminated=1): child's argument vector, in the GLib file name encoding;
+ * it must be non-empty and %NULL-terminated
* @envp: (array zero-terminated=1) (nullable): child's environment, or %NULL to inherit parent's, in the GLib file name encoding
* @flags: flags from #GSpawnFlags
* @child_setup: (scope async) (nullable): function to run in the child just before exec()
@@ -954,6 +960,7 @@ g_spawn_async_with_fds (const gchar *working_directory,
GError **error)
{
g_return_val_if_fail (argv != NULL, FALSE);
+ g_return_val_if_fail (argv[0] != NULL, FALSE);
g_return_val_if_fail (stdout_fd < 0 ||
!(flags & G_SPAWN_STDOUT_TO_DEV_NULL), FALSE);
g_return_val_if_fail (stderr_fd < 0 ||
@@ -1037,6 +1044,7 @@ g_spawn_command_line_sync (const gchar *command_line,
g_return_val_if_fail (command_line != NULL, FALSE);
+ /* This will return a runtime error if @command_line is the empty string. */
if (!g_shell_parse_argv (command_line,
NULL, &argv,
error))
@@ -1084,6 +1092,7 @@ g_spawn_command_line_async (const gchar *command_line,
g_return_val_if_fail (command_line != NULL, FALSE);
+ /* This will return a runtime error if @command_line is the empty string. */
if (!g_shell_parse_argv (command_line,
NULL, &argv,
error))
@@ -1627,13 +1636,16 @@ enum
{
CHILD_CHDIR_FAILED,
CHILD_EXEC_FAILED,
+ CHILD_OPEN_FAILED,
CHILD_DUP2_FAILED,
CHILD_FORK_FAILED,
CHILD_CLOSE_FAILED,
};
/* This function is called between fork() and exec() and hence must be
- * async-signal-safe (see signal-safety(7)) until it calls exec(). */
+ * async-signal-safe (see signal-safety(7)) until it calls exec().
+ *
+ * All callers must guarantee that @argv and @argv[0] are non-NULL. */
static void
do_exec (gint child_err_report_fd,
gint stdin_fd,
@@ -1668,7 +1680,6 @@ do_exec (gint child_err_report_fd,
/* Redirect pipes as required */
if (stdin_fd >= 0)
{
- /* dup2 can't actually fail here I don't think */
if (safe_dup2 (stdin_fd, 0) < 0)
write_err_and_exit (child_err_report_fd,
CHILD_DUP2_FAILED);
@@ -1683,14 +1694,15 @@ do_exec (gint child_err_report_fd,
gint read_null = safe_open ("/dev/null", O_RDONLY);
if (read_null < 0)
write_err_and_exit (child_err_report_fd,
+ CHILD_OPEN_FAILED);
+ if (safe_dup2 (read_null, 0) < 0)
+ write_err_and_exit (child_err_report_fd,
CHILD_DUP2_FAILED);
- safe_dup2 (read_null, 0);
close_and_invalidate (&read_null);
}
if (stdout_fd >= 0)
{
- /* dup2 can't actually fail here I don't think */
if (safe_dup2 (stdout_fd, 1) < 0)
write_err_and_exit (child_err_report_fd,
CHILD_DUP2_FAILED);
@@ -1704,14 +1716,15 @@ do_exec (gint child_err_report_fd,
gint write_null = safe_open ("/dev/null", O_WRONLY);
if (write_null < 0)
write_err_and_exit (child_err_report_fd,
+ CHILD_OPEN_FAILED);
+ if (safe_dup2 (write_null, 1) < 0)
+ write_err_and_exit (child_err_report_fd,
CHILD_DUP2_FAILED);
- safe_dup2 (write_null, 1);
close_and_invalidate (&write_null);
}
if (stderr_fd >= 0)
{
- /* dup2 can't actually fail here I don't think */
if (safe_dup2 (stderr_fd, 2) < 0)
write_err_and_exit (child_err_report_fd,
CHILD_DUP2_FAILED);
@@ -1725,8 +1738,10 @@ do_exec (gint child_err_report_fd,
gint write_null = safe_open ("/dev/null", O_WRONLY);
if (write_null < 0)
write_err_and_exit (child_err_report_fd,
+ CHILD_OPEN_FAILED);
+ if (safe_dup2 (write_null, 2) < 0)
+ write_err_and_exit (child_err_report_fd,
CHILD_DUP2_FAILED);
- safe_dup2 (write_null, 2);
close_and_invalidate (&write_null);
}
@@ -1739,7 +1754,8 @@ do_exec (gint child_err_report_fd,
{
if (child_setup == NULL && n_fds == 0)
{
- safe_dup2 (child_err_report_fd, 3);
+ if (safe_dup2 (child_err_report_fd, 3) < 0)
+ write_err_and_exit (child_err_report_fd, CHILD_DUP2_FAILED);
set_cloexec (GINT_TO_POINTER (0), 3);
if (safe_closefrom (4) < 0)
write_err_and_exit (child_err_report_fd, CHILD_CLOSE_FAILED);
@@ -1786,7 +1802,11 @@ do_exec (gint child_err_report_fd,
for (i = 0; i < n_fds; i++)
{
if (source_fds[i] != target_fds[i])
- source_fds[i] = dupfd_cloexec (source_fds[i], max_target_fd + 1);
+ {
+ source_fds[i] = dupfd_cloexec (source_fds[i], max_target_fd + 1);
+ if (source_fds[i] < 0)
+ write_err_and_exit (child_err_report_fd, CHILD_DUP2_FAILED);
+ }
}
for (i = 0; i < n_fds; i++)
@@ -1804,9 +1824,15 @@ do_exec (gint child_err_report_fd,
* dup it so it doesn’t get conflated.
*/
if (target_fds[i] == child_err_report_fd)
- child_err_report_fd = dupfd_cloexec (child_err_report_fd, max_target_fd + 1);
+ {
+ child_err_report_fd = dupfd_cloexec (child_err_report_fd, max_target_fd + 1);
+ if (child_err_report_fd < 0)
+ write_err_and_exit (child_err_report_fd, CHILD_DUP2_FAILED);
+ }
+
+ if (safe_dup2 (source_fds[i], target_fds[i]) < 0)
+ write_err_and_exit (child_err_report_fd, CHILD_DUP2_FAILED);
- safe_dup2 (source_fds[i], target_fds[i]);
close_and_invalidate (&source_fds[i]);
}
}
@@ -1890,18 +1916,26 @@ do_posix_spawn (const gchar * const *argv,
gint *child_close_fds,
gint stdin_fd,
gint stdout_fd,
- gint stderr_fd)
+ gint stderr_fd,
+ const gint *source_fds,
+ const gint *target_fds,
+ gsize n_fds)
{
pid_t pid;
+ gint *duped_source_fds = NULL;
+ gint max_target_fd = 0;
const gchar * const *argv_pass;
posix_spawnattr_t attr;
posix_spawn_file_actions_t file_actions;
gint parent_close_fds[3];
- gint num_parent_close_fds = 0;
+ gsize num_parent_close_fds = 0;
GSList *child_close = NULL;
GSList *elem;
sigset_t mask;
- int i, r;
+ gsize i;
+ int r;
+
+ g_assert (argv != NULL && argv[0] != NULL);
if (*argv[0] == '\0')
{
@@ -2015,6 +2049,50 @@ do_posix_spawn (const gchar * const *argv,
goto out_close_fds;
}
+ /* If source_fds[i] != target_fds[i], we need to handle the case
+ * where the user has specified, e.g., 5 -> 4, 4 -> 6. We do this
+ * by duping the source fds, taking care to ensure the new fds are
+ * larger than any target fd to avoid introducing new conflicts.
+ *
+ * If source_fds[i] == target_fds[i], then we just need to leak
+ * the fd into the child process, which we *could* do by temporarily
+ * unsetting CLOEXEC and then setting it again after we spawn if
+ * it was originally set. POSIX requires that the addup2 action unset
+ * CLOEXEC if source and target are identical, so you'd think doing it
+ * manually wouldn't be needed, but unfortunately as of 2021 many
+ * libcs still don't do so. Example nonconforming libcs:
+ * Bionic: https://android.googlesource.com/platform/bionic/+/f6e5b582604715729b09db3e36a7aeb8c24b36a4/libc/bionic/spawn.cpp#71
+ * uclibc-ng: https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/tree/librt/spawn.c?id=7c36bcae09d66bbaa35cbb02253ae0556f42677e#n88
+ *
+ * Anyway, unsetting CLOEXEC ourselves would open a small race window
+ * where the fd could be inherited into a child process if another
+ * thread spawns something at the same time, because we have not
+ * called fork() and are multithreaded here. This race is avoidable by
+ * using dupfd_cloexec, which we already have to do to handle the
+ * source_fds[i] != target_fds[i] case. So let's always do it!
+ */
+
+ for (i = 0; i < n_fds; i++)
+ max_target_fd = MAX (max_target_fd, target_fds[i]);
+
+ if (max_target_fd == G_MAXINT)
+ goto out_close_fds;
+
+ duped_source_fds = g_new (gint, n_fds);
+ for (i = 0; i < n_fds; i++)
+ {
+ duped_source_fds[i] = dupfd_cloexec (source_fds[i], max_target_fd + 1);
+ if (duped_source_fds[i] < 0)
+ goto out_close_fds;
+ }
+
+ for (i = 0; i < n_fds; i++)
+ {
+ r = posix_spawn_file_actions_adddup2 (&file_actions, duped_source_fds[i], target_fds[i]);
+ if (r != 0)
+ goto out_close_fds;
+ }
+
/* Intentionally close the fds in the child as the last file action,
* having been careful not to add the same fd to this list twice.
*
@@ -2047,6 +2125,13 @@ out_close_fds:
for (i = 0; i < num_parent_close_fds; i++)
close_and_invalidate (&parent_close_fds [i]);
+ if (duped_source_fds != NULL)
+ {
+ for (i = 0; i < n_fds; i++)
+ close_and_invalidate (&duped_source_fds[i]);
+ g_free (duped_source_fds);
+ }
+
posix_spawn_file_actions_destroy (&file_actions);
out_free_spawnattr:
posix_spawnattr_destroy (&attr);
@@ -2102,6 +2187,7 @@ fork_exec (gboolean intermediate_child,
gint n_child_close_fds = 0;
gint *source_fds_copy = NULL;
+ g_assert (argv != NULL && argv[0] != NULL);
g_assert (stdin_pipe_out == NULL || stdin_fd < 0);
g_assert (stdout_pipe_out == NULL || stdout_fd < 0);
g_assert (stderr_pipe_out == NULL || stderr_fd < 0);
@@ -2134,10 +2220,8 @@ fork_exec (gboolean intermediate_child,
child_close_fds[n_child_close_fds++] = -1;
#ifdef POSIX_SPAWN_AVAILABLE
- /* FIXME: Handle @source_fds and @target_fds in do_posix_spawn() using the
- * file actions API. */
if (!intermediate_child && working_directory == NULL && !close_descriptors &&
- !search_path_from_envp && child_setup == NULL && n_fds == 0)
+ !search_path_from_envp && child_setup == NULL)
{
g_trace_mark (G_TRACE_CURRENT_TIME, 0,
"GLib", "posix_spawn",
@@ -2154,7 +2238,10 @@ fork_exec (gboolean intermediate_child,
child_close_fds,
stdin_fd,
stdout_fd,
- stderr_fd);
+ stderr_fd,
+ source_fds,
+ target_fds,
+ n_fds);
if (status == 0)
goto success;
@@ -2455,12 +2542,20 @@ fork_exec (gboolean intermediate_child,
g_strerror (buf[1]));
break;
-
+
+ case CHILD_OPEN_FAILED:
+ g_set_error (error,
+ G_SPAWN_ERROR,
+ G_SPAWN_ERROR_FAILED,
+ _("Failed to open file to remap file descriptor (%s)"),
+ g_strerror (buf[1]));
+ break;
+
case CHILD_DUP2_FAILED:
g_set_error (error,
G_SPAWN_ERROR,
G_SPAWN_ERROR_FAILED,
- _("Failed to redirect output or input of child process (%s)"),
+ _("Failed to duplicate file descriptor for child process (%s)"),
g_strerror (buf[1]));
break;
@@ -2651,7 +2746,7 @@ g_execute (const gchar *file,
gchar *search_path_buffer,
gsize search_path_buffer_len)
{
- if (*file == '\0')
+ if (file == NULL || *file == '\0')
{
/* We check the simple case first. */
errno = ENOENT;
diff --git a/glib/gstdio.c b/glib/gstdio.c
index c04b6c28c..45180eba8 100644
--- a/glib/gstdio.c
+++ b/glib/gstdio.c
@@ -760,7 +760,7 @@ _g_win32_stat_utf8 (const gchar *filename,
len--;
if (len <= 0 ||
- (g_path_is_absolute (filename) && len <= g_path_skip_root (filename) - filename))
+ (g_path_is_absolute (filename) && len <= (gsize) (g_path_skip_root (filename) - filename)))
len = strlen (filename);
wfilename = g_utf8_to_utf16 (filename, len, NULL, NULL, NULL);
@@ -893,7 +893,7 @@ g_win32_readlink_utf8 (const gchar *filename,
return tmp_len;
}
- if (tmp_len > buf_size)
+ if ((gsize) tmp_len > buf_size)
tmp_len = buf_size;
memcpy (buf, tmp, tmp_len);
diff --git a/glib/gstdio.h b/glib/gstdio.h
index 7ed9c5dfa..4af0efdb6 100644
--- a/glib/gstdio.h
+++ b/glib/gstdio.h
@@ -61,7 +61,7 @@ typedef struct stat GStatBuf;
* A few functions can't be handled in this way, since they are not defined
* in a portable system header that we could include here.
*
- * #G_STDIO_WRAP_ON_UNIX is not public API and its behaviour is not guaranteed
+ * G_STDIO_WRAP_ON_UNIX is not public API and its behaviour is not guaranteed
* in future.
*/
diff --git a/glib/gstrfuncs.c b/glib/gstrfuncs.c
index ef6920643..927353309 100644
--- a/glib/gstrfuncs.c
+++ b/glib/gstrfuncs.c
@@ -317,11 +317,8 @@ static const guint16 ascii_table_data[256] = {
const guint16 * const g_ascii_table = ascii_table_data;
-#if defined (HAVE_NEWLOCALE) && \
- defined (HAVE_USELOCALE) && \
- defined (HAVE_STRTOD_L) && \
- defined (HAVE_STRTOULL_L) && \
- defined (HAVE_STRTOLL_L)
+#if defined(HAVE_NEWLOCALE) && \
+ defined(HAVE_USELOCALE)
#define USE_XLOCALE 1
#endif
@@ -731,7 +728,7 @@ gdouble
g_ascii_strtod (const gchar *nptr,
gchar **endptr)
{
-#ifdef USE_XLOCALE
+#if defined(USE_XLOCALE) && defined(HAVE_STRTOD_L)
g_return_val_if_fail (nptr != NULL, 0);
@@ -909,7 +906,7 @@ g_ascii_strtod (const gchar *nptr,
* the string back using g_ascii_strtod() gives the same machine-number
* (on machines with IEEE compatible 64bit doubles). It is
* guaranteed that the size of the resulting string will never
- * be larger than @G_ASCII_DTOSTR_BUF_SIZE bytes, including the terminating
+ * be larger than %G_ASCII_DTOSTR_BUF_SIZE bytes, including the terminating
* nul character, which is always added.
*
* Returns: The pointer to the buffer with the converted string.
@@ -930,7 +927,7 @@ g_ascii_dtostr (gchar *buffer,
* @buffer: A buffer to place the resulting string in
* @buf_len: The length of the buffer.
* @format: The printf()-style format to use for the
- * code to use for converting.
+ * code to use for converting
* @d: The #gdouble to convert
*
* Converts a #gdouble to a string, using the '.' as
@@ -938,6 +935,9 @@ g_ascii_dtostr (gchar *buffer,
* a printf()-style format string. Allowed conversion
* specifiers are 'e', 'E', 'f', 'F', 'g' and 'G'.
*
+ * The @format must just be a single format specifier
+ * starting with `%`, expecting a #gdouble argument.
+ *
* The returned buffer is guaranteed to be nul-terminated.
*
* If you just want to want to serialize the value into a
@@ -954,6 +954,10 @@ g_ascii_formatd (gchar *buffer,
#ifdef USE_XLOCALE
locale_t old_locale;
+ g_return_val_if_fail (buffer != NULL, NULL);
+ g_return_val_if_fail (format[0] == '%', NULL);
+ g_return_val_if_fail (strpbrk (format + 1, "'l%") == NULL, NULL);
+
old_locale = uselocale (get_C_locale ());
_g_snprintf (buffer, buf_len, format, d);
uselocale (old_locale);
@@ -1044,7 +1048,7 @@ g_ascii_formatd (gchar *buffer,
#define TOUPPER(c) (ISLOWER (c) ? (c) - 'a' + 'A' : (c))
#define TOLOWER(c) (ISUPPER (c) ? (c) - 'A' + 'a' : (c))
-#ifndef USE_XLOCALE
+#if !defined(USE_XLOCALE) || !defined(HAVE_STRTOULL_L) || !defined(HAVE_STRTOLL_L)
static guint64
g_parse_long_long (const gchar *nptr,
@@ -1169,7 +1173,7 @@ g_parse_long_long (const gchar *nptr,
}
return 0;
}
-#endif /* !USE_XLOCALE */
+#endif /* !defined(USE_XLOCALE) || !defined(HAVE_STRTOULL_L) || !defined(HAVE_STRTOLL_L) */
/**
* g_ascii_strtoull:
@@ -1210,7 +1214,7 @@ g_ascii_strtoull (const gchar *nptr,
gchar **endptr,
guint base)
{
-#ifdef USE_XLOCALE
+#if defined(USE_XLOCALE) && defined(HAVE_STRTOULL_L)
return strtoull_l (nptr, endptr, base, get_C_locale ());
#else
gboolean negative;
@@ -1257,7 +1261,7 @@ g_ascii_strtoll (const gchar *nptr,
gchar **endptr,
guint base)
{
-#ifdef USE_XLOCALE
+#if defined(USE_XLOCALE) && defined(HAVE_STRTOLL_L)
return strtoll_l (nptr, endptr, base, get_C_locale ());
#else
gboolean negative;
@@ -1874,7 +1878,9 @@ g_ascii_strcasecmp (const gchar *s1,
* @n: number of characters to compare
*
* Compare @s1 and @s2, ignoring the case of ASCII characters and any
- * characters after the first @n in each string.
+ * characters after the first @n in each string. If either string is
+ * less than @n bytes long, comparison will stop at the first nul byte
+ * encountered.
*
* Unlike the BSD strcasecmp() function, this only recognizes standard
* ASCII letters and ignores the locale, treating all non-ASCII
@@ -2024,7 +2030,7 @@ g_strncasecmp (const gchar *s1,
* g_strdelimit:
* @string: the string to convert
* @delimiters: (nullable): a string containing the current delimiters,
- * or %NULL to use the standard delimiters defined in #G_STR_DELIMITERS
+ * or %NULL to use the standard delimiters defined in %G_STR_DELIMITERS
* @new_delimiter: the new delimiter character
*
* Converts any delimiter characters in @string to @new_delimiter.
diff --git a/glib/gstring.c b/glib/gstring.c
index 17dc2c33d..0a509e5e5 100644
--- a/glib/gstring.c
+++ b/glib/gstring.c
@@ -37,6 +37,7 @@
#include "gstring.h"
#include "guriprivate.h"
#include "gprintf.h"
+#include "gutilsprivate.h"
/**
@@ -71,34 +72,21 @@
* The GString struct contains the public fields of a GString.
*/
-
-#define MY_MAXSIZE ((gsize)-1)
-
-static inline gsize
-nearest_power (gsize base, gsize num)
-{
- if (num > MY_MAXSIZE / 2)
- {
- return MY_MAXSIZE;
- }
- else
- {
- gsize n = base;
-
- while (n < num)
- n <<= 1;
-
- return n;
- }
-}
-
static void
g_string_maybe_expand (GString *string,
gsize len)
{
+ /* Detect potential overflow */
+ if G_UNLIKELY ((G_MAXSIZE - string->len - 1) < len)
+ g_error ("adding %" G_GSIZE_FORMAT " to string would overflow", len);
+
if (string->len + len >= string->allocated_len)
{
- string->allocated_len = nearest_power (1, string->len + len + 1);
+ string->allocated_len = g_nearest_pow (string->len + len + 1);
+ /* If the new size is bigger than G_MAXSIZE / 2, only allocate enough
+ * memory for this string and don't over-allocate. */
+ if (string->allocated_len == 0)
+ string->allocated_len = string->len + len + 1;
string->str = g_realloc (string->str, string->allocated_len);
}
}
diff --git a/glib/gstringchunk.c b/glib/gstringchunk.c
index 524eadcef..feacb154f 100644
--- a/glib/gstringchunk.c
+++ b/glib/gstringchunk.c
@@ -37,6 +37,7 @@
#include "gmessages.h"
#include "gutils.h"
+#include "gutilsprivate.h"
/**
* SECTION:string_chunks
@@ -82,27 +83,6 @@ struct _GStringChunk
gsize default_size;
};
-#define MY_MAXSIZE ((gsize)-1)
-
-static inline gsize
-nearest_power (gsize base,
- gsize num)
-{
- if (num > MY_MAXSIZE / 2)
- {
- return MY_MAXSIZE;
- }
- else
- {
- gsize n = base;
-
- while (n < num)
- n <<= 1;
-
- return n;
- }
-}
-
/**
* g_string_chunk_new:
* @size: the default size of the blocks of memory which are
@@ -120,7 +100,7 @@ g_string_chunk_new (gsize size)
GStringChunk *new_chunk = g_new (GStringChunk, 1);
gsize actual_size = 1;
- actual_size = nearest_power (1, size);
+ actual_size = g_nearest_pow (MAX (1, size));
new_chunk->const_table = NULL;
new_chunk->storage_list = NULL;
@@ -280,7 +260,7 @@ g_string_chunk_insert_len (GStringChunk *chunk,
const gchar *string,
gssize len)
{
- gssize size;
+ gsize size;
gchar* pos;
g_return_val_if_fail (chunk != NULL, NULL);
@@ -288,11 +268,16 @@ g_string_chunk_insert_len (GStringChunk *chunk,
if (len < 0)
size = strlen (string);
else
- size = len;
+ size = (gsize) len;
- if ((chunk->storage_next + size + 1) > chunk->this_size)
+ if ((G_MAXSIZE - chunk->storage_next < size + 1) || (chunk->storage_next + size + 1) > chunk->this_size)
{
- gsize new_size = nearest_power (chunk->default_size, size + 1);
+ gsize new_size = g_nearest_pow (MAX (chunk->default_size, size + 1));
+
+ /* If size is bigger than G_MAXSIZE / 2 then store it in its own
+ * allocation instead of failing here */
+ if (new_size == 0)
+ new_size = size + 1;
chunk->storage_list = g_slist_prepend (chunk->storage_list,
g_new (gchar, new_size));
diff --git a/glib/gtester.c b/glib/gtester.c
index 94cfba641..c48ecaf94 100644
--- a/glib/gtester.c
+++ b/glib/gtester.c
@@ -668,8 +668,8 @@ parse_args (gint *argc_p,
}
}
/* collapse argv */
- e = 1;
- for (i = 1; i < argc; i++)
+ e = 0;
+ for (i = 0; i < argc; i++)
if (argv[i])
{
argv[e++] = argv[i];
diff --git a/glib/gtestutils.c b/glib/gtestutils.c
index 578270394..dca4badcf 100644
--- a/glib/gtestutils.c
+++ b/glib/gtestutils.c
@@ -35,6 +35,7 @@
#include <sys/resource.h>
#endif
#ifdef G_OS_WIN32
+#include <crtdbg.h>
#include <io.h>
#include <windows.h>
#endif
@@ -889,10 +890,10 @@ static gboolean test_debug_log = FALSE;
static gboolean test_tap_log = TRUE; /* default to TAP as of GLib 2.62; see #1619; the non-TAP output mode is deprecated */
static gboolean test_nonfatal_assertions = FALSE;
static DestroyEntry *test_destroy_queue = NULL;
-static char *test_argv0 = NULL;
-static char *test_argv0_dirname;
-static const char *test_disted_files_dir;
-static const char *test_built_files_dir;
+static const char *test_argv0 = NULL; /* (nullable), points into global argv */
+static char *test_argv0_dirname = NULL; /* owned by GLib */
+static const char *test_disted_files_dir; /* points into test_argv0_dirname or an environment variable */
+static const char *test_built_files_dir; /* points into test_argv0_dirname or an environment variable */
static char *test_initial_cwd = NULL;
static gboolean test_in_forked_child = FALSE;
static gboolean test_in_subprocess = FALSE;
@@ -1137,7 +1138,7 @@ parse_args (gint *argc_p,
gchar **argv = *argv_p;
guint i, e;
- test_argv0 = argv[0];
+ test_argv0 = argv[0]; /* will be NULL iff argc == 0 */
test_initial_cwd = g_get_current_dir ();
/* parse known args */
@@ -1381,8 +1382,8 @@ parse_args (gint *argc_p,
test_paths = g_slist_reverse (test_paths);
/* collapse argv */
- e = 1;
- for (i = 1; i < argc; i++)
+ e = 0;
+ for (i = 0; i < argc; i++)
if (argv[i])
{
argv[e++] = argv[i];
@@ -1433,7 +1434,7 @@ test_do_isolate_dirs (GError **error)
{
gchar *subdir = NULL;
gchar *home_dir = NULL, *cache_dir = NULL, *config_dir = NULL;
- gchar *data_dir = NULL, *runtime_dir = NULL;
+ gchar *state_dir = NULL, *data_dir = NULL, *runtime_dir = NULL;
gchar *config_dirs[3];
gchar *data_dirs[3];
@@ -1470,6 +1471,7 @@ test_do_isolate_dirs (GError **error)
cache_dir = g_build_filename (subdir, "cache", NULL);
config_dir = g_build_filename (subdir, "config", NULL);
data_dir = g_build_filename (subdir, "data", NULL);
+ state_dir = g_build_filename (subdir, "state", NULL);
config_dirs[0] = g_build_filename (subdir, "system-config1", NULL);
config_dirs[1] = g_build_filename (subdir, "system-config2", NULL);
@@ -1487,10 +1489,12 @@ test_do_isolate_dirs (GError **error)
"XDG_CONFIG_HOME", config_dir,
"XDG_DATA_DIRS", data_dirs,
"XDG_DATA_HOME", data_dir,
+ "XDG_STATE_HOME", state_dir,
"XDG_RUNTIME_DIR", runtime_dir,
NULL);
g_free (runtime_dir);
+ g_free (state_dir);
g_free (data_dir);
g_free (config_dir);
g_free (cache_dir);
@@ -1597,6 +1601,25 @@ void
mutable_test_config_vars.test_undefined = FALSE;
#endif
+#ifdef G_OS_WIN32
+ // don't open a window for errors (like the "abort() was called one")
+ _CrtSetReportMode (_CRT_ERROR, _CRTDBG_MODE_FILE);
+ _CrtSetReportFile (_CRT_ERROR, _CRTDBG_FILE_STDERR);
+ // while gtest tests tend to use g_assert and friends
+ // if they do use the C standard assert macro we want to
+ // output a message to stderr, not open a popup window
+ _CrtSetReportMode (_CRT_ASSERT, _CRTDBG_MODE_FILE);
+ _CrtSetReportFile (_CRT_ASSERT, _CRTDBG_FILE_STDERR);
+ // in release mode abort() will pop up a windows error
+ // reporting dialog, let's prevent that. Only msvcrxx and
+ // the UCRT have this function, but there's no great way to
+ // detect msvcrxx (that I know of) so only call this when using
+ // the UCRT
+#ifdef _UCRT
+ _set_abort_behavior (0, _CALL_REPORTFAULT);
+#endif
+#endif
+
va_start (args, argv);
while ((option = va_arg (args, char *)))
{
@@ -1709,7 +1732,7 @@ void
g_log_set_default_handler (gtest_default_log_handler, NULL);
g_test_log (G_TEST_LOG_START_BINARY, g_get_prgname(), test_run_seedstr, 0, NULL);
- test_argv0_dirname = g_path_get_dirname (test_argv0);
+ test_argv0_dirname = (test_argv0 != NULL) ? g_path_get_dirname (test_argv0) : g_strdup (".");
/* Make sure we get the real dirname that the test was run from */
if (g_str_has_suffix (test_argv0_dirname, "/.libs"))
@@ -1900,9 +1923,10 @@ g_test_timer_start (void)
/**
* g_test_timer_elapsed:
*
- * Get the time since the last start of the timer with g_test_timer_start().
+ * Get the number of seconds since the last start of the timer with
+ * g_test_timer_start().
*
- * Returns: the time since the last start of the timer, as a double
+ * Returns: the time since the last start of the timer in seconds, as a double
*
* Since: 2.16
*/
@@ -2196,6 +2220,13 @@ g_test_run (void)
int ret;
GTestSuite *suite;
+ if (atexit (test_cleanup) != 0)
+ {
+ int errsv = errno;
+ g_error ("Unable to register test cleanup to be run at exit: %s",
+ g_strerror (errsv));
+ }
+
suite = g_test_get_root ();
if (g_test_run_suite (suite) != 0)
{
@@ -2232,7 +2263,6 @@ g_test_run (void)
out:
g_test_suite_free (suite);
- test_cleanup ();
return ret;
}
@@ -3798,8 +3828,11 @@ g_test_trap_subprocess (const char *test_path,
test_trap_clear ();
test_trap_last_subprocess = g_strdup (test_path);
+ if (test_argv0 == NULL)
+ g_error ("g_test_trap_subprocess() requires argv0 to be passed to g_test_init()");
+
argv = g_ptr_array_new ();
- g_ptr_array_add (argv, test_argv0);
+ g_ptr_array_add (argv, (char *) test_argv0);
g_ptr_array_add (argv, "-q");
g_ptr_array_add (argv, "-p");
g_ptr_array_add (argv, (char *)test_path);
@@ -4371,9 +4404,9 @@ g_test_get_dir (GTestFileType file_type)
* Gets the pathname to a data file that is required for a test.
*
* This is the same as g_test_build_filename() with two differences.
- * The first difference is that must only use this function from within
+ * The first difference is that you must only use this function from within
* a testcase function. The second difference is that you need not free
- * the return value -- it will be automatically freed when the testcase
+ * the return value — it will be automatically freed when the testcase
* finishes running.
*
* It is safe to use this function from a thread inside of a testcase
diff --git a/glib/gtestutils.h b/glib/gtestutils.h
index f5202ac44..7dee4822d 100644
--- a/glib/gtestutils.h
+++ b/glib/gtestutils.h
@@ -275,6 +275,7 @@ void g_test_init (int *argc,
* - g_get_user_config_dir()
* - g_get_system_data_dirs()
* - g_get_user_data_dir()
+ * - g_get_user_state_dir()
* - g_get_user_runtime_dir()
*
* The subdirectories may not be created by the test harness; as with normal
diff --git a/glib/gthread-win32.c b/glib/gthread-win32.c
index c6ba122db..e7a4cde7b 100644
--- a/glib/gthread-win32.c
+++ b/glib/gthread-win32.c
@@ -422,6 +422,28 @@ g_system_thread_free (GRealThread *thread)
void
g_system_thread_exit (void)
{
+ /* In static compilation, DllMain doesn't exist and so DLL_THREAD_DETACH
+ * case is never called and thread destroy notifications are not triggered.
+ * To ensure that notifications are correctly triggered in static
+ * compilation mode, we call directly the "detach" function here right
+ * before terminating the thread.
+ * As all win32 threads initialized through the glib API are run through
+ * the same proxy function g_thread_win32_proxy() which calls systematically
+ * g_system_thread_exit() when finishing, we obtain the same behavior as
+ * with dynamic compilation.
+ *
+ * WARNING: unfortunately this mechanism cannot work with threads created
+ * directly from the Windows API using CreateThread() or _beginthread/ex().
+ * It only works with threads created by using the glib API with
+ * g_system_thread_new(). If users need absolutely to use a thread NOT
+ * created with glib API under Windows and in static compilation mode, they
+ * should not use glib functions within their thread or they may encounter
+ * memory leaks when the thread finishes.
+ */
+#ifdef GLIB_STATIC_COMPILATION
+ g_thread_win32_thread_detach ();
+#endif
+
_endthreadex (0);
}
@@ -514,7 +536,7 @@ g_system_thread_new (GThreadFunc proxy,
goto error;
}
- if (ResumeThread (thread->handle) == -1)
+ if (ResumeThread (thread->handle) == (DWORD) -1)
{
message = "Error resuming new thread";
goto error;
@@ -610,7 +632,7 @@ SetThreadName (DWORD dwThreadID,
typedef HRESULT (WINAPI *pSetThreadDescription) (HANDLE hThread,
PCWSTR lpThreadDescription);
static pSetThreadDescription SetThreadDescriptionFunc = NULL;
-HMODULE kernel32_module = NULL;
+static HMODULE kernel32_module = NULL;
static gboolean
g_thread_win32_load_library (void)
diff --git a/glib/gtimer.c b/glib/gtimer.c
index 7d21ba822..c6a11409d 100644
--- a/glib/gtimer.c
+++ b/glib/gtimer.c
@@ -260,7 +260,7 @@ g_timer_is_active (GTimer *timer)
* Pauses the current thread for the given number of microseconds.
*
* There are 1 million microseconds per second (represented by the
- * #G_USEC_PER_SEC macro). g_usleep() may have limited precision,
+ * %G_USEC_PER_SEC macro). g_usleep() may have limited precision,
* depending on hardware and operating system; don't rely on the exact
* length of the sleep.
*/
@@ -294,7 +294,9 @@ G_GNUC_BEGIN_IGNORE_DEPRECATIONS
void
g_time_val_add (GTimeVal *time_, glong microseconds)
{
- g_return_if_fail (time_->tv_usec >= 0 && time_->tv_usec < G_USEC_PER_SEC);
+ g_return_if_fail (time_ != NULL &&
+ time_->tv_usec >= 0 &&
+ time_->tv_usec < G_USEC_PER_SEC);
if (microseconds >= 0)
{
@@ -603,7 +605,9 @@ g_time_val_to_iso8601 (GTimeVal *time_)
#endif
time_t secs;
- g_return_val_if_fail (time_->tv_usec >= 0 && time_->tv_usec < G_USEC_PER_SEC, NULL);
+ g_return_val_if_fail (time_ != NULL &&
+ time_->tv_usec >= 0 &&
+ time_->tv_usec < G_USEC_PER_SEC, NULL);
secs = time_->tv_sec;
#ifdef _WIN32
diff --git a/glib/gtimezone.c b/glib/gtimezone.c
index df7147869..a37dbe2e1 100644
--- a/glib/gtimezone.c
+++ b/glib/gtimezone.c
@@ -157,7 +157,7 @@ typedef struct
*/
typedef struct
{
- gint start_year;
+ guint start_year;
gint32 std_offset;
gint32 dlt_offset;
TimeZoneDate dlt_start;
@@ -440,6 +440,88 @@ zone_for_constant_offset (GTimeZone *gtz, const gchar *name)
}
#ifdef G_OS_UNIX
+
+#if defined(__sun) && defined(__SVR4)
+/*
+ * only used by Illumos distros or Solaris < 11: parse the /etc/default/init
+ * text file looking for TZ= followed by the timezone, possibly quoted
+ *
+ */
+static gchar *
+zone_identifier_illumos (void)
+{
+ gchar *resolved_identifier = NULL;
+ gchar *contents = NULL;
+ const gchar *line_start = NULL;
+ gsize tz_len = 0;
+
+ if (!g_file_get_contents ("/etc/default/init", &contents, NULL, NULL) )
+ return NULL;
+
+ /* is TZ= the first/only line in the file? */
+ if (strncmp (contents, "TZ=", 3) == 0)
+ {
+ /* found TZ= on the first line, skip over the TZ= */
+ line_start = contents + 3;
+ }
+ else
+ {
+ /* find a newline followed by TZ= */
+ line_start = strstr (contents, "\nTZ=");
+ if (line_start != NULL)
+ line_start = line_start + 4; /* skip past the \nTZ= */
+ }
+
+ /*
+ * line_start is NULL if we didn't find TZ= at the start of any line,
+ * otherwise it points to what is after the '=' (possibly '\0')
+ */
+ if (line_start == NULL || *line_start == '\0')
+ return NULL;
+
+ /* skip past a possible opening " or ' */
+ if (*line_start == '"' || *line_start == '\'')
+ line_start++;
+
+ /*
+ * loop over the next few characters, building up the length of
+ * the timezone identifier, ending with end of string, newline or
+ * a " or ' character
+ */
+ while (*(line_start + tz_len) != '\0' &&
+ *(line_start + tz_len) != '\n' &&
+ *(line_start + tz_len) != '"' &&
+ *(line_start + tz_len) != '\'')
+ tz_len++;
+
+ if (tz_len > 0)
+ {
+ /* found it */
+ resolved_identifier = g_strndup (line_start, tz_len);
+ g_strchomp (resolved_identifier);
+ g_free (contents);
+ return g_steal_pointer (&resolved_identifier);
+ }
+ else
+ return NULL;
+}
+#endif /* defined(__sun) && defined(__SRVR) */
+
+/*
+ * returns the path to the top of the Olson zoneinfo timezone hierarchy.
+ */
+static const gchar *
+zone_info_base_dir (void)
+{
+ if (g_file_test ("/usr/share/zoneinfo", G_FILE_TEST_IS_DIR))
+ return "/usr/share/zoneinfo"; /* Most distros */
+ else if (g_file_test ("/usr/share/lib/zoneinfo", G_FILE_TEST_IS_DIR))
+ return "/usr/share/lib/zoneinfo"; /* Illumos distros */
+
+ /* need a better fallback case */
+ return "/usr/share/zoneinfo";
+}
+
static gchar *
zone_identifier_unix (void)
{
@@ -458,17 +540,26 @@ zone_identifier_unix (void)
G_FILE_ERROR_INVAL);
g_clear_error (&read_link_err);
- /* Fallback to the content of /var/db/zoneinfo or /etc/timezone
- * if /etc/localtime is not a symlink. /var/db/zoneinfo is
- * where 'tzsetup' program on FreeBSD and DragonflyBSD stores
- * the timezone chosen by the user. /etc/timezone is where user
- * choice is expressed on Gentoo OpenRC and others. */
+ /* if /etc/localtime is not a symlink, try:
+ * - /var/db/zoneinfo : 'tzsetup' program on FreeBSD and
+ * DragonflyBSD stores the timezone chosen by the user there.
+ * - /etc/timezone : Gentoo, OpenRC, and others store
+ * the user choice there.
+ * - call zone_identifier_illumos iff __sun and __SVR4 are defined,
+ * as a last-ditch effort to parse the TZ= setting from within
+ * /etc/default/init
+ */
if (not_a_symlink && (g_file_get_contents ("/var/db/zoneinfo",
&resolved_identifier,
NULL, NULL) ||
g_file_get_contents ("/etc/timezone",
&resolved_identifier,
- NULL, NULL)))
+ NULL, NULL)
+#if defined(__sun) && defined(__SVR4)
+ ||
+ (resolved_identifier = zone_identifier_illumos ())
+#endif
+ ))
g_strchomp (resolved_identifier);
else
{
@@ -487,7 +578,7 @@ zone_identifier_unix (void)
tzdir = g_getenv ("TZDIR");
if (tzdir == NULL)
- tzdir = "/usr/share/zoneinfo";
+ tzdir = zone_info_base_dir ();
/* Strip the prefix and slashes if possible. */
if (g_str_has_prefix (resolved_identifier, tzdir))
@@ -520,7 +611,7 @@ zone_info_unix (const gchar *identifier,
tzdir = g_getenv ("TZDIR");
if (tzdir == NULL)
- tzdir = "/usr/share/zoneinfo";
+ tzdir = zone_info_base_dir ();
/* identifier can be a relative or absolute path name;
if relative, it is interpreted starting from /usr/share/zoneinfo
@@ -840,7 +931,7 @@ rules_from_windows_time_zone (const gchar *identifier,
TIME_ZONE_INFORMATION tzi;
DWORD size;
guint rules_num = 0;
- RegTZI regtzi, regtzi_prev;
+ RegTZI regtzi = { 0 }, regtzi_prev;
WCHAR winsyspath[MAX_PATH];
gunichar2 *subkey_w, *subkey_dynamic_w;
@@ -906,8 +997,7 @@ rules_from_windows_time_zone (const gchar *identifier,
if (RegOpenKeyExW (HKEY_LOCAL_MACHINE, subkey_dynamic_w, 0,
KEY_QUERY_VALUE, &key) == ERROR_SUCCESS)
{
- DWORD first, last;
- int year, i;
+ DWORD i, first, last, year;
wchar_t s[12];
size = sizeof first;
@@ -1037,7 +1127,7 @@ find_relative_date (TimeZoneDate *buffer)
g_date_set_dmy (&date, 1, buffer->mon, buffer->year);
first_wday = g_date_get_weekday (&date);
- if (first_wday > wday)
+ if ((guint) first_wday > wday)
++(buffer->week);
/* week is 1 <= w <= 5, we need 0-based */
days = 7 * (buffer->week - 1) + wday - first_wday;
@@ -1458,6 +1548,8 @@ set_tz_name (gchar **pos, gchar *buffer, guint size)
gchar *name_pos = *pos;
guint len;
+ g_assert (size != 0);
+
if (quoted)
{
name_pos++;
@@ -1479,7 +1571,7 @@ set_tz_name (gchar **pos, gchar *buffer, guint size)
memset (buffer, 0, size);
/* name_pos isn't 0-terminated, so we have to limit the length expressly */
- len = *pos - name_pos > size - 1 ? size - 1 : *pos - name_pos;
+ len = (guint) (*pos - name_pos) > size - 1 ? size - 1 : (guint) (*pos - name_pos);
strncpy (buffer, name_pos, len);
*pos += quoted;
return TRUE;
@@ -1542,8 +1634,7 @@ rules_from_identifier (const gchar *identifier,
#ifdef G_OS_WIN32
/* Windows allows us to use the US DST boundaries if they're not given */
{
- int i;
- guint rules_num = 0;
+ guint i, rules_num = 0;
/* Use US rules, Windows' default is Pacific Standard Time */
if ((rules_num = rules_from_windows_time_zone ("Pacific Standard Time",
diff --git a/glib/gtypes.h b/glib/gtypes.h
index 2c4825582..ea2a49057 100644
--- a/glib/gtypes.h
+++ b/glib/gtypes.h
@@ -424,56 +424,62 @@ typedef const gchar * (*GTranslateFunc) (const gchar *str,
/* https://bugzilla.gnome.org/show_bug.cgi?id=769104 */
#if __GNUC__ >= 5 && !defined(__INTEL_COMPILER)
#define _GLIB_HAVE_BUILTIN_OVERFLOW_CHECKS
-#elif g_macro__has_builtin(__builtin_uadd_overflow)
+#elif g_macro__has_builtin(__builtin_add_overflow)
#define _GLIB_HAVE_BUILTIN_OVERFLOW_CHECKS
#endif
#endif
+#ifdef _GLIB_HAVE_BUILTIN_OVERFLOW_CHECKS
+
#define g_uint_checked_add(dest, a, b) \
- _GLIB_CHECKED_ADD_U32(dest, a, b)
+ (!__builtin_add_overflow(a, b, dest))
#define g_uint_checked_mul(dest, a, b) \
- _GLIB_CHECKED_MUL_U32(dest, a, b)
+ (!__builtin_mul_overflow(a, b, dest))
#define g_uint64_checked_add(dest, a, b) \
- _GLIB_CHECKED_ADD_U64(dest, a, b)
+ (!__builtin_add_overflow(a, b, dest))
#define g_uint64_checked_mul(dest, a, b) \
- _GLIB_CHECKED_MUL_U64(dest, a, b)
+ (!__builtin_mul_overflow(a, b, dest))
-#if GLIB_SIZEOF_SIZE_T == 8
#define g_size_checked_add(dest, a, b) \
- _GLIB_CHECKED_ADD_U64(dest, a, b)
+ (!__builtin_add_overflow(a, b, dest))
#define g_size_checked_mul(dest, a, b) \
- _GLIB_CHECKED_MUL_U64(dest, a, b)
-#else
-#define g_size_checked_add(dest, a, b) \
- _GLIB_CHECKED_ADD_U32(dest, a, b)
-#define g_size_checked_mul(dest, a, b) \
- _GLIB_CHECKED_MUL_U32(dest, a, b)
-#endif
+ (!__builtin_mul_overflow(a, b, dest))
+
+#else /* !_GLIB_HAVE_BUILTIN_OVERFLOW_CHECKS */
/* The names of the following inlines are private. Use the macro
* definitions above.
*/
-#ifdef _GLIB_HAVE_BUILTIN_OVERFLOW_CHECKS
-static inline gboolean _GLIB_CHECKED_ADD_U32 (guint32 *dest, guint32 a, guint32 b) {
- return !__builtin_uadd_overflow(a, b, dest); }
-static inline gboolean _GLIB_CHECKED_MUL_U32 (guint32 *dest, guint32 a, guint32 b) {
- return !__builtin_umul_overflow(a, b, dest); }
-static inline gboolean _GLIB_CHECKED_ADD_U64 (guint64 *dest, guint64 a, guint64 b) {
- G_STATIC_ASSERT(sizeof (unsigned long long) == sizeof (guint64));
- return !__builtin_uaddll_overflow(a, b, (unsigned long long *) dest); }
-static inline gboolean _GLIB_CHECKED_MUL_U64 (guint64 *dest, guint64 a, guint64 b) {
- return !__builtin_umulll_overflow(a, b, (unsigned long long *) dest); }
-#else
-static inline gboolean _GLIB_CHECKED_ADD_U32 (guint32 *dest, guint32 a, guint32 b) {
+static inline gboolean _GLIB_CHECKED_ADD_UINT (guint *dest, guint a, guint b) {
*dest = a + b; return *dest >= a; }
-static inline gboolean _GLIB_CHECKED_MUL_U32 (guint32 *dest, guint32 a, guint32 b) {
+static inline gboolean _GLIB_CHECKED_MUL_UINT (guint *dest, guint a, guint b) {
*dest = a * b; return !a || *dest / a == b; }
-static inline gboolean _GLIB_CHECKED_ADD_U64 (guint64 *dest, guint64 a, guint64 b) {
+static inline gboolean _GLIB_CHECKED_ADD_UINT64 (guint64 *dest, guint64 a, guint64 b) {
*dest = a + b; return *dest >= a; }
-static inline gboolean _GLIB_CHECKED_MUL_U64 (guint64 *dest, guint64 a, guint64 b) {
+static inline gboolean _GLIB_CHECKED_MUL_UINT64 (guint64 *dest, guint64 a, guint64 b) {
*dest = a * b; return !a || *dest / a == b; }
-#endif
+static inline gboolean _GLIB_CHECKED_ADD_SIZE (gsize *dest, gsize a, gsize b) {
+ *dest = a + b; return *dest >= a; }
+static inline gboolean _GLIB_CHECKED_MUL_SIZE (gsize *dest, gsize a, gsize b) {
+ *dest = a * b; return !a || *dest / a == b; }
+
+#define g_uint_checked_add(dest, a, b) \
+ _GLIB_CHECKED_ADD_UINT(dest, a, b)
+#define g_uint_checked_mul(dest, a, b) \
+ _GLIB_CHECKED_MUL_UINT(dest, a, b)
+
+#define g_uint64_checked_add(dest, a, b) \
+ _GLIB_CHECKED_ADD_UINT64(dest, a, b)
+#define g_uint64_checked_mul(dest, a, b) \
+ _GLIB_CHECKED_MUL_UINT64(dest, a, b)
+
+#define g_size_checked_add(dest, a, b) \
+ _GLIB_CHECKED_ADD_SIZE(dest, a, b)
+#define g_size_checked_mul(dest, a, b) \
+ _GLIB_CHECKED_MUL_SIZE(dest, a, b)
+
+#endif /* !_GLIB_HAVE_BUILTIN_OVERFLOW_CHECKS */
/* IEEE Standard 754 Single Precision Storage Format (gfloat):
*
diff --git a/glib/gunibreak.h b/glib/gunibreak.h
index 8548f5216..f83393a98 100644
--- a/glib/gunibreak.h
+++ b/glib/gunibreak.h
@@ -7,7 +7,7 @@
#include <glib/gtypes.h>
#include <glib/gunicode.h>
-#define G_UNICODE_DATA_VERSION "13.0.0"
+#define G_UNICODE_DATA_VERSION "14"
#define G_UNICODE_LAST_CHAR 0x10FFFF
@@ -682,7 +682,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_EXCLAMATION,
- G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_EXCLAMATION,
G_UNICODE_BREAK_EXCLAMATION, G_UNICODE_BREAK_EXCLAMATION,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -984,30 +984,30 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -1018,7 +1018,6 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -1028,12 +1027,13 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
@@ -1478,7 +1478,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
@@ -1494,7 +1494,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
@@ -1558,7 +1558,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
@@ -2751,16 +2751,16 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
- G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -2882,7 +2882,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_EXCLAMATION, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_NON_BREAKING_GLUE,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_NUMERIC,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_NUMERIC,
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
@@ -3231,6 +3231,13 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
@@ -3255,13 +3262,6 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
{ /* page 27, index 25 */
@@ -3303,7 +3303,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
@@ -3326,9 +3326,9 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -3343,20 +3343,19 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
- G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_NUMERIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
- G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -3378,20 +3377,20 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
- G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_ALPHABETIC
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC
},
{ /* page 28, index 26 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -3648,7 +3647,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK
},
@@ -3870,7 +3869,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_POSTFIX, G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_PREFIX,
G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_POSTFIX,
G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_POSTFIX,
- G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_PREFIX,
+ G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_POSTFIX, G_UNICODE_BREAK_PREFIX,
G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_PREFIX,
G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_PREFIX,
G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_PREFIX, G_UNICODE_BREAK_PREFIX,
@@ -5095,7 +5094,6 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -5119,7 +5117,8 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -5367,12 +5366,12 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_AFTER,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_EXCLAMATION,
+ G_UNICODE_BREAK_EXCLAMATION, G_UNICODE_BREAK_OPEN_PUNCTUATION,
+ G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION,
+ G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION,
+ G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION,
+ G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_AFTER,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
@@ -6620,7 +6619,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -6628,6 +6627,11 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
@@ -6640,13 +6644,8 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -12989,7 +12988,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
@@ -13054,14 +13053,14 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_CLOSE_PUNCTUATION, G_UNICODE_BREAK_OPEN_PUNCTUATION,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -13125,7 +13124,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
@@ -13149,7 +13148,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_POSTFIX, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC
},
{ /* page 254, index 101 */
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
@@ -14123,45 +14122,45 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
@@ -14261,36 +14260,36 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
@@ -15290,19 +15289,19 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
@@ -15420,9 +15419,9 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
@@ -15460,13 +15459,14 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER,
- G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -15479,18 +15479,18 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_NUMERIC,
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
- G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
+ G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
+ G_UNICODE_BREAK_UNKNOWN
},
{ /* page 273, index 119 */
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
@@ -16227,7 +16227,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_ALPHABETIC,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_NUMERIC,
@@ -16296,10 +16296,10 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
G_UNICODE_BREAK_COMPLEX_CONTEXT, G_UNICODE_BREAK_COMPLEX_CONTEXT,
G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_AFTER,
- G_UNICODE_BREAK_COMPLEX_CONTEXT, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_COMPLEX_CONTEXT, G_UNICODE_BREAK_COMPLEX_CONTEXT,
+ G_UNICODE_BREAK_COMPLEX_CONTEXT, G_UNICODE_BREAK_COMPLEX_CONTEXT,
+ G_UNICODE_BREAK_COMPLEX_CONTEXT, G_UNICODE_BREAK_COMPLEX_CONTEXT,
+ G_UNICODE_BREAK_COMPLEX_CONTEXT, G_UNICODE_BREAK_COMPLEX_CONTEXT,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
@@ -16740,14 +16740,6 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -16777,6 +16769,14 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
@@ -17690,7 +17690,137 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 306, index 136 */
+ { /* page 303, index 136 */
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
+ },
+ { /* page 306, index 137 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -17820,7 +17950,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC
},
- { /* page 307, index 137 */
+ { /* page 307, index 138 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -17950,7 +18080,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC
},
- { /* page 308, index 138 */
+ { /* page 308, index 139 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -18080,7 +18210,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 325, index 139 */
+ { /* page 325, index 140 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -18210,7 +18340,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC
},
- { /* page 326, index 140 */
+ { /* page 326, index 141 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -18340,7 +18470,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 362, index 141 */
+ { /* page 362, index 142 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -18396,54 +18526,8 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_AFTER,
- G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -18459,17 +18543,63 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_NUMERIC,
+ G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
+ G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
+ G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
+ G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
+ G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
- G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_AFTER,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_AFTER, G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 363, index 142 */
+ { /* page 363, index 143 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -18599,7 +18729,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN
},
- { /* page 366, index 143 */
+ { /* page 366, index 144 */
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
@@ -18729,7 +18859,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN
},
- { /* page 367, index 144 */
+ { /* page 367, index 145 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -18859,7 +18989,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 391, index 145 */
+ { /* page 391, index 146 */
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
@@ -18989,7 +19119,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 396, index 146 */
+ { /* page 396, index 147 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -19119,7 +19249,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 397, index 147 */
+ { /* page 397, index 148 */
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
@@ -19249,7 +19379,139 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 433, index 148 */
+ { /* page 431, index 149 */
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN
+ },
+ { /* page 433, index 150 */
+ G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
+ G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
@@ -19288,8 +19550,6 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_CONDITIONAL_JAPANESE_STARTER,
G_UNICODE_BREAK_CONDITIONAL_JAPANESE_STARTER,
G_UNICODE_BREAK_CONDITIONAL_JAPANESE_STARTER, G_UNICODE_BREAK_UNKNOWN,
@@ -19382,7 +19642,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC
},
- { /* page 434, index 149 */
+ { /* page 434, index 151 */
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
@@ -19512,7 +19772,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 444, index 150 */
+ { /* page 444, index 152 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -19642,7 +19902,137 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 464, index 151 */
+ { /* page 463, index 153 */
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
+ },
+ { /* page 464, index 154 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -19772,7 +20162,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 465, index 152 */
+ { /* page 465, index 155 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -19889,6 +20279,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
@@ -19899,10 +20290,9 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 466, index 153 */
+ { /* page 466, index 156 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -20032,7 +20422,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 467, index 154 */
+ { /* page 467, index 157 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -20162,7 +20552,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 468, index 155 */
+ { /* page 468, index 158 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -20292,7 +20682,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC
},
- { /* page 469, index 156 */
+ { /* page 469, index 159 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -20422,7 +20812,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC
},
- { /* page 470, index 157 */
+ { /* page 470, index 160 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -20552,7 +20942,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC
},
- { /* page 471, index 158 */
+ { /* page 471, index 161 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -20682,7 +21072,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC,
G_UNICODE_BREAK_NUMERIC, G_UNICODE_BREAK_NUMERIC
},
- { /* page 474, index 159 */
+ { /* page 474, index 162 */
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
@@ -20811,7 +21201,137 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 480, index 160 */
+ { /* page 479, index 163 */
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
+ },
+ { /* page 480, index 164 */
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
@@ -20941,7 +21461,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 481, index 161 */
+ { /* page 481, index 165 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -21071,23 +21591,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 482, index 162 */
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
- G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ { /* page 482, index 166 */
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
@@ -21160,6 +21664,22 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
@@ -21201,7 +21721,137 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_PREFIX
},
- { /* page 488, index 163 */
+ { /* page 487, index 167 */
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
+ G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_UNKNOWN
+ },
+ { /* page 488, index 168 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -21331,7 +21981,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 489, index 164 */
+ { /* page 489, index 169 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -21461,7 +22111,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 492, index 165 */
+ { /* page 492, index 170 */
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
@@ -21591,7 +22241,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 493, index 166 */
+ { /* page 493, index 171 */
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -21721,7 +22371,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 494, index 167 */
+ { /* page 494, index 172 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_ALPHABETIC,
@@ -21851,7 +22501,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 497, index 168 */
+ { /* page 497, index 173 */
G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_AMBIGUOUS,
G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_AMBIGUOUS,
G_UNICODE_BREAK_AMBIGUOUS, G_UNICODE_BREAK_AMBIGUOUS,
@@ -21981,7 +22631,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_REGIONAL_INDICATOR, G_UNICODE_BREAK_REGIONAL_INDICATOR,
G_UNICODE_BREAK_REGIONAL_INDICATOR, G_UNICODE_BREAK_REGIONAL_INDICATOR
},
- { /* page 499, index 169 */
+ { /* page 499, index 174 */
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
@@ -22111,7 +22761,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_EMOJI_MODIFIER, G_UNICODE_BREAK_EMOJI_MODIFIER,
G_UNICODE_BREAK_EMOJI_MODIFIER, G_UNICODE_BREAK_EMOJI_MODIFIER
},
- { /* page 500, index 170 */
+ { /* page 500, index 175 */
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
@@ -22241,7 +22891,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC
},
- { /* page 501, index 171 */
+ { /* page 501, index 176 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -22371,7 +23021,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC
},
- { /* page 502, index 172 */
+ { /* page 502, index 177 */
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
@@ -22501,7 +23151,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC
},
- { /* page 503, index 173 */
+ { /* page 503, index 178 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -22631,7 +23281,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC
},
- { /* page 504, index 174 */
+ { /* page 504, index 179 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -22761,7 +23411,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC
},
- { /* page 505, index 175 */
+ { /* page 505, index 180 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -22891,7 +23541,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC
},
- { /* page 506, index 176 */
+ { /* page 506, index 181 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -22989,6 +23639,8 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
+ G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_EMOJI_BASE,
+ G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
@@ -23010,18 +23662,16 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
- G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
- G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
- G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
- G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
- G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
- G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
+ G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE,
+ G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE,
+ G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_EMOJI_BASE,
+ G_UNICODE_BREAK_EMOJI_BASE, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC
},
- { /* page 507, index 177 */
+ { /* page 507, index 182 */
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
G_UNICODE_BREAK_ALPHABETIC, G_UNICODE_BREAK_ALPHABETIC,
@@ -23151,7 +23801,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 511, index 178 */
+ { /* page 511, index 183 */
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
@@ -23281,7 +23931,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 767, index 179 */
+ { /* page 767, index 184 */
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
@@ -23411,7 +24061,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 1023, index 180 */
+ { /* page 1023, index 185 */
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
@@ -23541,7 +24191,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_IDEOGRAPHIC, G_UNICODE_BREAK_IDEOGRAPHIC,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 3584, index 181 */
+ { /* page 3584, index 186 */
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
@@ -23671,7 +24321,7 @@ static const gint8 break_property_data[][256] = {
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN,
G_UNICODE_BREAK_UNKNOWN, G_UNICODE_BREAK_UNKNOWN
},
- { /* page 3585, index 182 */
+ { /* page 3585, index 187 */
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
G_UNICODE_BREAK_COMBINING_MARK, G_UNICODE_BREAK_COMBINING_MARK,
@@ -24108,12 +24758,12 @@ static const gint16 break_property_table_part1[788] = {
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
- G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
+ 136 /* page 303 */,
G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX,
- 136 /* page 306 */,
- 137 /* page 307 */,
- 138 /* page 308 */,
+ 137 /* page 306 */,
+ 138 /* page 307 */,
+ 139 /* page 308 */,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
@@ -24130,8 +24780,8 @@ static const gint16 break_property_table_part1[788] = {
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX,
- 139 /* page 325 */,
- 140 /* page 326 */,
+ 140 /* page 325 */,
+ 141 /* page 326 */,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
@@ -24167,12 +24817,12 @@ static const gint16 break_property_table_part1[788] = {
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX,
- 141 /* page 362 */,
- 142 /* page 363 */,
+ 142 /* page 362 */,
+ 143 /* page 363 */,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
- 143 /* page 366 */,
- 144 /* page 367 */,
+ 144 /* page 366 */,
+ 145 /* page 367 */,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
@@ -24196,14 +24846,13 @@ static const gint16 break_property_table_part1[788] = {
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
- 145 /* page 391 */,
+ 146 /* page 391 */,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX,
- 146 /* page 396 */,
- 147 /* page 397 */,
- G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
+ 147 /* page 396 */,
+ 148 /* page 397 */,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
@@ -24237,10 +24886,10 @@ static const gint16 break_property_table_part1[788] = {
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
+ 149 /* page 431 */,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
- 148 /* page 433 */,
- 149 /* page 434 */,
- G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
+ 150 /* page 433 */,
+ 151 /* page 434 */,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
@@ -24249,8 +24898,8 @@ static const gint16 break_property_table_part1[788] = {
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
- 150 /* page 444 */,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
+ 152 /* page 444 */,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
@@ -24269,54 +24918,55 @@ static const gint16 break_property_table_part1[788] = {
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
- 151 /* page 464 */,
- 152 /* page 465 */,
- 153 /* page 466 */,
- 154 /* page 467 */,
- 155 /* page 468 */,
- 156 /* page 469 */,
- 157 /* page 470 */,
- 158 /* page 471 */,
+ 153 /* page 463 */,
+ 154 /* page 464 */,
+ 155 /* page 465 */,
+ 156 /* page 466 */,
+ 157 /* page 467 */,
+ 158 /* page 468 */,
+ 159 /* page 469 */,
+ 160 /* page 470 */,
+ 161 /* page 471 */,
G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_ALPHABETIC + G_UNICODE_MAX_TABLE_INDEX,
- 159 /* page 474 */,
- G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
- G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
+ 162 /* page 474 */,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
- 160 /* page 480 */,
- 161 /* page 481 */,
- 162 /* page 482 */,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
+ 163 /* page 479 */,
+ 164 /* page 480 */,
+ 165 /* page 481 */,
+ 166 /* page 482 */,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
- 163 /* page 488 */,
- 164 /* page 489 */,
+ 167 /* page 487 */,
+ 168 /* page 488 */,
+ 169 /* page 489 */,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
- 165 /* page 492 */,
- 166 /* page 493 */,
- 167 /* page 494 */,
+ 170 /* page 492 */,
+ 171 /* page 493 */,
+ 172 /* page 494 */,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
- 168 /* page 497 */,
+ 173 /* page 497 */,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
- 169 /* page 499 */,
- 170 /* page 500 */,
- 171 /* page 501 */,
- 172 /* page 502 */,
- 173 /* page 503 */,
- 174 /* page 504 */,
- 175 /* page 505 */,
- 176 /* page 506 */,
- 177 /* page 507 */,
+ 174 /* page 499 */,
+ 175 /* page 500 */,
+ 176 /* page 501 */,
+ 177 /* page 502 */,
+ 178 /* page 503 */,
+ 179 /* page 504 */,
+ 180 /* page 505 */,
+ 181 /* page 506 */,
+ 182 /* page 507 */,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
- 178 /* page 511 */,
+ 183 /* page 511 */,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
@@ -24572,7 +25222,7 @@ static const gint16 break_property_table_part1[788] = {
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
- 179 /* page 767 */,
+ 184 /* page 767 */,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_IDEOGRAPHIC + G_UNICODE_MAX_TABLE_INDEX,
@@ -24597,8 +25247,8 @@ static const gint16 break_property_table_part1[788] = {
/* U+E0000 through U+10FFFF */
static const gint16 break_property_table_part2[768] = {
- 181 /* page 3584 */,
- 182 /* page 3585 */,
+ 186 /* page 3584 */,
+ 187 /* page 3585 */,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_BREAK_UNKNOWN + G_UNICODE_MAX_TABLE_INDEX,
diff --git a/glib/gunichartables.h b/glib/gunichartables.h
index f6b5cce38..f83d11c3d 100644
--- a/glib/gunichartables.h
+++ b/glib/gunichartables.h
@@ -4,7 +4,7 @@
#ifndef CHARTABLES_H
#define CHARTABLES_H
-#define G_UNICODE_DATA_VERSION "13.0.0"
+#define G_UNICODE_DATA_VERSION "14"
#define G_UNICODE_LAST_CHAR 0x10ffff
@@ -784,8 +784,9 @@ static const char type_data[][256] = {
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
- G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_FORMAT, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_FORMAT,
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION,
+ G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -796,11 +797,11 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_MODIFIER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_MODIFIER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
@@ -811,16 +812,15 @@ static const char type_data[][256] = {
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
- G_UNICODE_NON_SPACING_MARK, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
- G_UNICODE_DECIMAL_NUMBER, G_UNICODE_OTHER_PUNCTUATION,
+ G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION,
- G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_NON_SPACING_MARK,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -853,6 +853,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_LETTER,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
@@ -1021,22 +1022,6 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -1044,17 +1029,37 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_MODIFIER_SYMBOL, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED,
+ G_UNICODE_FORMAT, G_UNICODE_FORMAT, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
@@ -1388,10 +1393,11 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_LETTER,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_SPACING_MARK,
G_UNICODE_SPACING_MARK, G_UNICODE_SPACING_MARK, G_UNICODE_SPACING_MARK,
- G_UNICODE_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
@@ -1400,7 +1406,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_DECIMAL_NUMBER,
@@ -1446,7 +1452,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_SPACING_MARK,
G_UNICODE_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_DECIMAL_NUMBER,
@@ -2250,13 +2256,13 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
- G_UNICODE_NON_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_SPACING_MARK, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -2264,7 +2270,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
- G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_PUNCTUATION,
+ G_UNICODE_SPACING_MARK, G_UNICODE_OTHER_PUNCTUATION,
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -2349,13 +2355,14 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION,
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK, G_UNICODE_FORMAT,
- G_UNICODE_UNASSIGNED, G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
- G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER, G_UNICODE_UNASSIGNED,
+ G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
+ G_UNICODE_DECIMAL_NUMBER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -2367,7 +2374,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -2385,12 +2392,12 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -2402,9 +2409,9 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_NON_SPACING_MARK,
- G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -2427,11 +2434,10 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
{ /* page 25, index 23 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -2606,6 +2612,13 @@ static const char type_data[][256] = {
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_ENCLOSING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -2622,12 +2635,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
{ /* page 27, index 25 */
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
@@ -2658,7 +2666,7 @@ static const char type_data[][256] = {
G_UNICODE_SPACING_MARK, G_UNICODE_SPACING_MARK, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
@@ -2678,8 +2686,9 @@ static const char type_data[][256] = {
G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION,
+ G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_SPACING_MARK,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -2967,7 +2976,7 @@ static const char type_data[][256] = {
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
- G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK
},
@@ -3313,33 +3322,34 @@ static const char type_data[][256] = {
G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_CURRENCY_SYMBOL,
G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_CURRENCY_SYMBOL,
G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_CURRENCY_SYMBOL,
- G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_CURRENCY_SYMBOL,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
- G_UNICODE_ENCLOSING_MARK, G_UNICODE_ENCLOSING_MARK,
- G_UNICODE_ENCLOSING_MARK, G_UNICODE_ENCLOSING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_ENCLOSING_MARK,
G_UNICODE_ENCLOSING_MARK, G_UNICODE_ENCLOSING_MARK,
+ G_UNICODE_ENCLOSING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_ENCLOSING_MARK, G_UNICODE_ENCLOSING_MARK,
+ G_UNICODE_ENCLOSING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
- G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
+ G_UNICODE_UNASSIGNED
},
{ /* page 33, index 31 */
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
@@ -4096,7 +4106,8 @@ static const char type_data[][256] = {
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
- G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
@@ -4120,7 +4131,6 @@ static const char type_data[][256] = {
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
- G_UNICODE_LOWERCASE_LETTER, G_UNICODE_UNASSIGNED,
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
@@ -4343,10 +4353,12 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION,
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION,
+ G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OPEN_PUNCTUATION,
+ G_UNICODE_CLOSE_PUNCTUATION, G_UNICODE_OPEN_PUNCTUATION,
+ G_UNICODE_CLOSE_PUNCTUATION, G_UNICODE_OPEN_PUNCTUATION,
+ G_UNICODE_CLOSE_PUNCTUATION, G_UNICODE_OPEN_PUNCTUATION,
+ G_UNICODE_CLOSE_PUNCTUATION, G_UNICODE_DASH_PUNCTUATION,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -4854,95 +4866,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL
},
- { /* page 159, index 47 */
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED
- },
- { /* page 160, index 48 */
+ { /* page 160, index 47 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -5030,7 +4954,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER
},
- { /* page 164, index 49 */
+ { /* page 164, index 48 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -5119,7 +5043,7 @@ static const char type_data[][256] = {
G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION
},
- { /* page 166, index 50 */
+ { /* page 166, index 49 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -5228,7 +5152,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 167, index 51 */
+ { /* page 167, index 50 */
G_UNICODE_MODIFIER_SYMBOL, G_UNICODE_MODIFIER_SYMBOL,
G_UNICODE_MODIFIER_SYMBOL, G_UNICODE_MODIFIER_SYMBOL,
G_UNICODE_MODIFIER_SYMBOL, G_UNICODE_MODIFIER_SYMBOL,
@@ -5325,12 +5249,18 @@ static const char type_data[][256] = {
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UPPERCASE_LETTER,
- G_UNICODE_LOWERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
- G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_UNASSIGNED, G_UNICODE_LOWERCASE_LETTER, G_UNICODE_UNASSIGNED,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -5338,19 +5268,15 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_MODIFIER_LETTER,
G_UNICODE_MODIFIER_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER
},
- { /* page 168, index 52 */
+ { /* page 168, index 51 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -5447,7 +5373,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_NON_SPACING_MARK
},
- { /* page 169, index 53 */
+ { /* page 169, index 52 */
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
@@ -5550,7 +5476,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_UNASSIGNED
},
- { /* page 170, index 54 */
+ { /* page 170, index 53 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -5649,7 +5575,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 171, index 55 */
+ { /* page 171, index 54 */
G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -5763,7 +5689,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 215, index 56 */
+ { /* page 215, index 55 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -5851,7 +5777,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 250, index 57 */
+ { /* page 250, index 56 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -5939,7 +5865,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 251, index 58 */
+ { /* page 251, index 57 */
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
@@ -6010,7 +5936,7 @@ static const char type_data[][256] = {
G_UNICODE_MODIFIER_SYMBOL, G_UNICODE_MODIFIER_SYMBOL,
G_UNICODE_MODIFIER_SYMBOL, G_UNICODE_MODIFIER_SYMBOL,
G_UNICODE_MODIFIER_SYMBOL, G_UNICODE_MODIFIER_SYMBOL,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_MODIFIER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -6032,7 +5958,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER
},
- { /* page 253, index 59 */
+ { /* page 253, index 58 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -6055,12 +5981,12 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_CLOSE_PUNCTUATION, G_UNICODE_OPEN_PUNCTUATION,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -6102,7 +6028,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -6118,10 +6044,10 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED
+ G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL
},
- { /* page 254, index 60 */
+ { /* page 254, index 59 */
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
@@ -6225,7 +6151,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_FORMAT
},
- { /* page 255, index 61 */
+ { /* page 255, index 60 */
G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_PUNCTUATION,
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION,
G_UNICODE_CURRENCY_SYMBOL, G_UNICODE_OTHER_PUNCTUATION,
@@ -6332,7 +6258,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 256, index 62 */
+ { /* page 256, index 61 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -6420,7 +6346,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 257, index 63 */
+ { /* page 257, index 62 */
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION,
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_NUMBER,
@@ -6516,7 +6442,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 258, index 64 */
+ { /* page 258, index 63 */
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -6604,7 +6530,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 259, index 65 */
+ { /* page 259, index 64 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -6694,7 +6620,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 260, index 66 */
+ { /* page 260, index 65 */
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
@@ -6808,7 +6734,7 @@ static const char type_data[][256] = {
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 261, index 67 */
+ { /* page 261, index 66 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -6846,32 +6772,45 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UPPERCASE_LETTER,
+ G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UNASSIGNED,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_UNASSIGNED,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_UNASSIGNED,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_UNASSIGNED,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -6896,7 +6835,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 263, index 68 */
+ { /* page 263, index 67 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -6939,6 +6878,36 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_UNASSIGNED,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_UNASSIGNED, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -6961,30 +6930,9 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 264, index 69 */
+ { /* page 264, index 68 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER,
@@ -7072,7 +7020,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER,
G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER
},
- { /* page 265, index 70 */
+ { /* page 265, index 69 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -7160,7 +7108,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER,
G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER
},
- { /* page 266, index 71 */
+ { /* page 266, index 70 */
G_UNICODE_OTHER_LETTER, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK,
@@ -7253,7 +7201,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 267, index 72 */
+ { /* page 267, index 71 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -7343,7 +7291,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 268, index 73 */
+ { /* page 268, index 72 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -7448,7 +7396,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER,
G_UNICODE_OTHER_NUMBER
},
- { /* page 269, index 74 */
+ { /* page 269, index 73 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -7538,7 +7486,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 270, index 75 */
+ { /* page 270, index 74 */
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -7626,7 +7574,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 271, index 76 */
+ { /* page 271, index 75 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -7667,6 +7615,17 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_PUNCTUATION,
+ G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION,
+ G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -7679,32 +7638,22 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_NUMBER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER,
G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER,
+ G_UNICODE_OTHER_NUMBER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -7712,12 +7661,12 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 272, index 77 */
+ { /* page 272, index 76 */
G_UNICODE_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_SPACING_MARK, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -7760,9 +7709,10 @@ static const char type_data[][256] = {
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
- G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK,
@@ -7791,7 +7741,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_FORMAT,
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION,
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_FORMAT,
@@ -7814,7 +7764,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 273, index 78 */
+ { /* page 273, index 77 */
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -7915,7 +7865,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 274, index 79 */
+ { /* page 274, index 78 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -8010,7 +7960,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 275, index 80 */
+ { /* page 275, index 79 */
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_SPACING_MARK, G_UNICODE_SPACING_MARK, G_UNICODE_UNASSIGNED,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -8101,7 +8051,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 276, index 81 */
+ { /* page 276, index 80 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -8199,7 +8149,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 277, index 82 */
+ { /* page 277, index 81 */
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -8293,7 +8243,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 278, index 83 */
+ { /* page 278, index 82 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -8364,10 +8314,10 @@ static const char type_data[][256] = {
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_SPACING_MARK,
- G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
+ G_UNICODE_UNASSIGNED, G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
@@ -8391,7 +8341,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 279, index 84 */
+ { /* page 279, index 83 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -8418,9 +8368,9 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER,
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION,
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -8483,7 +8433,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 280, index 85 */
+ { /* page 280, index 84 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -8585,7 +8535,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER
},
- { /* page 281, index 86 */
+ { /* page 281, index 85 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -8677,7 +8627,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 282, index 87 */
+ { /* page 282, index 86 */
G_UNICODE_OTHER_LETTER, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
@@ -8748,12 +8698,12 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -8776,7 +8726,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 284, index 88 */
+ { /* page 284, index 87 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -8875,7 +8825,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 285, index 89 */
+ { /* page 285, index 88 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER,
@@ -8968,7 +8918,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 286, index 90 */
+ { /* page 286, index 89 */
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -9057,7 +9007,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 287, index 91 */
+ { /* page 287, index 90 */
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -9146,7 +9096,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_OTHER_PUNCTUATION
},
- { /* page 291, index 92 */
+ { /* page 291, index 91 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -9234,7 +9184,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 292, index 93 */
+ { /* page 292, index 92 */
G_UNICODE_LETTER_NUMBER, G_UNICODE_LETTER_NUMBER,
G_UNICODE_LETTER_NUMBER, G_UNICODE_LETTER_NUMBER,
G_UNICODE_LETTER_NUMBER, G_UNICODE_LETTER_NUMBER,
@@ -9341,7 +9291,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER
},
- { /* page 293, index 94 */
+ { /* page 293, index 93 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -9429,6 +9379,94 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
+ { /* page 303, index 94 */
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_PUNCTUATION,
+ G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
+ },
{ /* page 308, index 95 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -9644,38 +9682,6 @@ static const char type_data[][256] = {
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_OTHER_PUNCTUATION,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -9686,13 +9692,47 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_DECIMAL_NUMBER,
+ G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
+ G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
+ G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
+ G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
+ G_UNICODE_DECIMAL_NUMBER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
- G_UNICODE_OTHER_PUNCTUATION, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_OTHER_PUNCTUATION,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED
},
{ /* page 363, index 98 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -10240,7 +10280,97 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 433, index 104 */
+ { /* page 431, index 104 */
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_UNASSIGNED, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_UNASSIGNED, G_UNICODE_MODIFIER_LETTER,
+ G_UNICODE_MODIFIER_LETTER, G_UNICODE_UNASSIGNED
+ },
+ { /* page 433, index 105 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -10251,8 +10381,8 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -10328,7 +10458,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER
},
- { /* page 434, index 105 */
+ { /* page 434, index 106 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -10416,7 +10546,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 444, index 106 */
+ { /* page 444, index 107 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -10504,7 +10634,106 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 464, index 107 */
+ { /* page 463, index 108 */
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
+ },
+ { /* page 464, index 109 */
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
@@ -10592,7 +10821,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 465, index 108 */
+ { /* page 465, index 110 */
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
@@ -10674,8 +10903,8 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -10684,7 +10913,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 466, index 109 */
+ { /* page 466, index 111 */
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
@@ -10772,7 +11001,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 467, index 110 */
+ { /* page 467, index 112 */
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
@@ -10860,7 +11089,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 468, index 111 */
+ { /* page 468, index 113 */
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
@@ -10989,7 +11218,7 @@ static const char type_data[][256] = {
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_LOWERCASE_LETTER
},
- { /* page 469, index 112 */
+ { /* page 469, index 114 */
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
@@ -11118,7 +11347,7 @@ static const char type_data[][256] = {
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_LOWERCASE_LETTER
},
- { /* page 470, index 113 */
+ { /* page 470, index 115 */
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
@@ -11248,7 +11477,7 @@ static const char type_data[][256] = {
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_LOWERCASE_LETTER
},
- { /* page 471, index 114 */
+ { /* page 471, index 116 */
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
@@ -11378,7 +11607,7 @@ static const char type_data[][256] = {
G_UNICODE_DECIMAL_NUMBER, G_UNICODE_DECIMAL_NUMBER,
G_UNICODE_DECIMAL_NUMBER
},
- { /* page 474, index 115 */
+ { /* page 474, index 117 */
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
@@ -11489,7 +11718,100 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 480, index 116 */
+ { /* page 479, index 118 */
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_LOWERCASE_LETTER,
+ G_UNICODE_LOWERCASE_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED
+ },
+ { /* page 480, index 119 */
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
@@ -11583,7 +11905,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 481, index 117 */
+ { /* page 481, index 120 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -11674,18 +11996,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 482, index 118 */
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ { /* page 482, index 121 */
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -11734,6 +12045,17 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_NON_SPACING_MARK, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -11764,7 +12086,95 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_CURRENCY_SYMBOL
},
- { /* page 488, index 119 */
+ { /* page 487, index 122 */
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_UNASSIGNED
+ },
+ { /* page 488, index 123 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -11853,7 +12263,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 489, index 120 */
+ { /* page 489, index 124 */
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
G_UNICODE_UPPERCASE_LETTER, G_UNICODE_UPPERCASE_LETTER,
@@ -11955,7 +12365,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 492, index 121 */
+ { /* page 492, index 125 */
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -12043,7 +12453,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 493, index 122 */
+ { /* page 493, index 126 */
G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER,
G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER,
G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER,
@@ -12131,7 +12541,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 494, index 123 */
+ { /* page 494, index 127 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -12219,7 +12629,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 496, index 124 */
+ { /* page 496, index 128 */
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
@@ -12307,7 +12717,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 497, index 125 */
+ { /* page 497, index 129 */
G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER,
G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER,
G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER, G_UNICODE_OTHER_NUMBER,
@@ -12395,7 +12805,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL
},
- { /* page 498, index 126 */
+ { /* page 498, index 130 */
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -12483,7 +12893,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 499, index 127 */
+ { /* page 499, index 131 */
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
@@ -12572,7 +12982,7 @@ static const char type_data[][256] = {
G_UNICODE_MODIFIER_SYMBOL, G_UNICODE_MODIFIER_SYMBOL,
G_UNICODE_MODIFIER_SYMBOL
},
- { /* page 502, index 128 */
+ { /* page 502, index 132 */
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
@@ -12646,12 +13056,12 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
@@ -12660,7 +13070,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 503, index 129 */
+ { /* page 503, index 133 */
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
@@ -12741,14 +13151,14 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 504, index 130 */
+ { /* page 504, index 134 */
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
@@ -12836,95 +13246,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 505, index 131 */
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL
- },
- { /* page 506, index 132 */
+ { /* page 506, index 135 */
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
@@ -12966,7 +13288,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
@@ -12981,38 +13303,38 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
+ G_UNICODE_OTHER_SYMBOL, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 507, index 133 */
+ { /* page 507, index 136 */
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL, G_UNICODE_OTHER_SYMBOL,
@@ -13101,7 +13423,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 678, index 134 */
+ { /* page 678, index 137 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -13176,7 +13498,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -13189,7 +13511,9 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 695, index 135 */
+ { /* page 695, index 138 */
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
+ G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -13207,8 +13531,6 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
- G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_UNASSIGNED,
- G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -13277,7 +13599,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER
},
- { /* page 696, index 136 */
+ { /* page 696, index 139 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -13365,7 +13687,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER
},
- { /* page 718, index 137 */
+ { /* page 718, index 140 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -13453,7 +13775,7 @@ static const char type_data[][256] = {
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER
},
- { /* page 747, index 138 */
+ { /* page 747, index 141 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -13541,7 +13863,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 762, index 139 */
+ { /* page 762, index 142 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -13629,7 +13951,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 787, index 140 */
+ { /* page 787, index 143 */
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER, G_UNICODE_OTHER_LETTER,
@@ -13717,7 +14039,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 3584, index 141 */
+ { /* page 3584, index 144 */
G_UNICODE_UNASSIGNED, G_UNICODE_FORMAT, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
@@ -13797,7 +14119,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED
},
- { /* page 3585, index 142 */
+ { /* page 3585, index 145 */
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
G_UNICODE_NON_SPACING_MARK, G_UNICODE_NON_SPACING_MARK,
@@ -13925,7 +14247,7 @@ static const char type_data[][256] = {
G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 4095, index 143 */
+ { /* page 4095, index 146 */
G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE,
G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE,
G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE,
@@ -14013,7 +14335,7 @@ static const char type_data[][256] = {
G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_UNASSIGNED,
G_UNICODE_UNASSIGNED
},
- { /* page 4351, index 144 */
+ { /* page 4351, index 147 */
G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE,
G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE,
G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE, G_UNICODE_PRIVATE_USE,
@@ -14264,19 +14586,19 @@ static const gint16 type_table_part1[788] = {
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
- 47 /* page 159 */,
- 48 /* page 160 */,
+ G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
+ 47 /* page 160 */,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
- 49 /* page 164 */,
+ 48 /* page 164 */,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
- 50 /* page 166 */,
- 51 /* page 167 */,
- 52 /* page 168 */,
- 53 /* page 169 */,
- 54 /* page 170 */,
- 55 /* page 171 */,
+ 49 /* page 166 */,
+ 50 /* page 167 */,
+ 51 /* page 168 */,
+ 52 /* page 169 */,
+ 53 /* page 170 */,
+ 54 /* page 171 */,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
@@ -14320,7 +14642,7 @@ static const gint16 type_table_part1[788] = {
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
- 56 /* page 215 */,
+ 55 /* page 215 */,
G_UNICODE_SURROGATE + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_SURROGATE + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_SURROGATE + G_UNICODE_MAX_TABLE_INDEX,
@@ -14355,51 +14677,50 @@ static const gint16 type_table_part1[788] = {
G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
- 57 /* page 250 */,
- 58 /* page 251 */,
+ 56 /* page 250 */,
+ 57 /* page 251 */,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
- 59 /* page 253 */,
- 60 /* page 254 */,
- 61 /* page 255 */,
- 62 /* page 256 */,
- 63 /* page 257 */,
- 64 /* page 258 */,
- 65 /* page 259 */,
- 66 /* page 260 */,
- 67 /* page 261 */,
+ 58 /* page 253 */,
+ 59 /* page 254 */,
+ 60 /* page 255 */,
+ 61 /* page 256 */,
+ 62 /* page 257 */,
+ 63 /* page 258 */,
+ 64 /* page 259 */,
+ 65 /* page 260 */,
+ 66 /* page 261 */,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
- 68 /* page 263 */,
- 69 /* page 264 */,
- 70 /* page 265 */,
- 71 /* page 266 */,
- 72 /* page 267 */,
- 73 /* page 268 */,
- 74 /* page 269 */,
- 75 /* page 270 */,
- 76 /* page 271 */,
- 77 /* page 272 */,
- 78 /* page 273 */,
- 79 /* page 274 */,
- 80 /* page 275 */,
- 81 /* page 276 */,
- 82 /* page 277 */,
- 83 /* page 278 */,
- 84 /* page 279 */,
- 85 /* page 280 */,
- 86 /* page 281 */,
- 87 /* page 282 */,
+ 67 /* page 263 */,
+ 68 /* page 264 */,
+ 69 /* page 265 */,
+ 70 /* page 266 */,
+ 71 /* page 267 */,
+ 72 /* page 268 */,
+ 73 /* page 269 */,
+ 74 /* page 270 */,
+ 75 /* page 271 */,
+ 76 /* page 272 */,
+ 77 /* page 273 */,
+ 78 /* page 274 */,
+ 79 /* page 275 */,
+ 80 /* page 276 */,
+ 81 /* page 277 */,
+ 82 /* page 278 */,
+ 83 /* page 279 */,
+ 84 /* page 280 */,
+ 85 /* page 281 */,
+ 86 /* page 282 */,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
- 88 /* page 284 */,
- 89 /* page 285 */,
- 90 /* page 286 */,
- 91 /* page 287 */,
+ 87 /* page 284 */,
+ 88 /* page 285 */,
+ 89 /* page 286 */,
+ 90 /* page 287 */,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
- 92 /* page 291 */,
- 93 /* page 292 */,
- 94 /* page 293 */,
- G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
+ 91 /* page 291 */,
+ 92 /* page 292 */,
+ 93 /* page 293 */,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
@@ -14409,6 +14730,7 @@ static const gint16 type_table_part1[788] = {
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
+ 94 /* page 303 */,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
@@ -14536,10 +14858,10 @@ static const gint16 type_table_part1[788] = {
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
- G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
+ 104 /* page 431 */,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
- 104 /* page 433 */,
- 105 /* page 434 */,
+ 105 /* page 433 */,
+ 106 /* page 434 */,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
@@ -14549,7 +14871,7 @@ static const gint16 type_table_part1[788] = {
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
- 106 /* page 444 */,
+ 107 /* page 444 */,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
@@ -14568,51 +14890,51 @@ static const gint16 type_table_part1[788] = {
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
- G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
- 107 /* page 464 */,
- 108 /* page 465 */,
- 109 /* page 466 */,
- 110 /* page 467 */,
- 111 /* page 468 */,
- 112 /* page 469 */,
- 113 /* page 470 */,
- 114 /* page 471 */,
+ 108 /* page 463 */,
+ 109 /* page 464 */,
+ 110 /* page 465 */,
+ 111 /* page 466 */,
+ 112 /* page 467 */,
+ 113 /* page 468 */,
+ 114 /* page 469 */,
+ 115 /* page 470 */,
+ 116 /* page 471 */,
G_UNICODE_OTHER_SYMBOL + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_SYMBOL + G_UNICODE_MAX_TABLE_INDEX,
- 115 /* page 474 */,
- G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
+ 117 /* page 474 */,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
- 116 /* page 480 */,
- 117 /* page 481 */,
- 118 /* page 482 */,
+ 118 /* page 479 */,
+ 119 /* page 480 */,
+ 120 /* page 481 */,
+ 121 /* page 482 */,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
+ 122 /* page 487 */,
+ 123 /* page 488 */,
+ 124 /* page 489 */,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
- 119 /* page 488 */,
- 120 /* page 489 */,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
+ 125 /* page 492 */,
+ 126 /* page 493 */,
+ 127 /* page 494 */,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
- 121 /* page 492 */,
- 122 /* page 493 */,
- 123 /* page 494 */,
- G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
- 124 /* page 496 */,
- 125 /* page 497 */,
- 126 /* page 498 */,
- 127 /* page 499 */,
+ 128 /* page 496 */,
+ 129 /* page 497 */,
+ 130 /* page 498 */,
+ 131 /* page 499 */,
+ G_UNICODE_OTHER_SYMBOL + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_SYMBOL + G_UNICODE_MAX_TABLE_INDEX,
+ 132 /* page 502 */,
+ 133 /* page 503 */,
+ 134 /* page 504 */,
G_UNICODE_OTHER_SYMBOL + G_UNICODE_MAX_TABLE_INDEX,
- 128 /* page 502 */,
- 129 /* page 503 */,
- 130 /* page 504 */,
- 131 /* page 505 */,
- 132 /* page 506 */,
- 133 /* page 507 */,
+ 135 /* page 506 */,
+ 136 /* page 507 */,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
@@ -14783,7 +15105,7 @@ static const gint16 type_table_part1[788] = {
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
- 134 /* page 678 */,
+ 137 /* page 678 */,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
@@ -14800,8 +15122,8 @@ static const gint16 type_table_part1[788] = {
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
- 135 /* page 695 */,
- 136 /* page 696 */,
+ 138 /* page 695 */,
+ 139 /* page 696 */,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
@@ -14823,7 +15145,7 @@ static const gint16 type_table_part1[788] = {
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
- 137 /* page 718 */,
+ 140 /* page 718 */,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
@@ -14852,7 +15174,7 @@ static const gint16 type_table_part1[788] = {
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
- 138 /* page 747 */,
+ 141 /* page 747 */,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
@@ -14867,7 +15189,7 @@ static const gint16 type_table_part1[788] = {
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
- 139 /* page 762 */,
+ 142 /* page 762 */,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
@@ -14892,13 +15214,13 @@ static const gint16 type_table_part1[788] = {
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_OTHER_LETTER + G_UNICODE_MAX_TABLE_INDEX,
- 140 /* page 787 */
+ 143 /* page 787 */
};
/* U+E0000 through U+10FFFF */
static const gint16 type_table_part2[768] = {
- 141 /* page 3584 */,
- 142 /* page 3585 */,
+ 144 /* page 3584 */,
+ 145 /* page 3585 */,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_UNASSIGNED + G_UNICODE_MAX_TABLE_INDEX,
@@ -15408,7 +15730,7 @@ static const gint16 type_table_part2[768] = {
G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX,
- 143 /* page 4095 */,
+ 146 /* page 4095 */,
G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX,
@@ -15664,7 +15986,7 @@ static const gint16 type_table_part2[768] = {
G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX,
G_UNICODE_PRIVATE_USE + G_UNICODE_MAX_TABLE_INDEX,
- 144 /* page 4351 */
+ 147 /* page 4351 */
};
static const gunichar attr_data[][256] = {
@@ -16515,12 +16837,12 @@ static const gunichar attr_data[][256] = {
0x2c42, 0x2c43, 0x2c44, 0x2c45, 0x2c46, 0x2c47, 0x2c48, 0x2c49, 0x2c4a,
0x2c4b, 0x2c4c, 0x2c4d, 0x2c4e, 0x2c4f, 0x2c50, 0x2c51, 0x2c52, 0x2c53,
0x2c54, 0x2c55, 0x2c56, 0x2c57, 0x2c58, 0x2c59, 0x2c5a, 0x2c5b, 0x2c5c,
- 0x2c5d, 0x2c5e, 0x0000, 0x2c00, 0x2c01, 0x2c02, 0x2c03, 0x2c04, 0x2c05,
+ 0x2c5d, 0x2c5e, 0x2c5f, 0x2c00, 0x2c01, 0x2c02, 0x2c03, 0x2c04, 0x2c05,
0x2c06, 0x2c07, 0x2c08, 0x2c09, 0x2c0a, 0x2c0b, 0x2c0c, 0x2c0d, 0x2c0e,
0x2c0f, 0x2c10, 0x2c11, 0x2c12, 0x2c13, 0x2c14, 0x2c15, 0x2c16, 0x2c17,
0x2c18, 0x2c19, 0x2c1a, 0x2c1b, 0x2c1c, 0x2c1d, 0x2c1e, 0x2c1f, 0x2c20,
0x2c21, 0x2c22, 0x2c23, 0x2c24, 0x2c25, 0x2c26, 0x2c27, 0x2c28, 0x2c29,
- 0x2c2a, 0x2c2b, 0x2c2c, 0x2c2d, 0x2c2e, 0x0000, 0x2c61, 0x2c60, 0x026b,
+ 0x2c2a, 0x2c2b, 0x2c2c, 0x2c2d, 0x2c2e, 0x2c2f, 0x2c61, 0x2c60, 0x026b,
0x1d7d, 0x027d, 0x023a, 0x023e, 0x2c68, 0x2c67, 0x2c6a, 0x2c69, 0x2c6c,
0x2c6b, 0x0251, 0x0271, 0x0250, 0x0252, 0x0000, 0x2c73, 0x2c72, 0x0000,
0x2c76, 0x2c75, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -16624,10 +16946,10 @@ static const gunichar attr_data[][256] = {
0xa7a3, 0xa7a2, 0xa7a5, 0xa7a4, 0xa7a7, 0xa7a6, 0xa7a9, 0xa7a8, 0x0266,
0x025c, 0x0261, 0x026c, 0x026a, 0x0000, 0x029e, 0x0287, 0x029d, 0xab53,
0xa7b5, 0xa7b4, 0xa7b7, 0xa7b6, 0xa7b9, 0xa7b8, 0xa7bb, 0xa7ba, 0xa7bd,
- 0xa7bc, 0xa7bf, 0xa7be, 0x0000, 0x0000, 0xa7c3, 0xa7c2, 0xa794, 0x0282,
+ 0xa7bc, 0xa7bf, 0xa7be, 0xa7c1, 0xa7c0, 0xa7c3, 0xa7c2, 0xa794, 0x0282,
0x1d8e, 0xa7c8, 0xa7c7, 0xa7ca, 0xa7c9, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0xa7d1, 0xa7d0, 0x0000, 0x0000, 0x0000, 0x0000, 0xa7d7, 0xa7d6,
+ 0xa7d9, 0xa7d8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0xa7f6, 0xa7f5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -16853,7 +17175,39 @@ static const gunichar attr_data[][256] = {
0x104ca, 0x104cb, 0x104cc, 0x104cd, 0x104ce, 0x104cf, 0x104d0, 0x104d1,
0x104d2, 0x104d3, 0x0000, 0x0000, 0x0000, 0x0000
},
- { /* page 268, index 38 */
+ { /* page 261, index 38 */
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x10597, 0x10598, 0x10599, 0x1059a,
+ 0x1059b, 0x1059c, 0x1059d, 0x1059e, 0x1059f, 0x105a0, 0x105a1, 0x0000,
+ 0x105a3, 0x105a4, 0x105a5, 0x105a6, 0x105a7, 0x105a8, 0x105a9, 0x105aa,
+ 0x105ab, 0x105ac, 0x105ad, 0x105ae, 0x105af, 0x105b0, 0x105b1, 0x0000,
+ 0x105b3, 0x105b4, 0x105b5, 0x105b6, 0x105b7, 0x105b8, 0x105b9, 0x0000,
+ 0x105bb, 0x105bc, 0x0000, 0x10570, 0x10571, 0x10572, 0x10573, 0x10574,
+ 0x10575, 0x10576, 0x10577, 0x10578, 0x10579, 0x1057a, 0x0000, 0x1057c,
+ 0x1057d, 0x1057e, 0x1057f, 0x10580, 0x10581, 0x10582, 0x10583, 0x10584,
+ 0x10585, 0x10586, 0x10587, 0x10588, 0x10589, 0x1058a, 0x0000, 0x1058c,
+ 0x1058d, 0x1058e, 0x1058f, 0x10590, 0x10591, 0x10592, 0x0000, 0x10594,
+ 0x10595, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
+ },
+ { /* page 268, index 39 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -16885,7 +17239,7 @@ static const gunichar attr_data[][256] = {
0x10caf, 0x10cb0, 0x10cb1, 0x10cb2, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
},
- { /* page 269, index 39 */
+ { /* page 269, index 40 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -16916,7 +17270,7 @@ static const gunichar attr_data[][256] = {
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000
},
- { /* page 272, index 40 */
+ { /* page 272, index 41 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -16947,7 +17301,7 @@ static const gunichar attr_data[][256] = {
0x0003, 0x0004, 0x0005, 0x0006, 0x0007, 0x0008, 0x0009, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000
},
- { /* page 273, index 41 */
+ { /* page 273, index 42 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -16978,7 +17332,7 @@ static const gunichar attr_data[][256] = {
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000
},
- { /* page 274, index 42 */
+ { /* page 274, index 43 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -17009,7 +17363,7 @@ static const gunichar attr_data[][256] = {
0x0003, 0x0004, 0x0005, 0x0006, 0x0007, 0x0008, 0x0009, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000
},
- { /* page 276, index 43 */
+ { /* page 276, index 44 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -17040,7 +17394,7 @@ static const gunichar attr_data[][256] = {
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000
},
- { /* page 278, index 44 */
+ { /* page 278, index 45 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -17071,7 +17425,7 @@ static const gunichar attr_data[][256] = {
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000
},
- { /* page 279, index 45 */
+ { /* page 279, index 46 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -17102,7 +17456,7 @@ static const gunichar attr_data[][256] = {
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000
},
- { /* page 280, index 46 */
+ { /* page 280, index 47 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -17134,7 +17488,7 @@ static const gunichar attr_data[][256] = {
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000
},
- { /* page 281, index 47 */
+ { /* page 281, index 48 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -17165,7 +17519,7 @@ static const gunichar attr_data[][256] = {
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000
},
- { /* page 284, index 48 */
+ { /* page 284, index 49 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -17196,7 +17550,7 @@ static const gunichar attr_data[][256] = {
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000
},
- { /* page 285, index 49 */
+ { /* page 285, index 50 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -17227,7 +17581,7 @@ static const gunichar attr_data[][256] = {
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000
},
- { /* page 362, index 50 */
+ { /* page 362, index 51 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -17249,8 +17603,8 @@ static const gunichar attr_data[][256] = {
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005,
+ 0x0006, 0x0007, 0x0008, 0x0009, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -17258,7 +17612,7 @@ static const gunichar attr_data[][256] = {
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000
},
- { /* page 363, index 51 */
+ { /* page 363, index 52 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -17289,7 +17643,7 @@ static const gunichar attr_data[][256] = {
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000
},
- { /* page 366, index 52 */
+ { /* page 366, index 53 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -17321,7 +17675,7 @@ static const gunichar attr_data[][256] = {
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000
},
- { /* page 471, index 53 */
+ { /* page 471, index 54 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -17352,7 +17706,7 @@ static const gunichar attr_data[][256] = {
0x0007, 0x0008, 0x0009, 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005,
0x0006, 0x0007, 0x0008, 0x0009
},
- { /* page 481, index 54 */
+ { /* page 481, index 55 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -17383,7 +17737,7 @@ static const gunichar attr_data[][256] = {
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000
},
- { /* page 482, index 55 */
+ { /* page 482, index 56 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -17414,7 +17768,7 @@ static const gunichar attr_data[][256] = {
0x0003, 0x0004, 0x0005, 0x0006, 0x0007, 0x0008, 0x0009, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000
},
- { /* page 489, index 56 */
+ { /* page 489, index 57 */
0x1e922, 0x1e923, 0x1e924, 0x1e925, 0x1e926, 0x1e927, 0x1e928, 0x1e929,
0x1e92a, 0x1e92b, 0x1e92c, 0x1e92d, 0x1e92e, 0x1e92f, 0x1e930, 0x1e931,
0x1e932, 0x1e933, 0x1e934, 0x1e935, 0x1e936, 0x1e937, 0x1e938, 0x1e939,
@@ -17446,7 +17800,7 @@ static const gunichar attr_data[][256] = {
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000
},
- { /* page 507, index 57 */
+ { /* page 507, index 58 */
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -17742,31 +18096,31 @@ static const gint16 attr_table_part1[788] = {
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
37 /* page 260 */,
+ 38 /* page 261 */,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
- 0x0000 + G_UNICODE_MAX_TABLE_INDEX,
- 38 /* page 268 */,
- 39 /* page 269 */,
+ 39 /* page 268 */,
+ 40 /* page 269 */,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
- 40 /* page 272 */,
- 41 /* page 273 */,
- 42 /* page 274 */,
+ 41 /* page 272 */,
+ 42 /* page 273 */,
+ 43 /* page 274 */,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
- 43 /* page 276 */,
+ 44 /* page 276 */,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
- 44 /* page 278 */,
- 45 /* page 279 */,
- 46 /* page 280 */,
- 47 /* page 281 */,
+ 45 /* page 278 */,
+ 46 /* page 279 */,
+ 47 /* page 280 */,
+ 48 /* page 281 */,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
- 48 /* page 284 */,
- 49 /* page 285 */,
+ 49 /* page 284 */,
+ 50 /* page 285 */,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
@@ -17843,11 +18197,11 @@ static const gint16 attr_table_part1[788] = {
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
- 50 /* page 362 */,
- 51 /* page 363 */,
+ 51 /* page 362 */,
+ 52 /* page 363 */,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
- 52 /* page 366 */,
+ 53 /* page 366 */,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
@@ -17952,7 +18306,7 @@ static const gint16 attr_table_part1[788] = {
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
- 53 /* page 471 */,
+ 54 /* page 471 */,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
@@ -17962,15 +18316,15 @@ static const gint16 attr_table_part1[788] = {
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
- 54 /* page 481 */,
- 55 /* page 482 */,
+ 55 /* page 481 */,
+ 56 /* page 482 */,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
- 56 /* page 489 */,
+ 57 /* page 489 */,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
@@ -17988,7 +18342,7 @@ static const gint16 attr_table_part1[788] = {
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
- 57 /* page 507 */,
+ 58 /* page 507 */,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
0x0000 + G_UNICODE_MAX_TABLE_INDEX,
@@ -19524,7 +19878,10 @@ static const struct Interval g_unicode_width_table_wide[] = {
{0x17000, 0x187F7},
{0x18800, 0x18CD5},
{0x18D00, 0x18D08},
-{0x1B000, 0x1B11E},
+{0x1AFF0, 0x1AFF3},
+{0x1AFF5, 0x1AFFB},
+{0x1AFFD, 0x1AFFE},
+{0x1B000, 0x1B122},
{0x1B150, 0x1B152},
{0x1B164, 0x1B167},
{0x1B170, 0x1B2FB},
@@ -19559,21 +19916,23 @@ static const struct Interval g_unicode_width_table_wide[] = {
{0x1F6CC, 0x1F6CC},
{0x1F6D0, 0x1F6D2},
{0x1F6D5, 0x1F6D7},
+{0x1F6DD, 0x1F6DF},
{0x1F6EB, 0x1F6EC},
{0x1F6F4, 0x1F6FC},
{0x1F7E0, 0x1F7EB},
+{0x1F7F0, 0x1F7F0},
{0x1F90C, 0x1F93A},
{0x1F93C, 0x1F945},
-{0x1F947, 0x1F978},
-{0x1F97A, 0x1F9CB},
-{0x1F9CD, 0x1F9FF},
+{0x1F947, 0x1F9FF},
{0x1FA70, 0x1FA74},
-{0x1FA78, 0x1FA7A},
+{0x1FA78, 0x1FA7C},
{0x1FA80, 0x1FA86},
-{0x1FA90, 0x1FAA8},
-{0x1FAB0, 0x1FAB6},
-{0x1FAC0, 0x1FAC2},
-{0x1FAD0, 0x1FAD6},
+{0x1FA90, 0x1FAAC},
+{0x1FAB0, 0x1FABA},
+{0x1FAC0, 0x1FAC5},
+{0x1FAD0, 0x1FAD9},
+{0x1FAE0, 0x1FAE7},
+{0x1FAF0, 0x1FAF6},
{0x20000, 0x2FFFD},
{0x30000, 0x3FFFD},
};
diff --git a/glib/gunicode.h b/glib/gunicode.h
index f2ad3ca86..15972a68e 100644
--- a/glib/gunicode.h
+++ b/glib/gunicode.h
@@ -430,6 +430,12 @@ typedef enum
* @G_UNICODE_SCRIPT_DIVES_AKURU: Dives Akuru. Since: 2.66
* @G_UNICODE_SCRIPT_KHITAN_SMALL_SCRIPT: Khitan small script. Since: 2.66
* @G_UNICODE_SCRIPT_YEZIDI: Yezidi. Since: 2.66
+ * @G_UNICODE_SCRIPT_CYPRO_MINOAN: Cypro-Minoan. Since: 2.72
+ * @G_UNICODE_SCRIPT_OLD_UYGHUR: Old Uyghur. Since: 2.72
+ * @G_UNICODE_SCRIPT_TANGSA: Tangsa. Since: 2.72
+ * @G_UNICODE_SCRIPT_TOTO: Toto. Since: 2.72
+ * @G_UNICODE_SCRIPT_VITHKUQI: Vithkuqi. Since: 2.72
+ * @G_UNICODE_SCRIPT_MATH: Mathematical notation. Since: 2.72
*
* The #GUnicodeScript enumeration identifies different writing
* systems. The values correspond to the names as defined in the
@@ -627,7 +633,17 @@ typedef enum
G_UNICODE_SCRIPT_CHORASMIAN, /* Chrs */
G_UNICODE_SCRIPT_DIVES_AKURU, /* Diak */
G_UNICODE_SCRIPT_KHITAN_SMALL_SCRIPT, /* Kits */
- G_UNICODE_SCRIPT_YEZIDI /* Yezi */
+ G_UNICODE_SCRIPT_YEZIDI, /* Yezi */
+
+ /* Unicode 14.0 additions */
+ G_UNICODE_SCRIPT_CYPRO_MINOAN, /* Cpmn */
+ G_UNICODE_SCRIPT_OLD_UYGHUR, /* Ougr */
+ G_UNICODE_SCRIPT_TANGSA, /* Tnsa */
+ G_UNICODE_SCRIPT_TOTO, /* Toto */
+ G_UNICODE_SCRIPT_VITHKUQI, /* Vith */
+
+ /* not really a Unicode script, but part of ISO 15924 */
+ G_UNICODE_SCRIPT_MATH, /* Zmth */
} GUnicodeScript;
GLIB_AVAILABLE_IN_ALL
diff --git a/glib/gunicollate.c b/glib/gunicollate.c
index dfed1041d..3f24f98b1 100644
--- a/glib/gunicollate.c
+++ b/glib/gunicollate.c
@@ -71,6 +71,10 @@ msc_strxfrm_wrapper (char *string1,
* compare the keys with strcmp() when sorting instead of sorting
* the original strings.
*
+ * If the two strings are not comparable due to being in different collation
+ * sequences, the result is undefined. This can happen if the strings are in
+ * different language scripts, for example.
+ *
* Returns: < 0 if @str1 compares before @str2,
* 0 if they compare equal, > 0 if @str1 compares after @str2.
**/
@@ -415,7 +419,7 @@ g_utf8_collate_key (const gchar *str,
return result;
#else
- gsize xfrm_len;
+ gsize xfrm_len = 0;
const gchar *charset;
gchar *str_norm;
diff --git a/glib/gunidecomp.h b/glib/gunidecomp.h
index 2b1028625..ed64c4843 100644
--- a/glib/gunidecomp.h
+++ b/glib/gunidecomp.h
@@ -93,12 +93,12 @@ static const guchar cclass_data[][256] = {
0, 0, 0, 0, 0, 0, 0, 220, 220, 220, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 230, 220, 220, 220, 230, 230, 230, 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 230, 230, 230, 230, 230, 230, 230,
- 230, 230, 230, 230, 230, 230, 230, 0, 220, 230, 230, 220, 230, 230, 220,
- 230, 230, 230, 220, 220, 220, 27, 28, 29, 230, 230, 230, 220, 230, 230,
- 220, 220, 230, 230, 230, 230, 230
+ 0, 0, 0, 0, 0, 0, 0, 230, 230, 230, 230, 230, 220, 220, 220, 220, 220,
+ 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 0,
+ 220, 230, 230, 220, 230, 230, 220, 230, 230, 230, 220, 220, 220, 27, 28,
+ 29, 230, 230, 230, 220, 230, 230, 220, 220, 230, 230, 230, 230, 230
},
{ /* page 9, index 6 */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -142,7 +142,7 @@ static const guchar cclass_data[][256] = {
{ /* page 12, index 9 */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 84, 91, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -219,7 +219,7 @@ static const guchar cclass_data[][256] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
},
{ /* page 23, index 15 */
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -266,10 +266,10 @@ static const guchar cclass_data[][256] = {
230, 230, 230, 230, 230, 230, 0, 0, 220, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 230, 230, 230, 230, 230, 220, 220,
- 220, 220, 220, 220, 230, 230, 220, 0, 220, 220, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 220, 220, 220, 220, 230, 230, 220, 0, 220, 220, 230, 230, 220, 220, 230,
+ 230, 230, 230, 230, 220, 230, 230, 230, 230, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
},
{ /* page 27, index 19 */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -311,7 +311,7 @@ static const guchar cclass_data[][256] = {
214, 220, 202, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230,
230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230,
230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 232, 228,
- 228, 220, 0, 230, 233, 220, 230, 220
+ 228, 220, 218, 230, 233, 220, 230, 220
},
{ /* page 32, index 22 */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -545,19 +545,20 @@ static const guchar cclass_data[][256] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220,
220, 230, 230, 230, 220, 230, 220, 220, 220, 220, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 230, 220, 230, 220, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+ 0
},
{ /* page 272, index 40 */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 7, 0, 0, 0, 0, 0,
@@ -835,7 +836,7 @@ static const guchar cclass_data[][256] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 230, 230,
230, 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
@@ -4778,6 +4779,9 @@ static const decomposition decomp_table[] =
{ 0xa69c, G_UNICODE_NOT_PRESENT_OFFSET, 10883 },
{ 0xa69d, G_UNICODE_NOT_PRESENT_OFFSET, 10886 },
{ 0xa770, G_UNICODE_NOT_PRESENT_OFFSET, 10889 },
+ { 0xa7f2, G_UNICODE_NOT_PRESENT_OFFSET, 5292 },
+ { 0xa7f3, G_UNICODE_NOT_PRESENT_OFFSET, 5336 },
+ { 0xa7f4, G_UNICODE_NOT_PRESENT_OFFSET, 5319 },
{ 0xa7f8, G_UNICODE_NOT_PRESENT_OFFSET, 10893 },
{ 0xa7f9, G_UNICODE_NOT_PRESENT_OFFSET, 10896 },
{ 0xab5c, G_UNICODE_NOT_PRESENT_OFFSET, 10899 },
@@ -6324,32 +6328,88 @@ static const decomposition decomp_table[] =
{ 0xffec, G_UNICODE_NOT_PRESENT_OFFSET, 14995 },
{ 0xffed, G_UNICODE_NOT_PRESENT_OFFSET, 14999 },
{ 0xffee, G_UNICODE_NOT_PRESENT_OFFSET, 15003 },
- { 0x1109a, 15007, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1109c, 15016, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x110ab, 15025, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1112e, 15034, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1112f, 15043, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1134b, 15052, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1134c, 15061, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x114bb, 15070, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x114bc, 15079, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x114be, 15088, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x115ba, 15097, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x115bb, 15106, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x11938, 15115, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1d15e, 15124, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1d15f, 15133, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1d160, 15142, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1d161, 15155, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1d162, 15168, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1d163, 15181, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1d164, 15194, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1d1bb, 15207, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1d1bc, 15216, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1d1bd, 15225, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1d1be, 15238, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1d1bf, 15251, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x1d1c0, 15264, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x10781, G_UNICODE_NOT_PRESENT_OFFSET, 15007 },
+ { 0x10782, G_UNICODE_NOT_PRESENT_OFFSET, 15010 },
+ { 0x10783, G_UNICODE_NOT_PRESENT_OFFSET, 15013 },
+ { 0x10784, G_UNICODE_NOT_PRESENT_OFFSET, 15016 },
+ { 0x10785, G_UNICODE_NOT_PRESENT_OFFSET, 15019 },
+ { 0x10787, G_UNICODE_NOT_PRESENT_OFFSET, 15022 },
+ { 0x10788, G_UNICODE_NOT_PRESENT_OFFSET, 15025 },
+ { 0x10789, G_UNICODE_NOT_PRESENT_OFFSET, 15029 },
+ { 0x1078a, G_UNICODE_NOT_PRESENT_OFFSET, 15032 },
+ { 0x1078b, G_UNICODE_NOT_PRESENT_OFFSET, 15035 },
+ { 0x1078c, G_UNICODE_NOT_PRESENT_OFFSET, 15038 },
+ { 0x1078d, G_UNICODE_NOT_PRESENT_OFFSET, 15041 },
+ { 0x1078e, G_UNICODE_NOT_PRESENT_OFFSET, 15045 },
+ { 0x1078f, G_UNICODE_NOT_PRESENT_OFFSET, 15048 },
+ { 0x10790, G_UNICODE_NOT_PRESENT_OFFSET, 15051 },
+ { 0x10791, G_UNICODE_NOT_PRESENT_OFFSET, 15054 },
+ { 0x10792, G_UNICODE_NOT_PRESENT_OFFSET, 15057 },
+ { 0x10793, G_UNICODE_NOT_PRESENT_OFFSET, 15060 },
+ { 0x10794, G_UNICODE_NOT_PRESENT_OFFSET, 15063 },
+ { 0x10795, G_UNICODE_NOT_PRESENT_OFFSET, 5313 },
+ { 0x10796, G_UNICODE_NOT_PRESENT_OFFSET, 15066 },
+ { 0x10797, G_UNICODE_NOT_PRESENT_OFFSET, 15069 },
+ { 0x10798, G_UNICODE_NOT_PRESENT_OFFSET, 15072 },
+ { 0x10799, G_UNICODE_NOT_PRESENT_OFFSET, 15075 },
+ { 0x1079a, G_UNICODE_NOT_PRESENT_OFFSET, 15078 },
+ { 0x1079b, G_UNICODE_NOT_PRESENT_OFFSET, 15081 },
+ { 0x1079c, G_UNICODE_NOT_PRESENT_OFFSET, 15084 },
+ { 0x1079d, G_UNICODE_NOT_PRESENT_OFFSET, 15089 },
+ { 0x1079e, G_UNICODE_NOT_PRESENT_OFFSET, 15093 },
+ { 0x1079f, G_UNICODE_NOT_PRESENT_OFFSET, 15096 },
+ { 0x107a0, G_UNICODE_NOT_PRESENT_OFFSET, 15101 },
+ { 0x107a1, G_UNICODE_NOT_PRESENT_OFFSET, 15104 },
+ { 0x107a2, G_UNICODE_NOT_PRESENT_OFFSET, 15109 },
+ { 0x107a3, G_UNICODE_NOT_PRESENT_OFFSET, 15112 },
+ { 0x107a4, G_UNICODE_NOT_PRESENT_OFFSET, 15115 },
+ { 0x107a5, G_UNICODE_NOT_PRESENT_OFFSET, 6137 },
+ { 0x107a6, G_UNICODE_NOT_PRESENT_OFFSET, 15118 },
+ { 0x107a7, G_UNICODE_NOT_PRESENT_OFFSET, 15121 },
+ { 0x107a8, G_UNICODE_NOT_PRESENT_OFFSET, 15126 },
+ { 0x107a9, G_UNICODE_NOT_PRESENT_OFFSET, 15129 },
+ { 0x107aa, G_UNICODE_NOT_PRESENT_OFFSET, 15132 },
+ { 0x107ab, G_UNICODE_NOT_PRESENT_OFFSET, 15135 },
+ { 0x107ac, G_UNICODE_NOT_PRESENT_OFFSET, 15138 },
+ { 0x107ad, G_UNICODE_NOT_PRESENT_OFFSET, 15141 },
+ { 0x107ae, G_UNICODE_NOT_PRESENT_OFFSET, 15145 },
+ { 0x107af, G_UNICODE_NOT_PRESENT_OFFSET, 15148 },
+ { 0x107b0, G_UNICODE_NOT_PRESENT_OFFSET, 15151 },
+ { 0x107b2, G_UNICODE_NOT_PRESENT_OFFSET, 15155 },
+ { 0x107b3, G_UNICODE_NOT_PRESENT_OFFSET, 15158 },
+ { 0x107b4, G_UNICODE_NOT_PRESENT_OFFSET, 15161 },
+ { 0x107b5, G_UNICODE_NOT_PRESENT_OFFSET, 15164 },
+ { 0x107b6, G_UNICODE_NOT_PRESENT_OFFSET, 15167 },
+ { 0x107b7, G_UNICODE_NOT_PRESENT_OFFSET, 15170 },
+ { 0x107b8, G_UNICODE_NOT_PRESENT_OFFSET, 15173 },
+ { 0x107b9, G_UNICODE_NOT_PRESENT_OFFSET, 15176 },
+ { 0x107ba, G_UNICODE_NOT_PRESENT_OFFSET, 15181 },
+ { 0x1109a, 15186, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1109c, 15195, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x110ab, 15204, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1112e, 15213, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1112f, 15222, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1134b, 15231, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1134c, 15240, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x114bb, 15249, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x114bc, 15258, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x114be, 15267, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x115ba, 15276, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x115bb, 15285, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x11938, 15294, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1d15e, 15303, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1d15f, 15312, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1d160, 15321, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1d161, 15334, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1d162, 15347, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1d163, 15360, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1d164, 15373, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1d1bb, 15386, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1d1bc, 15395, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1d1bd, 15404, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1d1be, 15417, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1d1bf, 15430, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x1d1c0, 15443, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x1d400, G_UNICODE_NOT_PRESENT_OFFSET, 2309 },
{ 0x1d401, G_UNICODE_NOT_PRESENT_OFFSET, 2314 },
{ 0x1d402, G_UNICODE_NOT_PRESENT_OFFSET, 5292 },
@@ -7002,300 +7062,300 @@ static const decomposition decomp_table[] =
{ 0x1d6a1, G_UNICODE_NOT_PRESENT_OFFSET, 1222 },
{ 0x1d6a2, G_UNICODE_NOT_PRESENT_OFFSET, 1191 },
{ 0x1d6a3, G_UNICODE_NOT_PRESENT_OFFSET, 2526 },
- { 0x1d6a4, G_UNICODE_NOT_PRESENT_OFFSET, 15277 },
- { 0x1d6a5, G_UNICODE_NOT_PRESENT_OFFSET, 15280 },
- { 0x1d6a8, G_UNICODE_NOT_PRESENT_OFFSET, 15283 },
- { 0x1d6a9, G_UNICODE_NOT_PRESENT_OFFSET, 15286 },
+ { 0x1d6a4, G_UNICODE_NOT_PRESENT_OFFSET, 15456 },
+ { 0x1d6a5, G_UNICODE_NOT_PRESENT_OFFSET, 15459 },
+ { 0x1d6a8, G_UNICODE_NOT_PRESENT_OFFSET, 15462 },
+ { 0x1d6a9, G_UNICODE_NOT_PRESENT_OFFSET, 15465 },
{ 0x1d6aa, G_UNICODE_NOT_PRESENT_OFFSET, 5354 },
- { 0x1d6ab, G_UNICODE_NOT_PRESENT_OFFSET, 15289 },
- { 0x1d6ac, G_UNICODE_NOT_PRESENT_OFFSET, 15292 },
- { 0x1d6ad, G_UNICODE_NOT_PRESENT_OFFSET, 15295 },
- { 0x1d6ae, G_UNICODE_NOT_PRESENT_OFFSET, 15298 },
+ { 0x1d6ab, G_UNICODE_NOT_PRESENT_OFFSET, 15468 },
+ { 0x1d6ac, G_UNICODE_NOT_PRESENT_OFFSET, 15471 },
+ { 0x1d6ad, G_UNICODE_NOT_PRESENT_OFFSET, 15474 },
+ { 0x1d6ae, G_UNICODE_NOT_PRESENT_OFFSET, 15477 },
{ 0x1d6af, G_UNICODE_NOT_PRESENT_OFFSET, 1402 },
- { 0x1d6b0, G_UNICODE_NOT_PRESENT_OFFSET, 15301 },
- { 0x1d6b1, G_UNICODE_NOT_PRESENT_OFFSET, 15304 },
- { 0x1d6b2, G_UNICODE_NOT_PRESENT_OFFSET, 15307 },
- { 0x1d6b3, G_UNICODE_NOT_PRESENT_OFFSET, 15310 },
- { 0x1d6b4, G_UNICODE_NOT_PRESENT_OFFSET, 15313 },
- { 0x1d6b5, G_UNICODE_NOT_PRESENT_OFFSET, 15316 },
- { 0x1d6b6, G_UNICODE_NOT_PRESENT_OFFSET, 15319 },
+ { 0x1d6b0, G_UNICODE_NOT_PRESENT_OFFSET, 15480 },
+ { 0x1d6b1, G_UNICODE_NOT_PRESENT_OFFSET, 15483 },
+ { 0x1d6b2, G_UNICODE_NOT_PRESENT_OFFSET, 15486 },
+ { 0x1d6b3, G_UNICODE_NOT_PRESENT_OFFSET, 15489 },
+ { 0x1d6b4, G_UNICODE_NOT_PRESENT_OFFSET, 15492 },
+ { 0x1d6b5, G_UNICODE_NOT_PRESENT_OFFSET, 15495 },
+ { 0x1d6b6, G_UNICODE_NOT_PRESENT_OFFSET, 15498 },
{ 0x1d6b7, G_UNICODE_NOT_PRESENT_OFFSET, 5357 },
- { 0x1d6b8, G_UNICODE_NOT_PRESENT_OFFSET, 15322 },
+ { 0x1d6b8, G_UNICODE_NOT_PRESENT_OFFSET, 15501 },
{ 0x1d6b9, G_UNICODE_NOT_PRESENT_OFFSET, 1402 },
{ 0x1d6ba, G_UNICODE_NOT_PRESENT_OFFSET, 1408 },
- { 0x1d6bb, G_UNICODE_NOT_PRESENT_OFFSET, 15325 },
+ { 0x1d6bb, G_UNICODE_NOT_PRESENT_OFFSET, 15504 },
{ 0x1d6bc, G_UNICODE_NOT_PRESENT_OFFSET, 1374 },
- { 0x1d6bd, G_UNICODE_NOT_PRESENT_OFFSET, 15328 },
- { 0x1d6be, G_UNICODE_NOT_PRESENT_OFFSET, 15331 },
- { 0x1d6bf, G_UNICODE_NOT_PRESENT_OFFSET, 15334 },
+ { 0x1d6bd, G_UNICODE_NOT_PRESENT_OFFSET, 15507 },
+ { 0x1d6be, G_UNICODE_NOT_PRESENT_OFFSET, 15510 },
+ { 0x1d6bf, G_UNICODE_NOT_PRESENT_OFFSET, 15513 },
{ 0x1d6c0, G_UNICODE_NOT_PRESENT_OFFSET, 5333 },
- { 0x1d6c1, G_UNICODE_NOT_PRESENT_OFFSET, 15337 },
- { 0x1d6c2, G_UNICODE_NOT_PRESENT_OFFSET, 15341 },
+ { 0x1d6c1, G_UNICODE_NOT_PRESENT_OFFSET, 15516 },
+ { 0x1d6c2, G_UNICODE_NOT_PRESENT_OFFSET, 15520 },
{ 0x1d6c3, G_UNICODE_NOT_PRESENT_OFFSET, 1368 },
{ 0x1d6c4, G_UNICODE_NOT_PRESENT_OFFSET, 2418 },
{ 0x1d6c5, G_UNICODE_NOT_PRESENT_OFFSET, 2421 },
{ 0x1d6c6, G_UNICODE_NOT_PRESENT_OFFSET, 1405 },
- { 0x1d6c7, G_UNICODE_NOT_PRESENT_OFFSET, 15344 },
- { 0x1d6c8, G_UNICODE_NOT_PRESENT_OFFSET, 15347 },
+ { 0x1d6c7, G_UNICODE_NOT_PRESENT_OFFSET, 15523 },
+ { 0x1d6c8, G_UNICODE_NOT_PRESENT_OFFSET, 15526 },
{ 0x1d6c9, G_UNICODE_NOT_PRESENT_OFFSET, 1371 },
{ 0x1d6ca, G_UNICODE_NOT_PRESENT_OFFSET, 4860 },
{ 0x1d6cb, G_UNICODE_NOT_PRESENT_OFFSET, 1393 },
- { 0x1d6cc, G_UNICODE_NOT_PRESENT_OFFSET, 15350 },
+ { 0x1d6cc, G_UNICODE_NOT_PRESENT_OFFSET, 15529 },
{ 0x1d6cd, G_UNICODE_NOT_PRESENT_OFFSET, 20 },
- { 0x1d6ce, G_UNICODE_NOT_PRESENT_OFFSET, 15353 },
- { 0x1d6cf, G_UNICODE_NOT_PRESENT_OFFSET, 15356 },
- { 0x1d6d0, G_UNICODE_NOT_PRESENT_OFFSET, 15359 },
+ { 0x1d6ce, G_UNICODE_NOT_PRESENT_OFFSET, 15532 },
+ { 0x1d6cf, G_UNICODE_NOT_PRESENT_OFFSET, 15535 },
+ { 0x1d6d0, G_UNICODE_NOT_PRESENT_OFFSET, 15538 },
{ 0x1d6d1, G_UNICODE_NOT_PRESENT_OFFSET, 1390 },
{ 0x1d6d2, G_UNICODE_NOT_PRESENT_OFFSET, 1396 },
{ 0x1d6d3, G_UNICODE_NOT_PRESENT_OFFSET, 1399 },
- { 0x1d6d4, G_UNICODE_NOT_PRESENT_OFFSET, 15362 },
- { 0x1d6d5, G_UNICODE_NOT_PRESENT_OFFSET, 15365 },
- { 0x1d6d6, G_UNICODE_NOT_PRESENT_OFFSET, 15368 },
+ { 0x1d6d4, G_UNICODE_NOT_PRESENT_OFFSET, 15541 },
+ { 0x1d6d5, G_UNICODE_NOT_PRESENT_OFFSET, 15544 },
+ { 0x1d6d6, G_UNICODE_NOT_PRESENT_OFFSET, 15547 },
{ 0x1d6d7, G_UNICODE_NOT_PRESENT_OFFSET, 1387 },
{ 0x1d6d8, G_UNICODE_NOT_PRESENT_OFFSET, 2424 },
- { 0x1d6d9, G_UNICODE_NOT_PRESENT_OFFSET, 15371 },
- { 0x1d6da, G_UNICODE_NOT_PRESENT_OFFSET, 15374 },
- { 0x1d6db, G_UNICODE_NOT_PRESENT_OFFSET, 15377 },
+ { 0x1d6d9, G_UNICODE_NOT_PRESENT_OFFSET, 15550 },
+ { 0x1d6da, G_UNICODE_NOT_PRESENT_OFFSET, 15553 },
+ { 0x1d6db, G_UNICODE_NOT_PRESENT_OFFSET, 15556 },
{ 0x1d6dc, G_UNICODE_NOT_PRESENT_OFFSET, 1405 },
{ 0x1d6dd, G_UNICODE_NOT_PRESENT_OFFSET, 1371 },
{ 0x1d6de, G_UNICODE_NOT_PRESENT_OFFSET, 1393 },
{ 0x1d6df, G_UNICODE_NOT_PRESENT_OFFSET, 1387 },
{ 0x1d6e0, G_UNICODE_NOT_PRESENT_OFFSET, 1396 },
{ 0x1d6e1, G_UNICODE_NOT_PRESENT_OFFSET, 1390 },
- { 0x1d6e2, G_UNICODE_NOT_PRESENT_OFFSET, 15283 },
- { 0x1d6e3, G_UNICODE_NOT_PRESENT_OFFSET, 15286 },
+ { 0x1d6e2, G_UNICODE_NOT_PRESENT_OFFSET, 15462 },
+ { 0x1d6e3, G_UNICODE_NOT_PRESENT_OFFSET, 15465 },
{ 0x1d6e4, G_UNICODE_NOT_PRESENT_OFFSET, 5354 },
- { 0x1d6e5, G_UNICODE_NOT_PRESENT_OFFSET, 15289 },
- { 0x1d6e6, G_UNICODE_NOT_PRESENT_OFFSET, 15292 },
- { 0x1d6e7, G_UNICODE_NOT_PRESENT_OFFSET, 15295 },
- { 0x1d6e8, G_UNICODE_NOT_PRESENT_OFFSET, 15298 },
+ { 0x1d6e5, G_UNICODE_NOT_PRESENT_OFFSET, 15468 },
+ { 0x1d6e6, G_UNICODE_NOT_PRESENT_OFFSET, 15471 },
+ { 0x1d6e7, G_UNICODE_NOT_PRESENT_OFFSET, 15474 },
+ { 0x1d6e8, G_UNICODE_NOT_PRESENT_OFFSET, 15477 },
{ 0x1d6e9, G_UNICODE_NOT_PRESENT_OFFSET, 1402 },
- { 0x1d6ea, G_UNICODE_NOT_PRESENT_OFFSET, 15301 },
- { 0x1d6eb, G_UNICODE_NOT_PRESENT_OFFSET, 15304 },
- { 0x1d6ec, G_UNICODE_NOT_PRESENT_OFFSET, 15307 },
- { 0x1d6ed, G_UNICODE_NOT_PRESENT_OFFSET, 15310 },
- { 0x1d6ee, G_UNICODE_NOT_PRESENT_OFFSET, 15313 },
- { 0x1d6ef, G_UNICODE_NOT_PRESENT_OFFSET, 15316 },
- { 0x1d6f0, G_UNICODE_NOT_PRESENT_OFFSET, 15319 },
+ { 0x1d6ea, G_UNICODE_NOT_PRESENT_OFFSET, 15480 },
+ { 0x1d6eb, G_UNICODE_NOT_PRESENT_OFFSET, 15483 },
+ { 0x1d6ec, G_UNICODE_NOT_PRESENT_OFFSET, 15486 },
+ { 0x1d6ed, G_UNICODE_NOT_PRESENT_OFFSET, 15489 },
+ { 0x1d6ee, G_UNICODE_NOT_PRESENT_OFFSET, 15492 },
+ { 0x1d6ef, G_UNICODE_NOT_PRESENT_OFFSET, 15495 },
+ { 0x1d6f0, G_UNICODE_NOT_PRESENT_OFFSET, 15498 },
{ 0x1d6f1, G_UNICODE_NOT_PRESENT_OFFSET, 5357 },
- { 0x1d6f2, G_UNICODE_NOT_PRESENT_OFFSET, 15322 },
+ { 0x1d6f2, G_UNICODE_NOT_PRESENT_OFFSET, 15501 },
{ 0x1d6f3, G_UNICODE_NOT_PRESENT_OFFSET, 1402 },
{ 0x1d6f4, G_UNICODE_NOT_PRESENT_OFFSET, 1408 },
- { 0x1d6f5, G_UNICODE_NOT_PRESENT_OFFSET, 15325 },
+ { 0x1d6f5, G_UNICODE_NOT_PRESENT_OFFSET, 15504 },
{ 0x1d6f6, G_UNICODE_NOT_PRESENT_OFFSET, 1374 },
- { 0x1d6f7, G_UNICODE_NOT_PRESENT_OFFSET, 15328 },
- { 0x1d6f8, G_UNICODE_NOT_PRESENT_OFFSET, 15331 },
- { 0x1d6f9, G_UNICODE_NOT_PRESENT_OFFSET, 15334 },
+ { 0x1d6f7, G_UNICODE_NOT_PRESENT_OFFSET, 15507 },
+ { 0x1d6f8, G_UNICODE_NOT_PRESENT_OFFSET, 15510 },
+ { 0x1d6f9, G_UNICODE_NOT_PRESENT_OFFSET, 15513 },
{ 0x1d6fa, G_UNICODE_NOT_PRESENT_OFFSET, 5333 },
- { 0x1d6fb, G_UNICODE_NOT_PRESENT_OFFSET, 15337 },
- { 0x1d6fc, G_UNICODE_NOT_PRESENT_OFFSET, 15341 },
+ { 0x1d6fb, G_UNICODE_NOT_PRESENT_OFFSET, 15516 },
+ { 0x1d6fc, G_UNICODE_NOT_PRESENT_OFFSET, 15520 },
{ 0x1d6fd, G_UNICODE_NOT_PRESENT_OFFSET, 1368 },
{ 0x1d6fe, G_UNICODE_NOT_PRESENT_OFFSET, 2418 },
{ 0x1d6ff, G_UNICODE_NOT_PRESENT_OFFSET, 2421 },
{ 0x1d700, G_UNICODE_NOT_PRESENT_OFFSET, 1405 },
- { 0x1d701, G_UNICODE_NOT_PRESENT_OFFSET, 15344 },
- { 0x1d702, G_UNICODE_NOT_PRESENT_OFFSET, 15347 },
+ { 0x1d701, G_UNICODE_NOT_PRESENT_OFFSET, 15523 },
+ { 0x1d702, G_UNICODE_NOT_PRESENT_OFFSET, 15526 },
{ 0x1d703, G_UNICODE_NOT_PRESENT_OFFSET, 1371 },
{ 0x1d704, G_UNICODE_NOT_PRESENT_OFFSET, 4860 },
{ 0x1d705, G_UNICODE_NOT_PRESENT_OFFSET, 1393 },
- { 0x1d706, G_UNICODE_NOT_PRESENT_OFFSET, 15350 },
+ { 0x1d706, G_UNICODE_NOT_PRESENT_OFFSET, 15529 },
{ 0x1d707, G_UNICODE_NOT_PRESENT_OFFSET, 20 },
- { 0x1d708, G_UNICODE_NOT_PRESENT_OFFSET, 15353 },
- { 0x1d709, G_UNICODE_NOT_PRESENT_OFFSET, 15356 },
- { 0x1d70a, G_UNICODE_NOT_PRESENT_OFFSET, 15359 },
+ { 0x1d708, G_UNICODE_NOT_PRESENT_OFFSET, 15532 },
+ { 0x1d709, G_UNICODE_NOT_PRESENT_OFFSET, 15535 },
+ { 0x1d70a, G_UNICODE_NOT_PRESENT_OFFSET, 15538 },
{ 0x1d70b, G_UNICODE_NOT_PRESENT_OFFSET, 1390 },
{ 0x1d70c, G_UNICODE_NOT_PRESENT_OFFSET, 1396 },
{ 0x1d70d, G_UNICODE_NOT_PRESENT_OFFSET, 1399 },
- { 0x1d70e, G_UNICODE_NOT_PRESENT_OFFSET, 15362 },
- { 0x1d70f, G_UNICODE_NOT_PRESENT_OFFSET, 15365 },
- { 0x1d710, G_UNICODE_NOT_PRESENT_OFFSET, 15368 },
+ { 0x1d70e, G_UNICODE_NOT_PRESENT_OFFSET, 15541 },
+ { 0x1d70f, G_UNICODE_NOT_PRESENT_OFFSET, 15544 },
+ { 0x1d710, G_UNICODE_NOT_PRESENT_OFFSET, 15547 },
{ 0x1d711, G_UNICODE_NOT_PRESENT_OFFSET, 1387 },
{ 0x1d712, G_UNICODE_NOT_PRESENT_OFFSET, 2424 },
- { 0x1d713, G_UNICODE_NOT_PRESENT_OFFSET, 15371 },
- { 0x1d714, G_UNICODE_NOT_PRESENT_OFFSET, 15374 },
- { 0x1d715, G_UNICODE_NOT_PRESENT_OFFSET, 15377 },
+ { 0x1d713, G_UNICODE_NOT_PRESENT_OFFSET, 15550 },
+ { 0x1d714, G_UNICODE_NOT_PRESENT_OFFSET, 15553 },
+ { 0x1d715, G_UNICODE_NOT_PRESENT_OFFSET, 15556 },
{ 0x1d716, G_UNICODE_NOT_PRESENT_OFFSET, 1405 },
{ 0x1d717, G_UNICODE_NOT_PRESENT_OFFSET, 1371 },
{ 0x1d718, G_UNICODE_NOT_PRESENT_OFFSET, 1393 },
{ 0x1d719, G_UNICODE_NOT_PRESENT_OFFSET, 1387 },
{ 0x1d71a, G_UNICODE_NOT_PRESENT_OFFSET, 1396 },
{ 0x1d71b, G_UNICODE_NOT_PRESENT_OFFSET, 1390 },
- { 0x1d71c, G_UNICODE_NOT_PRESENT_OFFSET, 15283 },
- { 0x1d71d, G_UNICODE_NOT_PRESENT_OFFSET, 15286 },
+ { 0x1d71c, G_UNICODE_NOT_PRESENT_OFFSET, 15462 },
+ { 0x1d71d, G_UNICODE_NOT_PRESENT_OFFSET, 15465 },
{ 0x1d71e, G_UNICODE_NOT_PRESENT_OFFSET, 5354 },
- { 0x1d71f, G_UNICODE_NOT_PRESENT_OFFSET, 15289 },
- { 0x1d720, G_UNICODE_NOT_PRESENT_OFFSET, 15292 },
- { 0x1d721, G_UNICODE_NOT_PRESENT_OFFSET, 15295 },
- { 0x1d722, G_UNICODE_NOT_PRESENT_OFFSET, 15298 },
+ { 0x1d71f, G_UNICODE_NOT_PRESENT_OFFSET, 15468 },
+ { 0x1d720, G_UNICODE_NOT_PRESENT_OFFSET, 15471 },
+ { 0x1d721, G_UNICODE_NOT_PRESENT_OFFSET, 15474 },
+ { 0x1d722, G_UNICODE_NOT_PRESENT_OFFSET, 15477 },
{ 0x1d723, G_UNICODE_NOT_PRESENT_OFFSET, 1402 },
- { 0x1d724, G_UNICODE_NOT_PRESENT_OFFSET, 15301 },
- { 0x1d725, G_UNICODE_NOT_PRESENT_OFFSET, 15304 },
- { 0x1d726, G_UNICODE_NOT_PRESENT_OFFSET, 15307 },
- { 0x1d727, G_UNICODE_NOT_PRESENT_OFFSET, 15310 },
- { 0x1d728, G_UNICODE_NOT_PRESENT_OFFSET, 15313 },
- { 0x1d729, G_UNICODE_NOT_PRESENT_OFFSET, 15316 },
- { 0x1d72a, G_UNICODE_NOT_PRESENT_OFFSET, 15319 },
+ { 0x1d724, G_UNICODE_NOT_PRESENT_OFFSET, 15480 },
+ { 0x1d725, G_UNICODE_NOT_PRESENT_OFFSET, 15483 },
+ { 0x1d726, G_UNICODE_NOT_PRESENT_OFFSET, 15486 },
+ { 0x1d727, G_UNICODE_NOT_PRESENT_OFFSET, 15489 },
+ { 0x1d728, G_UNICODE_NOT_PRESENT_OFFSET, 15492 },
+ { 0x1d729, G_UNICODE_NOT_PRESENT_OFFSET, 15495 },
+ { 0x1d72a, G_UNICODE_NOT_PRESENT_OFFSET, 15498 },
{ 0x1d72b, G_UNICODE_NOT_PRESENT_OFFSET, 5357 },
- { 0x1d72c, G_UNICODE_NOT_PRESENT_OFFSET, 15322 },
+ { 0x1d72c, G_UNICODE_NOT_PRESENT_OFFSET, 15501 },
{ 0x1d72d, G_UNICODE_NOT_PRESENT_OFFSET, 1402 },
{ 0x1d72e, G_UNICODE_NOT_PRESENT_OFFSET, 1408 },
- { 0x1d72f, G_UNICODE_NOT_PRESENT_OFFSET, 15325 },
+ { 0x1d72f, G_UNICODE_NOT_PRESENT_OFFSET, 15504 },
{ 0x1d730, G_UNICODE_NOT_PRESENT_OFFSET, 1374 },
- { 0x1d731, G_UNICODE_NOT_PRESENT_OFFSET, 15328 },
- { 0x1d732, G_UNICODE_NOT_PRESENT_OFFSET, 15331 },
- { 0x1d733, G_UNICODE_NOT_PRESENT_OFFSET, 15334 },
+ { 0x1d731, G_UNICODE_NOT_PRESENT_OFFSET, 15507 },
+ { 0x1d732, G_UNICODE_NOT_PRESENT_OFFSET, 15510 },
+ { 0x1d733, G_UNICODE_NOT_PRESENT_OFFSET, 15513 },
{ 0x1d734, G_UNICODE_NOT_PRESENT_OFFSET, 5333 },
- { 0x1d735, G_UNICODE_NOT_PRESENT_OFFSET, 15337 },
- { 0x1d736, G_UNICODE_NOT_PRESENT_OFFSET, 15341 },
+ { 0x1d735, G_UNICODE_NOT_PRESENT_OFFSET, 15516 },
+ { 0x1d736, G_UNICODE_NOT_PRESENT_OFFSET, 15520 },
{ 0x1d737, G_UNICODE_NOT_PRESENT_OFFSET, 1368 },
{ 0x1d738, G_UNICODE_NOT_PRESENT_OFFSET, 2418 },
{ 0x1d739, G_UNICODE_NOT_PRESENT_OFFSET, 2421 },
{ 0x1d73a, G_UNICODE_NOT_PRESENT_OFFSET, 1405 },
- { 0x1d73b, G_UNICODE_NOT_PRESENT_OFFSET, 15344 },
- { 0x1d73c, G_UNICODE_NOT_PRESENT_OFFSET, 15347 },
+ { 0x1d73b, G_UNICODE_NOT_PRESENT_OFFSET, 15523 },
+ { 0x1d73c, G_UNICODE_NOT_PRESENT_OFFSET, 15526 },
{ 0x1d73d, G_UNICODE_NOT_PRESENT_OFFSET, 1371 },
{ 0x1d73e, G_UNICODE_NOT_PRESENT_OFFSET, 4860 },
{ 0x1d73f, G_UNICODE_NOT_PRESENT_OFFSET, 1393 },
- { 0x1d740, G_UNICODE_NOT_PRESENT_OFFSET, 15350 },
+ { 0x1d740, G_UNICODE_NOT_PRESENT_OFFSET, 15529 },
{ 0x1d741, G_UNICODE_NOT_PRESENT_OFFSET, 20 },
- { 0x1d742, G_UNICODE_NOT_PRESENT_OFFSET, 15353 },
- { 0x1d743, G_UNICODE_NOT_PRESENT_OFFSET, 15356 },
- { 0x1d744, G_UNICODE_NOT_PRESENT_OFFSET, 15359 },
+ { 0x1d742, G_UNICODE_NOT_PRESENT_OFFSET, 15532 },
+ { 0x1d743, G_UNICODE_NOT_PRESENT_OFFSET, 15535 },
+ { 0x1d744, G_UNICODE_NOT_PRESENT_OFFSET, 15538 },
{ 0x1d745, G_UNICODE_NOT_PRESENT_OFFSET, 1390 },
{ 0x1d746, G_UNICODE_NOT_PRESENT_OFFSET, 1396 },
{ 0x1d747, G_UNICODE_NOT_PRESENT_OFFSET, 1399 },
- { 0x1d748, G_UNICODE_NOT_PRESENT_OFFSET, 15362 },
- { 0x1d749, G_UNICODE_NOT_PRESENT_OFFSET, 15365 },
- { 0x1d74a, G_UNICODE_NOT_PRESENT_OFFSET, 15368 },
+ { 0x1d748, G_UNICODE_NOT_PRESENT_OFFSET, 15541 },
+ { 0x1d749, G_UNICODE_NOT_PRESENT_OFFSET, 15544 },
+ { 0x1d74a, G_UNICODE_NOT_PRESENT_OFFSET, 15547 },
{ 0x1d74b, G_UNICODE_NOT_PRESENT_OFFSET, 1387 },
{ 0x1d74c, G_UNICODE_NOT_PRESENT_OFFSET, 2424 },
- { 0x1d74d, G_UNICODE_NOT_PRESENT_OFFSET, 15371 },
- { 0x1d74e, G_UNICODE_NOT_PRESENT_OFFSET, 15374 },
- { 0x1d74f, G_UNICODE_NOT_PRESENT_OFFSET, 15377 },
+ { 0x1d74d, G_UNICODE_NOT_PRESENT_OFFSET, 15550 },
+ { 0x1d74e, G_UNICODE_NOT_PRESENT_OFFSET, 15553 },
+ { 0x1d74f, G_UNICODE_NOT_PRESENT_OFFSET, 15556 },
{ 0x1d750, G_UNICODE_NOT_PRESENT_OFFSET, 1405 },
{ 0x1d751, G_UNICODE_NOT_PRESENT_OFFSET, 1371 },
{ 0x1d752, G_UNICODE_NOT_PRESENT_OFFSET, 1393 },
{ 0x1d753, G_UNICODE_NOT_PRESENT_OFFSET, 1387 },
{ 0x1d754, G_UNICODE_NOT_PRESENT_OFFSET, 1396 },
{ 0x1d755, G_UNICODE_NOT_PRESENT_OFFSET, 1390 },
- { 0x1d756, G_UNICODE_NOT_PRESENT_OFFSET, 15283 },
- { 0x1d757, G_UNICODE_NOT_PRESENT_OFFSET, 15286 },
+ { 0x1d756, G_UNICODE_NOT_PRESENT_OFFSET, 15462 },
+ { 0x1d757, G_UNICODE_NOT_PRESENT_OFFSET, 15465 },
{ 0x1d758, G_UNICODE_NOT_PRESENT_OFFSET, 5354 },
- { 0x1d759, G_UNICODE_NOT_PRESENT_OFFSET, 15289 },
- { 0x1d75a, G_UNICODE_NOT_PRESENT_OFFSET, 15292 },
- { 0x1d75b, G_UNICODE_NOT_PRESENT_OFFSET, 15295 },
- { 0x1d75c, G_UNICODE_NOT_PRESENT_OFFSET, 15298 },
+ { 0x1d759, G_UNICODE_NOT_PRESENT_OFFSET, 15468 },
+ { 0x1d75a, G_UNICODE_NOT_PRESENT_OFFSET, 15471 },
+ { 0x1d75b, G_UNICODE_NOT_PRESENT_OFFSET, 15474 },
+ { 0x1d75c, G_UNICODE_NOT_PRESENT_OFFSET, 15477 },
{ 0x1d75d, G_UNICODE_NOT_PRESENT_OFFSET, 1402 },
- { 0x1d75e, G_UNICODE_NOT_PRESENT_OFFSET, 15301 },
- { 0x1d75f, G_UNICODE_NOT_PRESENT_OFFSET, 15304 },
- { 0x1d760, G_UNICODE_NOT_PRESENT_OFFSET, 15307 },
- { 0x1d761, G_UNICODE_NOT_PRESENT_OFFSET, 15310 },
- { 0x1d762, G_UNICODE_NOT_PRESENT_OFFSET, 15313 },
- { 0x1d763, G_UNICODE_NOT_PRESENT_OFFSET, 15316 },
- { 0x1d764, G_UNICODE_NOT_PRESENT_OFFSET, 15319 },
+ { 0x1d75e, G_UNICODE_NOT_PRESENT_OFFSET, 15480 },
+ { 0x1d75f, G_UNICODE_NOT_PRESENT_OFFSET, 15483 },
+ { 0x1d760, G_UNICODE_NOT_PRESENT_OFFSET, 15486 },
+ { 0x1d761, G_UNICODE_NOT_PRESENT_OFFSET, 15489 },
+ { 0x1d762, G_UNICODE_NOT_PRESENT_OFFSET, 15492 },
+ { 0x1d763, G_UNICODE_NOT_PRESENT_OFFSET, 15495 },
+ { 0x1d764, G_UNICODE_NOT_PRESENT_OFFSET, 15498 },
{ 0x1d765, G_UNICODE_NOT_PRESENT_OFFSET, 5357 },
- { 0x1d766, G_UNICODE_NOT_PRESENT_OFFSET, 15322 },
+ { 0x1d766, G_UNICODE_NOT_PRESENT_OFFSET, 15501 },
{ 0x1d767, G_UNICODE_NOT_PRESENT_OFFSET, 1402 },
{ 0x1d768, G_UNICODE_NOT_PRESENT_OFFSET, 1408 },
- { 0x1d769, G_UNICODE_NOT_PRESENT_OFFSET, 15325 },
+ { 0x1d769, G_UNICODE_NOT_PRESENT_OFFSET, 15504 },
{ 0x1d76a, G_UNICODE_NOT_PRESENT_OFFSET, 1374 },
- { 0x1d76b, G_UNICODE_NOT_PRESENT_OFFSET, 15328 },
- { 0x1d76c, G_UNICODE_NOT_PRESENT_OFFSET, 15331 },
- { 0x1d76d, G_UNICODE_NOT_PRESENT_OFFSET, 15334 },
+ { 0x1d76b, G_UNICODE_NOT_PRESENT_OFFSET, 15507 },
+ { 0x1d76c, G_UNICODE_NOT_PRESENT_OFFSET, 15510 },
+ { 0x1d76d, G_UNICODE_NOT_PRESENT_OFFSET, 15513 },
{ 0x1d76e, G_UNICODE_NOT_PRESENT_OFFSET, 5333 },
- { 0x1d76f, G_UNICODE_NOT_PRESENT_OFFSET, 15337 },
- { 0x1d770, G_UNICODE_NOT_PRESENT_OFFSET, 15341 },
+ { 0x1d76f, G_UNICODE_NOT_PRESENT_OFFSET, 15516 },
+ { 0x1d770, G_UNICODE_NOT_PRESENT_OFFSET, 15520 },
{ 0x1d771, G_UNICODE_NOT_PRESENT_OFFSET, 1368 },
{ 0x1d772, G_UNICODE_NOT_PRESENT_OFFSET, 2418 },
{ 0x1d773, G_UNICODE_NOT_PRESENT_OFFSET, 2421 },
{ 0x1d774, G_UNICODE_NOT_PRESENT_OFFSET, 1405 },
- { 0x1d775, G_UNICODE_NOT_PRESENT_OFFSET, 15344 },
- { 0x1d776, G_UNICODE_NOT_PRESENT_OFFSET, 15347 },
+ { 0x1d775, G_UNICODE_NOT_PRESENT_OFFSET, 15523 },
+ { 0x1d776, G_UNICODE_NOT_PRESENT_OFFSET, 15526 },
{ 0x1d777, G_UNICODE_NOT_PRESENT_OFFSET, 1371 },
{ 0x1d778, G_UNICODE_NOT_PRESENT_OFFSET, 4860 },
{ 0x1d779, G_UNICODE_NOT_PRESENT_OFFSET, 1393 },
- { 0x1d77a, G_UNICODE_NOT_PRESENT_OFFSET, 15350 },
+ { 0x1d77a, G_UNICODE_NOT_PRESENT_OFFSET, 15529 },
{ 0x1d77b, G_UNICODE_NOT_PRESENT_OFFSET, 20 },
- { 0x1d77c, G_UNICODE_NOT_PRESENT_OFFSET, 15353 },
- { 0x1d77d, G_UNICODE_NOT_PRESENT_OFFSET, 15356 },
- { 0x1d77e, G_UNICODE_NOT_PRESENT_OFFSET, 15359 },
+ { 0x1d77c, G_UNICODE_NOT_PRESENT_OFFSET, 15532 },
+ { 0x1d77d, G_UNICODE_NOT_PRESENT_OFFSET, 15535 },
+ { 0x1d77e, G_UNICODE_NOT_PRESENT_OFFSET, 15538 },
{ 0x1d77f, G_UNICODE_NOT_PRESENT_OFFSET, 1390 },
{ 0x1d780, G_UNICODE_NOT_PRESENT_OFFSET, 1396 },
{ 0x1d781, G_UNICODE_NOT_PRESENT_OFFSET, 1399 },
- { 0x1d782, G_UNICODE_NOT_PRESENT_OFFSET, 15362 },
- { 0x1d783, G_UNICODE_NOT_PRESENT_OFFSET, 15365 },
- { 0x1d784, G_UNICODE_NOT_PRESENT_OFFSET, 15368 },
+ { 0x1d782, G_UNICODE_NOT_PRESENT_OFFSET, 15541 },
+ { 0x1d783, G_UNICODE_NOT_PRESENT_OFFSET, 15544 },
+ { 0x1d784, G_UNICODE_NOT_PRESENT_OFFSET, 15547 },
{ 0x1d785, G_UNICODE_NOT_PRESENT_OFFSET, 1387 },
{ 0x1d786, G_UNICODE_NOT_PRESENT_OFFSET, 2424 },
- { 0x1d787, G_UNICODE_NOT_PRESENT_OFFSET, 15371 },
- { 0x1d788, G_UNICODE_NOT_PRESENT_OFFSET, 15374 },
- { 0x1d789, G_UNICODE_NOT_PRESENT_OFFSET, 15377 },
+ { 0x1d787, G_UNICODE_NOT_PRESENT_OFFSET, 15550 },
+ { 0x1d788, G_UNICODE_NOT_PRESENT_OFFSET, 15553 },
+ { 0x1d789, G_UNICODE_NOT_PRESENT_OFFSET, 15556 },
{ 0x1d78a, G_UNICODE_NOT_PRESENT_OFFSET, 1405 },
{ 0x1d78b, G_UNICODE_NOT_PRESENT_OFFSET, 1371 },
{ 0x1d78c, G_UNICODE_NOT_PRESENT_OFFSET, 1393 },
{ 0x1d78d, G_UNICODE_NOT_PRESENT_OFFSET, 1387 },
{ 0x1d78e, G_UNICODE_NOT_PRESENT_OFFSET, 1396 },
{ 0x1d78f, G_UNICODE_NOT_PRESENT_OFFSET, 1390 },
- { 0x1d790, G_UNICODE_NOT_PRESENT_OFFSET, 15283 },
- { 0x1d791, G_UNICODE_NOT_PRESENT_OFFSET, 15286 },
+ { 0x1d790, G_UNICODE_NOT_PRESENT_OFFSET, 15462 },
+ { 0x1d791, G_UNICODE_NOT_PRESENT_OFFSET, 15465 },
{ 0x1d792, G_UNICODE_NOT_PRESENT_OFFSET, 5354 },
- { 0x1d793, G_UNICODE_NOT_PRESENT_OFFSET, 15289 },
- { 0x1d794, G_UNICODE_NOT_PRESENT_OFFSET, 15292 },
- { 0x1d795, G_UNICODE_NOT_PRESENT_OFFSET, 15295 },
- { 0x1d796, G_UNICODE_NOT_PRESENT_OFFSET, 15298 },
+ { 0x1d793, G_UNICODE_NOT_PRESENT_OFFSET, 15468 },
+ { 0x1d794, G_UNICODE_NOT_PRESENT_OFFSET, 15471 },
+ { 0x1d795, G_UNICODE_NOT_PRESENT_OFFSET, 15474 },
+ { 0x1d796, G_UNICODE_NOT_PRESENT_OFFSET, 15477 },
{ 0x1d797, G_UNICODE_NOT_PRESENT_OFFSET, 1402 },
- { 0x1d798, G_UNICODE_NOT_PRESENT_OFFSET, 15301 },
- { 0x1d799, G_UNICODE_NOT_PRESENT_OFFSET, 15304 },
- { 0x1d79a, G_UNICODE_NOT_PRESENT_OFFSET, 15307 },
- { 0x1d79b, G_UNICODE_NOT_PRESENT_OFFSET, 15310 },
- { 0x1d79c, G_UNICODE_NOT_PRESENT_OFFSET, 15313 },
- { 0x1d79d, G_UNICODE_NOT_PRESENT_OFFSET, 15316 },
- { 0x1d79e, G_UNICODE_NOT_PRESENT_OFFSET, 15319 },
+ { 0x1d798, G_UNICODE_NOT_PRESENT_OFFSET, 15480 },
+ { 0x1d799, G_UNICODE_NOT_PRESENT_OFFSET, 15483 },
+ { 0x1d79a, G_UNICODE_NOT_PRESENT_OFFSET, 15486 },
+ { 0x1d79b, G_UNICODE_NOT_PRESENT_OFFSET, 15489 },
+ { 0x1d79c, G_UNICODE_NOT_PRESENT_OFFSET, 15492 },
+ { 0x1d79d, G_UNICODE_NOT_PRESENT_OFFSET, 15495 },
+ { 0x1d79e, G_UNICODE_NOT_PRESENT_OFFSET, 15498 },
{ 0x1d79f, G_UNICODE_NOT_PRESENT_OFFSET, 5357 },
- { 0x1d7a0, G_UNICODE_NOT_PRESENT_OFFSET, 15322 },
+ { 0x1d7a0, G_UNICODE_NOT_PRESENT_OFFSET, 15501 },
{ 0x1d7a1, G_UNICODE_NOT_PRESENT_OFFSET, 1402 },
{ 0x1d7a2, G_UNICODE_NOT_PRESENT_OFFSET, 1408 },
- { 0x1d7a3, G_UNICODE_NOT_PRESENT_OFFSET, 15325 },
+ { 0x1d7a3, G_UNICODE_NOT_PRESENT_OFFSET, 15504 },
{ 0x1d7a4, G_UNICODE_NOT_PRESENT_OFFSET, 1374 },
- { 0x1d7a5, G_UNICODE_NOT_PRESENT_OFFSET, 15328 },
- { 0x1d7a6, G_UNICODE_NOT_PRESENT_OFFSET, 15331 },
- { 0x1d7a7, G_UNICODE_NOT_PRESENT_OFFSET, 15334 },
+ { 0x1d7a5, G_UNICODE_NOT_PRESENT_OFFSET, 15507 },
+ { 0x1d7a6, G_UNICODE_NOT_PRESENT_OFFSET, 15510 },
+ { 0x1d7a7, G_UNICODE_NOT_PRESENT_OFFSET, 15513 },
{ 0x1d7a8, G_UNICODE_NOT_PRESENT_OFFSET, 5333 },
- { 0x1d7a9, G_UNICODE_NOT_PRESENT_OFFSET, 15337 },
- { 0x1d7aa, G_UNICODE_NOT_PRESENT_OFFSET, 15341 },
+ { 0x1d7a9, G_UNICODE_NOT_PRESENT_OFFSET, 15516 },
+ { 0x1d7aa, G_UNICODE_NOT_PRESENT_OFFSET, 15520 },
{ 0x1d7ab, G_UNICODE_NOT_PRESENT_OFFSET, 1368 },
{ 0x1d7ac, G_UNICODE_NOT_PRESENT_OFFSET, 2418 },
{ 0x1d7ad, G_UNICODE_NOT_PRESENT_OFFSET, 2421 },
{ 0x1d7ae, G_UNICODE_NOT_PRESENT_OFFSET, 1405 },
- { 0x1d7af, G_UNICODE_NOT_PRESENT_OFFSET, 15344 },
- { 0x1d7b0, G_UNICODE_NOT_PRESENT_OFFSET, 15347 },
+ { 0x1d7af, G_UNICODE_NOT_PRESENT_OFFSET, 15523 },
+ { 0x1d7b0, G_UNICODE_NOT_PRESENT_OFFSET, 15526 },
{ 0x1d7b1, G_UNICODE_NOT_PRESENT_OFFSET, 1371 },
{ 0x1d7b2, G_UNICODE_NOT_PRESENT_OFFSET, 4860 },
{ 0x1d7b3, G_UNICODE_NOT_PRESENT_OFFSET, 1393 },
- { 0x1d7b4, G_UNICODE_NOT_PRESENT_OFFSET, 15350 },
+ { 0x1d7b4, G_UNICODE_NOT_PRESENT_OFFSET, 15529 },
{ 0x1d7b5, G_UNICODE_NOT_PRESENT_OFFSET, 20 },
- { 0x1d7b6, G_UNICODE_NOT_PRESENT_OFFSET, 15353 },
- { 0x1d7b7, G_UNICODE_NOT_PRESENT_OFFSET, 15356 },
- { 0x1d7b8, G_UNICODE_NOT_PRESENT_OFFSET, 15359 },
+ { 0x1d7b6, G_UNICODE_NOT_PRESENT_OFFSET, 15532 },
+ { 0x1d7b7, G_UNICODE_NOT_PRESENT_OFFSET, 15535 },
+ { 0x1d7b8, G_UNICODE_NOT_PRESENT_OFFSET, 15538 },
{ 0x1d7b9, G_UNICODE_NOT_PRESENT_OFFSET, 1390 },
{ 0x1d7ba, G_UNICODE_NOT_PRESENT_OFFSET, 1396 },
{ 0x1d7bb, G_UNICODE_NOT_PRESENT_OFFSET, 1399 },
- { 0x1d7bc, G_UNICODE_NOT_PRESENT_OFFSET, 15362 },
- { 0x1d7bd, G_UNICODE_NOT_PRESENT_OFFSET, 15365 },
- { 0x1d7be, G_UNICODE_NOT_PRESENT_OFFSET, 15368 },
+ { 0x1d7bc, G_UNICODE_NOT_PRESENT_OFFSET, 15541 },
+ { 0x1d7bd, G_UNICODE_NOT_PRESENT_OFFSET, 15544 },
+ { 0x1d7be, G_UNICODE_NOT_PRESENT_OFFSET, 15547 },
{ 0x1d7bf, G_UNICODE_NOT_PRESENT_OFFSET, 1387 },
{ 0x1d7c0, G_UNICODE_NOT_PRESENT_OFFSET, 2424 },
- { 0x1d7c1, G_UNICODE_NOT_PRESENT_OFFSET, 15371 },
- { 0x1d7c2, G_UNICODE_NOT_PRESENT_OFFSET, 15374 },
- { 0x1d7c3, G_UNICODE_NOT_PRESENT_OFFSET, 15377 },
+ { 0x1d7c1, G_UNICODE_NOT_PRESENT_OFFSET, 15550 },
+ { 0x1d7c2, G_UNICODE_NOT_PRESENT_OFFSET, 15553 },
+ { 0x1d7c3, G_UNICODE_NOT_PRESENT_OFFSET, 15556 },
{ 0x1d7c4, G_UNICODE_NOT_PRESENT_OFFSET, 1405 },
{ 0x1d7c5, G_UNICODE_NOT_PRESENT_OFFSET, 1371 },
{ 0x1d7c6, G_UNICODE_NOT_PRESENT_OFFSET, 1393 },
{ 0x1d7c7, G_UNICODE_NOT_PRESENT_OFFSET, 1387 },
{ 0x1d7c8, G_UNICODE_NOT_PRESENT_OFFSET, 1396 },
{ 0x1d7c9, G_UNICODE_NOT_PRESENT_OFFSET, 1390 },
- { 0x1d7ca, G_UNICODE_NOT_PRESENT_OFFSET, 15381 },
- { 0x1d7cb, G_UNICODE_NOT_PRESENT_OFFSET, 15384 },
+ { 0x1d7ca, G_UNICODE_NOT_PRESENT_OFFSET, 15560 },
+ { 0x1d7cb, G_UNICODE_NOT_PRESENT_OFFSET, 15563 },
{ 0x1d7ce, G_UNICODE_NOT_PRESENT_OFFSET, 5253 },
{ 0x1d7cf, G_UNICODE_NOT_PRESENT_OFFSET, 27 },
{ 0x1d7d0, G_UNICODE_NOT_PRESENT_OFFSET, 12 },
@@ -7373,10 +7433,10 @@ static const decomposition decomp_table[] =
{ 0x1ee19, G_UNICODE_NOT_PRESENT_OFFSET, 14816 },
{ 0x1ee1a, G_UNICODE_NOT_PRESENT_OFFSET, 14822 },
{ 0x1ee1b, G_UNICODE_NOT_PRESENT_OFFSET, 14828 },
- { 0x1ee1c, G_UNICODE_NOT_PRESENT_OFFSET, 15387 },
+ { 0x1ee1c, G_UNICODE_NOT_PRESENT_OFFSET, 15566 },
{ 0x1ee1d, G_UNICODE_NOT_PRESENT_OFFSET, 12862 },
- { 0x1ee1e, G_UNICODE_NOT_PRESENT_OFFSET, 15390 },
- { 0x1ee1f, G_UNICODE_NOT_PRESENT_OFFSET, 15393 },
+ { 0x1ee1e, G_UNICODE_NOT_PRESENT_OFFSET, 15569 },
+ { 0x1ee1f, G_UNICODE_NOT_PRESENT_OFFSET, 15572 },
{ 0x1ee21, G_UNICODE_NOT_PRESENT_OFFSET, 14774 },
{ 0x1ee22, G_UNICODE_NOT_PRESENT_OFFSET, 14786 },
{ 0x1ee24, G_UNICODE_NOT_PRESENT_OFFSET, 14849 },
@@ -7411,7 +7471,7 @@ static const decomposition decomp_table[] =
{ 0x1ee59, G_UNICODE_NOT_PRESENT_OFFSET, 14816 },
{ 0x1ee5b, G_UNICODE_NOT_PRESENT_OFFSET, 14828 },
{ 0x1ee5d, G_UNICODE_NOT_PRESENT_OFFSET, 12862 },
- { 0x1ee5f, G_UNICODE_NOT_PRESENT_OFFSET, 15393 },
+ { 0x1ee5f, G_UNICODE_NOT_PRESENT_OFFSET, 15572 },
{ 0x1ee61, G_UNICODE_NOT_PRESENT_OFFSET, 14774 },
{ 0x1ee62, G_UNICODE_NOT_PRESENT_OFFSET, 14786 },
{ 0x1ee64, G_UNICODE_NOT_PRESENT_OFFSET, 14849 },
@@ -7433,8 +7493,8 @@ static const decomposition decomp_table[] =
{ 0x1ee79, G_UNICODE_NOT_PRESENT_OFFSET, 14816 },
{ 0x1ee7a, G_UNICODE_NOT_PRESENT_OFFSET, 14822 },
{ 0x1ee7b, G_UNICODE_NOT_PRESENT_OFFSET, 14828 },
- { 0x1ee7c, G_UNICODE_NOT_PRESENT_OFFSET, 15387 },
- { 0x1ee7e, G_UNICODE_NOT_PRESENT_OFFSET, 15390 },
+ { 0x1ee7c, G_UNICODE_NOT_PRESENT_OFFSET, 15566 },
+ { 0x1ee7e, G_UNICODE_NOT_PRESENT_OFFSET, 15569 },
{ 0x1ee80, G_UNICODE_NOT_PRESENT_OFFSET, 14771 },
{ 0x1ee81, G_UNICODE_NOT_PRESENT_OFFSET, 14774 },
{ 0x1ee82, G_UNICODE_NOT_PRESENT_OFFSET, 14786 },
@@ -7487,48 +7547,48 @@ static const decomposition decomp_table[] =
{ 0x1eeb9, G_UNICODE_NOT_PRESENT_OFFSET, 14816 },
{ 0x1eeba, G_UNICODE_NOT_PRESENT_OFFSET, 14822 },
{ 0x1eebb, G_UNICODE_NOT_PRESENT_OFFSET, 14828 },
- { 0x1f100, G_UNICODE_NOT_PRESENT_OFFSET, 15396 },
- { 0x1f101, G_UNICODE_NOT_PRESENT_OFFSET, 15399 },
- { 0x1f102, G_UNICODE_NOT_PRESENT_OFFSET, 15402 },
- { 0x1f103, G_UNICODE_NOT_PRESENT_OFFSET, 15405 },
- { 0x1f104, G_UNICODE_NOT_PRESENT_OFFSET, 15408 },
- { 0x1f105, G_UNICODE_NOT_PRESENT_OFFSET, 15411 },
- { 0x1f106, G_UNICODE_NOT_PRESENT_OFFSET, 15414 },
- { 0x1f107, G_UNICODE_NOT_PRESENT_OFFSET, 15417 },
- { 0x1f108, G_UNICODE_NOT_PRESENT_OFFSET, 15420 },
- { 0x1f109, G_UNICODE_NOT_PRESENT_OFFSET, 15423 },
- { 0x1f10a, G_UNICODE_NOT_PRESENT_OFFSET, 15426 },
- { 0x1f110, G_UNICODE_NOT_PRESENT_OFFSET, 15429 },
- { 0x1f111, G_UNICODE_NOT_PRESENT_OFFSET, 15433 },
- { 0x1f112, G_UNICODE_NOT_PRESENT_OFFSET, 15437 },
- { 0x1f113, G_UNICODE_NOT_PRESENT_OFFSET, 15441 },
- { 0x1f114, G_UNICODE_NOT_PRESENT_OFFSET, 15445 },
- { 0x1f115, G_UNICODE_NOT_PRESENT_OFFSET, 15449 },
- { 0x1f116, G_UNICODE_NOT_PRESENT_OFFSET, 15453 },
- { 0x1f117, G_UNICODE_NOT_PRESENT_OFFSET, 15457 },
- { 0x1f118, G_UNICODE_NOT_PRESENT_OFFSET, 15461 },
- { 0x1f119, G_UNICODE_NOT_PRESENT_OFFSET, 15465 },
- { 0x1f11a, G_UNICODE_NOT_PRESENT_OFFSET, 15469 },
- { 0x1f11b, G_UNICODE_NOT_PRESENT_OFFSET, 15473 },
- { 0x1f11c, G_UNICODE_NOT_PRESENT_OFFSET, 15477 },
- { 0x1f11d, G_UNICODE_NOT_PRESENT_OFFSET, 15481 },
- { 0x1f11e, G_UNICODE_NOT_PRESENT_OFFSET, 15485 },
- { 0x1f11f, G_UNICODE_NOT_PRESENT_OFFSET, 15489 },
- { 0x1f120, G_UNICODE_NOT_PRESENT_OFFSET, 15493 },
- { 0x1f121, G_UNICODE_NOT_PRESENT_OFFSET, 15497 },
- { 0x1f122, G_UNICODE_NOT_PRESENT_OFFSET, 15501 },
- { 0x1f123, G_UNICODE_NOT_PRESENT_OFFSET, 15505 },
- { 0x1f124, G_UNICODE_NOT_PRESENT_OFFSET, 15509 },
- { 0x1f125, G_UNICODE_NOT_PRESENT_OFFSET, 15513 },
- { 0x1f126, G_UNICODE_NOT_PRESENT_OFFSET, 15517 },
- { 0x1f127, G_UNICODE_NOT_PRESENT_OFFSET, 15521 },
- { 0x1f128, G_UNICODE_NOT_PRESENT_OFFSET, 15525 },
- { 0x1f129, G_UNICODE_NOT_PRESENT_OFFSET, 15529 },
- { 0x1f12a, G_UNICODE_NOT_PRESENT_OFFSET, 15533 },
+ { 0x1f100, G_UNICODE_NOT_PRESENT_OFFSET, 15575 },
+ { 0x1f101, G_UNICODE_NOT_PRESENT_OFFSET, 15578 },
+ { 0x1f102, G_UNICODE_NOT_PRESENT_OFFSET, 15581 },
+ { 0x1f103, G_UNICODE_NOT_PRESENT_OFFSET, 15584 },
+ { 0x1f104, G_UNICODE_NOT_PRESENT_OFFSET, 15587 },
+ { 0x1f105, G_UNICODE_NOT_PRESENT_OFFSET, 15590 },
+ { 0x1f106, G_UNICODE_NOT_PRESENT_OFFSET, 15593 },
+ { 0x1f107, G_UNICODE_NOT_PRESENT_OFFSET, 15596 },
+ { 0x1f108, G_UNICODE_NOT_PRESENT_OFFSET, 15599 },
+ { 0x1f109, G_UNICODE_NOT_PRESENT_OFFSET, 15602 },
+ { 0x1f10a, G_UNICODE_NOT_PRESENT_OFFSET, 15605 },
+ { 0x1f110, G_UNICODE_NOT_PRESENT_OFFSET, 15608 },
+ { 0x1f111, G_UNICODE_NOT_PRESENT_OFFSET, 15612 },
+ { 0x1f112, G_UNICODE_NOT_PRESENT_OFFSET, 15616 },
+ { 0x1f113, G_UNICODE_NOT_PRESENT_OFFSET, 15620 },
+ { 0x1f114, G_UNICODE_NOT_PRESENT_OFFSET, 15624 },
+ { 0x1f115, G_UNICODE_NOT_PRESENT_OFFSET, 15628 },
+ { 0x1f116, G_UNICODE_NOT_PRESENT_OFFSET, 15632 },
+ { 0x1f117, G_UNICODE_NOT_PRESENT_OFFSET, 15636 },
+ { 0x1f118, G_UNICODE_NOT_PRESENT_OFFSET, 15640 },
+ { 0x1f119, G_UNICODE_NOT_PRESENT_OFFSET, 15644 },
+ { 0x1f11a, G_UNICODE_NOT_PRESENT_OFFSET, 15648 },
+ { 0x1f11b, G_UNICODE_NOT_PRESENT_OFFSET, 15652 },
+ { 0x1f11c, G_UNICODE_NOT_PRESENT_OFFSET, 15656 },
+ { 0x1f11d, G_UNICODE_NOT_PRESENT_OFFSET, 15660 },
+ { 0x1f11e, G_UNICODE_NOT_PRESENT_OFFSET, 15664 },
+ { 0x1f11f, G_UNICODE_NOT_PRESENT_OFFSET, 15668 },
+ { 0x1f120, G_UNICODE_NOT_PRESENT_OFFSET, 15672 },
+ { 0x1f121, G_UNICODE_NOT_PRESENT_OFFSET, 15676 },
+ { 0x1f122, G_UNICODE_NOT_PRESENT_OFFSET, 15680 },
+ { 0x1f123, G_UNICODE_NOT_PRESENT_OFFSET, 15684 },
+ { 0x1f124, G_UNICODE_NOT_PRESENT_OFFSET, 15688 },
+ { 0x1f125, G_UNICODE_NOT_PRESENT_OFFSET, 15692 },
+ { 0x1f126, G_UNICODE_NOT_PRESENT_OFFSET, 15696 },
+ { 0x1f127, G_UNICODE_NOT_PRESENT_OFFSET, 15700 },
+ { 0x1f128, G_UNICODE_NOT_PRESENT_OFFSET, 15704 },
+ { 0x1f129, G_UNICODE_NOT_PRESENT_OFFSET, 15708 },
+ { 0x1f12a, G_UNICODE_NOT_PRESENT_OFFSET, 15712 },
{ 0x1f12b, G_UNICODE_NOT_PRESENT_OFFSET, 5292 },
{ 0x1f12c, G_UNICODE_NOT_PRESENT_OFFSET, 2346 },
- { 0x1f12d, G_UNICODE_NOT_PRESENT_OFFSET, 15541 },
- { 0x1f12e, G_UNICODE_NOT_PRESENT_OFFSET, 15544 },
+ { 0x1f12d, G_UNICODE_NOT_PRESENT_OFFSET, 15720 },
+ { 0x1f12e, G_UNICODE_NOT_PRESENT_OFFSET, 15723 },
{ 0x1f130, G_UNICODE_NOT_PRESENT_OFFSET, 2309 },
{ 0x1f131, G_UNICODE_NOT_PRESENT_OFFSET, 2314 },
{ 0x1f132, G_UNICODE_NOT_PRESENT_OFFSET, 5292 },
@@ -7555,74 +7615,74 @@ static const decomposition decomp_table[] =
{ 0x1f147, G_UNICODE_NOT_PRESENT_OFFSET, 5487 },
{ 0x1f148, G_UNICODE_NOT_PRESENT_OFFSET, 6135 },
{ 0x1f149, G_UNICODE_NOT_PRESENT_OFFSET, 5331 },
- { 0x1f14a, G_UNICODE_NOT_PRESENT_OFFSET, 15547 },
+ { 0x1f14a, G_UNICODE_NOT_PRESENT_OFFSET, 15726 },
{ 0x1f14b, G_UNICODE_NOT_PRESENT_OFFSET, 10563 },
- { 0x1f14c, G_UNICODE_NOT_PRESENT_OFFSET, 15550 },
- { 0x1f14d, G_UNICODE_NOT_PRESENT_OFFSET, 15553 },
- { 0x1f14e, G_UNICODE_NOT_PRESENT_OFFSET, 15556 },
- { 0x1f14f, G_UNICODE_NOT_PRESENT_OFFSET, 15560 },
- { 0x1f16a, G_UNICODE_NOT_PRESENT_OFFSET, 15563 },
- { 0x1f16b, G_UNICODE_NOT_PRESENT_OFFSET, 15566 },
- { 0x1f16c, G_UNICODE_NOT_PRESENT_OFFSET, 15569 },
- { 0x1f190, G_UNICODE_NOT_PRESENT_OFFSET, 15572 },
- { 0x1f200, G_UNICODE_NOT_PRESENT_OFFSET, 15575 },
- { 0x1f201, G_UNICODE_NOT_PRESENT_OFFSET, 15582 },
+ { 0x1f14c, G_UNICODE_NOT_PRESENT_OFFSET, 15729 },
+ { 0x1f14d, G_UNICODE_NOT_PRESENT_OFFSET, 15732 },
+ { 0x1f14e, G_UNICODE_NOT_PRESENT_OFFSET, 15735 },
+ { 0x1f14f, G_UNICODE_NOT_PRESENT_OFFSET, 15739 },
+ { 0x1f16a, G_UNICODE_NOT_PRESENT_OFFSET, 15742 },
+ { 0x1f16b, G_UNICODE_NOT_PRESENT_OFFSET, 15745 },
+ { 0x1f16c, G_UNICODE_NOT_PRESENT_OFFSET, 15748 },
+ { 0x1f190, G_UNICODE_NOT_PRESENT_OFFSET, 15751 },
+ { 0x1f200, G_UNICODE_NOT_PRESENT_OFFSET, 15754 },
+ { 0x1f201, G_UNICODE_NOT_PRESENT_OFFSET, 15761 },
{ 0x1f202, G_UNICODE_NOT_PRESENT_OFFSET, 8848 },
{ 0x1f210, G_UNICODE_NOT_PRESENT_OFFSET, 6433 },
- { 0x1f211, G_UNICODE_NOT_PRESENT_OFFSET, 15589 },
- { 0x1f212, G_UNICODE_NOT_PRESENT_OFFSET, 15593 },
+ { 0x1f211, G_UNICODE_NOT_PRESENT_OFFSET, 15768 },
+ { 0x1f212, G_UNICODE_NOT_PRESENT_OFFSET, 15772 },
{ 0x1f213, G_UNICODE_NOT_PRESENT_OFFSET, 7346 },
{ 0x1f214, G_UNICODE_NOT_PRESENT_OFFSET, 6205 },
- { 0x1f215, G_UNICODE_NOT_PRESENT_OFFSET, 15597 },
- { 0x1f216, G_UNICODE_NOT_PRESENT_OFFSET, 15601 },
+ { 0x1f215, G_UNICODE_NOT_PRESENT_OFFSET, 15776 },
+ { 0x1f216, G_UNICODE_NOT_PRESENT_OFFSET, 15780 },
{ 0x1f217, G_UNICODE_NOT_PRESENT_OFFSET, 7887 },
- { 0x1f218, G_UNICODE_NOT_PRESENT_OFFSET, 15605 },
- { 0x1f219, G_UNICODE_NOT_PRESENT_OFFSET, 15609 },
- { 0x1f21a, G_UNICODE_NOT_PRESENT_OFFSET, 15613 },
+ { 0x1f218, G_UNICODE_NOT_PRESENT_OFFSET, 15784 },
+ { 0x1f219, G_UNICODE_NOT_PRESENT_OFFSET, 15788 },
+ { 0x1f21a, G_UNICODE_NOT_PRESENT_OFFSET, 15792 },
{ 0x1f21b, G_UNICODE_NOT_PRESENT_OFFSET, 11629 },
- { 0x1f21c, G_UNICODE_NOT_PRESENT_OFFSET, 15617 },
- { 0x1f21d, G_UNICODE_NOT_PRESENT_OFFSET, 15621 },
- { 0x1f21e, G_UNICODE_NOT_PRESENT_OFFSET, 15625 },
- { 0x1f21f, G_UNICODE_NOT_PRESENT_OFFSET, 15629 },
- { 0x1f220, G_UNICODE_NOT_PRESENT_OFFSET, 15633 },
- { 0x1f221, G_UNICODE_NOT_PRESENT_OFFSET, 15637 },
+ { 0x1f21c, G_UNICODE_NOT_PRESENT_OFFSET, 15796 },
+ { 0x1f21d, G_UNICODE_NOT_PRESENT_OFFSET, 15800 },
+ { 0x1f21e, G_UNICODE_NOT_PRESENT_OFFSET, 15804 },
+ { 0x1f21f, G_UNICODE_NOT_PRESENT_OFFSET, 15808 },
+ { 0x1f220, G_UNICODE_NOT_PRESENT_OFFSET, 15812 },
+ { 0x1f221, G_UNICODE_NOT_PRESENT_OFFSET, 15816 },
{ 0x1f222, G_UNICODE_NOT_PRESENT_OFFSET, 6577 },
- { 0x1f223, G_UNICODE_NOT_PRESENT_OFFSET, 15641 },
- { 0x1f224, G_UNICODE_NOT_PRESENT_OFFSET, 15645 },
- { 0x1f225, G_UNICODE_NOT_PRESENT_OFFSET, 15649 },
- { 0x1f226, G_UNICODE_NOT_PRESENT_OFFSET, 15653 },
- { 0x1f227, G_UNICODE_NOT_PRESENT_OFFSET, 15657 },
- { 0x1f228, G_UNICODE_NOT_PRESENT_OFFSET, 15661 },
+ { 0x1f223, G_UNICODE_NOT_PRESENT_OFFSET, 15820 },
+ { 0x1f224, G_UNICODE_NOT_PRESENT_OFFSET, 15824 },
+ { 0x1f225, G_UNICODE_NOT_PRESENT_OFFSET, 15828 },
+ { 0x1f226, G_UNICODE_NOT_PRESENT_OFFSET, 15832 },
+ { 0x1f227, G_UNICODE_NOT_PRESENT_OFFSET, 15836 },
+ { 0x1f228, G_UNICODE_NOT_PRESENT_OFFSET, 15840 },
{ 0x1f229, G_UNICODE_NOT_PRESENT_OFFSET, 6181 },
{ 0x1f22a, G_UNICODE_NOT_PRESENT_OFFSET, 7855 },
- { 0x1f22b, G_UNICODE_NOT_PRESENT_OFFSET, 15665 },
+ { 0x1f22b, G_UNICODE_NOT_PRESENT_OFFSET, 15844 },
{ 0x1f22c, G_UNICODE_NOT_PRESENT_OFFSET, 8646 },
{ 0x1f22d, G_UNICODE_NOT_PRESENT_OFFSET, 7867 },
{ 0x1f22e, G_UNICODE_NOT_PRESENT_OFFSET, 8650 },
- { 0x1f22f, G_UNICODE_NOT_PRESENT_OFFSET, 15669 },
+ { 0x1f22f, G_UNICODE_NOT_PRESENT_OFFSET, 15848 },
{ 0x1f230, G_UNICODE_NOT_PRESENT_OFFSET, 6801 },
- { 0x1f231, G_UNICODE_NOT_PRESENT_OFFSET, 15673 },
- { 0x1f232, G_UNICODE_NOT_PRESENT_OFFSET, 15677 },
- { 0x1f233, G_UNICODE_NOT_PRESENT_OFFSET, 15681 },
- { 0x1f234, G_UNICODE_NOT_PRESENT_OFFSET, 15685 },
- { 0x1f235, G_UNICODE_NOT_PRESENT_OFFSET, 15689 },
+ { 0x1f231, G_UNICODE_NOT_PRESENT_OFFSET, 15852 },
+ { 0x1f232, G_UNICODE_NOT_PRESENT_OFFSET, 15856 },
+ { 0x1f233, G_UNICODE_NOT_PRESENT_OFFSET, 15860 },
+ { 0x1f234, G_UNICODE_NOT_PRESENT_OFFSET, 15864 },
+ { 0x1f235, G_UNICODE_NOT_PRESENT_OFFSET, 15868 },
{ 0x1f236, G_UNICODE_NOT_PRESENT_OFFSET, 8578 },
{ 0x1f237, G_UNICODE_NOT_PRESENT_OFFSET, 6473 },
- { 0x1f238, G_UNICODE_NOT_PRESENT_OFFSET, 15693 },
- { 0x1f239, G_UNICODE_NOT_PRESENT_OFFSET, 15697 },
- { 0x1f23a, G_UNICODE_NOT_PRESENT_OFFSET, 15701 },
- { 0x1f23b, G_UNICODE_NOT_PRESENT_OFFSET, 15705 },
- { 0x1f240, G_UNICODE_NOT_PRESENT_OFFSET, 15709 },
- { 0x1f241, G_UNICODE_NOT_PRESENT_OFFSET, 15719 },
- { 0x1f242, G_UNICODE_NOT_PRESENT_OFFSET, 15729 },
- { 0x1f243, G_UNICODE_NOT_PRESENT_OFFSET, 15739 },
- { 0x1f244, G_UNICODE_NOT_PRESENT_OFFSET, 15749 },
- { 0x1f245, G_UNICODE_NOT_PRESENT_OFFSET, 15759 },
- { 0x1f246, G_UNICODE_NOT_PRESENT_OFFSET, 15769 },
- { 0x1f247, G_UNICODE_NOT_PRESENT_OFFSET, 15779 },
- { 0x1f248, G_UNICODE_NOT_PRESENT_OFFSET, 15789 },
- { 0x1f250, G_UNICODE_NOT_PRESENT_OFFSET, 15799 },
- { 0x1f251, G_UNICODE_NOT_PRESENT_OFFSET, 15803 },
+ { 0x1f238, G_UNICODE_NOT_PRESENT_OFFSET, 15872 },
+ { 0x1f239, G_UNICODE_NOT_PRESENT_OFFSET, 15876 },
+ { 0x1f23a, G_UNICODE_NOT_PRESENT_OFFSET, 15880 },
+ { 0x1f23b, G_UNICODE_NOT_PRESENT_OFFSET, 15884 },
+ { 0x1f240, G_UNICODE_NOT_PRESENT_OFFSET, 15888 },
+ { 0x1f241, G_UNICODE_NOT_PRESENT_OFFSET, 15898 },
+ { 0x1f242, G_UNICODE_NOT_PRESENT_OFFSET, 15908 },
+ { 0x1f243, G_UNICODE_NOT_PRESENT_OFFSET, 15918 },
+ { 0x1f244, G_UNICODE_NOT_PRESENT_OFFSET, 15928 },
+ { 0x1f245, G_UNICODE_NOT_PRESENT_OFFSET, 15938 },
+ { 0x1f246, G_UNICODE_NOT_PRESENT_OFFSET, 15948 },
+ { 0x1f247, G_UNICODE_NOT_PRESENT_OFFSET, 15958 },
+ { 0x1f248, G_UNICODE_NOT_PRESENT_OFFSET, 15968 },
+ { 0x1f250, G_UNICODE_NOT_PRESENT_OFFSET, 15978 },
+ { 0x1f251, G_UNICODE_NOT_PRESENT_OFFSET, 15982 },
{ 0x1fbf0, G_UNICODE_NOT_PRESENT_OFFSET, 5253 },
{ 0x1fbf1, G_UNICODE_NOT_PRESENT_OFFSET, 27 },
{ 0x1fbf2, G_UNICODE_NOT_PRESENT_OFFSET, 12 },
@@ -7633,548 +7693,548 @@ static const decomposition decomp_table[] =
{ 0x1fbf7, G_UNICODE_NOT_PRESENT_OFFSET, 5261 },
{ 0x1fbf8, G_UNICODE_NOT_PRESENT_OFFSET, 5263 },
{ 0x1fbf9, G_UNICODE_NOT_PRESENT_OFFSET, 5265 },
- { 0x2f800, 15807, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f801, 15811, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f802, 15815, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f803, 15819, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f804, 15824, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f800, 15986, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f801, 15990, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f802, 15994, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f803, 15998, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f804, 16003, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f805, 12001, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f806, 15828, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f807, 15832, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f808, 15836, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f809, 15840, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f806, 16007, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f807, 16011, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f808, 16015, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f809, 16019, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f80a, 12005, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f80b, 15844, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f80c, 15848, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f80d, 15852, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f80b, 16023, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f80c, 16027, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f80d, 16031, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f80e, 12009, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f80f, 15857, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f810, 15861, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f811, 15865, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f812, 15869, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f813, 15874, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f814, 15878, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f815, 15625, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f816, 15882, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f817, 15887, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f818, 15891, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f819, 15895, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f81a, 15899, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f80f, 16036, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f810, 16040, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f811, 16044, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f812, 16048, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f813, 16053, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f814, 16057, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f815, 15804, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f816, 16061, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f817, 16066, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f818, 16070, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f819, 16074, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f81a, 16078, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f81b, 12230, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f81c, 15903, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f81c, 16082, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f81d, 6245, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f81e, 15908, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f81f, 15912, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f820, 15916, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f821, 15920, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f822, 15697, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f823, 15924, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f824, 15928, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f81e, 16087, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f81f, 16091, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f820, 16095, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f821, 16099, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f822, 15876, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f823, 16103, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f824, 16107, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f825, 12250, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f826, 12013, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f827, 12017, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f828, 12254, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f829, 15932, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f82a, 15936, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f829, 16111, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f82a, 16115, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f82b, 11285, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f82c, 15940, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f82c, 16119, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f82d, 12021, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f82e, 15944, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f82f, 15948, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f830, 15952, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f831, 15956, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f832, 15956, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f833, 15956, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f834, 15960, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f835, 15965, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f836, 15969, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f837, 15973, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f838, 15977, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f839, 15982, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f83a, 15986, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f83b, 15990, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f83c, 15994, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f83d, 15998, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f83e, 16002, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f83f, 16006, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f840, 16010, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f841, 16014, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f842, 16018, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f843, 16022, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f844, 16026, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f845, 16030, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f846, 16030, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f82e, 16123, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f82f, 16127, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f830, 16131, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f831, 16135, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f832, 16135, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f833, 16135, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f834, 16139, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f835, 16144, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f836, 16148, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f837, 16152, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f838, 16156, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f839, 16161, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f83a, 16165, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f83b, 16169, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f83c, 16173, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f83d, 16177, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f83e, 16181, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f83f, 16185, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f840, 16189, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f841, 16193, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f842, 16197, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f843, 16201, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f844, 16205, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f845, 16209, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f846, 16209, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f847, 12262, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f848, 16034, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f849, 16038, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f84a, 16042, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f84b, 16046, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f848, 16213, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f849, 16217, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f84a, 16221, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f84b, 16225, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f84c, 12029, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f84d, 16050, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f84e, 16054, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f84f, 16058, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f84d, 16229, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f84e, 16233, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f84f, 16237, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f850, 11869, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f851, 16062, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f852, 16066, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f853, 16070, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f854, 16074, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f855, 16078, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f856, 16082, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f857, 16086, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f858, 16090, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f859, 16094, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f85a, 16099, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f85b, 16103, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f85c, 16107, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f85d, 15597, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f85e, 16111, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f85f, 16115, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f860, 16119, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f861, 16124, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f862, 16129, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f863, 16133, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f864, 16137, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f865, 16141, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f866, 16145, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f867, 16149, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f868, 16153, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f869, 16157, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f86a, 16161, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f86b, 16161, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f86c, 16165, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f86d, 16170, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f86e, 16174, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f851, 16241, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f852, 16245, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f853, 16249, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f854, 16253, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f855, 16257, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f856, 16261, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f857, 16265, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f858, 16269, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f859, 16273, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f85a, 16278, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f85b, 16282, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f85c, 16286, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f85d, 15776, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f85e, 16290, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f85f, 16294, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f860, 16298, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f861, 16303, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f862, 16308, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f863, 16312, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f864, 16316, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f865, 16320, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f866, 16324, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f867, 16328, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f868, 16332, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f869, 16336, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f86a, 16340, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f86b, 16340, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f86c, 16344, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f86d, 16349, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f86e, 16353, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f86f, 11269, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f870, 16178, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f871, 16182, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f872, 16187, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f873, 16191, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f874, 16195, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f870, 16357, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f871, 16361, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f872, 16366, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f873, 16370, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f874, 16374, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f875, 6349, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f876, 16199, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f877, 16203, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f876, 16378, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f877, 16382, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f878, 6357, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f879, 16207, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f87a, 16211, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f87b, 16215, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f87c, 16220, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f87d, 16224, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f87e, 16229, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f87f, 16233, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f880, 16237, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f881, 16241, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f882, 16245, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f883, 16249, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f884, 16253, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f885, 16257, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f886, 16261, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f887, 16265, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f888, 16269, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f889, 16273, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f88a, 16278, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f88b, 16282, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f88c, 16286, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f88d, 16290, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f879, 16386, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f87a, 16390, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f87b, 16394, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f87c, 16399, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f87d, 16403, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f87e, 16408, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f87f, 16412, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f880, 16416, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f881, 16420, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f882, 16424, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f883, 16428, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f884, 16432, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f885, 16436, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f886, 16440, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f887, 16444, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f888, 16448, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f889, 16452, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f88a, 16457, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f88b, 16461, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f88c, 16465, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f88d, 16469, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f88e, 11061, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f88f, 16294, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f88f, 16473, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f890, 6397, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f891, 16299, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f892, 16299, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f893, 16304, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f894, 16308, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f895, 16308, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f896, 16312, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f897, 16316, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f898, 16321, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f899, 16326, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f89a, 16330, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f89b, 16334, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f89c, 16338, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f89d, 16342, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f89e, 16346, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f89f, 16350, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8a0, 16354, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8a1, 16358, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8a2, 16362, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f891, 16478, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f892, 16478, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f893, 16483, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f894, 16487, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f895, 16487, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f896, 16491, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f897, 16495, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f898, 16500, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f899, 16505, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f89a, 16509, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f89b, 16513, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f89c, 16517, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f89d, 16521, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f89e, 16525, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f89f, 16529, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8a0, 16533, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8a1, 16537, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8a2, 16541, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f8a3, 12049, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8a4, 16366, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8a5, 16371, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8a6, 16375, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8a7, 16379, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8a4, 16545, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8a5, 16550, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8a6, 16554, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8a7, 16558, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f8a8, 12310, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8a9, 16379, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8aa, 16383, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8a9, 16558, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8aa, 16562, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f8ab, 12057, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8ac, 16387, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8ad, 16391, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8ae, 16395, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8af, 16399, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8ac, 16566, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8ad, 16570, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8ae, 16574, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8af, 16578, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f8b0, 12061, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f8b1, 10953, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8b2, 16403, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8b3, 16407, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8b4, 16411, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8b5, 16415, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8b6, 16419, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8b7, 16423, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8b8, 16427, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8b9, 16432, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8ba, 16436, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8bb, 16440, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8bc, 16444, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8bd, 16448, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8be, 16452, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8bf, 16457, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8c0, 16461, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8c1, 16465, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8c2, 16469, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8c3, 16473, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8c4, 16477, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8c5, 16481, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8c6, 16485, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8c7, 16489, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8b2, 16582, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8b3, 16586, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8b4, 16590, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8b5, 16594, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8b6, 16598, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8b7, 16602, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8b8, 16606, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8b9, 16611, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8ba, 16615, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8bb, 16619, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8bc, 16623, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8bd, 16627, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8be, 16631, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8bf, 16636, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8c0, 16640, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8c1, 16644, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8c2, 16648, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8c3, 16652, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8c4, 16656, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8c5, 16660, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8c6, 16664, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8c7, 16668, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f8c8, 12065, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8c9, 16493, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8ca, 16497, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8cb, 16502, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8cc, 16506, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8cd, 16510, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8ce, 16514, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8c9, 16672, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8ca, 16676, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8cb, 16681, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8cc, 16685, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8cd, 16689, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8ce, 16693, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f8cf, 12073, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8d0, 16518, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8d1, 16522, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8d2, 16526, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8d3, 16530, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8d4, 16534, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8d5, 16538, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8d6, 16542, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8d7, 16546, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8d0, 16697, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8d1, 16701, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8d2, 16705, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8d3, 16709, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8d4, 16713, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8d5, 16717, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8d6, 16721, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8d7, 16725, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f8d8, 11065, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f8d9, 12342, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8da, 16550, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8db, 16554, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8dc, 16558, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8dd, 16562, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8de, 16567, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8df, 16571, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8e0, 16575, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8e1, 16579, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8da, 16729, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8db, 16733, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8dc, 16737, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8dd, 16741, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8de, 16746, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8df, 16750, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8e0, 16754, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8e1, 16758, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f8e2, 12077, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8e3, 16583, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8e4, 16588, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8e5, 16592, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8e6, 16596, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8e3, 16762, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8e4, 16767, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8e5, 16771, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8e6, 16775, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f8e7, 12513, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8e8, 16600, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8e9, 16604, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8ea, 16608, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8eb, 16612, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8ec, 16616, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8ed, 16621, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8ee, 16625, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8ef, 16629, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8f0, 16633, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8f1, 16638, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8f2, 16642, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8f3, 16646, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8f4, 16650, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8e8, 16779, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8e9, 16783, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8ea, 16787, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8eb, 16791, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8ec, 16795, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8ed, 16800, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8ee, 16804, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8ef, 16808, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8f0, 16812, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8f1, 16817, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8f2, 16821, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8f3, 16825, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8f4, 16829, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f8f5, 11337, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8f6, 16654, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8f7, 16658, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8f8, 16663, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8f9, 16668, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8fa, 16673, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8fb, 16677, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8fc, 16682, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8fd, 16686, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8fe, 16690, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f8ff, 16694, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f900, 16698, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8f6, 16833, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8f7, 16837, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8f8, 16842, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8f9, 16847, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8fa, 16852, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8fb, 16856, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8fc, 16861, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8fd, 16865, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8fe, 16869, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f8ff, 16873, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f900, 16877, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f901, 12081, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f902, 11669, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f903, 16702, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f904, 16706, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f905, 16710, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f906, 16714, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f907, 16719, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f908, 16723, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f909, 16727, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f90a, 16731, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f903, 16881, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f904, 16885, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f905, 16889, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f906, 16893, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f907, 16898, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f908, 16902, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f909, 16906, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f90a, 16910, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f90b, 12354, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f90c, 16735, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f90d, 16739, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f90e, 16744, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f90f, 16748, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f910, 16752, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f911, 16757, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f912, 16762, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f913, 16766, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f90c, 16914, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f90d, 16918, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f90e, 16923, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f90f, 16927, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f910, 16931, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f911, 16936, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f912, 16941, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f913, 16945, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f914, 12358, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f915, 16770, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f916, 16774, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f917, 16778, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f918, 16782, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f919, 16786, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f91a, 16790, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f91b, 16794, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f91c, 16799, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f91d, 16803, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f91e, 16808, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f91f, 16812, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f920, 16817, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f915, 16949, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f916, 16953, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f917, 16957, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f918, 16961, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f919, 16965, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f91a, 16969, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f91b, 16973, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f91c, 16978, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f91d, 16982, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f91e, 16987, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f91f, 16991, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f920, 16996, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f921, 12366, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f922, 16821, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f923, 16825, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f924, 16830, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f925, 16834, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f926, 16838, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f927, 16843, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f928, 16848, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f929, 16852, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f92a, 16856, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f92b, 16860, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f92c, 16864, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f92d, 16864, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f92e, 16868, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f92f, 16872, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f922, 17000, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f923, 17004, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f924, 17009, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f925, 17013, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f926, 17017, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f927, 17022, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f928, 17027, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f929, 17031, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f92a, 17035, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f92b, 17039, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f92c, 17043, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f92d, 17043, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f92e, 17047, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f92f, 17051, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f930, 12374, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f931, 16876, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f932, 16880, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f933, 16884, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f934, 16888, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f935, 16892, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f936, 16897, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f937, 16901, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f931, 17055, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f932, 17059, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f933, 17063, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f934, 17067, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f935, 17071, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f936, 17076, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f937, 17080, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f938, 11281, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f939, 16906, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f93a, 16911, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f93b, 16915, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f93c, 16920, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f93d, 16925, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f93e, 16930, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f93f, 16934, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f939, 17085, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f93a, 17090, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f93b, 17094, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f93c, 17099, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f93d, 17104, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f93e, 17109, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f93f, 17113, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f940, 12398, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f941, 16938, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f942, 16943, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f943, 16948, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f944, 16953, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f945, 16958, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f946, 16962, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f947, 16962, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f941, 17117, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f942, 17122, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f943, 17127, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f944, 17132, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f945, 17137, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f946, 17141, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f947, 17141, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f948, 12402, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f949, 12521, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f94a, 16966, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f94b, 16970, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f94c, 16974, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f94d, 16978, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f94e, 16983, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f94a, 17145, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f94b, 17149, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f94c, 17153, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f94d, 17157, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f94e, 17162, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f94f, 11133, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f950, 12410, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f951, 16987, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f952, 16991, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f951, 17166, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f952, 17170, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f953, 12121, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f954, 16996, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f955, 17001, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f954, 17175, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f955, 17180, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f956, 11949, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f957, 17006, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f958, 17010, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f957, 17185, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f958, 17189, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f959, 12133, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f95a, 17014, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f95b, 17018, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f95c, 17022, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f95d, 17027, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f95e, 17027, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f95f, 17032, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f960, 17036, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f961, 17040, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f962, 17045, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f963, 17049, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f964, 17053, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f965, 17057, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f966, 17062, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f967, 17066, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f968, 17070, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f969, 17074, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f96a, 17078, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f96b, 17082, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f96c, 17087, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f96d, 17091, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f96e, 17095, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f96f, 17099, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f970, 17103, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f971, 17107, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f972, 17111, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f973, 17116, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f974, 17121, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f975, 17125, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f976, 17130, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f977, 17134, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f978, 17139, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f979, 17143, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f95a, 17193, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f95b, 17197, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f95c, 17201, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f95d, 17206, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f95e, 17206, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f95f, 17211, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f960, 17215, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f961, 17219, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f962, 17224, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f963, 17228, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f964, 17232, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f965, 17236, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f966, 17241, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f967, 17245, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f968, 17249, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f969, 17253, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f96a, 17257, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f96b, 17261, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f96c, 17266, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f96d, 17270, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f96e, 17274, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f96f, 17278, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f970, 17282, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f971, 17286, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f972, 17290, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f973, 17295, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f974, 17300, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f975, 17304, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f976, 17309, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f977, 17313, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f978, 17318, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f979, 17322, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f97a, 12157, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f97b, 17147, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f97c, 17152, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f97d, 17157, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f97e, 17161, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f97f, 17166, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f980, 17170, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f981, 17175, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f982, 17179, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f983, 17183, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f984, 17187, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f985, 17191, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f986, 17195, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f987, 17199, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f988, 17204, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f989, 17209, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f98a, 17214, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f98b, 16304, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f98c, 17219, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f98d, 17223, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f98e, 17227, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f98f, 17231, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f990, 17235, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f991, 17239, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f992, 17243, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f993, 17247, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f994, 17251, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f995, 17255, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f996, 17259, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f997, 17263, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f97b, 17326, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f97c, 17331, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f97d, 17336, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f97e, 17340, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f97f, 17345, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f980, 17349, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f981, 17354, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f982, 17358, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f983, 17362, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f984, 17366, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f985, 17370, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f986, 17374, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f987, 17378, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f988, 17383, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f989, 17388, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f98a, 17393, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f98b, 16483, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f98c, 17398, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f98d, 17402, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f98e, 17406, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f98f, 17410, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f990, 17414, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f991, 17418, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f992, 17422, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f993, 17426, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f994, 17430, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f995, 17434, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f996, 17438, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f997, 17442, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f998, 11349, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f999, 17268, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f99a, 17272, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f99b, 17276, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f99c, 17280, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f99d, 17284, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f99e, 17288, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f999, 17447, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f99a, 17451, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f99b, 17455, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f99c, 17459, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f99d, 17463, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f99e, 17467, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f99f, 12169, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9a0, 17292, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9a1, 17296, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9a2, 17300, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9a3, 17304, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9a4, 17308, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9a5, 17313, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9a6, 17318, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9a7, 17323, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9a8, 17327, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9a9, 17331, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9aa, 17335, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9ab, 17339, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9ac, 17344, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9ad, 17348, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9ae, 17353, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9af, 17357, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9b0, 17361, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9b1, 17366, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9b2, 17371, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9b3, 17375, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9a0, 17471, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9a1, 17475, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9a2, 17479, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9a3, 17483, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9a4, 17487, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9a5, 17492, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9a6, 17497, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9a7, 17502, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9a8, 17506, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9a9, 17510, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9aa, 17514, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9ab, 17518, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9ac, 17523, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9ad, 17527, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9ae, 17532, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9af, 17536, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9b0, 17540, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9b1, 17545, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9b2, 17550, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9b3, 17554, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f9b4, 11113, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9b5, 17379, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9b6, 17383, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9b7, 17387, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9b8, 17391, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9b9, 17395, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9ba, 17399, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9b5, 17558, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9b6, 17562, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9b7, 17566, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9b8, 17570, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9b9, 17574, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9ba, 17578, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f9bb, 12438, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9bc, 17403, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9bd, 17407, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9be, 17411, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9bf, 17415, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9c0, 17419, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9c1, 17423, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9c2, 17427, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9c3, 17431, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9bc, 17582, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9bd, 17586, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9be, 17590, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9bf, 17594, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9c0, 17598, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9c1, 17602, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9c2, 17606, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9c3, 17610, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f9c4, 6757, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9c5, 17435, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9c6, 17440, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9c7, 17444, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9c8, 17448, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9c9, 17452, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9ca, 17456, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9cb, 17460, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9cc, 17465, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9cd, 17470, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9ce, 17474, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9cf, 17478, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9c5, 17614, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9c6, 17619, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9c7, 17623, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9c8, 17627, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9c9, 17631, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9ca, 17635, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9cb, 17639, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9cc, 17644, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9cd, 17649, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9ce, 17653, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9cf, 17657, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f9d0, 12458, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f9d1, 12462, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f9d2, 6785, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9d3, 17482, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9d4, 17487, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9d5, 17491, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9d6, 17495, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9d7, 17499, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9d8, 17503, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9d9, 17508, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9da, 17513, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9db, 17517, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9dc, 17521, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9dd, 17525, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9de, 17530, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9d3, 17661, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9d4, 17666, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9d5, 17670, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9d6, 17674, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9d7, 17678, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9d8, 17682, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9d9, 17687, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9da, 17692, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9db, 17696, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9dc, 17700, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9dd, 17704, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9de, 17709, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f9df, 12466, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9e0, 17534, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9e1, 17539, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9e2, 17544, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9e3, 17548, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9e4, 17552, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9e5, 17556, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9e6, 17561, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9e7, 17565, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9e8, 17569, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9e9, 17573, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9ea, 17577, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9eb, 17581, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9ec, 17585, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9ed, 17589, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9ee, 17594, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9ef, 17598, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9f0, 17602, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9f1, 17606, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9f2, 17611, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9f3, 17615, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9f4, 17619, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9f5, 17623, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9f6, 17627, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9f7, 17632, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9f8, 17637, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9f9, 17641, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9fa, 17645, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9fb, 17649, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9fc, 17654, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2f9fd, 17658, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9e0, 17713, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9e1, 17718, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9e2, 17723, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9e3, 17727, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9e4, 17731, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9e5, 17735, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9e6, 17740, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9e7, 17744, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9e8, 17748, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9e9, 17752, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9ea, 17756, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9eb, 17760, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9ec, 17764, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9ed, 17768, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9ee, 17773, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9ef, 17777, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9f0, 17781, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9f1, 17785, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9f2, 17790, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9f3, 17794, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9f4, 17798, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9f5, 17802, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9f6, 17806, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9f7, 17811, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9f8, 17816, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9f9, 17820, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9fa, 17824, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9fb, 17828, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9fc, 17833, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2f9fd, 17837, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f9fe, 12490, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2f9ff, 12490, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa00, 17663, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa01, 17667, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa02, 17672, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa03, 17676, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa04, 17680, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa05, 17684, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa06, 17688, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa07, 17692, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa08, 17696, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa09, 17700, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa00, 17842, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa01, 17846, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa02, 17851, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa03, 17855, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa04, 17859, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa05, 17863, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa06, 17867, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa07, 17871, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa08, 17875, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa09, 17879, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2fa0a, 12494, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa0b, 17705, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa0c, 17709, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa0d, 17713, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa0e, 17717, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa0f, 17721, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa10, 17725, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa11, 17730, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa12, 17734, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa13, 17739, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa14, 17744, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa0b, 17884, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa0c, 17888, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa0d, 17892, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa0e, 17896, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa0f, 17900, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa10, 17904, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa11, 17909, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa12, 17913, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa13, 17918, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa14, 17923, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2fa15, 6977, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa16, 17749, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa16, 17928, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2fa17, 6993, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa18, 17753, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa19, 17757, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa1a, 17761, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa1b, 17765, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa18, 17932, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa19, 17936, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa1a, 17940, G_UNICODE_NOT_PRESENT_OFFSET },
+ { 0x2fa1b, 17944, G_UNICODE_NOT_PRESENT_OFFSET },
{ 0x2fa1c, 7013, G_UNICODE_NOT_PRESENT_OFFSET },
- { 0x2fa1d, 17769, G_UNICODE_NOT_PRESENT_OFFSET }
+ { 0x2fa1d, 17948, G_UNICODE_NOT_PRESENT_OFFSET }
};
static const gchar decomp_expansion_string[] =
@@ -11209,629 +11269,683 @@ static const gchar decomp_expansion_string[] =
"\xe2\x86\x93\0" /* offset 14995 */
"\xe2\x96\xa0\0" /* offset 14999 */
"\xe2\x97\x8b\0" /* offset 15003 */
- "\xf0\x91\x82\x99\xf0\x91\x82\xba\0" /* offset 15007 */
- "\xf0\x91\x82\x9b\xf0\x91\x82\xba\0" /* offset 15016 */
- "\xf0\x91\x82\xa5\xf0\x91\x82\xba\0" /* offset 15025 */
- "\xf0\x91\x84\xb1\xf0\x91\x84\xa7\0" /* offset 15034 */
- "\xf0\x91\x84\xb2\xf0\x91\x84\xa7\0" /* offset 15043 */
- "\xf0\x91\x8d\x87\xf0\x91\x8c\xbe\0" /* offset 15052 */
- "\xf0\x91\x8d\x87\xf0\x91\x8d\x97\0" /* offset 15061 */
- "\xf0\x91\x92\xb9\xf0\x91\x92\xba\0" /* offset 15070 */
- "\xf0\x91\x92\xb9\xf0\x91\x92\xb0\0" /* offset 15079 */
- "\xf0\x91\x92\xb9\xf0\x91\x92\xbd\0" /* offset 15088 */
- "\xf0\x91\x96\xb8\xf0\x91\x96\xaf\0" /* offset 15097 */
- "\xf0\x91\x96\xb9\xf0\x91\x96\xaf\0" /* offset 15106 */
- "\xf0\x91\xa4\xb5\xf0\x91\xa4\xb0\0" /* offset 15115 */
- "\xf0\x9d\x85\x97\xf0\x9d\x85\xa5\0" /* offset 15124 */
- "\xf0\x9d\x85\x98\xf0\x9d\x85\xa5\0" /* offset 15133 */
- "\xf0\x9d\x85\x98\xf0\x9d\x85\xa5\xf0\x9d\x85\xae\0" /* offset 15142 */
- "\xf0\x9d\x85\x98\xf0\x9d\x85\xa5\xf0\x9d\x85\xaf\0" /* offset 15155 */
- "\xf0\x9d\x85\x98\xf0\x9d\x85\xa5\xf0\x9d\x85\xb0\0" /* offset 15168 */
- "\xf0\x9d\x85\x98\xf0\x9d\x85\xa5\xf0\x9d\x85\xb1\0" /* offset 15181 */
- "\xf0\x9d\x85\x98\xf0\x9d\x85\xa5\xf0\x9d\x85\xb2\0" /* offset 15194 */
- "\xf0\x9d\x86\xb9\xf0\x9d\x85\xa5\0" /* offset 15207 */
- "\xf0\x9d\x86\xba\xf0\x9d\x85\xa5\0" /* offset 15216 */
- "\xf0\x9d\x86\xb9\xf0\x9d\x85\xa5\xf0\x9d\x85\xae\0" /* offset 15225 */
- "\xf0\x9d\x86\xba\xf0\x9d\x85\xa5\xf0\x9d\x85\xae\0" /* offset 15238 */
- "\xf0\x9d\x86\xb9\xf0\x9d\x85\xa5\xf0\x9d\x85\xaf\0" /* offset 15251 */
- "\xf0\x9d\x86\xba\xf0\x9d\x85\xa5\xf0\x9d\x85\xaf\0" /* offset 15264 */
- "\xc4\xb1\0" /* offset 15277 */
- "\xc8\xb7\0" /* offset 15280 */
- "\xce\x91\0" /* offset 15283 */
- "\xce\x92\0" /* offset 15286 */
- "\xce\x94\0" /* offset 15289 */
- "\xce\x95\0" /* offset 15292 */
- "\xce\x96\0" /* offset 15295 */
- "\xce\x97\0" /* offset 15298 */
- "\xce\x99\0" /* offset 15301 */
- "\xce\x9a\0" /* offset 15304 */
- "\xce\x9b\0" /* offset 15307 */
- "\xce\x9c\0" /* offset 15310 */
- "\xce\x9d\0" /* offset 15313 */
- "\xce\x9e\0" /* offset 15316 */
- "\xce\x9f\0" /* offset 15319 */
- "\xce\xa1\0" /* offset 15322 */
- "\xce\xa4\0" /* offset 15325 */
- "\xce\xa6\0" /* offset 15328 */
- "\xce\xa7\0" /* offset 15331 */
- "\xce\xa8\0" /* offset 15334 */
- "\xe2\x88\x87\0" /* offset 15337 */
- "\xce\xb1\0" /* offset 15341 */
- "\xce\xb6\0" /* offset 15344 */
- "\xce\xb7\0" /* offset 15347 */
- "\xce\xbb\0" /* offset 15350 */
- "\xce\xbd\0" /* offset 15353 */
- "\xce\xbe\0" /* offset 15356 */
- "\xce\xbf\0" /* offset 15359 */
- "\xcf\x83\0" /* offset 15362 */
- "\xcf\x84\0" /* offset 15365 */
- "\xcf\x85\0" /* offset 15368 */
- "\xcf\x88\0" /* offset 15371 */
- "\xcf\x89\0" /* offset 15374 */
- "\xe2\x88\x82\0" /* offset 15377 */
- "\xcf\x9c\0" /* offset 15381 */
- "\xcf\x9d\0" /* offset 15384 */
- "\xd9\xae\0" /* offset 15387 */
- "\xda\xa1\0" /* offset 15390 */
- "\xd9\xaf\0" /* offset 15393 */
- "\x30\x2e\0" /* offset 15396 */
- "\x30\x2c\0" /* offset 15399 */
- "\x31\x2c\0" /* offset 15402 */
- "\x32\x2c\0" /* offset 15405 */
- "\x33\x2c\0" /* offset 15408 */
- "\x34\x2c\0" /* offset 15411 */
- "\x35\x2c\0" /* offset 15414 */
- "\x36\x2c\0" /* offset 15417 */
- "\x37\x2c\0" /* offset 15420 */
- "\x38\x2c\0" /* offset 15423 */
- "\x39\x2c\0" /* offset 15426 */
- "\x28\x41\x29\0" /* offset 15429 */
- "\x28\x42\x29\0" /* offset 15433 */
- "\x28\x43\x29\0" /* offset 15437 */
- "\x28\x44\x29\0" /* offset 15441 */
- "\x28\x45\x29\0" /* offset 15445 */
- "\x28\x46\x29\0" /* offset 15449 */
- "\x28\x47\x29\0" /* offset 15453 */
- "\x28\x48\x29\0" /* offset 15457 */
- "\x28\x49\x29\0" /* offset 15461 */
- "\x28\x4a\x29\0" /* offset 15465 */
- "\x28\x4b\x29\0" /* offset 15469 */
- "\x28\x4c\x29\0" /* offset 15473 */
- "\x28\x4d\x29\0" /* offset 15477 */
- "\x28\x4e\x29\0" /* offset 15481 */
- "\x28\x4f\x29\0" /* offset 15485 */
- "\x28\x50\x29\0" /* offset 15489 */
- "\x28\x51\x29\0" /* offset 15493 */
- "\x28\x52\x29\0" /* offset 15497 */
- "\x28\x53\x29\0" /* offset 15501 */
- "\x28\x54\x29\0" /* offset 15505 */
- "\x28\x55\x29\0" /* offset 15509 */
- "\x28\x56\x29\0" /* offset 15513 */
- "\x28\x57\x29\0" /* offset 15517 */
- "\x28\x58\x29\0" /* offset 15521 */
- "\x28\x59\x29\0" /* offset 15525 */
- "\x28\x5a\x29\0" /* offset 15529 */
- "\xe3\x80\x94\x53\xe3\x80\x95\0" /* offset 15533 */
- "\x43\x44\0" /* offset 15541 */
- "\x57\x5a\0" /* offset 15544 */
- "\x48\x56\0" /* offset 15547 */
- "\x53\x44\0" /* offset 15550 */
- "\x53\x53\0" /* offset 15553 */
- "\x50\x50\x56\0" /* offset 15556 */
- "\x57\x43\0" /* offset 15560 */
- "\x4d\x43\0" /* offset 15563 */
- "\x4d\x44\0" /* offset 15566 */
- "\x4d\x52\0" /* offset 15569 */
- "\x44\x4a\0" /* offset 15572 */
- "\xe3\x81\xbb\xe3\x81\x8b\0" /* offset 15575 */
- "\xe3\x82\xb3\xe3\x82\xb3\0" /* offset 15582 */
- "\xe5\xad\x97\0" /* offset 15589 */
- "\xe5\x8f\x8c\0" /* offset 15593 */
- "\xe5\xa4\x9a\0" /* offset 15597 */
- "\xe8\xa7\xa3\0" /* offset 15601 */
- "\xe4\xba\xa4\0" /* offset 15605 */
- "\xe6\x98\xa0\0" /* offset 15609 */
- "\xe7\x84\xa1\0" /* offset 15613 */
- "\xe5\x89\x8d\0" /* offset 15617 */
- "\xe5\xbe\x8c\0" /* offset 15621 */
- "\xe5\x86\x8d\0" /* offset 15625 */
- "\xe6\x96\xb0\0" /* offset 15629 */
- "\xe5\x88\x9d\0" /* offset 15633 */
- "\xe7\xb5\x82\0" /* offset 15637 */
- "\xe8\xb2\xa9\0" /* offset 15641 */
- "\xe5\xa3\xb0\0" /* offset 15645 */
- "\xe5\x90\xb9\0" /* offset 15649 */
- "\xe6\xbc\x94\0" /* offset 15653 */
- "\xe6\x8a\x95\0" /* offset 15657 */
- "\xe6\x8d\x95\0" /* offset 15661 */
- "\xe9\x81\x8a\0" /* offset 15665 */
- "\xe6\x8c\x87\0" /* offset 15669 */
- "\xe6\x89\x93\0" /* offset 15673 */
- "\xe7\xa6\x81\0" /* offset 15677 */
- "\xe7\xa9\xba\0" /* offset 15681 */
- "\xe5\x90\x88\0" /* offset 15685 */
- "\xe6\xba\x80\0" /* offset 15689 */
- "\xe7\x94\xb3\0" /* offset 15693 */
- "\xe5\x89\xb2\0" /* offset 15697 */
- "\xe5\x96\xb6\0" /* offset 15701 */
- "\xe9\x85\x8d\0" /* offset 15705 */
- "\xe3\x80\x94\xe6\x9c\xac\xe3\x80\x95\0" /* offset 15709 */
- "\xe3\x80\x94\xe4\xb8\x89\xe3\x80\x95\0" /* offset 15719 */
- "\xe3\x80\x94\xe4\xba\x8c\xe3\x80\x95\0" /* offset 15729 */
- "\xe3\x80\x94\xe5\xae\x89\xe3\x80\x95\0" /* offset 15739 */
- "\xe3\x80\x94\xe7\x82\xb9\xe3\x80\x95\0" /* offset 15749 */
- "\xe3\x80\x94\xe6\x89\x93\xe3\x80\x95\0" /* offset 15759 */
- "\xe3\x80\x94\xe7\x9b\x97\xe3\x80\x95\0" /* offset 15769 */
- "\xe3\x80\x94\xe5\x8b\x9d\xe3\x80\x95\0" /* offset 15779 */
- "\xe3\x80\x94\xe6\x95\x97\xe3\x80\x95\0" /* offset 15789 */
- "\xe5\xbe\x97\0" /* offset 15799 */
- "\xe5\x8f\xaf\0" /* offset 15803 */
- "\xe4\xb8\xbd\0" /* offset 15807 */
- "\xe4\xb8\xb8\0" /* offset 15811 */
- "\xe4\xb9\x81\0" /* offset 15815 */
- "\xf0\xa0\x84\xa2\0" /* offset 15819 */
- "\xe4\xbd\xa0\0" /* offset 15824 */
- "\xe4\xbe\xbb\0" /* offset 15828 */
- "\xe5\x80\x82\0" /* offset 15832 */
- "\xe5\x81\xba\0" /* offset 15836 */
- "\xe5\x82\x99\0" /* offset 15840 */
- "\xe5\x83\x8f\0" /* offset 15844 */
- "\xe3\x92\x9e\0" /* offset 15848 */
- "\xf0\xa0\x98\xba\0" /* offset 15852 */
- "\xe5\x85\x94\0" /* offset 15857 */
- "\xe5\x85\xa4\0" /* offset 15861 */
- "\xe5\x85\xb7\0" /* offset 15865 */
- "\xf0\xa0\x94\x9c\0" /* offset 15869 */
- "\xe3\x92\xb9\0" /* offset 15874 */
- "\xe5\x85\xa7\0" /* offset 15878 */
- "\xf0\xa0\x95\x8b\0" /* offset 15882 */
- "\xe5\x86\x97\0" /* offset 15887 */
- "\xe5\x86\xa4\0" /* offset 15891 */
- "\xe4\xbb\x8c\0" /* offset 15895 */
- "\xe5\x86\xac\0" /* offset 15899 */
- "\xf0\xa9\x87\x9f\0" /* offset 15903 */
- "\xe5\x88\x83\0" /* offset 15908 */
- "\xe3\x93\x9f\0" /* offset 15912 */
- "\xe5\x88\xbb\0" /* offset 15916 */
- "\xe5\x89\x86\0" /* offset 15920 */
- "\xe5\x89\xb7\0" /* offset 15924 */
- "\xe3\x94\x95\0" /* offset 15928 */
- "\xe5\x8c\x85\0" /* offset 15932 */
- "\xe5\x8c\x86\0" /* offset 15936 */
- "\xe5\x8d\x89\0" /* offset 15940 */
- "\xe5\x8d\x9a\0" /* offset 15944 */
- "\xe5\x8d\xb3\0" /* offset 15948 */
- "\xe5\x8d\xbd\0" /* offset 15952 */
- "\xe5\x8d\xbf\0" /* offset 15956 */
- "\xf0\xa0\xa8\xac\0" /* offset 15960 */
- "\xe7\x81\xb0\0" /* offset 15965 */
- "\xe5\x8f\x8a\0" /* offset 15969 */
- "\xe5\x8f\x9f\0" /* offset 15973 */
- "\xf0\xa0\xad\xa3\0" /* offset 15977 */
- "\xe5\x8f\xab\0" /* offset 15982 */
- "\xe5\x8f\xb1\0" /* offset 15986 */
- "\xe5\x90\x86\0" /* offset 15990 */
- "\xe5\x92\x9e\0" /* offset 15994 */
- "\xe5\x90\xb8\0" /* offset 15998 */
- "\xe5\x91\x88\0" /* offset 16002 */
- "\xe5\x91\xa8\0" /* offset 16006 */
- "\xe5\x92\xa2\0" /* offset 16010 */
- "\xe5\x93\xb6\0" /* offset 16014 */
- "\xe5\x94\x90\0" /* offset 16018 */
- "\xe5\x95\x93\0" /* offset 16022 */
- "\xe5\x95\xa3\0" /* offset 16026 */
- "\xe5\x96\x84\0" /* offset 16030 */
- "\xe5\x96\xab\0" /* offset 16034 */
- "\xe5\x96\xb3\0" /* offset 16038 */
- "\xe5\x97\x82\0" /* offset 16042 */
- "\xe5\x9c\x96\0" /* offset 16046 */
- "\xe5\x9c\x97\0" /* offset 16050 */
- "\xe5\x99\x91\0" /* offset 16054 */
- "\xe5\x99\xb4\0" /* offset 16058 */
- "\xe5\xa3\xae\0" /* offset 16062 */
- "\xe5\x9f\x8e\0" /* offset 16066 */
- "\xe5\x9f\xb4\0" /* offset 16070 */
- "\xe5\xa0\x8d\0" /* offset 16074 */
- "\xe5\x9e\x8b\0" /* offset 16078 */
- "\xe5\xa0\xb2\0" /* offset 16082 */
- "\xe5\xa0\xb1\0" /* offset 16086 */
- "\xe5\xa2\xac\0" /* offset 16090 */
- "\xf0\xa1\x93\xa4\0" /* offset 16094 */
- "\xe5\xa3\xb2\0" /* offset 16099 */
- "\xe5\xa3\xb7\0" /* offset 16103 */
- "\xe5\xa4\x86\0" /* offset 16107 */
- "\xe5\xa4\xa2\0" /* offset 16111 */
- "\xe5\xa5\xa2\0" /* offset 16115 */
- "\xf0\xa1\x9a\xa8\0" /* offset 16119 */
- "\xf0\xa1\x9b\xaa\0" /* offset 16124 */
- "\xe5\xa7\xac\0" /* offset 16129 */
- "\xe5\xa8\x9b\0" /* offset 16133 */
- "\xe5\xa8\xa7\0" /* offset 16137 */
- "\xe5\xa7\x98\0" /* offset 16141 */
- "\xe5\xa9\xa6\0" /* offset 16145 */
- "\xe3\x9b\xae\0" /* offset 16149 */
- "\xe3\x9b\xbc\0" /* offset 16153 */
- "\xe5\xac\x88\0" /* offset 16157 */
- "\xe5\xac\xbe\0" /* offset 16161 */
- "\xf0\xa1\xa7\x88\0" /* offset 16165 */
- "\xe5\xaf\x83\0" /* offset 16170 */
- "\xe5\xaf\x98\0" /* offset 16174 */
- "\xe5\xaf\xb3\0" /* offset 16178 */
- "\xf0\xa1\xac\x98\0" /* offset 16182 */
- "\xe5\xaf\xbf\0" /* offset 16187 */
- "\xe5\xb0\x86\0" /* offset 16191 */
- "\xe5\xbd\x93\0" /* offset 16195 */
- "\xe3\x9e\x81\0" /* offset 16199 */
- "\xe5\xb1\xa0\0" /* offset 16203 */
- "\xe5\xb3\x80\0" /* offset 16207 */
- "\xe5\xb2\x8d\0" /* offset 16211 */
- "\xf0\xa1\xb7\xa4\0" /* offset 16215 */
- "\xe5\xb5\x83\0" /* offset 16220 */
- "\xf0\xa1\xb7\xa6\0" /* offset 16224 */
- "\xe5\xb5\xae\0" /* offset 16229 */
- "\xe5\xb5\xab\0" /* offset 16233 */
- "\xe5\xb5\xbc\0" /* offset 16237 */
- "\xe5\xb7\xa1\0" /* offset 16241 */
- "\xe5\xb7\xa2\0" /* offset 16245 */
- "\xe3\xa0\xaf\0" /* offset 16249 */
- "\xe5\xb7\xbd\0" /* offset 16253 */
- "\xe5\xb8\xa8\0" /* offset 16257 */
- "\xe5\xb8\xbd\0" /* offset 16261 */
- "\xe5\xb9\xa9\0" /* offset 16265 */
- "\xe3\xa1\xa2\0" /* offset 16269 */
- "\xf0\xa2\x86\x83\0" /* offset 16273 */
- "\xe3\xa1\xbc\0" /* offset 16278 */
- "\xe5\xba\xb0\0" /* offset 16282 */
- "\xe5\xba\xb3\0" /* offset 16286 */
- "\xe5\xba\xb6\0" /* offset 16290 */
- "\xf0\xaa\x8e\x92\0" /* offset 16294 */
- "\xf0\xa2\x8c\xb1\0" /* offset 16299 */
- "\xe8\x88\x81\0" /* offset 16304 */
- "\xe5\xbc\xa2\0" /* offset 16308 */
- "\xe3\xa3\x87\0" /* offset 16312 */
- "\xf0\xa3\x8a\xb8\0" /* offset 16316 */
- "\xf0\xa6\x87\x9a\0" /* offset 16321 */
- "\xe5\xbd\xa2\0" /* offset 16326 */
- "\xe5\xbd\xab\0" /* offset 16330 */
- "\xe3\xa3\xa3\0" /* offset 16334 */
- "\xe5\xbe\x9a\0" /* offset 16338 */
- "\xe5\xbf\x8d\0" /* offset 16342 */
- "\xe5\xbf\x97\0" /* offset 16346 */
- "\xe5\xbf\xb9\0" /* offset 16350 */
- "\xe6\x82\x81\0" /* offset 16354 */
- "\xe3\xa4\xba\0" /* offset 16358 */
- "\xe3\xa4\x9c\0" /* offset 16362 */
- "\xf0\xa2\x9b\x94\0" /* offset 16366 */
- "\xe6\x83\x87\0" /* offset 16371 */
- "\xe6\x85\x88\0" /* offset 16375 */
- "\xe6\x85\x8c\0" /* offset 16379 */
- "\xe6\x85\xba\0" /* offset 16383 */
- "\xe6\x86\xb2\0" /* offset 16387 */
- "\xe6\x86\xa4\0" /* offset 16391 */
- "\xe6\x86\xaf\0" /* offset 16395 */
- "\xe6\x87\x9e\0" /* offset 16399 */
- "\xe6\x88\x90\0" /* offset 16403 */
- "\xe6\x88\x9b\0" /* offset 16407 */
- "\xe6\x89\x9d\0" /* offset 16411 */
- "\xe6\x8a\xb1\0" /* offset 16415 */
- "\xe6\x8b\x94\0" /* offset 16419 */
- "\xe6\x8d\x90\0" /* offset 16423 */
- "\xf0\xa2\xac\x8c\0" /* offset 16427 */
- "\xe6\x8c\xbd\0" /* offset 16432 */
- "\xe6\x8b\xbc\0" /* offset 16436 */
- "\xe6\x8d\xa8\0" /* offset 16440 */
- "\xe6\x8e\x83\0" /* offset 16444 */
- "\xe6\x8f\xa4\0" /* offset 16448 */
- "\xf0\xa2\xaf\xb1\0" /* offset 16452 */
- "\xe6\x90\xa2\0" /* offset 16457 */
- "\xe6\x8f\x85\0" /* offset 16461 */
- "\xe6\x8e\xa9\0" /* offset 16465 */
- "\xe3\xa8\xae\0" /* offset 16469 */
- "\xe6\x91\xa9\0" /* offset 16473 */
- "\xe6\x91\xbe\0" /* offset 16477 */
- "\xe6\x92\x9d\0" /* offset 16481 */
- "\xe6\x91\xb7\0" /* offset 16485 */
- "\xe3\xa9\xac\0" /* offset 16489 */
- "\xe6\x95\xac\0" /* offset 16493 */
- "\xf0\xa3\x80\x8a\0" /* offset 16497 */
- "\xe6\x97\xa3\0" /* offset 16502 */
- "\xe6\x9b\xb8\0" /* offset 16506 */
- "\xe6\x99\x89\0" /* offset 16510 */
- "\xe3\xac\x99\0" /* offset 16514 */
- "\xe3\xac\x88\0" /* offset 16518 */
- "\xe3\xab\xa4\0" /* offset 16522 */
- "\xe5\x86\x92\0" /* offset 16526 */
- "\xe5\x86\x95\0" /* offset 16530 */
- "\xe6\x9c\x80\0" /* offset 16534 */
- "\xe6\x9a\x9c\0" /* offset 16538 */
- "\xe8\x82\xad\0" /* offset 16542 */
- "\xe4\x8f\x99\0" /* offset 16546 */
- "\xe6\x9c\xa1\0" /* offset 16550 */
- "\xe6\x9d\x9e\0" /* offset 16554 */
- "\xe6\x9d\x93\0" /* offset 16558 */
- "\xf0\xa3\x8f\x83\0" /* offset 16562 */
- "\xe3\xad\x89\0" /* offset 16567 */
- "\xe6\x9f\xba\0" /* offset 16571 */
- "\xe6\x9e\x85\0" /* offset 16575 */
- "\xe6\xa1\x92\0" /* offset 16579 */
- "\xf0\xa3\x91\xad\0" /* offset 16583 */
- "\xe6\xa2\x8e\0" /* offset 16588 */
- "\xe6\xa0\x9f\0" /* offset 16592 */
- "\xe6\xa4\x94\0" /* offset 16596 */
- "\xe6\xa5\x82\0" /* offset 16600 */
- "\xe6\xa6\xa3\0" /* offset 16604 */
- "\xe6\xa7\xaa\0" /* offset 16608 */
- "\xe6\xaa\xa8\0" /* offset 16612 */
- "\xf0\xa3\x9a\xa3\0" /* offset 16616 */
- "\xe6\xab\x9b\0" /* offset 16621 */
- "\xe3\xb0\x98\0" /* offset 16625 */
- "\xe6\xac\xa1\0" /* offset 16629 */
- "\xf0\xa3\xa2\xa7\0" /* offset 16633 */
- "\xe6\xad\x94\0" /* offset 16638 */
- "\xe3\xb1\x8e\0" /* offset 16642 */
- "\xe6\xad\xb2\0" /* offset 16646 */
- "\xe6\xae\x9f\0" /* offset 16650 */
- "\xe6\xae\xbb\0" /* offset 16654 */
- "\xf0\xa3\xaa\x8d\0" /* offset 16658 */
- "\xf0\xa1\xb4\x8b\0" /* offset 16663 */
- "\xf0\xa3\xab\xba\0" /* offset 16668 */
- "\xe6\xb1\x8e\0" /* offset 16673 */
- "\xf0\xa3\xb2\xbc\0" /* offset 16677 */
- "\xe6\xb2\xbf\0" /* offset 16682 */
- "\xe6\xb3\x8d\0" /* offset 16686 */
- "\xe6\xb1\xa7\0" /* offset 16690 */
- "\xe6\xb4\x96\0" /* offset 16694 */
- "\xe6\xb4\xbe\0" /* offset 16698 */
- "\xe6\xb5\xa9\0" /* offset 16702 */
- "\xe6\xb5\xb8\0" /* offset 16706 */
- "\xe6\xb6\x85\0" /* offset 16710 */
- "\xf0\xa3\xb4\x9e\0" /* offset 16714 */
- "\xe6\xb4\xb4\0" /* offset 16719 */
- "\xe6\xb8\xaf\0" /* offset 16723 */
- "\xe6\xb9\xae\0" /* offset 16727 */
- "\xe3\xb4\xb3\0" /* offset 16731 */
- "\xe6\xbb\x87\0" /* offset 16735 */
- "\xf0\xa3\xbb\x91\0" /* offset 16739 */
- "\xe6\xb7\xb9\0" /* offset 16744 */
- "\xe6\xbd\xae\0" /* offset 16748 */
- "\xf0\xa3\xbd\x9e\0" /* offset 16752 */
- "\xf0\xa3\xbe\x8e\0" /* offset 16757 */
- "\xe6\xbf\x86\0" /* offset 16762 */
- "\xe7\x80\xb9\0" /* offset 16766 */
- "\xe7\x80\x9b\0" /* offset 16770 */
- "\xe3\xb6\x96\0" /* offset 16774 */
- "\xe7\x81\x8a\0" /* offset 16778 */
- "\xe7\x81\xbd\0" /* offset 16782 */
- "\xe7\x81\xb7\0" /* offset 16786 */
- "\xe7\x82\xad\0" /* offset 16790 */
- "\xf0\xa0\x94\xa5\0" /* offset 16794 */
- "\xe7\x85\x85\0" /* offset 16799 */
- "\xf0\xa4\x89\xa3\0" /* offset 16803 */
- "\xe7\x86\x9c\0" /* offset 16808 */
- "\xf0\xa4\x8e\xab\0" /* offset 16812 */
- "\xe7\x88\xa8\0" /* offset 16817 */
- "\xe7\x89\x90\0" /* offset 16821 */
- "\xf0\xa4\x98\x88\0" /* offset 16825 */
- "\xe7\x8a\x80\0" /* offset 16830 */
- "\xe7\x8a\x95\0" /* offset 16834 */
- "\xf0\xa4\x9c\xb5\0" /* offset 16838 */
- "\xf0\xa4\xa0\x94\0" /* offset 16843 */
- "\xe7\x8d\xba\0" /* offset 16848 */
- "\xe7\x8e\x8b\0" /* offset 16852 */
- "\xe3\xba\xac\0" /* offset 16856 */
- "\xe7\x8e\xa5\0" /* offset 16860 */
- "\xe3\xba\xb8\0" /* offset 16864 */
- "\xe7\x91\x87\0" /* offset 16868 */
- "\xe7\x91\x9c\0" /* offset 16872 */
- "\xe7\x92\x85\0" /* offset 16876 */
- "\xe7\x93\x8a\0" /* offset 16880 */
- "\xe3\xbc\x9b\0" /* offset 16884 */
- "\xe7\x94\xa4\0" /* offset 16888 */
- "\xf0\xa4\xb0\xb6\0" /* offset 16892 */
- "\xe7\x94\xbe\0" /* offset 16897 */
- "\xf0\xa4\xb2\x92\0" /* offset 16901 */
- "\xf0\xa2\x86\x9f\0" /* offset 16906 */
- "\xe7\x98\x90\0" /* offset 16911 */
- "\xf0\xa4\xbe\xa1\0" /* offset 16915 */
- "\xf0\xa4\xbe\xb8\0" /* offset 16920 */
- "\xf0\xa5\x81\x84\0" /* offset 16925 */
- "\xe3\xbf\xbc\0" /* offset 16930 */
- "\xe4\x80\x88\0" /* offset 16934 */
- "\xf0\xa5\x83\xb3\0" /* offset 16938 */
- "\xf0\xa5\x83\xb2\0" /* offset 16943 */
- "\xf0\xa5\x84\x99\0" /* offset 16948 */
- "\xf0\xa5\x84\xb3\0" /* offset 16953 */
- "\xe7\x9c\x9e\0" /* offset 16958 */
- "\xe7\x9c\x9f\0" /* offset 16962 */
- "\xe7\x9e\x8b\0" /* offset 16966 */
- "\xe4\x81\x86\0" /* offset 16970 */
- "\xe4\x82\x96\0" /* offset 16974 */
- "\xf0\xa5\x90\x9d\0" /* offset 16978 */
- "\xe7\xa1\x8e\0" /* offset 16983 */
- "\xe4\x83\xa3\0" /* offset 16987 */
- "\xf0\xa5\x98\xa6\0" /* offset 16991 */
- "\xf0\xa5\x9a\x9a\0" /* offset 16996 */
- "\xf0\xa5\x9b\x85\0" /* offset 17001 */
- "\xe7\xa7\xab\0" /* offset 17006 */
- "\xe4\x84\xaf\0" /* offset 17010 */
- "\xe7\xa9\x8a\0" /* offset 17014 */
- "\xe7\xa9\x8f\0" /* offset 17018 */
- "\xf0\xa5\xa5\xbc\0" /* offset 17022 */
- "\xf0\xa5\xaa\xa7\0" /* offset 17027 */
- "\xe7\xab\xae\0" /* offset 17032 */
- "\xe4\x88\x82\0" /* offset 17036 */
- "\xf0\xa5\xae\xab\0" /* offset 17040 */
- "\xe7\xaf\x86\0" /* offset 17045 */
- "\xe7\xaf\x89\0" /* offset 17049 */
- "\xe4\x88\xa7\0" /* offset 17053 */
- "\xf0\xa5\xb2\x80\0" /* offset 17057 */
- "\xe7\xb3\x92\0" /* offset 17062 */
- "\xe4\x8a\xa0\0" /* offset 17066 */
- "\xe7\xb3\xa8\0" /* offset 17070 */
- "\xe7\xb3\xa3\0" /* offset 17074 */
- "\xe7\xb4\x80\0" /* offset 17078 */
- "\xf0\xa5\xbe\x86\0" /* offset 17082 */
- "\xe7\xb5\xa3\0" /* offset 17087 */
- "\xe4\x8c\x81\0" /* offset 17091 */
- "\xe7\xb7\x87\0" /* offset 17095 */
- "\xe7\xb8\x82\0" /* offset 17099 */
- "\xe7\xb9\x85\0" /* offset 17103 */
- "\xe4\x8c\xb4\0" /* offset 17107 */
- "\xf0\xa6\x88\xa8\0" /* offset 17111 */
- "\xf0\xa6\x89\x87\0" /* offset 17116 */
- "\xe4\x8d\x99\0" /* offset 17121 */
- "\xf0\xa6\x8b\x99\0" /* offset 17125 */
- "\xe7\xbd\xba\0" /* offset 17130 */
- "\xf0\xa6\x8c\xbe\0" /* offset 17134 */
- "\xe7\xbe\x95\0" /* offset 17139 */
- "\xe7\xbf\xba\0" /* offset 17143 */
- "\xf0\xa6\x93\x9a\0" /* offset 17147 */
- "\xf0\xa6\x94\xa3\0" /* offset 17152 */
- "\xe8\x81\xa0\0" /* offset 17157 */
- "\xf0\xa6\x96\xa8\0" /* offset 17161 */
- "\xe8\x81\xb0\0" /* offset 17166 */
- "\xf0\xa3\x8d\x9f\0" /* offset 17170 */
- "\xe4\x8f\x95\0" /* offset 17175 */
- "\xe8\x82\xb2\0" /* offset 17179 */
- "\xe8\x84\x83\0" /* offset 17183 */
- "\xe4\x90\x8b\0" /* offset 17187 */
- "\xe8\x84\xbe\0" /* offset 17191 */
- "\xe5\xaa\xb5\0" /* offset 17195 */
- "\xf0\xa6\x9e\xa7\0" /* offset 17199 */
- "\xf0\xa6\x9e\xb5\0" /* offset 17204 */
- "\xf0\xa3\x8e\x93\0" /* offset 17209 */
- "\xf0\xa3\x8e\x9c\0" /* offset 17214 */
- "\xe8\x88\x84\0" /* offset 17219 */
- "\xe8\xbe\x9e\0" /* offset 17223 */
- "\xe4\x91\xab\0" /* offset 17227 */
- "\xe8\x8a\x91\0" /* offset 17231 */
- "\xe8\x8a\x8b\0" /* offset 17235 */
- "\xe8\x8a\x9d\0" /* offset 17239 */
- "\xe5\x8a\xb3\0" /* offset 17243 */
- "\xe8\x8a\xb1\0" /* offset 17247 */
- "\xe8\x8a\xb3\0" /* offset 17251 */
- "\xe8\x8a\xbd\0" /* offset 17255 */
- "\xe8\x8b\xa6\0" /* offset 17259 */
- "\xf0\xa6\xac\xbc\0" /* offset 17263 */
- "\xe8\x8c\x9d\0" /* offset 17268 */
- "\xe8\x8d\xa3\0" /* offset 17272 */
- "\xe8\x8e\xad\0" /* offset 17276 */
- "\xe8\x8c\xa3\0" /* offset 17280 */
- "\xe8\x8e\xbd\0" /* offset 17284 */
- "\xe8\x8f\xa7\0" /* offset 17288 */
- "\xe8\x8d\x93\0" /* offset 17292 */
- "\xe8\x8f\x8a\0" /* offset 17296 */
- "\xe8\x8f\x8c\0" /* offset 17300 */
- "\xe8\x8f\x9c\0" /* offset 17304 */
- "\xf0\xa6\xb0\xb6\0" /* offset 17308 */
- "\xf0\xa6\xb5\xab\0" /* offset 17313 */
- "\xf0\xa6\xb3\x95\0" /* offset 17318 */
- "\xe4\x94\xab\0" /* offset 17323 */
- "\xe8\x93\xb1\0" /* offset 17327 */
- "\xe8\x93\xb3\0" /* offset 17331 */
- "\xe8\x94\x96\0" /* offset 17335 */
- "\xf0\xa7\x8f\x8a\0" /* offset 17339 */
- "\xe8\x95\xa4\0" /* offset 17344 */
- "\xf0\xa6\xbc\xac\0" /* offset 17348 */
- "\xe4\x95\x9d\0" /* offset 17353 */
- "\xe4\x95\xa1\0" /* offset 17357 */
- "\xf0\xa6\xbe\xb1\0" /* offset 17361 */
- "\xf0\xa7\x83\x92\0" /* offset 17366 */
- "\xe4\x95\xab\0" /* offset 17371 */
- "\xe8\x99\x90\0" /* offset 17375 */
- "\xe8\x99\xa7\0" /* offset 17379 */
- "\xe8\x99\xa9\0" /* offset 17383 */
- "\xe8\x9a\xa9\0" /* offset 17387 */
- "\xe8\x9a\x88\0" /* offset 17391 */
- "\xe8\x9c\x8e\0" /* offset 17395 */
- "\xe8\x9b\xa2\0" /* offset 17399 */
- "\xe8\x9c\xa8\0" /* offset 17403 */
- "\xe8\x9d\xab\0" /* offset 17407 */
- "\xe8\x9e\x86\0" /* offset 17411 */
- "\xe4\x97\x97\0" /* offset 17415 */
- "\xe8\x9f\xa1\0" /* offset 17419 */
- "\xe8\xa0\x81\0" /* offset 17423 */
- "\xe4\x97\xb9\0" /* offset 17427 */
- "\xe8\xa1\xa0\0" /* offset 17431 */
- "\xf0\xa7\x99\xa7\0" /* offset 17435 */
- "\xe8\xa3\x97\0" /* offset 17440 */
- "\xe8\xa3\x9e\0" /* offset 17444 */
- "\xe4\x98\xb5\0" /* offset 17448 */
- "\xe8\xa3\xba\0" /* offset 17452 */
- "\xe3\x92\xbb\0" /* offset 17456 */
- "\xf0\xa7\xa2\xae\0" /* offset 17460 */
- "\xf0\xa7\xa5\xa6\0" /* offset 17465 */
- "\xe4\x9a\xbe\0" /* offset 17470 */
- "\xe4\x9b\x87\0" /* offset 17474 */
- "\xe8\xaa\xa0\0" /* offset 17478 */
- "\xf0\xa7\xb2\xa8\0" /* offset 17482 */
- "\xe8\xb2\xab\0" /* offset 17487 */
- "\xe8\xb3\x81\0" /* offset 17491 */
- "\xe8\xb4\x9b\0" /* offset 17495 */
- "\xe8\xb5\xb7\0" /* offset 17499 */
- "\xf0\xa7\xbc\xaf\0" /* offset 17503 */
- "\xf0\xa0\xa0\x84\0" /* offset 17508 */
- "\xe8\xb7\x8b\0" /* offset 17513 */
- "\xe8\xb6\xbc\0" /* offset 17517 */
- "\xe8\xb7\xb0\0" /* offset 17521 */
- "\xf0\xa0\xa3\x9e\0" /* offset 17525 */
- "\xe8\xbb\x94\0" /* offset 17530 */
- "\xf0\xa8\x97\x92\0" /* offset 17534 */
- "\xf0\xa8\x97\xad\0" /* offset 17539 */
- "\xe9\x82\x94\0" /* offset 17544 */
- "\xe9\x83\xb1\0" /* offset 17548 */
- "\xe9\x84\x91\0" /* offset 17552 */
- "\xf0\xa8\x9c\xae\0" /* offset 17556 */
- "\xe9\x84\x9b\0" /* offset 17561 */
- "\xe9\x88\xb8\0" /* offset 17565 */
- "\xe9\x8b\x97\0" /* offset 17569 */
- "\xe9\x8b\x98\0" /* offset 17573 */
- "\xe9\x89\xbc\0" /* offset 17577 */
- "\xe9\x8f\xb9\0" /* offset 17581 */
- "\xe9\x90\x95\0" /* offset 17585 */
- "\xf0\xa8\xaf\xba\0" /* offset 17589 */
- "\xe9\x96\x8b\0" /* offset 17594 */
- "\xe4\xa6\x95\0" /* offset 17598 */
- "\xe9\x96\xb7\0" /* offset 17602 */
- "\xf0\xa8\xb5\xb7\0" /* offset 17606 */
- "\xe4\xa7\xa6\0" /* offset 17611 */
- "\xe9\x9b\x83\0" /* offset 17615 */
- "\xe5\xb6\xb2\0" /* offset 17619 */
- "\xe9\x9c\xa3\0" /* offset 17623 */
- "\xf0\xa9\x85\x85\0" /* offset 17627 */
- "\xf0\xa9\x88\x9a\0" /* offset 17632 */
- "\xe4\xa9\xae\0" /* offset 17637 */
- "\xe4\xa9\xb6\0" /* offset 17641 */
- "\xe9\x9f\xa0\0" /* offset 17645 */
- "\xf0\xa9\x90\x8a\0" /* offset 17649 */
- "\xe4\xaa\xb2\0" /* offset 17654 */
- "\xf0\xa9\x92\x96\0" /* offset 17658 */
- "\xe9\xa0\xa9\0" /* offset 17663 */
- "\xf0\xa9\x96\xb6\0" /* offset 17667 */
- "\xe9\xa3\xa2\0" /* offset 17672 */
- "\xe4\xac\xb3\0" /* offset 17676 */
- "\xe9\xa4\xa9\0" /* offset 17680 */
- "\xe9\xa6\xa7\0" /* offset 17684 */
- "\xe9\xa7\x82\0" /* offset 17688 */
- "\xe9\xa7\xbe\0" /* offset 17692 */
- "\xe4\xaf\x8e\0" /* offset 17696 */
- "\xf0\xa9\xac\xb0\0" /* offset 17700 */
- "\xe9\xb1\x80\0" /* offset 17705 */
- "\xe9\xb3\xbd\0" /* offset 17709 */
- "\xe4\xb3\x8e\0" /* offset 17713 */
- "\xe4\xb3\xad\0" /* offset 17717 */
- "\xe9\xb5\xa7\0" /* offset 17721 */
- "\xf0\xaa\x83\x8e\0" /* offset 17725 */
- "\xe4\xb3\xb8\0" /* offset 17730 */
- "\xf0\xaa\x84\x85\0" /* offset 17734 */
- "\xf0\xaa\x88\x8e\0" /* offset 17739 */
- "\xf0\xaa\x8a\x91\0" /* offset 17744 */
- "\xe4\xb5\x96\0" /* offset 17749 */
- "\xe9\xbb\xbe\0" /* offset 17753 */
- "\xe9\xbc\x85\0" /* offset 17757 */
- "\xe9\xbc\x8f\0" /* offset 17761 */
- "\xe9\xbc\x96\0" /* offset 17765 */
- "\xf0\xaa\x98\x80\0" /* offset 17769 */;
+ "\xcb\x90\0" /* offset 15007 */
+ "\xcb\x91\0" /* offset 15010 */
+ "\xc3\xa6\0" /* offset 15013 */
+ "\xca\x99\0" /* offset 15016 */
+ "\xc9\x93\0" /* offset 15019 */
+ "\xca\xa3\0" /* offset 15022 */
+ "\xea\xad\xa6\0" /* offset 15025 */
+ "\xca\xa5\0" /* offset 15029 */
+ "\xca\xa4\0" /* offset 15032 */
+ "\xc9\x96\0" /* offset 15035 */
+ "\xc9\x97\0" /* offset 15038 */
+ "\xe1\xb6\x91\0" /* offset 15041 */
+ "\xc9\x98\0" /* offset 15045 */
+ "\xc9\x9e\0" /* offset 15048 */
+ "\xca\xa9\0" /* offset 15051 */
+ "\xc9\xa4\0" /* offset 15054 */
+ "\xc9\xa2\0" /* offset 15057 */
+ "\xc9\xa0\0" /* offset 15060 */
+ "\xca\x9b\0" /* offset 15063 */
+ "\xca\x9c\0" /* offset 15066 */
+ "\xc9\xa7\0" /* offset 15069 */
+ "\xca\x84\0" /* offset 15072 */
+ "\xca\xaa\0" /* offset 15075 */
+ "\xca\xab\0" /* offset 15078 */
+ "\xc9\xac\0" /* offset 15081 */
+ "\xf0\x9d\xbc\x84\0" /* offset 15084 */
+ "\xea\x9e\x8e\0" /* offset 15089 */
+ "\xc9\xae\0" /* offset 15093 */
+ "\xf0\x9d\xbc\x85\0" /* offset 15096 */
+ "\xca\x8e\0" /* offset 15101 */
+ "\xf0\x9d\xbc\x86\0" /* offset 15104 */
+ "\xc3\xb8\0" /* offset 15109 */
+ "\xc9\xb6\0" /* offset 15112 */
+ "\xc9\xb7\0" /* offset 15115 */
+ "\xc9\xba\0" /* offset 15118 */
+ "\xf0\x9d\xbc\x88\0" /* offset 15121 */
+ "\xc9\xbd\0" /* offset 15126 */
+ "\xc9\xbe\0" /* offset 15129 */
+ "\xca\x80\0" /* offset 15132 */
+ "\xca\xa8\0" /* offset 15135 */
+ "\xca\xa6\0" /* offset 15138 */
+ "\xea\xad\xa7\0" /* offset 15141 */
+ "\xca\xa7\0" /* offset 15145 */
+ "\xca\x88\0" /* offset 15148 */
+ "\xe2\xb1\xb1\0" /* offset 15151 */
+ "\xca\x8f\0" /* offset 15155 */
+ "\xca\xa1\0" /* offset 15158 */
+ "\xca\xa2\0" /* offset 15161 */
+ "\xca\x98\0" /* offset 15164 */
+ "\xc7\x80\0" /* offset 15167 */
+ "\xc7\x81\0" /* offset 15170 */
+ "\xc7\x82\0" /* offset 15173 */
+ "\xf0\x9d\xbc\x8a\0" /* offset 15176 */
+ "\xf0\x9d\xbc\x9e\0" /* offset 15181 */
+ "\xf0\x91\x82\x99\xf0\x91\x82\xba\0" /* offset 15186 */
+ "\xf0\x91\x82\x9b\xf0\x91\x82\xba\0" /* offset 15195 */
+ "\xf0\x91\x82\xa5\xf0\x91\x82\xba\0" /* offset 15204 */
+ "\xf0\x91\x84\xb1\xf0\x91\x84\xa7\0" /* offset 15213 */
+ "\xf0\x91\x84\xb2\xf0\x91\x84\xa7\0" /* offset 15222 */
+ "\xf0\x91\x8d\x87\xf0\x91\x8c\xbe\0" /* offset 15231 */
+ "\xf0\x91\x8d\x87\xf0\x91\x8d\x97\0" /* offset 15240 */
+ "\xf0\x91\x92\xb9\xf0\x91\x92\xba\0" /* offset 15249 */
+ "\xf0\x91\x92\xb9\xf0\x91\x92\xb0\0" /* offset 15258 */
+ "\xf0\x91\x92\xb9\xf0\x91\x92\xbd\0" /* offset 15267 */
+ "\xf0\x91\x96\xb8\xf0\x91\x96\xaf\0" /* offset 15276 */
+ "\xf0\x91\x96\xb9\xf0\x91\x96\xaf\0" /* offset 15285 */
+ "\xf0\x91\xa4\xb5\xf0\x91\xa4\xb0\0" /* offset 15294 */
+ "\xf0\x9d\x85\x97\xf0\x9d\x85\xa5\0" /* offset 15303 */
+ "\xf0\x9d\x85\x98\xf0\x9d\x85\xa5\0" /* offset 15312 */
+ "\xf0\x9d\x85\x98\xf0\x9d\x85\xa5\xf0\x9d\x85\xae\0" /* offset 15321 */
+ "\xf0\x9d\x85\x98\xf0\x9d\x85\xa5\xf0\x9d\x85\xaf\0" /* offset 15334 */
+ "\xf0\x9d\x85\x98\xf0\x9d\x85\xa5\xf0\x9d\x85\xb0\0" /* offset 15347 */
+ "\xf0\x9d\x85\x98\xf0\x9d\x85\xa5\xf0\x9d\x85\xb1\0" /* offset 15360 */
+ "\xf0\x9d\x85\x98\xf0\x9d\x85\xa5\xf0\x9d\x85\xb2\0" /* offset 15373 */
+ "\xf0\x9d\x86\xb9\xf0\x9d\x85\xa5\0" /* offset 15386 */
+ "\xf0\x9d\x86\xba\xf0\x9d\x85\xa5\0" /* offset 15395 */
+ "\xf0\x9d\x86\xb9\xf0\x9d\x85\xa5\xf0\x9d\x85\xae\0" /* offset 15404 */
+ "\xf0\x9d\x86\xba\xf0\x9d\x85\xa5\xf0\x9d\x85\xae\0" /* offset 15417 */
+ "\xf0\x9d\x86\xb9\xf0\x9d\x85\xa5\xf0\x9d\x85\xaf\0" /* offset 15430 */
+ "\xf0\x9d\x86\xba\xf0\x9d\x85\xa5\xf0\x9d\x85\xaf\0" /* offset 15443 */
+ "\xc4\xb1\0" /* offset 15456 */
+ "\xc8\xb7\0" /* offset 15459 */
+ "\xce\x91\0" /* offset 15462 */
+ "\xce\x92\0" /* offset 15465 */
+ "\xce\x94\0" /* offset 15468 */
+ "\xce\x95\0" /* offset 15471 */
+ "\xce\x96\0" /* offset 15474 */
+ "\xce\x97\0" /* offset 15477 */
+ "\xce\x99\0" /* offset 15480 */
+ "\xce\x9a\0" /* offset 15483 */
+ "\xce\x9b\0" /* offset 15486 */
+ "\xce\x9c\0" /* offset 15489 */
+ "\xce\x9d\0" /* offset 15492 */
+ "\xce\x9e\0" /* offset 15495 */
+ "\xce\x9f\0" /* offset 15498 */
+ "\xce\xa1\0" /* offset 15501 */
+ "\xce\xa4\0" /* offset 15504 */
+ "\xce\xa6\0" /* offset 15507 */
+ "\xce\xa7\0" /* offset 15510 */
+ "\xce\xa8\0" /* offset 15513 */
+ "\xe2\x88\x87\0" /* offset 15516 */
+ "\xce\xb1\0" /* offset 15520 */
+ "\xce\xb6\0" /* offset 15523 */
+ "\xce\xb7\0" /* offset 15526 */
+ "\xce\xbb\0" /* offset 15529 */
+ "\xce\xbd\0" /* offset 15532 */
+ "\xce\xbe\0" /* offset 15535 */
+ "\xce\xbf\0" /* offset 15538 */
+ "\xcf\x83\0" /* offset 15541 */
+ "\xcf\x84\0" /* offset 15544 */
+ "\xcf\x85\0" /* offset 15547 */
+ "\xcf\x88\0" /* offset 15550 */
+ "\xcf\x89\0" /* offset 15553 */
+ "\xe2\x88\x82\0" /* offset 15556 */
+ "\xcf\x9c\0" /* offset 15560 */
+ "\xcf\x9d\0" /* offset 15563 */
+ "\xd9\xae\0" /* offset 15566 */
+ "\xda\xa1\0" /* offset 15569 */
+ "\xd9\xaf\0" /* offset 15572 */
+ "\x30\x2e\0" /* offset 15575 */
+ "\x30\x2c\0" /* offset 15578 */
+ "\x31\x2c\0" /* offset 15581 */
+ "\x32\x2c\0" /* offset 15584 */
+ "\x33\x2c\0" /* offset 15587 */
+ "\x34\x2c\0" /* offset 15590 */
+ "\x35\x2c\0" /* offset 15593 */
+ "\x36\x2c\0" /* offset 15596 */
+ "\x37\x2c\0" /* offset 15599 */
+ "\x38\x2c\0" /* offset 15602 */
+ "\x39\x2c\0" /* offset 15605 */
+ "\x28\x41\x29\0" /* offset 15608 */
+ "\x28\x42\x29\0" /* offset 15612 */
+ "\x28\x43\x29\0" /* offset 15616 */
+ "\x28\x44\x29\0" /* offset 15620 */
+ "\x28\x45\x29\0" /* offset 15624 */
+ "\x28\x46\x29\0" /* offset 15628 */
+ "\x28\x47\x29\0" /* offset 15632 */
+ "\x28\x48\x29\0" /* offset 15636 */
+ "\x28\x49\x29\0" /* offset 15640 */
+ "\x28\x4a\x29\0" /* offset 15644 */
+ "\x28\x4b\x29\0" /* offset 15648 */
+ "\x28\x4c\x29\0" /* offset 15652 */
+ "\x28\x4d\x29\0" /* offset 15656 */
+ "\x28\x4e\x29\0" /* offset 15660 */
+ "\x28\x4f\x29\0" /* offset 15664 */
+ "\x28\x50\x29\0" /* offset 15668 */
+ "\x28\x51\x29\0" /* offset 15672 */
+ "\x28\x52\x29\0" /* offset 15676 */
+ "\x28\x53\x29\0" /* offset 15680 */
+ "\x28\x54\x29\0" /* offset 15684 */
+ "\x28\x55\x29\0" /* offset 15688 */
+ "\x28\x56\x29\0" /* offset 15692 */
+ "\x28\x57\x29\0" /* offset 15696 */
+ "\x28\x58\x29\0" /* offset 15700 */
+ "\x28\x59\x29\0" /* offset 15704 */
+ "\x28\x5a\x29\0" /* offset 15708 */
+ "\xe3\x80\x94\x53\xe3\x80\x95\0" /* offset 15712 */
+ "\x43\x44\0" /* offset 15720 */
+ "\x57\x5a\0" /* offset 15723 */
+ "\x48\x56\0" /* offset 15726 */
+ "\x53\x44\0" /* offset 15729 */
+ "\x53\x53\0" /* offset 15732 */
+ "\x50\x50\x56\0" /* offset 15735 */
+ "\x57\x43\0" /* offset 15739 */
+ "\x4d\x43\0" /* offset 15742 */
+ "\x4d\x44\0" /* offset 15745 */
+ "\x4d\x52\0" /* offset 15748 */
+ "\x44\x4a\0" /* offset 15751 */
+ "\xe3\x81\xbb\xe3\x81\x8b\0" /* offset 15754 */
+ "\xe3\x82\xb3\xe3\x82\xb3\0" /* offset 15761 */
+ "\xe5\xad\x97\0" /* offset 15768 */
+ "\xe5\x8f\x8c\0" /* offset 15772 */
+ "\xe5\xa4\x9a\0" /* offset 15776 */
+ "\xe8\xa7\xa3\0" /* offset 15780 */
+ "\xe4\xba\xa4\0" /* offset 15784 */
+ "\xe6\x98\xa0\0" /* offset 15788 */
+ "\xe7\x84\xa1\0" /* offset 15792 */
+ "\xe5\x89\x8d\0" /* offset 15796 */
+ "\xe5\xbe\x8c\0" /* offset 15800 */
+ "\xe5\x86\x8d\0" /* offset 15804 */
+ "\xe6\x96\xb0\0" /* offset 15808 */
+ "\xe5\x88\x9d\0" /* offset 15812 */
+ "\xe7\xb5\x82\0" /* offset 15816 */
+ "\xe8\xb2\xa9\0" /* offset 15820 */
+ "\xe5\xa3\xb0\0" /* offset 15824 */
+ "\xe5\x90\xb9\0" /* offset 15828 */
+ "\xe6\xbc\x94\0" /* offset 15832 */
+ "\xe6\x8a\x95\0" /* offset 15836 */
+ "\xe6\x8d\x95\0" /* offset 15840 */
+ "\xe9\x81\x8a\0" /* offset 15844 */
+ "\xe6\x8c\x87\0" /* offset 15848 */
+ "\xe6\x89\x93\0" /* offset 15852 */
+ "\xe7\xa6\x81\0" /* offset 15856 */
+ "\xe7\xa9\xba\0" /* offset 15860 */
+ "\xe5\x90\x88\0" /* offset 15864 */
+ "\xe6\xba\x80\0" /* offset 15868 */
+ "\xe7\x94\xb3\0" /* offset 15872 */
+ "\xe5\x89\xb2\0" /* offset 15876 */
+ "\xe5\x96\xb6\0" /* offset 15880 */
+ "\xe9\x85\x8d\0" /* offset 15884 */
+ "\xe3\x80\x94\xe6\x9c\xac\xe3\x80\x95\0" /* offset 15888 */
+ "\xe3\x80\x94\xe4\xb8\x89\xe3\x80\x95\0" /* offset 15898 */
+ "\xe3\x80\x94\xe4\xba\x8c\xe3\x80\x95\0" /* offset 15908 */
+ "\xe3\x80\x94\xe5\xae\x89\xe3\x80\x95\0" /* offset 15918 */
+ "\xe3\x80\x94\xe7\x82\xb9\xe3\x80\x95\0" /* offset 15928 */
+ "\xe3\x80\x94\xe6\x89\x93\xe3\x80\x95\0" /* offset 15938 */
+ "\xe3\x80\x94\xe7\x9b\x97\xe3\x80\x95\0" /* offset 15948 */
+ "\xe3\x80\x94\xe5\x8b\x9d\xe3\x80\x95\0" /* offset 15958 */
+ "\xe3\x80\x94\xe6\x95\x97\xe3\x80\x95\0" /* offset 15968 */
+ "\xe5\xbe\x97\0" /* offset 15978 */
+ "\xe5\x8f\xaf\0" /* offset 15982 */
+ "\xe4\xb8\xbd\0" /* offset 15986 */
+ "\xe4\xb8\xb8\0" /* offset 15990 */
+ "\xe4\xb9\x81\0" /* offset 15994 */
+ "\xf0\xa0\x84\xa2\0" /* offset 15998 */
+ "\xe4\xbd\xa0\0" /* offset 16003 */
+ "\xe4\xbe\xbb\0" /* offset 16007 */
+ "\xe5\x80\x82\0" /* offset 16011 */
+ "\xe5\x81\xba\0" /* offset 16015 */
+ "\xe5\x82\x99\0" /* offset 16019 */
+ "\xe5\x83\x8f\0" /* offset 16023 */
+ "\xe3\x92\x9e\0" /* offset 16027 */
+ "\xf0\xa0\x98\xba\0" /* offset 16031 */
+ "\xe5\x85\x94\0" /* offset 16036 */
+ "\xe5\x85\xa4\0" /* offset 16040 */
+ "\xe5\x85\xb7\0" /* offset 16044 */
+ "\xf0\xa0\x94\x9c\0" /* offset 16048 */
+ "\xe3\x92\xb9\0" /* offset 16053 */
+ "\xe5\x85\xa7\0" /* offset 16057 */
+ "\xf0\xa0\x95\x8b\0" /* offset 16061 */
+ "\xe5\x86\x97\0" /* offset 16066 */
+ "\xe5\x86\xa4\0" /* offset 16070 */
+ "\xe4\xbb\x8c\0" /* offset 16074 */
+ "\xe5\x86\xac\0" /* offset 16078 */
+ "\xf0\xa9\x87\x9f\0" /* offset 16082 */
+ "\xe5\x88\x83\0" /* offset 16087 */
+ "\xe3\x93\x9f\0" /* offset 16091 */
+ "\xe5\x88\xbb\0" /* offset 16095 */
+ "\xe5\x89\x86\0" /* offset 16099 */
+ "\xe5\x89\xb7\0" /* offset 16103 */
+ "\xe3\x94\x95\0" /* offset 16107 */
+ "\xe5\x8c\x85\0" /* offset 16111 */
+ "\xe5\x8c\x86\0" /* offset 16115 */
+ "\xe5\x8d\x89\0" /* offset 16119 */
+ "\xe5\x8d\x9a\0" /* offset 16123 */
+ "\xe5\x8d\xb3\0" /* offset 16127 */
+ "\xe5\x8d\xbd\0" /* offset 16131 */
+ "\xe5\x8d\xbf\0" /* offset 16135 */
+ "\xf0\xa0\xa8\xac\0" /* offset 16139 */
+ "\xe7\x81\xb0\0" /* offset 16144 */
+ "\xe5\x8f\x8a\0" /* offset 16148 */
+ "\xe5\x8f\x9f\0" /* offset 16152 */
+ "\xf0\xa0\xad\xa3\0" /* offset 16156 */
+ "\xe5\x8f\xab\0" /* offset 16161 */
+ "\xe5\x8f\xb1\0" /* offset 16165 */
+ "\xe5\x90\x86\0" /* offset 16169 */
+ "\xe5\x92\x9e\0" /* offset 16173 */
+ "\xe5\x90\xb8\0" /* offset 16177 */
+ "\xe5\x91\x88\0" /* offset 16181 */
+ "\xe5\x91\xa8\0" /* offset 16185 */
+ "\xe5\x92\xa2\0" /* offset 16189 */
+ "\xe5\x93\xb6\0" /* offset 16193 */
+ "\xe5\x94\x90\0" /* offset 16197 */
+ "\xe5\x95\x93\0" /* offset 16201 */
+ "\xe5\x95\xa3\0" /* offset 16205 */
+ "\xe5\x96\x84\0" /* offset 16209 */
+ "\xe5\x96\xab\0" /* offset 16213 */
+ "\xe5\x96\xb3\0" /* offset 16217 */
+ "\xe5\x97\x82\0" /* offset 16221 */
+ "\xe5\x9c\x96\0" /* offset 16225 */
+ "\xe5\x9c\x97\0" /* offset 16229 */
+ "\xe5\x99\x91\0" /* offset 16233 */
+ "\xe5\x99\xb4\0" /* offset 16237 */
+ "\xe5\xa3\xae\0" /* offset 16241 */
+ "\xe5\x9f\x8e\0" /* offset 16245 */
+ "\xe5\x9f\xb4\0" /* offset 16249 */
+ "\xe5\xa0\x8d\0" /* offset 16253 */
+ "\xe5\x9e\x8b\0" /* offset 16257 */
+ "\xe5\xa0\xb2\0" /* offset 16261 */
+ "\xe5\xa0\xb1\0" /* offset 16265 */
+ "\xe5\xa2\xac\0" /* offset 16269 */
+ "\xf0\xa1\x93\xa4\0" /* offset 16273 */
+ "\xe5\xa3\xb2\0" /* offset 16278 */
+ "\xe5\xa3\xb7\0" /* offset 16282 */
+ "\xe5\xa4\x86\0" /* offset 16286 */
+ "\xe5\xa4\xa2\0" /* offset 16290 */
+ "\xe5\xa5\xa2\0" /* offset 16294 */
+ "\xf0\xa1\x9a\xa8\0" /* offset 16298 */
+ "\xf0\xa1\x9b\xaa\0" /* offset 16303 */
+ "\xe5\xa7\xac\0" /* offset 16308 */
+ "\xe5\xa8\x9b\0" /* offset 16312 */
+ "\xe5\xa8\xa7\0" /* offset 16316 */
+ "\xe5\xa7\x98\0" /* offset 16320 */
+ "\xe5\xa9\xa6\0" /* offset 16324 */
+ "\xe3\x9b\xae\0" /* offset 16328 */
+ "\xe3\x9b\xbc\0" /* offset 16332 */
+ "\xe5\xac\x88\0" /* offset 16336 */
+ "\xe5\xac\xbe\0" /* offset 16340 */
+ "\xf0\xa1\xa7\x88\0" /* offset 16344 */
+ "\xe5\xaf\x83\0" /* offset 16349 */
+ "\xe5\xaf\x98\0" /* offset 16353 */
+ "\xe5\xaf\xb3\0" /* offset 16357 */
+ "\xf0\xa1\xac\x98\0" /* offset 16361 */
+ "\xe5\xaf\xbf\0" /* offset 16366 */
+ "\xe5\xb0\x86\0" /* offset 16370 */
+ "\xe5\xbd\x93\0" /* offset 16374 */
+ "\xe3\x9e\x81\0" /* offset 16378 */
+ "\xe5\xb1\xa0\0" /* offset 16382 */
+ "\xe5\xb3\x80\0" /* offset 16386 */
+ "\xe5\xb2\x8d\0" /* offset 16390 */
+ "\xf0\xa1\xb7\xa4\0" /* offset 16394 */
+ "\xe5\xb5\x83\0" /* offset 16399 */
+ "\xf0\xa1\xb7\xa6\0" /* offset 16403 */
+ "\xe5\xb5\xae\0" /* offset 16408 */
+ "\xe5\xb5\xab\0" /* offset 16412 */
+ "\xe5\xb5\xbc\0" /* offset 16416 */
+ "\xe5\xb7\xa1\0" /* offset 16420 */
+ "\xe5\xb7\xa2\0" /* offset 16424 */
+ "\xe3\xa0\xaf\0" /* offset 16428 */
+ "\xe5\xb7\xbd\0" /* offset 16432 */
+ "\xe5\xb8\xa8\0" /* offset 16436 */
+ "\xe5\xb8\xbd\0" /* offset 16440 */
+ "\xe5\xb9\xa9\0" /* offset 16444 */
+ "\xe3\xa1\xa2\0" /* offset 16448 */
+ "\xf0\xa2\x86\x83\0" /* offset 16452 */
+ "\xe3\xa1\xbc\0" /* offset 16457 */
+ "\xe5\xba\xb0\0" /* offset 16461 */
+ "\xe5\xba\xb3\0" /* offset 16465 */
+ "\xe5\xba\xb6\0" /* offset 16469 */
+ "\xf0\xaa\x8e\x92\0" /* offset 16473 */
+ "\xf0\xa2\x8c\xb1\0" /* offset 16478 */
+ "\xe8\x88\x81\0" /* offset 16483 */
+ "\xe5\xbc\xa2\0" /* offset 16487 */
+ "\xe3\xa3\x87\0" /* offset 16491 */
+ "\xf0\xa3\x8a\xb8\0" /* offset 16495 */
+ "\xf0\xa6\x87\x9a\0" /* offset 16500 */
+ "\xe5\xbd\xa2\0" /* offset 16505 */
+ "\xe5\xbd\xab\0" /* offset 16509 */
+ "\xe3\xa3\xa3\0" /* offset 16513 */
+ "\xe5\xbe\x9a\0" /* offset 16517 */
+ "\xe5\xbf\x8d\0" /* offset 16521 */
+ "\xe5\xbf\x97\0" /* offset 16525 */
+ "\xe5\xbf\xb9\0" /* offset 16529 */
+ "\xe6\x82\x81\0" /* offset 16533 */
+ "\xe3\xa4\xba\0" /* offset 16537 */
+ "\xe3\xa4\x9c\0" /* offset 16541 */
+ "\xf0\xa2\x9b\x94\0" /* offset 16545 */
+ "\xe6\x83\x87\0" /* offset 16550 */
+ "\xe6\x85\x88\0" /* offset 16554 */
+ "\xe6\x85\x8c\0" /* offset 16558 */
+ "\xe6\x85\xba\0" /* offset 16562 */
+ "\xe6\x86\xb2\0" /* offset 16566 */
+ "\xe6\x86\xa4\0" /* offset 16570 */
+ "\xe6\x86\xaf\0" /* offset 16574 */
+ "\xe6\x87\x9e\0" /* offset 16578 */
+ "\xe6\x88\x90\0" /* offset 16582 */
+ "\xe6\x88\x9b\0" /* offset 16586 */
+ "\xe6\x89\x9d\0" /* offset 16590 */
+ "\xe6\x8a\xb1\0" /* offset 16594 */
+ "\xe6\x8b\x94\0" /* offset 16598 */
+ "\xe6\x8d\x90\0" /* offset 16602 */
+ "\xf0\xa2\xac\x8c\0" /* offset 16606 */
+ "\xe6\x8c\xbd\0" /* offset 16611 */
+ "\xe6\x8b\xbc\0" /* offset 16615 */
+ "\xe6\x8d\xa8\0" /* offset 16619 */
+ "\xe6\x8e\x83\0" /* offset 16623 */
+ "\xe6\x8f\xa4\0" /* offset 16627 */
+ "\xf0\xa2\xaf\xb1\0" /* offset 16631 */
+ "\xe6\x90\xa2\0" /* offset 16636 */
+ "\xe6\x8f\x85\0" /* offset 16640 */
+ "\xe6\x8e\xa9\0" /* offset 16644 */
+ "\xe3\xa8\xae\0" /* offset 16648 */
+ "\xe6\x91\xa9\0" /* offset 16652 */
+ "\xe6\x91\xbe\0" /* offset 16656 */
+ "\xe6\x92\x9d\0" /* offset 16660 */
+ "\xe6\x91\xb7\0" /* offset 16664 */
+ "\xe3\xa9\xac\0" /* offset 16668 */
+ "\xe6\x95\xac\0" /* offset 16672 */
+ "\xf0\xa3\x80\x8a\0" /* offset 16676 */
+ "\xe6\x97\xa3\0" /* offset 16681 */
+ "\xe6\x9b\xb8\0" /* offset 16685 */
+ "\xe6\x99\x89\0" /* offset 16689 */
+ "\xe3\xac\x99\0" /* offset 16693 */
+ "\xe3\xac\x88\0" /* offset 16697 */
+ "\xe3\xab\xa4\0" /* offset 16701 */
+ "\xe5\x86\x92\0" /* offset 16705 */
+ "\xe5\x86\x95\0" /* offset 16709 */
+ "\xe6\x9c\x80\0" /* offset 16713 */
+ "\xe6\x9a\x9c\0" /* offset 16717 */
+ "\xe8\x82\xad\0" /* offset 16721 */
+ "\xe4\x8f\x99\0" /* offset 16725 */
+ "\xe6\x9c\xa1\0" /* offset 16729 */
+ "\xe6\x9d\x9e\0" /* offset 16733 */
+ "\xe6\x9d\x93\0" /* offset 16737 */
+ "\xf0\xa3\x8f\x83\0" /* offset 16741 */
+ "\xe3\xad\x89\0" /* offset 16746 */
+ "\xe6\x9f\xba\0" /* offset 16750 */
+ "\xe6\x9e\x85\0" /* offset 16754 */
+ "\xe6\xa1\x92\0" /* offset 16758 */
+ "\xf0\xa3\x91\xad\0" /* offset 16762 */
+ "\xe6\xa2\x8e\0" /* offset 16767 */
+ "\xe6\xa0\x9f\0" /* offset 16771 */
+ "\xe6\xa4\x94\0" /* offset 16775 */
+ "\xe6\xa5\x82\0" /* offset 16779 */
+ "\xe6\xa6\xa3\0" /* offset 16783 */
+ "\xe6\xa7\xaa\0" /* offset 16787 */
+ "\xe6\xaa\xa8\0" /* offset 16791 */
+ "\xf0\xa3\x9a\xa3\0" /* offset 16795 */
+ "\xe6\xab\x9b\0" /* offset 16800 */
+ "\xe3\xb0\x98\0" /* offset 16804 */
+ "\xe6\xac\xa1\0" /* offset 16808 */
+ "\xf0\xa3\xa2\xa7\0" /* offset 16812 */
+ "\xe6\xad\x94\0" /* offset 16817 */
+ "\xe3\xb1\x8e\0" /* offset 16821 */
+ "\xe6\xad\xb2\0" /* offset 16825 */
+ "\xe6\xae\x9f\0" /* offset 16829 */
+ "\xe6\xae\xbb\0" /* offset 16833 */
+ "\xf0\xa3\xaa\x8d\0" /* offset 16837 */
+ "\xf0\xa1\xb4\x8b\0" /* offset 16842 */
+ "\xf0\xa3\xab\xba\0" /* offset 16847 */
+ "\xe6\xb1\x8e\0" /* offset 16852 */
+ "\xf0\xa3\xb2\xbc\0" /* offset 16856 */
+ "\xe6\xb2\xbf\0" /* offset 16861 */
+ "\xe6\xb3\x8d\0" /* offset 16865 */
+ "\xe6\xb1\xa7\0" /* offset 16869 */
+ "\xe6\xb4\x96\0" /* offset 16873 */
+ "\xe6\xb4\xbe\0" /* offset 16877 */
+ "\xe6\xb5\xa9\0" /* offset 16881 */
+ "\xe6\xb5\xb8\0" /* offset 16885 */
+ "\xe6\xb6\x85\0" /* offset 16889 */
+ "\xf0\xa3\xb4\x9e\0" /* offset 16893 */
+ "\xe6\xb4\xb4\0" /* offset 16898 */
+ "\xe6\xb8\xaf\0" /* offset 16902 */
+ "\xe6\xb9\xae\0" /* offset 16906 */
+ "\xe3\xb4\xb3\0" /* offset 16910 */
+ "\xe6\xbb\x87\0" /* offset 16914 */
+ "\xf0\xa3\xbb\x91\0" /* offset 16918 */
+ "\xe6\xb7\xb9\0" /* offset 16923 */
+ "\xe6\xbd\xae\0" /* offset 16927 */
+ "\xf0\xa3\xbd\x9e\0" /* offset 16931 */
+ "\xf0\xa3\xbe\x8e\0" /* offset 16936 */
+ "\xe6\xbf\x86\0" /* offset 16941 */
+ "\xe7\x80\xb9\0" /* offset 16945 */
+ "\xe7\x80\x9b\0" /* offset 16949 */
+ "\xe3\xb6\x96\0" /* offset 16953 */
+ "\xe7\x81\x8a\0" /* offset 16957 */
+ "\xe7\x81\xbd\0" /* offset 16961 */
+ "\xe7\x81\xb7\0" /* offset 16965 */
+ "\xe7\x82\xad\0" /* offset 16969 */
+ "\xf0\xa0\x94\xa5\0" /* offset 16973 */
+ "\xe7\x85\x85\0" /* offset 16978 */
+ "\xf0\xa4\x89\xa3\0" /* offset 16982 */
+ "\xe7\x86\x9c\0" /* offset 16987 */
+ "\xf0\xa4\x8e\xab\0" /* offset 16991 */
+ "\xe7\x88\xa8\0" /* offset 16996 */
+ "\xe7\x89\x90\0" /* offset 17000 */
+ "\xf0\xa4\x98\x88\0" /* offset 17004 */
+ "\xe7\x8a\x80\0" /* offset 17009 */
+ "\xe7\x8a\x95\0" /* offset 17013 */
+ "\xf0\xa4\x9c\xb5\0" /* offset 17017 */
+ "\xf0\xa4\xa0\x94\0" /* offset 17022 */
+ "\xe7\x8d\xba\0" /* offset 17027 */
+ "\xe7\x8e\x8b\0" /* offset 17031 */
+ "\xe3\xba\xac\0" /* offset 17035 */
+ "\xe7\x8e\xa5\0" /* offset 17039 */
+ "\xe3\xba\xb8\0" /* offset 17043 */
+ "\xe7\x91\x87\0" /* offset 17047 */
+ "\xe7\x91\x9c\0" /* offset 17051 */
+ "\xe7\x92\x85\0" /* offset 17055 */
+ "\xe7\x93\x8a\0" /* offset 17059 */
+ "\xe3\xbc\x9b\0" /* offset 17063 */
+ "\xe7\x94\xa4\0" /* offset 17067 */
+ "\xf0\xa4\xb0\xb6\0" /* offset 17071 */
+ "\xe7\x94\xbe\0" /* offset 17076 */
+ "\xf0\xa4\xb2\x92\0" /* offset 17080 */
+ "\xf0\xa2\x86\x9f\0" /* offset 17085 */
+ "\xe7\x98\x90\0" /* offset 17090 */
+ "\xf0\xa4\xbe\xa1\0" /* offset 17094 */
+ "\xf0\xa4\xbe\xb8\0" /* offset 17099 */
+ "\xf0\xa5\x81\x84\0" /* offset 17104 */
+ "\xe3\xbf\xbc\0" /* offset 17109 */
+ "\xe4\x80\x88\0" /* offset 17113 */
+ "\xf0\xa5\x83\xb3\0" /* offset 17117 */
+ "\xf0\xa5\x83\xb2\0" /* offset 17122 */
+ "\xf0\xa5\x84\x99\0" /* offset 17127 */
+ "\xf0\xa5\x84\xb3\0" /* offset 17132 */
+ "\xe7\x9c\x9e\0" /* offset 17137 */
+ "\xe7\x9c\x9f\0" /* offset 17141 */
+ "\xe7\x9e\x8b\0" /* offset 17145 */
+ "\xe4\x81\x86\0" /* offset 17149 */
+ "\xe4\x82\x96\0" /* offset 17153 */
+ "\xf0\xa5\x90\x9d\0" /* offset 17157 */
+ "\xe7\xa1\x8e\0" /* offset 17162 */
+ "\xe4\x83\xa3\0" /* offset 17166 */
+ "\xf0\xa5\x98\xa6\0" /* offset 17170 */
+ "\xf0\xa5\x9a\x9a\0" /* offset 17175 */
+ "\xf0\xa5\x9b\x85\0" /* offset 17180 */
+ "\xe7\xa7\xab\0" /* offset 17185 */
+ "\xe4\x84\xaf\0" /* offset 17189 */
+ "\xe7\xa9\x8a\0" /* offset 17193 */
+ "\xe7\xa9\x8f\0" /* offset 17197 */
+ "\xf0\xa5\xa5\xbc\0" /* offset 17201 */
+ "\xf0\xa5\xaa\xa7\0" /* offset 17206 */
+ "\xe7\xab\xae\0" /* offset 17211 */
+ "\xe4\x88\x82\0" /* offset 17215 */
+ "\xf0\xa5\xae\xab\0" /* offset 17219 */
+ "\xe7\xaf\x86\0" /* offset 17224 */
+ "\xe7\xaf\x89\0" /* offset 17228 */
+ "\xe4\x88\xa7\0" /* offset 17232 */
+ "\xf0\xa5\xb2\x80\0" /* offset 17236 */
+ "\xe7\xb3\x92\0" /* offset 17241 */
+ "\xe4\x8a\xa0\0" /* offset 17245 */
+ "\xe7\xb3\xa8\0" /* offset 17249 */
+ "\xe7\xb3\xa3\0" /* offset 17253 */
+ "\xe7\xb4\x80\0" /* offset 17257 */
+ "\xf0\xa5\xbe\x86\0" /* offset 17261 */
+ "\xe7\xb5\xa3\0" /* offset 17266 */
+ "\xe4\x8c\x81\0" /* offset 17270 */
+ "\xe7\xb7\x87\0" /* offset 17274 */
+ "\xe7\xb8\x82\0" /* offset 17278 */
+ "\xe7\xb9\x85\0" /* offset 17282 */
+ "\xe4\x8c\xb4\0" /* offset 17286 */
+ "\xf0\xa6\x88\xa8\0" /* offset 17290 */
+ "\xf0\xa6\x89\x87\0" /* offset 17295 */
+ "\xe4\x8d\x99\0" /* offset 17300 */
+ "\xf0\xa6\x8b\x99\0" /* offset 17304 */
+ "\xe7\xbd\xba\0" /* offset 17309 */
+ "\xf0\xa6\x8c\xbe\0" /* offset 17313 */
+ "\xe7\xbe\x95\0" /* offset 17318 */
+ "\xe7\xbf\xba\0" /* offset 17322 */
+ "\xf0\xa6\x93\x9a\0" /* offset 17326 */
+ "\xf0\xa6\x94\xa3\0" /* offset 17331 */
+ "\xe8\x81\xa0\0" /* offset 17336 */
+ "\xf0\xa6\x96\xa8\0" /* offset 17340 */
+ "\xe8\x81\xb0\0" /* offset 17345 */
+ "\xf0\xa3\x8d\x9f\0" /* offset 17349 */
+ "\xe4\x8f\x95\0" /* offset 17354 */
+ "\xe8\x82\xb2\0" /* offset 17358 */
+ "\xe8\x84\x83\0" /* offset 17362 */
+ "\xe4\x90\x8b\0" /* offset 17366 */
+ "\xe8\x84\xbe\0" /* offset 17370 */
+ "\xe5\xaa\xb5\0" /* offset 17374 */
+ "\xf0\xa6\x9e\xa7\0" /* offset 17378 */
+ "\xf0\xa6\x9e\xb5\0" /* offset 17383 */
+ "\xf0\xa3\x8e\x93\0" /* offset 17388 */
+ "\xf0\xa3\x8e\x9c\0" /* offset 17393 */
+ "\xe8\x88\x84\0" /* offset 17398 */
+ "\xe8\xbe\x9e\0" /* offset 17402 */
+ "\xe4\x91\xab\0" /* offset 17406 */
+ "\xe8\x8a\x91\0" /* offset 17410 */
+ "\xe8\x8a\x8b\0" /* offset 17414 */
+ "\xe8\x8a\x9d\0" /* offset 17418 */
+ "\xe5\x8a\xb3\0" /* offset 17422 */
+ "\xe8\x8a\xb1\0" /* offset 17426 */
+ "\xe8\x8a\xb3\0" /* offset 17430 */
+ "\xe8\x8a\xbd\0" /* offset 17434 */
+ "\xe8\x8b\xa6\0" /* offset 17438 */
+ "\xf0\xa6\xac\xbc\0" /* offset 17442 */
+ "\xe8\x8c\x9d\0" /* offset 17447 */
+ "\xe8\x8d\xa3\0" /* offset 17451 */
+ "\xe8\x8e\xad\0" /* offset 17455 */
+ "\xe8\x8c\xa3\0" /* offset 17459 */
+ "\xe8\x8e\xbd\0" /* offset 17463 */
+ "\xe8\x8f\xa7\0" /* offset 17467 */
+ "\xe8\x8d\x93\0" /* offset 17471 */
+ "\xe8\x8f\x8a\0" /* offset 17475 */
+ "\xe8\x8f\x8c\0" /* offset 17479 */
+ "\xe8\x8f\x9c\0" /* offset 17483 */
+ "\xf0\xa6\xb0\xb6\0" /* offset 17487 */
+ "\xf0\xa6\xb5\xab\0" /* offset 17492 */
+ "\xf0\xa6\xb3\x95\0" /* offset 17497 */
+ "\xe4\x94\xab\0" /* offset 17502 */
+ "\xe8\x93\xb1\0" /* offset 17506 */
+ "\xe8\x93\xb3\0" /* offset 17510 */
+ "\xe8\x94\x96\0" /* offset 17514 */
+ "\xf0\xa7\x8f\x8a\0" /* offset 17518 */
+ "\xe8\x95\xa4\0" /* offset 17523 */
+ "\xf0\xa6\xbc\xac\0" /* offset 17527 */
+ "\xe4\x95\x9d\0" /* offset 17532 */
+ "\xe4\x95\xa1\0" /* offset 17536 */
+ "\xf0\xa6\xbe\xb1\0" /* offset 17540 */
+ "\xf0\xa7\x83\x92\0" /* offset 17545 */
+ "\xe4\x95\xab\0" /* offset 17550 */
+ "\xe8\x99\x90\0" /* offset 17554 */
+ "\xe8\x99\xa7\0" /* offset 17558 */
+ "\xe8\x99\xa9\0" /* offset 17562 */
+ "\xe8\x9a\xa9\0" /* offset 17566 */
+ "\xe8\x9a\x88\0" /* offset 17570 */
+ "\xe8\x9c\x8e\0" /* offset 17574 */
+ "\xe8\x9b\xa2\0" /* offset 17578 */
+ "\xe8\x9c\xa8\0" /* offset 17582 */
+ "\xe8\x9d\xab\0" /* offset 17586 */
+ "\xe8\x9e\x86\0" /* offset 17590 */
+ "\xe4\x97\x97\0" /* offset 17594 */
+ "\xe8\x9f\xa1\0" /* offset 17598 */
+ "\xe8\xa0\x81\0" /* offset 17602 */
+ "\xe4\x97\xb9\0" /* offset 17606 */
+ "\xe8\xa1\xa0\0" /* offset 17610 */
+ "\xf0\xa7\x99\xa7\0" /* offset 17614 */
+ "\xe8\xa3\x97\0" /* offset 17619 */
+ "\xe8\xa3\x9e\0" /* offset 17623 */
+ "\xe4\x98\xb5\0" /* offset 17627 */
+ "\xe8\xa3\xba\0" /* offset 17631 */
+ "\xe3\x92\xbb\0" /* offset 17635 */
+ "\xf0\xa7\xa2\xae\0" /* offset 17639 */
+ "\xf0\xa7\xa5\xa6\0" /* offset 17644 */
+ "\xe4\x9a\xbe\0" /* offset 17649 */
+ "\xe4\x9b\x87\0" /* offset 17653 */
+ "\xe8\xaa\xa0\0" /* offset 17657 */
+ "\xf0\xa7\xb2\xa8\0" /* offset 17661 */
+ "\xe8\xb2\xab\0" /* offset 17666 */
+ "\xe8\xb3\x81\0" /* offset 17670 */
+ "\xe8\xb4\x9b\0" /* offset 17674 */
+ "\xe8\xb5\xb7\0" /* offset 17678 */
+ "\xf0\xa7\xbc\xaf\0" /* offset 17682 */
+ "\xf0\xa0\xa0\x84\0" /* offset 17687 */
+ "\xe8\xb7\x8b\0" /* offset 17692 */
+ "\xe8\xb6\xbc\0" /* offset 17696 */
+ "\xe8\xb7\xb0\0" /* offset 17700 */
+ "\xf0\xa0\xa3\x9e\0" /* offset 17704 */
+ "\xe8\xbb\x94\0" /* offset 17709 */
+ "\xf0\xa8\x97\x92\0" /* offset 17713 */
+ "\xf0\xa8\x97\xad\0" /* offset 17718 */
+ "\xe9\x82\x94\0" /* offset 17723 */
+ "\xe9\x83\xb1\0" /* offset 17727 */
+ "\xe9\x84\x91\0" /* offset 17731 */
+ "\xf0\xa8\x9c\xae\0" /* offset 17735 */
+ "\xe9\x84\x9b\0" /* offset 17740 */
+ "\xe9\x88\xb8\0" /* offset 17744 */
+ "\xe9\x8b\x97\0" /* offset 17748 */
+ "\xe9\x8b\x98\0" /* offset 17752 */
+ "\xe9\x89\xbc\0" /* offset 17756 */
+ "\xe9\x8f\xb9\0" /* offset 17760 */
+ "\xe9\x90\x95\0" /* offset 17764 */
+ "\xf0\xa8\xaf\xba\0" /* offset 17768 */
+ "\xe9\x96\x8b\0" /* offset 17773 */
+ "\xe4\xa6\x95\0" /* offset 17777 */
+ "\xe9\x96\xb7\0" /* offset 17781 */
+ "\xf0\xa8\xb5\xb7\0" /* offset 17785 */
+ "\xe4\xa7\xa6\0" /* offset 17790 */
+ "\xe9\x9b\x83\0" /* offset 17794 */
+ "\xe5\xb6\xb2\0" /* offset 17798 */
+ "\xe9\x9c\xa3\0" /* offset 17802 */
+ "\xf0\xa9\x85\x85\0" /* offset 17806 */
+ "\xf0\xa9\x88\x9a\0" /* offset 17811 */
+ "\xe4\xa9\xae\0" /* offset 17816 */
+ "\xe4\xa9\xb6\0" /* offset 17820 */
+ "\xe9\x9f\xa0\0" /* offset 17824 */
+ "\xf0\xa9\x90\x8a\0" /* offset 17828 */
+ "\xe4\xaa\xb2\0" /* offset 17833 */
+ "\xf0\xa9\x92\x96\0" /* offset 17837 */
+ "\xe9\xa0\xa9\0" /* offset 17842 */
+ "\xf0\xa9\x96\xb6\0" /* offset 17846 */
+ "\xe9\xa3\xa2\0" /* offset 17851 */
+ "\xe4\xac\xb3\0" /* offset 17855 */
+ "\xe9\xa4\xa9\0" /* offset 17859 */
+ "\xe9\xa6\xa7\0" /* offset 17863 */
+ "\xe9\xa7\x82\0" /* offset 17867 */
+ "\xe9\xa7\xbe\0" /* offset 17871 */
+ "\xe4\xaf\x8e\0" /* offset 17875 */
+ "\xf0\xa9\xac\xb0\0" /* offset 17879 */
+ "\xe9\xb1\x80\0" /* offset 17884 */
+ "\xe9\xb3\xbd\0" /* offset 17888 */
+ "\xe4\xb3\x8e\0" /* offset 17892 */
+ "\xe4\xb3\xad\0" /* offset 17896 */
+ "\xe9\xb5\xa7\0" /* offset 17900 */
+ "\xf0\xaa\x83\x8e\0" /* offset 17904 */
+ "\xe4\xb3\xb8\0" /* offset 17909 */
+ "\xf0\xaa\x84\x85\0" /* offset 17913 */
+ "\xf0\xaa\x88\x8e\0" /* offset 17918 */
+ "\xf0\xaa\x8a\x91\0" /* offset 17923 */
+ "\xe4\xb5\x96\0" /* offset 17928 */
+ "\xe9\xbb\xbe\0" /* offset 17932 */
+ "\xe9\xbc\x85\0" /* offset 17936 */
+ "\xe9\xbc\x8f\0" /* offset 17940 */
+ "\xe9\xbc\x96\0" /* offset 17944 */
+ "\xf0\xaa\x98\x80\0" /* offset 17948 */;
typedef struct
{
diff --git a/glib/guniprop.c b/glib/guniprop.c
index 2903367d4..aac833bc8 100644
--- a/glib/guniprop.c
+++ b/glib/guniprop.c
@@ -421,8 +421,15 @@ g_unichar_iszerowidth (gunichar c)
if (G_UNLIKELY (ISZEROWIDTHTYPE (TYPE (c))))
return TRUE;
+ /* A few additional codepoints are zero-width:
+ * - Part of the Hangul Jamo block covering medial/vowels/jungseong and
+ * final/trailing_consonants/jongseong Jamo
+ * - Jungseong and jongseong for Old Korean
+ * - Zero-width space (U+200B)
+ */
if (G_UNLIKELY ((c >= 0x1160 && c < 0x1200) ||
- c == 0x200B))
+ (c >= 0xD7B0 && c < 0xD800) ||
+ c == 0x200B))
return TRUE;
return FALSE;
@@ -1486,6 +1493,17 @@ static const guint32 iso15924_tags[] =
PACK ('D', 'i', 'a', 'k'), /* G_UNICODE_SCRIPT_DIVES_AKURU */
PACK ('K', 'i', 't', 's'), /* G_UNICODE_SCRIPT_KHITAN_SMALL_SCRIPT */
PACK ('Y', 'e', 'z', 'i'), /* G_UNICODE_SCRIPT_YEZIDI */
+
+ /* Unicode 14.0 additions */
+ PACK ('C', 'p', 'm', 'n'), /* G_UNICODE_SCRIPT_CYPRO_MINOAN */
+ PACK ('O', 'u', 'g', 'r'), /* G_UNICODE_SCRIPT_OLD_UYHUR */
+ PACK ('T', 'n', 's', 'a'), /* G_UNICODE_SCRIPT_TANGSA */
+ PACK ('T', 'o', 't', 'o'), /* G_UNICODE_SCRIPT_TOTO */
+ PACK ('V', 'i', 't', 'h'), /* G_UNICODE_SCRIPT_VITHKUQI */
+
+ /* not really a Unicode script, but part of ISO 15924 */
+ PACK ('Z', 'm', 't', 'h'), /* G_UNICODE_SCRIPT_MATH */
+
#undef PACK
};
diff --git a/glib/guri.c b/glib/guri.c
index 5c2b35b8a..069060809 100644
--- a/glib/guri.c
+++ b/glib/guri.c
@@ -422,7 +422,7 @@ _uri_encoder (GString *out,
const gchar *reserved_chars_allowed,
gboolean allow_utf8)
{
- static const gchar hex[16] = "0123456789ABCDEF";
+ static const gchar hex[] = "0123456789ABCDEF";
const guchar *p = start;
const guchar *end = p + length;
diff --git a/glib/gutf8.c b/glib/gutf8.c
index ca1a395c1..a4368d5f1 100644
--- a/glib/gutf8.c
+++ b/glib/gutf8.c
@@ -271,11 +271,15 @@ g_utf8_strlen (const gchar *p,
* g_utf8_substring:
* @str: a UTF-8 encoded string
* @start_pos: a character offset within @str
- * @end_pos: another character offset within @str
+ * @end_pos: another character offset within @str,
+ * or `-1` to indicate the end of the string
*
* Copies a substring out of a UTF-8 encoded string.
* The substring will contain @end_pos - @start_pos characters.
*
+ * Since GLib 2.72, `-1` can be passed to @end_pos to indicate the
+ * end of the string.
+ *
* Returns: (transfer full): a newly allocated copy of the requested
* substring. Free with g_free() when no longer needed.
*
@@ -288,8 +292,19 @@ g_utf8_substring (const gchar *str,
{
gchar *start, *end, *out;
+ g_return_val_if_fail (end_pos >= start_pos || end_pos == -1, NULL);
+
start = g_utf8_offset_to_pointer (str, start_pos);
- end = g_utf8_offset_to_pointer (start, end_pos - start_pos);
+
+ if (end_pos == -1)
+ {
+ glong length = g_utf8_strlen (start, -1);
+ end = g_utf8_offset_to_pointer (start, length);
+ }
+ else
+ {
+ end = g_utf8_offset_to_pointer (start, end_pos - start_pos);
+ }
out = g_malloc (end - start + 1);
memcpy (out, start, end - start);
@@ -574,7 +589,7 @@ static inline gunichar
g_utf8_get_char_extended (const gchar *p,
gssize max_len)
{
- guint i, len;
+ gsize i, len;
gunichar min_code;
gunichar wc = (guchar) *p;
const gunichar partial_sequence = (gunichar) -2;
@@ -623,9 +638,9 @@ g_utf8_get_char_extended (const gchar *p,
return malformed_sequence;
}
- if (G_UNLIKELY (max_len >= 0 && len > max_len))
+ if (G_UNLIKELY (max_len >= 0 && len > (gsize) max_len))
{
- for (i = 1; i < max_len; i++)
+ for (i = 1; i < (gsize) max_len; i++)
{
if ((((guchar *)p)[i] & 0xc0) != 0x80)
return malformed_sequence;
@@ -987,9 +1002,10 @@ g_ucs4_to_utf8 (const gunichar *str,
* words read, or %NULL. If %NULL, then %G_CONVERT_ERROR_PARTIAL_INPUT will
* be returned in case @str contains a trailing partial character. If
* an error occurs then the index of the invalid input is stored here.
+ * It’s guaranteed to be non-negative.
* @items_written: (out) (optional): location to store number
* of bytes written, or %NULL. The value stored here does not include the
- * trailing 0 byte.
+ * trailing 0 byte. It’s guaranteed to be non-negative.
* @error: location to store the error occurring, or %NULL to ignore
* errors. Any of the errors in #GConvertError other than
* %G_CONVERT_ERROR_NO_CONVERSION may occur.
diff --git a/glib/gutils.c b/glib/gutils.c
index 6f6f8d0b8..457ae0955 100644
--- a/glib/gutils.c
+++ b/glib/gutils.c
@@ -69,6 +69,7 @@
#include "garray.h"
#include "glibintl.h"
#include "gstdio.h"
+#include "gquark.h"
#ifdef G_PLATFORM_WIN32
#include "gconvert.h"
@@ -103,47 +104,6 @@
#include <langinfo.h>
#endif
-#ifdef G_PLATFORM_WIN32
-
-gchar *
-_glib_get_dll_directory (void)
-{
- gchar *retval;
- gchar *p;
- wchar_t wc_fn[MAX_PATH];
-
-#ifdef DLL_EXPORT
- if (glib_dll == NULL)
- return NULL;
-#endif
-
- /* This code is different from that in
- * g_win32_get_package_installation_directory_of_module() in that
- * here we return the actual folder where the GLib DLL is. We don't
- * do the check for it being in a "bin" or "lib" subfolder and then
- * returning the parent of that.
- *
- * In a statically built GLib, glib_dll will be NULL and we will
- * thus look up the application's .exe file's location.
- */
- if (!GetModuleFileNameW (glib_dll, wc_fn, MAX_PATH))
- return NULL;
-
- retval = g_utf16_to_utf8 (wc_fn, -1, NULL, NULL, NULL);
-
- p = strrchr (retval, G_DIR_SEPARATOR);
- if (p == NULL)
- {
- /* Wtf? */
- return NULL;
- }
- *p = '\0';
-
- return retval;
-}
-
-#endif
-
/**
* g_memmove:
* @dest: the destination address to copy the bytes to.
@@ -455,7 +415,14 @@ g_find_program_in_path (const gchar *program)
!g_file_test (startp, G_FILE_TEST_IS_DIR))
{
gchar *ret;
- ret = g_strdup (startp);
+ if (g_path_is_absolute (startp)) {
+ ret = g_strdup (startp);
+ } else {
+ gchar *cwd = NULL;
+ cwd = g_get_current_dir ();
+ ret = g_build_filename (cwd, startp, NULL);
+ g_free (cwd);
+ }
g_free (freeme);
#ifdef G_OS_WIN32
g_free ((gchar *) path_copy);
@@ -548,6 +515,7 @@ static gchar *g_user_data_dir = NULL;
static gchar **g_system_data_dirs = NULL;
static gchar *g_user_cache_dir = NULL;
static gchar *g_user_config_dir = NULL;
+static gchar *g_user_state_dir = NULL;
static gchar *g_user_runtime_dir = NULL;
static gchar **g_system_config_dirs = NULL;
static gchar **g_user_special_dirs = NULL;
@@ -989,7 +957,7 @@ g_get_host_name (void)
if (g_once_init_enter (&hostname))
{
gboolean failed;
- gchar *utmp;
+ gchar *utmp = NULL;
#ifndef G_OS_WIN32
gsize size;
@@ -1050,7 +1018,7 @@ g_get_host_name (void)
}
G_LOCK_DEFINE_STATIC (g_prgname);
-static gchar *g_prgname = NULL;
+static const gchar *g_prgname = NULL; /* always a quark */
/**
* g_get_prgname:
@@ -1071,7 +1039,7 @@ static gchar *g_prgname = NULL;
const gchar*
g_get_prgname (void)
{
- gchar* retval;
+ const gchar* retval;
G_LOCK (g_prgname);
retval = g_prgname;
@@ -1093,14 +1061,16 @@ g_get_prgname (void)
* #GtkApplication::startup handler. The program name is found by
* taking the last component of @argv[0].
*
- * Note that for thread-safety reasons this function can only be called once.
+ * Since GLib 2.72, this function can be called multiple times
+ * and is fully thread safe. Prior to GLib 2.72, this function
+ * could only be called once per process.
*/
void
g_set_prgname (const gchar *prgname)
{
+ GQuark qprgname = g_quark_from_string (prgname);
G_LOCK (g_prgname);
- g_free (g_prgname);
- g_prgname = g_strdup (prgname);
+ g_prgname = g_quark_to_string (qprgname);
G_UNLOCK (g_prgname);
}
@@ -1294,34 +1264,53 @@ static gchar *
get_windows_version (gboolean with_windows)
{
GString *version = g_string_new (NULL);
+ gboolean is_win_server = FALSE;
if (g_win32_check_windows_version (10, 0, 0, G_WIN32_OS_ANY))
{
gchar *win10_release;
gboolean is_win11 = FALSE;
+ OSVERSIONINFOEXW osinfo;
- if (!g_win32_check_windows_version (10, 0, 0, G_WIN32_OS_SERVER))
- {
- OSVERSIONINFOEXW osinfo;
+ /* Are we on Windows 2016/2019/2022 Server? */
+ is_win_server = g_win32_check_windows_version (10, 0, 0, G_WIN32_OS_SERVER);
- /*
- * This always succeeds if we get here, since the
- * g_win32_check_windows_version() already did this!
- * We want the OSVERSIONINFOEXW here for more even
- * fine-grained versioning items
- */
- _g_win32_call_rtl_version (&osinfo);
+ /*
+ * This always succeeds if we get here, since the
+ * g_win32_check_windows_version() already did this!
+ * We want the OSVERSIONINFOEXW here for more even
+ * fine-grained versioning items
+ */
+ _g_win32_call_rtl_version (&osinfo);
+ if (!is_win_server)
+ {
/*
* Windows 11 is actually Windows 10.0.22000+,
* so look at the build number
*/
is_win11 = (osinfo.dwBuildNumber >= 22000);
}
+ else
+ {
+ /*
+ * Windows 2022 Server is actually Windows 10.0.20348+,
+ * Windows 2019 Server is actually Windows 10.0.17763+,
+ * Windows 2016 Server is actually Windows 10.0.14393+,
+ * so look at the build number
+ */
+ g_string_append (version, "Server");
+ if (osinfo.dwBuildNumber >= 20348)
+ g_string_append (version, " 2022");
+ else if (osinfo.dwBuildNumber >= 17763)
+ g_string_append (version, " 2019");
+ else
+ g_string_append (version, " 2016");
+ }
if (is_win11)
g_string_append (version, "11");
- else
+ else if (!is_win_server)
g_string_append (version, "10");
/* Windows 10/Server 2016+ is identified by its ReleaseId or
@@ -1364,10 +1353,10 @@ get_windows_version (gboolean with_windows)
{
gchar *win81_update;
- g_string_append (version, "8.1");
-
- if (!g_win32_check_windows_version (6, 3, 0, G_WIN32_OS_WORKSTATION))
- g_string_append (version, " Server");
+ if (g_win32_check_windows_version (6, 3, 0, G_WIN32_OS_WORKSTATION))
+ g_string_append (version, "8.1");
+ else
+ g_string_append (version, "Server 2012 R2");
win81_update = get_windows_8_1_update ();
@@ -1387,8 +1376,23 @@ get_windows_version (gboolean with_windows)
g_string_append (version, versions[i].version);
- if (!g_win32_check_windows_version (versions[i].major, versions[i].minor, versions[i].sp, G_WIN32_OS_WORKSTATION))
- g_string_append (version, " Server");
+ if (g_win32_check_windows_version (versions[i].major, versions[i].minor, versions[i].sp, G_WIN32_OS_SERVER))
+ {
+ /*
+ * This condition should now always hold, since Windows
+ * 7+/Server 2008 R2+ is now required
+ */
+ if (versions[i].major == 6)
+ {
+ g_string_append (version, "Server");
+ if (versions[i].minor == 2)
+ g_string_append (version, " 2012");
+ else if (versions[i].minor == 1)
+ g_string_append (version, " 2008 R2");
+ else
+ g_string_append (version, " 2008");
+ }
+ }
g_string_append (version, versions[i].spversion);
}
@@ -1408,7 +1412,7 @@ get_windows_version (gboolean with_windows)
}
#endif
-#ifdef G_OS_UNIX
+#if defined (G_OS_UNIX) && !defined (__APPLE__)
static gchar *
get_os_info_from_os_release (const gchar *key_name,
const gchar *buffer)
@@ -1537,7 +1541,7 @@ get_os_info_from_uname (const gchar *key_name)
else
return NULL;
}
-#endif
+#endif /* defined (G_OS_UNIX) && !defined (__APPLE__) */
/**
* g_get_os_info:
@@ -1733,6 +1737,8 @@ g_set_user_dirs (const gchar *first_dir_type,
set_strv_if_different (&g_system_data_dirs, dir_type, dir_value);
else if (g_str_equal (dir_type, "XDG_DATA_HOME"))
set_str_if_different (&g_user_data_dir, dir_type, dir_value);
+ else if (g_str_equal (dir_type, "XDG_STATE_HOME"))
+ set_str_if_different (&g_user_state_dir, dir_type, dir_value);
else if (g_str_equal (dir_type, "XDG_RUNTIME_DIR"))
set_str_if_different (&g_user_runtime_dir, dir_type, dir_value);
else
@@ -1934,18 +1940,91 @@ g_get_user_cache_dir (void)
}
static gchar *
+g_build_user_state_dir (void)
+{
+ gchar *state_dir = NULL;
+ const gchar *state_dir_env = g_getenv ("XDG_STATE_HOME");
+
+ if (state_dir_env && state_dir_env[0])
+ state_dir = g_strdup (state_dir_env);
+#ifdef G_OS_WIN32
+ else
+ state_dir = get_special_folder (&FOLDERID_LocalAppData);
+#endif
+ if (!state_dir || !state_dir[0])
+ {
+ gchar *home_dir = g_build_home_dir ();
+ state_dir = g_build_filename (home_dir, ".local/state", NULL);
+ g_free (home_dir);
+ }
+
+ return g_steal_pointer (&state_dir);
+}
+
+/**
+ * g_get_user_state_dir:
+ *
+ * Returns a base directory in which to store state files specific to
+ * particular user.
+ *
+ * On UNIX platforms this is determined using the mechanisms described
+ * in the
+ * [XDG Base Directory Specification](http://www.freedesktop.org/Standards/basedir-spec).
+ * In this case the directory retrieved will be `XDG_STATE_HOME`.
+ *
+ * On Windows it follows XDG Base Directory Specification if `XDG_STATE_HOME` is defined.
+ * If `XDG_STATE_HOME` is undefined, the folder to use for local (as opposed
+ * to roaming) application data is used instead. See the
+ * [documentation for `FOLDERID_LocalAppData`](https://docs.microsoft.com/en-us/windows/win32/shell/knownfolderid).
+ * Note that in this case on Windows it will be the same
+ * as what g_get_user_data_dir() returns.
+ *
+ * The return value is cached and modifying it at runtime is not supported, as
+ * it’s not thread-safe to modify environment variables at runtime.
+ *
+ * Returns: (type filename) (transfer none): a string owned by GLib that
+ * must not be modified or freed.
+ *
+ * Since: 2.72
+ **/
+const gchar *
+g_get_user_state_dir (void)
+{
+ const gchar *user_state_dir;
+
+ G_LOCK (g_utils_global);
+
+ if (g_user_state_dir == NULL)
+ g_user_state_dir = g_build_user_state_dir ();
+ user_state_dir = g_user_state_dir;
+
+ G_UNLOCK (g_utils_global);
+
+ return user_state_dir;
+}
+
+static gchar *
g_build_user_runtime_dir (void)
{
gchar *runtime_dir = NULL;
const gchar *runtime_dir_env = g_getenv ("XDG_RUNTIME_DIR");
if (runtime_dir_env && runtime_dir_env[0])
- runtime_dir = g_strdup (runtime_dir_env);
+ {
+ runtime_dir = g_strdup (runtime_dir_env);
+
+ /* If the XDG_RUNTIME_DIR environment variable is set, we are being told by
+ * the OS that this directory exists and is appropriately configured
+ * already.
+ */
+ }
else
{
runtime_dir = g_build_user_cache_dir ();
- /* The user should be able to rely on the directory existing
+ /* Fallback case: the directory may not yet exist.
+ *
+ * The user should be able to rely on the directory existing
* when the function returns. Probably it already does, but
* let's make sure. Just do mkdir() directly since it will be
* no more expensive than a stat() in the case that the
@@ -2266,9 +2345,9 @@ g_reload_user_special_dirs_cache (void)
* of the special directory without requiring the session to restart; GLib
* will not reflect any change once the special directories are loaded.
*
- * Returns: (type filename): the path to the specified special directory, or
- * %NULL if the logical id was not found. The returned string is owned by
- * GLib and should not be modified or freed.
+ * Returns: (type filename) (nullable): the path to the specified special
+ * directory, or %NULL if the logical id was not found. The returned string is
+ * owned by GLib and should not be modified or freed.
*
* Since: 2.14
*/
@@ -3114,8 +3193,13 @@ g_check_setuid (void)
void
g_abort (void)
{
- /* One call to break the debugger */
- DebugBreak ();
+ /* One call to break the debugger
+ * We check if a debugger is actually attached to
+ * avoid a windows error reporting popup window
+ * when run in a test harness / on CI
+ */
+ if (IsDebuggerPresent ())
+ DebugBreak ();
/* One call in case CRT changes its abort() behaviour */
abort ();
/* And one call to bind them all and terminate the program for sure */
diff --git a/glib/gutils.h b/glib/gutils.h
index f8a6049ff..08c187040 100644
--- a/glib/gutils.h
+++ b/glib/gutils.h
@@ -197,6 +197,8 @@ GLIB_AVAILABLE_IN_ALL
const gchar * g_get_user_config_dir (void);
GLIB_AVAILABLE_IN_ALL
const gchar * g_get_user_cache_dir (void);
+GLIB_AVAILABLE_IN_2_72
+const gchar * g_get_user_state_dir (void);
GLIB_AVAILABLE_IN_ALL
const gchar * const * g_get_system_data_dirs (void);
diff --git a/glib/gutilsprivate.h b/glib/gutilsprivate.h
index 5a0686086..a3996f8b7 100644
--- a/glib/gutilsprivate.h
+++ b/glib/gutilsprivate.h
@@ -20,7 +20,9 @@
#ifndef __G_UTILS_PRIVATE_H__
#define __G_UTILS_PRIVATE_H__
+#include "glibconfig.h"
#include "gtypes.h"
+#include "gtestutils.h"
G_BEGIN_DECLS
@@ -28,6 +30,28 @@ GLIB_AVAILABLE_IN_2_60
void g_set_user_dirs (const gchar *first_dir_type,
...) G_GNUC_NULL_TERMINATED;
+/* Returns the smallest power of 2 greater than or equal to n,
+ * or 0 if such power does not fit in a gsize
+ */
+static inline gsize
+g_nearest_pow (gsize num)
+{
+ gsize n = num - 1;
+
+ g_assert (num > 0 && num <= G_MAXSIZE / 2);
+
+ n |= n >> 1;
+ n |= n >> 2;
+ n |= n >> 4;
+ n |= n >> 8;
+ n |= n >> 16;
+#if GLIB_SIZEOF_SIZE_T == 8
+ n |= n >> 32;
+#endif
+
+ return n + 1;
+}
+
G_END_DECLS
#endif /* __G_UTILS_PRIVATE_H__ */
diff --git a/glib/gvariant-parser.c b/glib/gvariant-parser.c
index bb5238bea..1b89259d3 100644
--- a/glib/gvariant-parser.c
+++ b/glib/gvariant-parser.c
@@ -1564,7 +1564,7 @@ unicode_unescape (const gchar *src,
{
gchar buffer[9];
guint64 value = 0;
- gchar *end;
+ gchar *end = NULL;
gsize n_valid_chars;
(*src_ofs)++;
diff --git a/glib/gvariant.c b/glib/gvariant.c
index 5fa6a8268..42ffc9a87 100644
--- a/glib/gvariant.c
+++ b/glib/gvariant.c
@@ -3225,6 +3225,24 @@ ensure_valid_builder (GVariantBuilder *builder)
return is_valid_builder (builder);
}
+/* return_if_invalid_builder (b) is like
+ * g_return_if_fail (ensure_valid_builder (b)), except that
+ * the side effects of ensure_valid_builder are evaluated
+ * regardless of whether G_DISABLE_CHECKS is defined or not. */
+#define return_if_invalid_builder(b) G_STMT_START { \
+ gboolean valid_builder G_GNUC_UNUSED = ensure_valid_builder (b); \
+ g_return_if_fail (valid_builder); \
+} G_STMT_END
+
+/* return_val_if_invalid_builder (b, val) is like
+ * g_return_val_if_fail (ensure_valid_builder (b), val), except that
+ * the side effects of ensure_valid_builder are evaluated
+ * regardless of whether G_DISABLE_CHECKS is defined or not. */
+#define return_val_if_invalid_builder(b, val) G_STMT_START { \
+ gboolean valid_builder G_GNUC_UNUSED = ensure_valid_builder (b); \
+ g_return_val_if_fail (valid_builder, val); \
+} G_STMT_END
+
/**
* g_variant_builder_new:
* @type: a container type
@@ -3337,7 +3355,7 @@ g_variant_builder_clear (GVariantBuilder *builder)
/* all-zeros or partial case */
return;
- g_return_if_fail (ensure_valid_builder (builder));
+ return_if_invalid_builder (builder);
g_variant_type_free (GVSB(builder)->type);
@@ -3500,7 +3518,7 @@ void
g_variant_builder_add_value (GVariantBuilder *builder,
GVariant *value)
{
- g_return_if_fail (ensure_valid_builder (builder));
+ return_if_invalid_builder (builder);
g_return_if_fail (GVSB(builder)->offset < GVSB(builder)->max_items);
g_return_if_fail (!GVSB(builder)->expected_type ||
g_variant_is_of_type (value,
@@ -3581,7 +3599,7 @@ g_variant_builder_open (GVariantBuilder *builder,
{
GVariantBuilder *parent;
- g_return_if_fail (ensure_valid_builder (builder));
+ return_if_invalid_builder (builder);
g_return_if_fail (GVSB(builder)->offset < GVSB(builder)->max_items);
g_return_if_fail (!GVSB(builder)->expected_type ||
g_variant_type_is_subtype_of (type,
@@ -3627,7 +3645,7 @@ g_variant_builder_close (GVariantBuilder *builder)
{
GVariantBuilder *parent;
- g_return_if_fail (ensure_valid_builder (builder));
+ return_if_invalid_builder (builder);
g_return_if_fail (GVSB(builder)->parent != NULL);
parent = GVSB(builder)->parent;
@@ -3695,7 +3713,7 @@ g_variant_builder_end (GVariantBuilder *builder)
GVariantType *my_type;
GVariant *value;
- g_return_val_if_fail (ensure_valid_builder (builder), NULL);
+ return_val_if_invalid_builder (builder, NULL);
g_return_val_if_fail (GVSB(builder)->offset >= GVSB(builder)->min_items,
NULL);
g_return_val_if_fail (!GVSB(builder)->uniform_item_types ||
@@ -3883,6 +3901,24 @@ ensure_valid_dict (GVariantDict *dict)
return is_valid_dict (dict);
}
+/* return_if_invalid_dict (d) is like
+ * g_return_if_fail (ensure_valid_dict (d)), except that
+ * the side effects of ensure_valid_dict are evaluated
+ * regardless of whether G_DISABLE_CHECKS is defined or not. */
+#define return_if_invalid_dict(d) G_STMT_START { \
+ gboolean valid_dict G_GNUC_UNUSED = ensure_valid_dict (d); \
+ g_return_if_fail (valid_dict); \
+} G_STMT_END
+
+/* return_val_if_invalid_dict (d, val) is like
+ * g_return_val_if_fail (ensure_valid_dict (d), val), except that
+ * the side effects of ensure_valid_dict are evaluated
+ * regardless of whether G_DISABLE_CHECKS is defined or not. */
+#define return_val_if_invalid_dict(d, val) G_STMT_START { \
+ gboolean valid_dict G_GNUC_UNUSED = ensure_valid_dict (d); \
+ g_return_val_if_fail (valid_dict, val); \
+} G_STMT_END
+
/**
* g_variant_dict_new:
* @from_asv: (nullable): the #GVariant with which to initialise the
@@ -3990,7 +4026,7 @@ g_variant_dict_lookup (GVariantDict *dict,
GVariant *value;
va_list ap;
- g_return_val_if_fail (ensure_valid_dict (dict), FALSE);
+ return_val_if_invalid_dict (dict, FALSE);
g_return_val_if_fail (key != NULL, FALSE);
g_return_val_if_fail (format_string != NULL, FALSE);
@@ -4035,7 +4071,7 @@ g_variant_dict_lookup_value (GVariantDict *dict,
{
GVariant *result;
- g_return_val_if_fail (ensure_valid_dict (dict), NULL);
+ return_val_if_invalid_dict (dict, NULL);
g_return_val_if_fail (key != NULL, NULL);
result = g_hash_table_lookup (GVSD(dict)->values, key);
@@ -4061,7 +4097,7 @@ gboolean
g_variant_dict_contains (GVariantDict *dict,
const gchar *key)
{
- g_return_val_if_fail (ensure_valid_dict (dict), FALSE);
+ return_val_if_invalid_dict (dict, FALSE);
g_return_val_if_fail (key != NULL, FALSE);
return g_hash_table_contains (GVSD(dict)->values, key);
@@ -4089,7 +4125,7 @@ g_variant_dict_insert (GVariantDict *dict,
{
va_list ap;
- g_return_if_fail (ensure_valid_dict (dict));
+ return_if_invalid_dict (dict);
g_return_if_fail (key != NULL);
g_return_if_fail (format_string != NULL);
@@ -4115,7 +4151,7 @@ g_variant_dict_insert_value (GVariantDict *dict,
const gchar *key,
GVariant *value)
{
- g_return_if_fail (ensure_valid_dict (dict));
+ return_if_invalid_dict (dict);
g_return_if_fail (key != NULL);
g_return_if_fail (value != NULL);
@@ -4137,7 +4173,7 @@ gboolean
g_variant_dict_remove (GVariantDict *dict,
const gchar *key)
{
- g_return_val_if_fail (ensure_valid_dict (dict), FALSE);
+ return_val_if_invalid_dict (dict, FALSE);
g_return_val_if_fail (key != NULL, FALSE);
return g_hash_table_remove (GVSD(dict)->values, key);
@@ -4171,7 +4207,7 @@ g_variant_dict_clear (GVariantDict *dict)
/* all-zeros case */
return;
- g_return_if_fail (ensure_valid_dict (dict));
+ return_if_invalid_dict (dict);
g_hash_table_unref (GVSD(dict)->values);
GVSD(dict)->values = NULL;
@@ -4202,7 +4238,7 @@ g_variant_dict_end (GVariantDict *dict)
GHashTableIter iter;
gpointer key, value;
- g_return_val_if_fail (ensure_valid_dict (dict), NULL);
+ return_val_if_invalid_dict (dict, NULL);
g_variant_builder_init (&builder, G_VARIANT_TYPE_VARDICT);
diff --git a/glib/gvariant.h b/glib/gvariant.h
index 11c74d596..7ba586c61 100644
--- a/glib/gvariant.h
+++ b/glib/gvariant.h
@@ -362,7 +362,14 @@ GQuark g_variant_parse_error_quark (void);
*
* Since: 2.50
*/
-#define G_VARIANT_BUILDER_INIT(variant_type) { { { 2942751021u, variant_type, { 0, } } } }
+#define G_VARIANT_BUILDER_INIT(variant_type) \
+ { \
+ { \
+ { \
+ 2942751021u /* == GVSB_MAGIC_PARTIAL, see gvariant.c */, variant_type, { 0, } \
+ } \
+ } \
+ }
GLIB_AVAILABLE_IN_ALL
GVariantBuilder * g_variant_builder_new (const GVariantType *type);
@@ -478,7 +485,14 @@ struct _GVariantDict {
*
* Since: 2.50
*/
-#define G_VARIANT_DICT_INIT(asv) { { { asv, 3488698669u, { 0, } } } }
+#define G_VARIANT_DICT_INIT(asv) \
+ { \
+ { \
+ { \
+ asv, 3488698669u /* == GVSD_MAGIC_PARTIAL, see gvariant.c */, { 0, } \
+ } \
+ } \
+ }
GLIB_AVAILABLE_IN_2_40
GVariantDict * g_variant_dict_new (GVariant *from_asv);
diff --git a/glib/gversionmacros.h b/glib/gversionmacros.h
index d052709cf..e08c80901 100644
--- a/glib/gversionmacros.h
+++ b/glib/gversionmacros.h
@@ -266,6 +266,16 @@
#define GLIB_VERSION_2_70 (G_ENCODE_VERSION (2, 70))
/**
+ * GLIB_VERSION_2_72:
+ *
+ * A macro that evaluates to the 2.72 version of GLib, in a format
+ * that can be used by the C pre-processor.
+ *
+ * Since: 2.72
+ */
+#define GLIB_VERSION_2_72 (G_ENCODE_VERSION (2, 72))
+
+/**
* GLIB_VERSION_CUR_STABLE:
*
* A macro that evaluates to the current stable version of GLib, in a format
@@ -1120,4 +1130,38 @@
# define GLIB_AVAILABLE_TYPE_IN_2_70
#endif
+#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_72
+# define GLIB_DEPRECATED_IN_2_72 GLIB_DEPRECATED
+# define GLIB_DEPRECATED_IN_2_72_FOR(f) GLIB_DEPRECATED_FOR(f)
+# define GLIB_DEPRECATED_MACRO_IN_2_72 GLIB_DEPRECATED_MACRO
+# define GLIB_DEPRECATED_MACRO_IN_2_72_FOR(f) GLIB_DEPRECATED_MACRO_FOR(f)
+# define GLIB_DEPRECATED_ENUMERATOR_IN_2_72 GLIB_DEPRECATED_ENUMERATOR
+# define GLIB_DEPRECATED_ENUMERATOR_IN_2_72_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR(f)
+# define GLIB_DEPRECATED_TYPE_IN_2_72 GLIB_DEPRECATED_TYPE
+# define GLIB_DEPRECATED_TYPE_IN_2_72_FOR(f) GLIB_DEPRECATED_TYPE_FOR(f)
+#else
+# define GLIB_DEPRECATED_IN_2_72 _GLIB_EXTERN
+# define GLIB_DEPRECATED_IN_2_72_FOR(f) _GLIB_EXTERN
+# define GLIB_DEPRECATED_MACRO_IN_2_72
+# define GLIB_DEPRECATED_MACRO_IN_2_72_FOR(f)
+# define GLIB_DEPRECATED_ENUMERATOR_IN_2_72
+# define GLIB_DEPRECATED_ENUMERATOR_IN_2_72_FOR(f)
+# define GLIB_DEPRECATED_TYPE_IN_2_72
+# define GLIB_DEPRECATED_TYPE_IN_2_72_FOR(f)
+#endif
+
+#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_72
+# define GLIB_AVAILABLE_IN_2_72 GLIB_UNAVAILABLE(2, 72)
+# define GLIB_AVAILABLE_STATIC_INLINE_IN_2_72 GLIB_UNAVAILABLE_STATIC_INLINE(2, 72)
+# define GLIB_AVAILABLE_MACRO_IN_2_72 GLIB_UNAVAILABLE_MACRO(2, 72)
+# define GLIB_AVAILABLE_ENUMERATOR_IN_2_72 GLIB_UNAVAILABLE_ENUMERATOR(2, 72)
+# define GLIB_AVAILABLE_TYPE_IN_2_72 GLIB_UNAVAILABLE_TYPE(2, 72)
+#else
+# define GLIB_AVAILABLE_IN_2_72 _GLIB_EXTERN
+# define GLIB_AVAILABLE_STATIC_INLINE_IN_2_72
+# define GLIB_AVAILABLE_MACRO_IN_2_72
+# define GLIB_AVAILABLE_ENUMERATOR_IN_2_72
+# define GLIB_AVAILABLE_TYPE_IN_2_72
+#endif
+
#endif /* __G_VERSION_MACROS_H__ */
diff --git a/glib/gwin32-private.c b/glib/gwin32-private.c
index c28e92baa..68d4703b5 100644
--- a/glib/gwin32-private.c
+++ b/glib/gwin32-private.c
@@ -23,7 +23,7 @@
* than `e` or `p`.
*/
static gboolean
-_g_win32_subst_pid_and_event_w (wchar_t *debugger,
+_g_win32_subst_pid_and_event_w (wchar_t *local_debugger,
gsize debugger_size,
const wchar_t *cmdline,
DWORD pid,
@@ -51,26 +51,26 @@ _g_win32_subst_pid_and_event_w (wchar_t *debugger,
while (cmdline[i] != 0 && dbg_i < debugger_size)
{
if (cmdline[i] != L'%')
- debugger[dbg_i++] = cmdline[i++];
+ local_debugger[dbg_i++] = cmdline[i++];
else if (cmdline[i + 1] == L'p')
{
gsize j = 0;
while (j < pid_str_len && dbg_i < debugger_size)
- debugger[dbg_i++] = pid_str[j++];
+ local_debugger[dbg_i++] = pid_str[j++];
i += 2;
}
else if (cmdline[i + 1] == L'e')
{
gsize j = 0;
while (j < event_str_len && dbg_i < debugger_size)
- debugger[dbg_i++] = event_str[j++];
+ local_debugger[dbg_i++] = event_str[j++];
i += 2;
}
else
return FALSE;
}
if (dbg_i < debugger_size)
- debugger[dbg_i] = 0;
+ local_debugger[dbg_i] = 0;
else
return FALSE;
diff --git a/glib/gwin32.c b/glib/gwin32.c
index 04d0a89b5..b2b5ff69d 100644
--- a/glib/gwin32.c
+++ b/glib/gwin32.c
@@ -569,7 +569,7 @@ g_win32_check_windows_version (const gint major,
gboolean is_type_checked = FALSE;
/* We Only Support Checking for XP or later */
- g_return_val_if_fail (major >= 5 && (major <=6 || major == 10), FALSE);
+ g_return_val_if_fail (major >= 5 && (major <= 6 || major == 10), FALSE);
g_return_val_if_fail ((major >= 5 && minor >= 1) || major >= 6, FALSE);
/* Check for Service Pack Version >= 0 */
@@ -577,14 +577,14 @@ g_win32_check_windows_version (const gint major,
g_return_val_if_fail (_g_win32_call_rtl_version (&osverinfo), FALSE);
/* check the OS and Service Pack Versions */
- if (osverinfo.dwMajorVersion > major)
+ if (osverinfo.dwMajorVersion > (DWORD) major)
is_ver_checked = TRUE;
- else if (osverinfo.dwMajorVersion == major)
+ else if (osverinfo.dwMajorVersion == (DWORD) major)
{
- if (osverinfo.dwMinorVersion > minor)
+ if (osverinfo.dwMinorVersion > (DWORD) minor)
is_ver_checked = TRUE;
- else if (osverinfo.dwMinorVersion == minor)
- if (osverinfo.wServicePackMajor >= spver)
+ else if (osverinfo.dwMinorVersion == (DWORD) minor)
+ if (osverinfo.wServicePackMajor >= (DWORD) spver)
is_ver_checked = TRUE;
}
@@ -1336,4 +1336,123 @@ g_crash_handler_win32_deinit (void)
WinVEH_handle = NULL;
}
+/**
+ * g_win32_find_helper_executable_path:
+ * @executable_name: (transfer none): name of the helper executable to find
+ * (something like gspawn-win64-helper.exe or gdbus.exe for example).
+ * @dll_handle: handle of the DLL to use as searching base path. Pass NULL
+ * to take current process executable as searching base path.
+ *
+ * Find an external executable path and name starting in the same folder
+ * as a specified DLL or current process executable path. Helper executables
+ * (like gspawn-win64-helper.exe, gspawn-win64-helper-console.exe or
+ * gdbus.exe for example) are generally installed in the same folder as the
+ * corresponding DLL file.
+ *
+ * So, if package has been correctly installed, with a dynamic build of GLib,
+ * the helper executable should be in the same directory as the corresponding
+ * DLL file and searching should be straightforward.
+ *
+ * But if built statically, DLL handle is not available and we have to start
+ * searching from the directory holding current executable. It may be very
+ * different from the directory containing the helper program. In order to
+ * find the right helper program automatically in all common situations, we
+ * use this pattern:
+ *
+ * current directory
+ * |-- ???
+ * |-- bin
+ * | |-- ???
+ * |-- lib
+ * | |-- ???
+ * |-- glib
+ * | |-- ???
+ * |-- gio
+ * |-- ???
+ *
+ * starting at base searching path (DLL or current executable directory) and
+ * getting up until the root path. If we cannot still find the helper program,
+ * we'll rely on PATH as the last resort.
+ *
+ * Returns: (transfer full) (type filename) (nullable): the helper executable
+ * path and name in the GLib filename encoding or NULL in case of error. It
+ * should be deallocated with g_free().
+ */
+gchar *
+g_win32_find_helper_executable_path (const gchar *executable_name, void *dll_handle)
+{
+ static const gchar *const subdirs[] = { "", "bin", "lib", "glib", "gio" };
+ static const gsize nb_subdirs = G_N_ELEMENTS (subdirs);
+
+ DWORD module_path_len;
+ wchar_t module_path[MAX_PATH + 2] = { 0 };
+ gchar *base_searching_path;
+ gchar *p;
+ gchar *executable_path;
+ gsize i;
+
+ g_return_val_if_fail (executable_name && *executable_name, NULL);
+
+ module_path_len = GetModuleFileNameW (dll_handle, module_path, MAX_PATH + 1);
+ /* The > MAX_PATH check prevents truncated module path usage */
+ if (module_path_len == 0 || module_path_len > MAX_PATH)
+ return NULL;
+
+ base_searching_path = g_utf16_to_utf8 (module_path, -1, NULL, NULL, NULL);
+ if (base_searching_path == NULL)
+ return NULL;
+
+ p = strrchr (base_searching_path, G_DIR_SEPARATOR);
+ if (p == NULL)
+ {
+ g_free (base_searching_path);
+ return NULL;
+ }
+ *p = '\0';
+
+ for (;;)
+ {
+ /* Search in subdirectories */
+ for (i = 0; i < nb_subdirs; ++i)
+ {
+ /* As this function is exclusively used on Windows, the
+ * executable_path is always an absolute path. At worse, when
+ * reaching the root of the filesystem, base_searching_path may
+ * equal something like "[Drive letter]:" but never "/" like on
+ * Linux or Mac.
+ * For the peace of mind we still assert this, just in case that
+ * one day someone tries to use this function on Linux or Mac.
+ */
+ executable_path = g_build_filename (base_searching_path, subdirs[i], executable_name, NULL);
+ g_assert (g_path_is_absolute (executable_path));
+ if (g_file_test (executable_path, G_FILE_TEST_IS_REGULAR))
+ break;
+
+ g_free (executable_path);
+ executable_path = NULL;
+ }
+
+ if (executable_path != NULL)
+ break;
+
+ /* Let's get one directory level up */
+ p = strrchr (base_searching_path, G_DIR_SEPARATOR);
+ if (p == NULL)
+ break;
+
+ *p = '\0';
+ }
+ g_free (base_searching_path);
+
+ if (executable_path == NULL)
+ {
+ /* Search in system PATH */
+ executable_path = g_find_program_in_path (executable_name);
+ if (executable_path == NULL)
+ executable_path = g_strdup (executable_name);
+ }
+
+ return executable_path;
+}
+
#endif
diff --git a/glib/meson.build b/glib/meson.build
index 2e2e57f51..93fa5049a 100644
--- a/glib/meson.build
+++ b/glib/meson.build
@@ -1,4 +1,4 @@
-configure_file(input : 'glibconfig.h.in', output : 'glibconfig.h',
+glibconfig_h = configure_file(input : 'glibconfig.h.in', output : 'glibconfig.h',
install_dir : join_paths(get_option('libdir'), 'glib-2.0/include'),
configuration : glibconfig_conf)
@@ -20,14 +20,8 @@ libsysprof_capture_dep = dependency('sysprof-capture-4', version: '>= 3.38.0',
)
glib_conf.set('HAVE_SYSPROF', libsysprof_capture_dep.found())
-# TODO: gnulib_objects is a workaround for
-# <https://github.com/mesonbuild/meson/issues/3934> and
-# <https://github.com/mesonbuild/meson/issues/3937>. When we can depend
-# on a meson version where those are fixed, revert the commit that
-# introduced this workaround.
if use_system_printf
gnulib_lib = []
- gnulib_objects = []
gnulib_libm_dependency = []
glib_conf.set ('gl_unused', '')
glib_conf.set ('gl_extern_inline', '')
@@ -117,7 +111,6 @@ else
endif
subdir('gnulib')
- gnulib_objects = [gnulib_lib.extract_all_objects(recursive: false)]
endif
glib_headers = files(
@@ -127,6 +120,10 @@ glib_headers = files(
)
install_headers(glib_headers, subdir : 'glib-2.0')
+# Expose as variable to be used by gobject-introspection
+# when it includes GLib as a subproject
+glib_unix_h = files('glib-unix.h')
+
glib_deprecated_headers = files(
'deprecated/gallocator.h',
'deprecated/gcache.h',
@@ -317,14 +314,18 @@ glib_sources = files(
'gprintf.c',
)
+platform_deps = []
+
if host_system == 'windows'
- glib_win_rc = configure_file(
- input: 'glib.rc.in',
- output: 'glib.rc',
- configuration: glibconfig_conf,
- )
- glib_win_res = windows.compile_resources(glib_win_rc)
- glib_sources += [glib_win_res]
+ if get_option('default_library') == 'shared'
+ glib_win_rc = configure_file(
+ input: 'glib.rc.in',
+ output: 'glib.rc',
+ configuration: glibconfig_conf,
+ )
+ glib_win_res = windows.compile_resources(glib_win_rc)
+ glib_sources += [glib_win_res]
+ endif
glib_sources += files('gwin32.c', 'gspawn-win32.c', 'giowin32.c')
platform_deps = [winsock2, cc.find_library('winmm')]
if cc.get_id() == 'msvc' or cc.get_id() == 'clang-cl'
@@ -337,6 +338,13 @@ endif
if glib_have_cocoa
glib_sources += files('gosxutils.m')
+ framework_dep = dependency('appleframeworks', modules : ['Foundation', 'CoreFoundation', 'AppKit'])
+ platform_deps += [framework_dep]
+endif
+
+if glib_have_carbon
+ framework_dep = dependency('appleframeworks', modules : 'Carbon')
+ platform_deps += [framework_dep]
endif
glib_sources += files('gthread-@0@.c'.format(threads_implementation))
@@ -359,7 +367,6 @@ glib_c_args = ['-DG_LOG_DOMAIN="GLib"', '-DGLIB_COMPILATION'] + pcre_static_args
libglib = library('glib-2.0',
glib_dtrace_obj, glib_dtrace_hdr,
sources : [deprecated_sources, glib_sources],
- objects : [charset_lib.extract_all_objects(recursive: false)] + gnulib_objects,
version : library_version,
soversion : soversion,
darwin_versions : darwin_versions,
@@ -367,6 +374,7 @@ libglib = library('glib-2.0',
# intl.lib is not compatible with SAFESEH
link_args : [noseh_link_args, glib_link_flags, win32_ldflags],
include_directories : configinc,
+ link_with: [charset_lib, gnulib_lib],
dependencies : [pcre, thread_dep, librt] + libintl_deps + libiconv + platform_deps + [gnulib_libm_dependency, libm] + [libsysprof_capture_dep],
c_args : glib_c_args,
objc_args : glib_c_args,
@@ -380,7 +388,7 @@ libglib_dep = declare_dependency(
pkg.generate(libglib,
libraries : [libintl_deps],
- libraries_private : [osx_ldflags, win32_ldflags],
+ libraries_private : [win32_ldflags],
subdirs : ['glib-2.0'],
extra_cflags : ['-I${libdir}/glib-2.0/include'] + win32_cflags,
variables : ['bindir=' + join_paths('${prefix}', get_option('bindir')),
@@ -444,23 +452,34 @@ configure_file(
install_data('glib_gdb.py', install_dir : join_paths(glib_pkgdatadir, 'gdb'))
+# This is needed to make gdb find glib_gdb.py
+if meson.version().version_compare('>=0.58')
+ env = environment()
+ env.prepend('PYTHONPATH', meson.current_source_dir())
+ meson.add_devenv(env)
+endif
+
gdb_conf = configuration_data()
gdb_conf.set('datadir', glib_datadir)
# This is also used in gobject/meson.build
if host_system != 'windows'
- # XXX: We add a leading './' because glib_libdir is an absolute path and we
- # need it to be a relative path so that join_paths appends it to the end.
- gdb_install_dir = join_paths(glib_datadir, 'gdb', 'auto-load', './' + glib_libdir)
+ gdb_install = true
else
# FIXME: Cannot install on Windows because the path will contain a drive
# letter and colons are not allowed in paths.
- gdb_install_dir = false
+ gdb_install = false
endif
+
+# XXX: We add a leading './' because glib_libdir is an absolute path and we
+# need it to be a relative path so that join_paths appends it to the end.
+gdb_install_dir = join_paths(glib_datadir, 'gdb', 'auto-load', './' + glib_libdir)
+
configure_file(
input: 'libglib-gdb.py.in',
output: 'libglib-2.0.so.@0@-gdb.py'.format(library_version),
configuration: gdb_conf,
install_dir: gdb_install_dir,
+ install: gdb_install,
)
if enable_systemtap
diff --git a/glib/tests/642026.c b/glib/tests/642026.c
index aface4ea0..6fed6cd08 100644
--- a/glib/tests/642026.c
+++ b/glib/tests/642026.c
@@ -16,10 +16,6 @@
#include <glib.h>
-/* On smcv's laptop, 1e4 iterations didn't always exhibit the bug, but 1e5
- * iterations exhibited it 10/10 times in practice. YMMV. */
-#define ITERATIONS 100000
-
static GStaticPrivate sp;
static GMutex *mutex;
static GCond *cond;
@@ -51,6 +47,19 @@ static gpointer thread_func (gpointer nil)
static void
testcase (void)
{
+ /* On smcv's laptop, 1e4 iterations didn't always exhibit the bug, but 1e5
+ * iterations exhibited it 10/10 times in practice. YMMV.
+ *
+ * If running with `-m slow` we want to try hard to reproduce the bug 10/10
+ * times. However, as of 2022 this takes around 240s on a CI machine, which
+ * is a long time to tie up those resources to verify that a bug fixed 10
+ * years ago is still fixed.
+ *
+ * So if running without `-m slow`, try 100× less hard to reproduce the bug,
+ * and rely on the fact that this is run under CI often enough to have a good
+ * chance of reproducing the bug in 1% of CI runs. */
+ const guint n_iterations = g_test_slow () ? 100000 : 1000;
+
g_test_bug ("https://bugzilla.gnome.org/show_bug.cgi?id=642026");
mutex = g_mutex_new ();
@@ -58,7 +67,7 @@ testcase (void)
g_mutex_lock (mutex);
- for (i = 0; i < ITERATIONS; i++)
+ for (i = 0; i < n_iterations; i++)
{
GThread *t1;
diff --git a/glib/tests/array-test.c b/glib/tests/array-test.c
index 471f6171d..284ac0809 100644
--- a/glib/tests/array-test.c
+++ b/glib/tests/array-test.c
@@ -845,6 +845,45 @@ test_array_copy_sized (void)
g_array_unref (array1);
}
+static void
+array_overflow_append_vals (void)
+{
+ if (!g_test_undefined ())
+ return;
+
+ if (g_test_subprocess ())
+ {
+ GArray *array = g_array_new (TRUE, FALSE, 1);
+ /* Check for overflow should happen before data is accessed. */
+ g_array_append_vals (array, NULL, G_MAXUINT);
+ }
+ else
+ {
+ g_test_trap_subprocess (NULL, 0, 0);
+ g_test_trap_assert_failed ();
+ g_test_trap_assert_stderr ("*adding 4294967295 to array would overflow*");
+ }
+}
+
+static void
+array_overflow_set_size (void)
+{
+ if (!g_test_undefined ())
+ return;
+
+ if (g_test_subprocess ())
+ {
+ GArray *array = g_array_new (TRUE, FALSE, 1);
+ g_array_set_size (array, G_MAXUINT);
+ }
+ else
+ {
+ g_test_trap_subprocess (NULL, 0, 0);
+ g_test_trap_assert_failed ();
+ g_test_trap_assert_stderr ("*adding 4294967295 to array would overflow*");
+ }
+}
+
/* Check g_ptr_array_steal() function */
static void
pointer_array_steal (void)
@@ -1644,6 +1683,26 @@ pointer_array_steal_index (void)
}
static void
+byte_array_new_take_overflow (void)
+{
+#if SIZE_WIDTH <= UINT_WIDTH
+ g_test_skip ("Overflow test requires G_MAXSIZE > G_MAXUINT.");
+#else
+ GByteArray* arr;
+
+ if (!g_test_undefined ())
+ return;
+
+ /* Check for overflow should happen before data is accessed. */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion 'len <= G_MAXUINT' failed");
+ arr = g_byte_array_new_take (NULL, (gsize)G_MAXUINT + 1);
+ g_assert_null (arr);
+ g_test_assert_expected_messages ();
+#endif
+}
+
+static void
byte_array_steal (void)
{
const guint array_size = 10000;
@@ -1998,6 +2057,8 @@ main (int argc, char *argv[])
g_test_add_func ("/array/clear-func", array_clear_func);
g_test_add_func ("/array/binary-search", test_array_binary_search);
g_test_add_func ("/array/copy-sized", test_array_copy_sized);
+ g_test_add_func ("/array/overflow-append-vals", array_overflow_append_vals);
+ g_test_add_func ("/array/overflow-set-size", array_overflow_set_size);
for (i = 0; i < G_N_ELEMENTS (array_configurations); i++)
{
@@ -2043,6 +2104,7 @@ main (int argc, char *argv[])
g_test_add_func ("/bytearray/sort", byte_array_sort);
g_test_add_func ("/bytearray/sort-with-data", byte_array_sort_with_data);
g_test_add_func ("/bytearray/new-take", byte_array_new_take);
+ g_test_add_func ("/bytearray/new-take-overflow", byte_array_new_take_overflow);
g_test_add_func ("/bytearray/free-to-bytes", byte_array_free_to_bytes);
return g_test_run ();
diff --git a/glib/tests/asyncqueue.c b/glib/tests/asyncqueue.c
index c414e69c1..792b0113a 100644
--- a/glib/tests/asyncqueue.c
+++ b/glib/tests/asyncqueue.c
@@ -51,6 +51,41 @@ void test_async_queue_sort (void)
g_async_queue_sort (q, compare_func, NULL);
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_push_sorted (NULL, GINT_TO_POINTER (1),
+ compare_func, NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_push_sorted_unlocked (NULL, GINT_TO_POINTER (1),
+ compare_func, NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_sort (NULL, compare_func, NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_sort (q, NULL, NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_sort_unlocked (NULL, compare_func, NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_sort_unlocked (q, NULL, NULL);
+ g_test_assert_expected_messages ();
+ }
+
g_async_queue_push_sorted (q, GINT_TO_POINTER (1), compare_func, NULL);
g_async_queue_push_sorted (q, GINT_TO_POINTER (8), compare_func, NULL);
@@ -78,6 +113,8 @@ test_async_queue_destroy (void)
{
GAsyncQueue *q;
+ destroy_count = 0;
+
q = g_async_queue_new_full (destroy_notify);
g_assert_cmpint (destroy_count, ==, 0);
@@ -181,11 +218,24 @@ test_async_queue_timed (void)
gint64 start, end, diff;
gpointer val;
+ g_get_current_time (&tv);
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_timed_pop (NULL, &tv);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_timed_pop_unlocked (NULL, &tv);
+ g_test_assert_expected_messages ();
+ }
+
q = g_async_queue_new ();
start = g_get_monotonic_time ();
- val = g_async_queue_timeout_pop (q, G_USEC_PER_SEC / 10);
- g_assert_null (val);
+ g_assert_null (g_async_queue_timeout_pop (q, G_USEC_PER_SEC / 10));
end = g_get_monotonic_time ();
diff = end - start;
@@ -195,24 +245,32 @@ test_async_queue_timed (void)
*/
g_assert_cmpint (diff, <, 2 * G_USEC_PER_SEC);
+ g_async_queue_push (q, GINT_TO_POINTER (10));
+ val = g_async_queue_timed_pop (q, NULL);
+ g_assert_cmpint (GPOINTER_TO_INT (val), ==, 10);
+ g_assert_null (g_async_queue_try_pop (q));
+
start = end;
g_get_current_time (&tv);
g_time_val_add (&tv, G_USEC_PER_SEC / 10);
- val = g_async_queue_timed_pop (q, &tv);
- g_assert_null (val);
+ g_assert_null (g_async_queue_timed_pop (q, &tv));
end = g_get_monotonic_time ();
diff = end - start;
g_assert_cmpint (diff, >=, G_USEC_PER_SEC / 10);
g_assert_cmpint (diff, <, 2 * G_USEC_PER_SEC);
+ g_async_queue_push (q, GINT_TO_POINTER (10));
+ val = g_async_queue_timed_pop_unlocked (q, NULL);
+ g_assert_cmpint (GPOINTER_TO_INT (val), ==, 10);
+ g_assert_null (g_async_queue_try_pop (q));
+
start = end;
g_get_current_time (&tv);
g_time_val_add (&tv, G_USEC_PER_SEC / 10);
g_async_queue_lock (q);
- val = g_async_queue_timed_pop_unlocked (q, &tv);
+ g_assert_null (g_async_queue_timed_pop_unlocked (q, &tv));
g_async_queue_unlock (q);
- g_assert_null (val);
end = g_get_monotonic_time ();
diff = end - start;
@@ -229,6 +287,29 @@ test_async_queue_remove (void)
q = g_async_queue_new ();
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_remove (NULL, GINT_TO_POINTER (1));
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_remove (q, NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_remove_unlocked (NULL, GINT_TO_POINTER (1));
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_remove_unlocked (q, NULL);
+ g_test_assert_expected_messages ();
+ }
+
g_async_queue_push (q, GINT_TO_POINTER (10));
g_async_queue_push (q, GINT_TO_POINTER (2));
g_async_queue_push (q, GINT_TO_POINTER (7));
@@ -252,6 +333,29 @@ test_async_queue_push_front (void)
q = g_async_queue_new ();
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_push_front (NULL, GINT_TO_POINTER (1));
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_push_front (q, NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_push_front_unlocked (NULL, GINT_TO_POINTER (1));
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_push_front_unlocked (q, NULL);
+ g_test_assert_expected_messages ();
+ }
+
g_async_queue_push (q, GINT_TO_POINTER (10));
g_async_queue_push (q, GINT_TO_POINTER (2));
g_async_queue_push (q, GINT_TO_POINTER (7));
@@ -268,11 +372,149 @@ test_async_queue_push_front (void)
g_async_queue_unref (q);
}
+static void
+test_basics (void)
+{
+ GAsyncQueue *q;
+ gpointer item;
+
+ destroy_count = 0;
+
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_length (NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_length_unlocked (NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_ref (NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_ref_unlocked (NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_unref (NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_unref_and_unlock (NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_lock (NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_unlock (NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_pop (NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_pop_unlocked (NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_try_pop (NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_try_pop_unlocked (NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_timeout_pop (NULL, 1);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_timeout_pop_unlocked (NULL, 1);
+ g_test_assert_expected_messages ();
+ }
+
+ q = g_async_queue_new_full (destroy_notify);
+
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_push (NULL, GINT_TO_POINTER (1));
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_push (q, NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_push_unlocked (NULL, GINT_TO_POINTER (1));
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* failed*");
+ g_async_queue_push_unlocked (q, NULL);
+ g_test_assert_expected_messages ();
+ }
+
+ g_async_queue_lock (q);
+ g_async_queue_ref (q);
+ g_async_queue_unlock (q);
+ g_async_queue_lock (q);
+ g_async_queue_ref_unlocked (q);
+ g_async_queue_unref_and_unlock (q);
+
+ item = g_async_queue_try_pop (q);
+ g_assert_null (item);
+
+ g_async_queue_lock (q);
+ item = g_async_queue_try_pop_unlocked (q);
+ g_async_queue_unlock (q);
+ g_assert_null (item);
+
+ g_async_queue_push (q, GINT_TO_POINTER (1));
+ g_async_queue_push (q, GINT_TO_POINTER (2));
+ g_async_queue_push (q, GINT_TO_POINTER (3));
+ g_assert_cmpint (destroy_count, ==, 0);
+
+ g_async_queue_unref (q);
+ g_assert_cmpint (destroy_count, ==, 0);
+
+ item = g_async_queue_pop (q);
+ g_assert_cmpint (GPOINTER_TO_INT (item), ==, 1);
+ g_assert_cmpint (destroy_count, ==, 0);
+
+ g_async_queue_unref (q);
+ g_assert_cmpint (destroy_count, ==, 2);
+}
+
int
main (int argc, char *argv[])
{
g_test_init (&argc, &argv, NULL);
+ g_test_add_func ("/asyncqueue/basics", test_basics);
g_test_add_func ("/asyncqueue/sort", test_async_queue_sort);
g_test_add_func ("/asyncqueue/destroy", test_async_queue_destroy);
g_test_add_func ("/asyncqueue/threads", test_async_queue_threads);
diff --git a/tests/casefold.txt b/glib/tests/casefold.txt
index b22377151..b22377151 100644
--- a/tests/casefold.txt
+++ b/glib/tests/casefold.txt
diff --git a/tests/casemap.txt b/glib/tests/casemap.txt
index eccc12b1e..eccc12b1e 100644
--- a/tests/casemap.txt
+++ b/glib/tests/casemap.txt
diff --git a/tests/completion-test.c b/glib/tests/completion.c
index e9664940b..4f790373b 100644
--- a/tests/completion-test.c
+++ b/glib/tests/completion.c
@@ -19,64 +19,84 @@
* Modified by the GLib Team and others 1997-2000. See the AUTHORS
* file for a list of people on the GLib Team. See the ChangeLog
* files for a list of changes. These files are distributed with
- * GLib at ftp://ftp.gtk.org/pub/gtk/.
+ * GLib at ftp://ftp.gtk.org/pub/gtk/.
*/
+
+/* We are testing some deprecated APIs here */
+#ifndef GLIB_DISABLE_DEPRECATION_WARNINGS
+#define GLIB_DISABLE_DEPRECATION_WARNINGS
+#endif
+
#include <string.h>
#include "glib.h"
-int main (int argc, char *argv[])
+static void
+test_completion (void)
{
+ static const char *const a1 = "a\302\243";
+ static const char *const a2 = "a\302\244";
+ static const char *const bb = "bb";
+ static const char *const bc = "bc";
+
GCompletion *cmp;
GList *items;
gchar *prefix;
-
+
cmp = g_completion_new (NULL);
g_completion_set_compare (cmp, strncmp);
items = NULL;
- items = g_list_append (items, "a\302\243");
- items = g_list_append (items, "a\302\244");
- items = g_list_append (items, "bb");
- items = g_list_append (items, "bc");
+ items = g_list_append (items, (gpointer) a1);
+ items = g_list_append (items, (gpointer) a2);
+ items = g_list_append (items, (gpointer) bb);
+ items = g_list_append (items, (gpointer) bc);
g_completion_add_items (cmp, items);
g_list_free (items);
items = g_completion_complete (cmp, "a", &prefix);
- g_assert (!strcmp ("a\302", prefix));
- g_assert (g_list_length (items) == 2);
+ g_assert_cmpstr (prefix, ==, "a\302");
+ g_assert_cmpint (g_list_length (items), ==, 2);
g_free (prefix);
-
+
items = g_completion_complete_utf8 (cmp, "a", &prefix);
- g_assert (!strcmp ("a", prefix));
- g_assert (g_list_length (items) == 2);
+ g_assert_cmpstr (prefix, ==, "a");
+ g_assert_cmpint (g_list_length (items), ==, 2);
g_free (prefix);
items = g_completion_complete (cmp, "b", &prefix);
- g_assert (!strcmp ("b", prefix));
- g_assert (g_list_length (items) == 2);
+ g_assert_cmpstr (prefix, ==, "b");
+ g_assert_cmpint (g_list_length (items), ==, 2);
g_free (prefix);
-
+
items = g_completion_complete_utf8 (cmp, "b", &prefix);
- g_assert (!strcmp ("b", prefix));
- g_assert (g_list_length (items) == 2);
+ g_assert_cmpstr (prefix, ==, "b");
+ g_assert_cmpint (g_list_length (items), ==, 2);
g_free (prefix);
items = g_completion_complete (cmp, "a", NULL);
- g_assert (g_list_length (items) == 2);
+ g_assert_cmpint (g_list_length (items), ==, 2);
items = g_completion_complete_utf8 (cmp, "a", NULL);
- g_assert (g_list_length (items) == 2);
+ g_assert_cmpint (g_list_length (items), ==, 2);
- items = g_list_append (NULL, "bb");
+ items = g_list_append (NULL, (gpointer) bb);
g_completion_remove_items (cmp, items);
g_list_free (items);
items = g_completion_complete_utf8 (cmp, "b", &prefix);
- g_assert (g_list_length (items) == 1);
+ g_assert_cmpint (g_list_length (items), ==, 1);
g_free (prefix);
g_completion_free (cmp);
+}
+
+int
+main (int argc,
+ char *argv[])
+{
+ g_test_init (&argc, &argv, NULL);
+ g_test_add_func ("/completion/test-completion", test_completion);
- return 0;
+ return g_test_run ();
}
diff --git a/glib/tests/cxx.cpp b/glib/tests/cxx.cpp
index c423b2fbc..6426d43a7 100644
--- a/glib/tests/cxx.cpp
+++ b/glib/tests/cxx.cpp
@@ -49,16 +49,56 @@ test_typeof (void)
g_clear_pointer (&obj6, g_rc_box_release);
g_rc_box_release (obj);
#else
- g_test_skip ("This test requires C++11 compiler");
+ g_test_skip ("This test requires a C++11 compiler");
+#endif
+}
+
+static void
+test_atomic_pointer_compare_and_exchange (void)
+{
+#if __cplusplus >= 201103L
+ const gchar *str1 = "str1";
+ const gchar *str2 = "str2";
+ const gchar *atomic_string = str1;
+
+ g_test_message ("Test that g_atomic_pointer_compare_and_exchange() with a "
+ "non-void* pointer doesn’t have any compiler warnings in C++ mode");
+
+ g_assert_true (g_atomic_pointer_compare_and_exchange (&atomic_string, str1, str2));
+ g_assert_true (atomic_string == str2);
+#else
+ g_test_skip ("This test requires a C++11 compiler");
+#endif
+}
+
+static void
+test_atomic_int_compare_and_exchange (void)
+{
+#if __cplusplus >= 201103L
+ gint atomic_int = 5;
+
+ g_test_message ("Test that g_atomic_int_compare_and_exchange() doesn’t have "
+ "any compiler warnings in C++ mode");
+
+ g_assert_true (g_atomic_int_compare_and_exchange (&atomic_int, 5, 50));
+ g_assert_cmpint (atomic_int, ==, 50);
+#else
+ g_test_skip ("This test requires a C++11 compiler");
#endif
}
int
main (int argc, char *argv[])
{
+#if __cplusplus >= 201103L
+ g_test_init (&argc, &argv, nullptr);
+#else
g_test_init (&argc, &argv, NULL);
+#endif
g_test_add_func ("/C++/typeof", test_typeof);
+ g_test_add_func ("/C++/atomic-pointer-compare-and-exchange", test_atomic_pointer_compare_and_exchange);
+ g_test_add_func ("/C++/atomic-int-compare-and-exchange", test_atomic_int_compare_and_exchange);
return g_test_run ();
}
diff --git a/glib/tests/dataset.c b/glib/tests/dataset.c
index a92760554..b02b3e42b 100644
--- a/glib/tests/dataset.c
+++ b/glib/tests/dataset.c
@@ -179,13 +179,13 @@ test_dataset_id (void)
g_assert (ret == NULL);
}
-static GData *list;
+static GData *global_list;
static void
free_one (gpointer data)
{
/* recurse */
- g_datalist_clear (&list);
+ g_datalist_clear (&global_list);
}
static void
@@ -194,11 +194,11 @@ test_datalist_clear (void)
/* Need to use a subprocess because it will deadlock if it fails */
if (g_test_subprocess ())
{
- g_datalist_init (&list);
- g_datalist_set_data_full (&list, "one", GINT_TO_POINTER (1), free_one);
- g_datalist_set_data_full (&list, "two", GINT_TO_POINTER (2), NULL);
- g_datalist_clear (&list);
- g_assert (list == NULL);
+ g_datalist_init (&global_list);
+ g_datalist_set_data_full (&global_list, "one", GINT_TO_POINTER (1), free_one);
+ g_datalist_set_data_full (&global_list, "two", GINT_TO_POINTER (2), NULL);
+ g_datalist_clear (&global_list);
+ g_assert (global_list == NULL);
return;
}
diff --git a/glib/tests/date.c b/glib/tests/date.c
index 5c60ffcba..e382295c4 100644
--- a/glib/tests/date.c
+++ b/glib/tests/date.c
@@ -1,13 +1,8 @@
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
-
/* We are testing some deprecated APIs here */
#ifndef GLIB_DISABLE_DEPRECATION_WARNINGS
#define GLIB_DISABLE_DEPRECATION_WARNINGS
#endif
-#include "config.h"
-
#include "glib.h"
#include <stdio.h>
@@ -28,20 +23,224 @@
static void
test_basic (void)
{
+ GDate *d;
+ struct tm tm = { 0 };
+
+ /* g_date_valid (d) */
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_false (g_date_valid (NULL));
+ g_test_assert_expected_messages ();
+ }
+
+ /* g_date_new_dmy (d, m, y) */
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_null (g_date_new_dmy (0, 0, 0));
+ g_test_assert_expected_messages ();
+ }
+
+ d = g_date_new ();
+ if (g_test_undefined ())
+ {
+ /* g_date_get_weekday (d) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_get_weekday (d), ==, G_DATE_BAD_WEEKDAY);
+ g_test_assert_expected_messages ();
+
+ /* g_date_get_day (d) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_get_day (d), ==, G_DATE_BAD_DAY);
+ g_test_assert_expected_messages ();
+
+ /* g_date_get_month (d) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_get_month (d), ==, G_DATE_BAD_MONTH);
+ g_test_assert_expected_messages ();
+
+ /* g_date_get_year (d) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_get_year (d), ==, G_DATE_BAD_YEAR);
+ g_test_assert_expected_messages ();
+
+ /* g_date_to_struct_tm (d, tm) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_to_struct_tm (d, &tm);
+ g_test_assert_expected_messages ();
+
+ /* g_is_leap_year (y) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_false (g_date_is_leap_year (0));
+ g_test_assert_expected_messages ();
+
+ /* g_date_get_days_in_month (m, y) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_get_days_in_month (0, 1), ==, 0);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_get_days_in_month (1, 0), ==, 0);
+ g_test_assert_expected_messages ();
+
+ /* g_date_set_time_t (d, t) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_set_time_t (NULL, 1);
+ g_test_assert_expected_messages ();
+
+ /* g_date_is_first_of_month (d) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_false (g_date_is_first_of_month (d));
+ g_test_assert_expected_messages ();
+
+ /* g_date_is_last_of_month (d) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_false (g_date_is_last_of_month (d));
+ g_test_assert_expected_messages ();
+
+ /* g_date_add_days (d, n) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_add_days (d, 1);
+ g_test_assert_expected_messages ();
+
+ /* g_date_subtract_days (d, n) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_subtract_days (d, 1);
+ g_test_assert_expected_messages ();
+
+ /* g_date_add_months (d, n) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_add_months (d, 1);
+ g_test_assert_expected_messages ();
+
+ /* g_date_subtract_months (d, n) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_subtract_months (d, 1);
+ g_test_assert_expected_messages ();
+
+ /* g_date_add_years (d, y) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_add_years (d, 1);
+ g_test_assert_expected_messages ();
+
+ /* g_date_subtract_years (d, y) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_subtract_years (d, 1);
+ g_test_assert_expected_messages ();
+
+ /* g_date_set_month (d, m) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_set_month (NULL, 1);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_set_month (d, 13);
+ g_test_assert_expected_messages ();
+
+ /* g_date_set_day (d, day) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_set_day (NULL, 1);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_set_day (d, 32);
+ g_test_assert_expected_messages ();
+
+ /* g_date_set_year (d, y) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_set_year (NULL, 1);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_set_year (d, (GDateYear) (G_MAXUINT16 + 1));
+ g_test_assert_expected_messages ();
+
+ /* g_date_set_dmy (date, d, m, y) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_set_dmy (NULL, 1, 1, 1);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_set_dmy (d, 0, 0, 0);
+ g_test_assert_expected_messages ();
+
+ /* g_date_set_julian (date, d) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_set_julian (NULL, 1);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_set_julian (d, 0);
+ g_test_assert_expected_messages ();
+
+ /* g_date_clear (d, n) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_clear (d, 0);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_clear (NULL, 1);
+ g_test_assert_expected_messages ();
+ }
+
+ g_date_set_dmy (d, 1, 1, 1);
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_to_struct_tm (d, NULL);
+ g_test_assert_expected_messages ();
+ }
+ g_date_free (d);
+
g_assert_cmpint (sizeof (GDate), <, 9);
- g_assert (!g_date_valid_month (G_DATE_BAD_MONTH));
- g_assert (!g_date_valid_month (13));
- g_assert (!g_date_valid_day (G_DATE_BAD_DAY));
- g_assert (!g_date_valid_day (32));
- g_assert (!g_date_valid_year (G_DATE_BAD_YEAR));
- g_assert (!g_date_valid_julian (G_DATE_BAD_JULIAN));
- g_assert (!g_date_valid_weekday (G_DATE_BAD_WEEKDAY));
- g_assert (g_date_is_leap_year (2000));
- g_assert (!g_date_is_leap_year (1999));
- g_assert (g_date_is_leap_year (1996));
- g_assert (g_date_is_leap_year (1600));
- g_assert (!g_date_is_leap_year (2100));
- g_assert (!g_date_is_leap_year (1800));
+ g_assert_false (g_date_valid_month (G_DATE_BAD_MONTH));
+ g_assert_false (g_date_valid_month (13));
+ g_assert_false (g_date_valid_day (G_DATE_BAD_DAY));
+ g_assert_false (g_date_valid_day (32));
+ g_assert_false (g_date_valid_year (G_DATE_BAD_YEAR));
+ g_assert_false (g_date_valid_julian (G_DATE_BAD_JULIAN));
+ g_assert_false (g_date_valid_weekday (G_DATE_BAD_WEEKDAY));
+ g_assert_true (g_date_valid_weekday ((GDateWeekday) 1));
+ g_assert_false (g_date_valid_weekday ((GDateWeekday) 8));
+ g_assert_true (g_date_is_leap_year (2000));
+ g_assert_false (g_date_is_leap_year (1999));
+ g_assert_true (g_date_is_leap_year (1996));
+ g_assert_true (g_date_is_leap_year (1600));
+ g_assert_false (g_date_is_leap_year (2100));
+ g_assert_false (g_date_is_leap_year (1800));
}
static void
@@ -50,8 +249,17 @@ test_empty_constructor (void)
GDate *d;
d = g_date_new ();
- g_assert (!g_date_valid (d));
+ g_assert_false (g_date_valid (d));
g_date_free (d);
+
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_free (NULL);
+ g_test_assert_expected_messages ();
+ }
+
}
static void
@@ -61,7 +269,8 @@ test_dmy_constructor (void)
guint32 j;
d = g_date_new_dmy (1, 1, 1);
- g_assert (g_date_valid (d));
+ g_assert_true (g_date_valid (d));
+
j = g_date_get_julian (d);
g_assert_cmpint (j, ==, 1);
g_assert_cmpint (g_date_get_month (d), ==, G_DATE_JANUARY);
@@ -71,11 +280,122 @@ test_dmy_constructor (void)
}
static void
+test_date_compare (void)
+{
+ GDate *d1;
+ GDate *d2;
+
+ d1 = g_date_new ();
+ d2 = g_date_new ();
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_days_between (d1, d2), ==, 0);
+ g_test_assert_expected_messages ();
+
+ g_date_set_dmy (d1, 1, 1, 1);
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_days_between (d1, d2), ==, 0);
+ g_test_assert_expected_messages ();
+ }
+ g_date_free (d1);
+ g_date_free (d2);
+
+ d1 = g_date_new ();
+ d2 = g_date_new ();
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_compare (NULL, d2), ==, 0);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_compare (d1, NULL), ==, 0);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_compare (d1, d2), ==, 0);
+ g_test_assert_expected_messages ();
+
+ g_date_set_dmy (d1, 1, 1, 1);
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_compare (d1, d2), ==, 0);
+ g_test_assert_expected_messages ();
+ }
+ g_date_free (d1);
+ g_date_free (d2);
+
+ d1 = g_date_new ();
+ d2 = g_date_new ();
+
+ /* DMY format */
+ g_date_set_dmy (d1, 1, 1, 1);
+ g_date_set_dmy (d2, 10, 1, 1);
+
+ g_assert_cmpint (g_date_compare (d1, d1), ==, 0);
+
+ g_assert_cmpint (g_date_compare (d1, d2), ==, -1);
+ g_assert_cmpint (g_date_compare (d2, d1), >, 0);
+
+ g_date_set_dmy (d2, 1, 10, 1);
+ g_assert_cmpint (g_date_compare (d1, d2), ==, -1);
+ g_assert_cmpint (g_date_compare (d2, d1), >, 0);
+
+ g_date_set_dmy (d2, 1, 1, 10);
+ g_assert_cmpint (g_date_compare (d1, d2), ==, -1);
+ g_assert_cmpint (g_date_compare (d2, d1), >, 0);
+
+ /* Julian format */
+ g_date_set_julian (d1, 1);
+ g_date_set_julian (d2, 10);
+
+ g_assert_cmpint (g_date_compare (d1, d1), ==, 0);
+
+ g_assert_cmpint (g_date_compare (d1, d2), ==, -1);
+ g_assert_cmpint (g_date_compare (d2, d1), >, 0);
+
+ g_date_set_julian (d2, 32);
+ g_assert_cmpint (g_date_compare (d1, d2), ==, -1);
+ g_assert_cmpint (g_date_compare (d2, d1), >, 0);
+
+ g_date_set_julian (d2, 366);
+ g_assert_cmpint (g_date_compare (d1, d2), ==, -1);
+ g_assert_cmpint (g_date_compare (d2, d1), >, 0);
+
+ g_date_free (d1);
+ g_date_free (d2);
+}
+
+static void
test_julian_constructor (void)
{
GDate *d1;
GDate *d2;
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_null (g_date_new_julian (0));
+ g_test_assert_expected_messages ();
+ }
+
+ d1 = g_date_new ();
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_get_julian (d1), ==, G_DATE_BAD_JULIAN);
+ g_test_assert_expected_messages ();
+ }
+ g_date_free (d1);
+
d1 = g_date_new_julian (4000);
d2 = g_date_new_julian (5000);
g_assert_cmpint (g_date_get_julian (d1), ==, 4000);
@@ -95,91 +415,628 @@ test_dates (void)
d = g_date_new ();
+ /* getters on empty date */
+ if (g_test_undefined ())
+ {
+ /* g_date_get_day_of_year (d) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_get_day_of_year (d), ==, 0);
+ g_test_assert_expected_messages ();
+
+ /* g_date_get_monday_week_of_year (d) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_get_monday_week_of_year (d), ==, 0);
+ g_test_assert_expected_messages ();
+
+ /* g_date_get_monday_weeks_in_year (y) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_get_monday_weeks_in_year (0), ==, 0);
+ g_test_assert_expected_messages ();
+
+ /* g_date_get_sunday_week_of_year (d) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_get_sunday_week_of_year (d), ==, 0);
+ g_test_assert_expected_messages ();
+
+ /* g_date_get_sunday_weeks_in_year (y) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_get_sunday_weeks_in_year (0), ==, 0);
+ g_test_assert_expected_messages ();
+
+ /* g_date_get_iso8601_week_of_year (d) */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_cmpint (g_date_get_iso8601_week_of_year (d), ==, 0);
+ g_test_assert_expected_messages ();
+ }
+
+ g_date_free (d);
+
+ /* Remove more time than we have */
+ d = g_date_new_julian (1);
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_subtract_days (d, 103);
+ g_test_assert_expected_messages ();
+ }
+ g_date_free (d);
+
+ d = g_date_new_julian (375);
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_subtract_months (d, 13);
+ g_test_assert_expected_messages ();
+ }
+ g_date_free (d);
+
+ d = g_date_new_julian (375);
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_subtract_years (d, 2);
+ g_test_assert_expected_messages ();
+ }
+ g_date_free (d);
+
+ /* Test on leap years */
+ g_assert_cmpint (g_date_get_monday_weeks_in_year (1764), ==, 53);
+ g_assert_cmpint (g_date_get_monday_weeks_in_year (1776), ==, 53);
+
+ g_assert_cmpint (g_date_get_sunday_weeks_in_year (1792), ==, 53);
+
+ /* Trigger the update of the dmy/julian parts */
+ d = g_date_new_julian (1);
+ g_assert_cmpint (g_date_get_day_of_year (d), ==, 1);
+ g_date_free (d);
+
+ d = g_date_new_julian (1);
+ g_assert_cmpint (g_date_get_monday_week_of_year (d), ==, 1);
+ g_date_free (d);
+
+ d = g_date_new_julian (1);
+ g_assert_cmpint (g_date_get_sunday_week_of_year (d), ==, 0);
+ g_date_free (d);
+
+ d = g_date_new_julian (1);
+ g_assert_cmpint (g_date_is_first_of_month (d), ==, 1);
+ g_date_free (d);
+
+ d = g_date_new_dmy (31, 3, 8);
+ g_date_subtract_months (d, 1);
+ g_assert_cmpint (g_date_get_month (d), ==, 2);
+ g_assert_cmpint (g_date_get_day (d), ==, 29);
+ g_assert_cmpint (g_date_get_year (d), ==, 8);
+ g_date_free (d);
+
+ d = g_date_new_julian (375);
+ g_date_add_months (d, 1);
+ g_assert_cmpint (g_date_get_month (d), ==, 2);
+ g_assert_cmpint (g_date_get_day (d), ==, 10);
+ g_assert_cmpint (g_date_get_year (d), ==, 2);
+ g_date_free (d);
+
+ d = g_date_new_julian (375);
+ g_date_subtract_months (d, 1);
+ g_assert_cmpint (g_date_get_month (d), ==, 12);
+ g_assert_cmpint (g_date_get_day (d), ==, 10);
+ g_assert_cmpint (g_date_get_year (d), ==, 1);
+ g_date_free (d);
+
+ d = g_date_new_julian (375);
+ g_date_add_years (d, 1);
+ g_assert_cmpint (g_date_get_month (d), ==, 1);
+ g_assert_cmpint (g_date_get_day (d), ==, 10);
+ g_assert_cmpint (g_date_get_year (d), ==, 3);
+ g_date_free (d);
+
+ d = g_date_new_julian (675);
+ g_date_subtract_years (d, 1);
+ g_assert_cmpint (g_date_get_month (d), ==, 11);
+ g_assert_cmpint (g_date_get_day (d), ==, 6);
+ g_assert_cmpint (g_date_get_year (d), ==, 1);
+ g_date_free (d);
+
+ d = g_date_new_dmy (28, 2, 7);
+ g_date_subtract_years (d, 1);
+ g_assert_cmpint (g_date_get_month (d), ==, 2);
+ g_assert_cmpint (g_date_get_day (d), ==, 28);
+ g_assert_cmpint (g_date_get_year (d), ==, 6);
+ g_date_free (d);
+
+ d = g_date_new_dmy (29, 2, 8);
+ g_date_subtract_years (d, 1);
+ g_assert_cmpint (g_date_get_month (d), ==, 2);
+ g_assert_cmpint (g_date_get_day (d), ==, 28);
+ g_assert_cmpint (g_date_get_year (d), ==, 7);
+ g_date_free (d);
+
+ d = g_date_new_dmy (1, 1, 1);
+ g_assert_cmpint (g_date_get_iso8601_week_of_year (d), ==, 1);
+ g_date_free (d);
+
+ d = g_date_new_julian (1);
+ g_date_set_year (d, 6);
+ g_assert_cmpint (g_date_get_month (d), ==, 1);
+ g_assert_cmpint (g_date_get_day (d), ==, 1);
+ g_assert_cmpint (g_date_get_year (d), ==, 6);
+ g_date_free (d);
+
+ d = g_date_new_dmy (1, 1, 1);
+ g_date_set_year (d, 6);
+ g_assert_cmpint (g_date_get_month (d), ==, 1);
+ g_assert_cmpint (g_date_get_day (d), ==, 1);
+ g_assert_cmpint (g_date_get_year (d), ==, 6);
+ g_date_free (d);
+
+ d = g_date_new_julian (1);
+ g_date_set_month (d, 6);
+ g_assert_cmpint (g_date_get_month (d), ==, 6);
+ g_assert_cmpint (g_date_get_day (d), ==, 1);
+ g_assert_cmpint (g_date_get_year (d), ==, 1);
+ g_date_free (d);
+
+ d = g_date_new_dmy (1, 1, 1);
+ g_date_set_month (d, 6);
+ g_assert_cmpint (g_date_get_month (d), ==, 6);
+ g_assert_cmpint (g_date_get_day (d), ==, 1);
+ g_assert_cmpint (g_date_get_year (d), ==, 1);
+ g_date_free (d);
+
+ d = g_date_new_julian (1);
+ g_date_set_day (d, 6);
+ g_assert_cmpint (g_date_get_month (d), ==, 1);
+ g_assert_cmpint (g_date_get_day (d), ==, 6);
+ g_assert_cmpint (g_date_get_year (d), ==, 1);
+ g_date_free (d);
+
+ d = g_date_new_dmy (1, 1, 1);
+ g_date_set_day (d, 6);
+ g_assert_cmpint (g_date_get_month (d), ==, 1);
+ g_assert_cmpint (g_date_get_day (d), ==, 6);
+ g_assert_cmpint (g_date_get_year (d), ==, 1);
+ g_date_free (d);
+
+ d = g_date_new_julian (1);
+ g_assert_cmpint (g_date_get_month (d), ==, 1);
+ g_date_free (d);
+
+ /* Correct usage */
+ d = g_date_new ();
+
/* today */
now = time (NULL);
g_assert_cmpint (now, !=, (time_t) -1);
g_date_set_time (d, now);
- g_assert (g_date_valid (d));
+ g_assert_true (g_date_valid (d));
/* Unix epoch */
g_date_set_time (d, 1);
- g_assert (g_date_valid (d));
+ g_assert_true (g_date_valid (d));
tv.tv_sec = 0;
tv.tv_usec = 0;
g_date_set_time_val (d, &tv);
- g_assert (g_date_valid (d));
+ g_assert_true (g_date_valid (d));
/* Julian day 1 */
g_date_set_julian (d, 1);
- g_assert (g_date_valid (d));
+ g_assert_true (g_date_valid (d));
g_date_set_year (d, 3);
g_date_set_day (d, 3);
g_date_set_month (d, 3);
- g_assert (g_date_valid (d));
+ g_assert_true (g_date_valid (d));
g_assert_cmpint (g_date_get_year (d), ==, 3);
g_assert_cmpint (g_date_get_month (d), ==, 3);
g_assert_cmpint (g_date_get_day (d), ==, 3);
- g_assert (!g_date_is_first_of_month (d));
- g_assert (!g_date_is_last_of_month (d));
+ g_assert_false (g_date_is_first_of_month (d));
+ g_assert_false (g_date_is_last_of_month (d));
g_date_set_day (d, 1);
- g_assert (g_date_is_first_of_month (d));
+ g_assert_true (g_date_is_first_of_month (d));
g_date_subtract_days (d, 1);
- g_assert (g_date_is_last_of_month (d));
+ g_assert_true (g_date_is_last_of_month (d));
+
+ /* Testing some other corner cases */
+ g_date_set_dmy (d, 29, 2, 2000);
+ g_date_subtract_months (d, 2);
+ g_assert_cmpint (g_date_get_month (d), ==, 12);
+ g_assert_cmpint (g_date_get_day (d), ==, 29);
+ g_assert_cmpint (g_date_get_year (d), ==, 1999);
+
+ /* Attempt to assign a February 29 to a non-leap year */
+ g_date_set_month (d, 2);
+ g_date_set_day (d, 29);
+ g_assert_false (g_date_valid (d));
+ g_date_set_year (d, 3);
+ g_assert_false (g_date_valid (d));
g_date_free (d);
}
static void
-test_parse (void)
+test_strftime (void)
{
+ gsize i;
GDate *d;
gchar buf[101];
+ const gchar invalid[] = "hello\xffworld%x";
+ gchar *oldlocale;
+#ifdef G_OS_WIN32
+ LCID old_lcid;
+#endif
+
+ struct
+ {
+ const gchar *format;
+ const gchar *expect;
+ } strftime_checks[] = {
+ { "%A", "Monday" },
+ { "%a", "Mon" },
+ { "%D", "01/01/01" },
+ { "%d", "01" },
+ { "%e", " 1" },
+ { "%H", "00" },
+ { "%I", "12" },
+ { "%j", "001" },
+ { "%M", "00" },
+ { "%m", "01" },
+ { "%n", "\n" },
+ { "%OB", "January" },
+ { "%Ob", "Jan" },
+ { "%p", "AM" },
+ { "%R", "00:00" },
+ { "%S", "00" },
+ { "%T", "00:00:00" },
+ { "%t", "\t" },
+ { "%U", "00" },
+ { "%u", "1" },
+ { "%V", "01" },
+ { "%W", "01" },
+ { "%w", "1" },
+ { "%y", "01" },
+ { "%z", "" },
+ { "%%", "%" },
+#if defined(G_OS_WIN32)
+ { "%C", "00" },
+ { "%c", " 12:00:00 AM" },
+ { "%E", "" },
+ { "%F", "" },
+ { "%G", "" },
+ { "%g", "" },
+ { "%h", "" },
+ { "%k", "" },
+ { "%l", "" },
+ { "%O", "" },
+ { "%P", "" },
+ { "%r", "12:00:00AM" },
+ { "%X", "12:00:00 AM" },
+ { "%x", "" },
+ { "%Y", "0001" },
+#else
+ { "%B", "January" },
+ { "%b", "Jan" },
+#if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__APPLE__)
+ { "%C", "00" },
+ { "%c", "Mon Jan 1 00:00:00 0001" },
+ { "%E", "E" },
+ { "%F", "0001-01-01" },
+ { "%G", "0001" },
+ { "%O", "O" },
+ { "%P", "P" },
+ { "%Y", "0001" },
+#else
+ { "%C", "0" },
+ { "%c", "Mon Jan 1 00:00:00 1" },
+ { "%E", "%E" },
+ { "%F", "1-01-01" },
+ { "%G", "1" },
+ { "%O", "%O" },
+ { "%P", "am" },
+ { "%Y", "1" },
+#endif
+ { "%g", "01" },
+ { "%h", "Jan" },
+ { "%k", " 0" },
+ { "%l", "12" },
+ { "%r", "12:00:00 AM" },
+ { "%X", "00:00:00" },
+ { "%x", "01/01/01" },
+ { "%Z", "" },
+#endif
+ };
+
+ oldlocale = g_strdup (setlocale (LC_ALL, NULL));
+#ifdef G_OS_WIN32
+ old_lcid = GetThreadLocale ();
+#endif
+
+ /* Make sure that nothing has been changed in the original locales. */
+ setlocale (LC_ALL, "C");
+#ifdef G_OS_WIN32
+ SetThreadLocale (MAKELCID (MAKELANGID (LANG_ENGLISH, SUBLANG_ENGLISH_US), SORT_DEFAULT));
+#endif
d = g_date_new ();
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_strftime (buf, sizeof (buf), "%x", d);
+ g_test_assert_expected_messages ();
+ }
+
+ /* Trying invalid character */
+#ifndef G_OS_WIN32
+ if (g_test_undefined ())
+ {
+ g_date_set_dmy (d, 10, 1, 2000);
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_WARNING, "*Error*");
+ g_date_strftime (buf, sizeof (buf), invalid, d);
+ g_test_assert_expected_messages ();
+ g_assert_cmpstr (buf, ==, "");
+ }
+#else
g_date_set_dmy (d, 10, 1, 2000);
- g_date_strftime (buf, 100, "%x", d);
+ g_date_strftime (buf, sizeof (buf), invalid, d);
+ g_assert_cmpstr (buf, ==, "");
+#endif
+
+ /* Test positive cases */
+ g_date_set_dmy (d, 1, 1, 1);
+
+ for (i = 0; i < G_N_ELEMENTS (strftime_checks); i++)
+ {
+ g_date_strftime (buf, sizeof (buf), strftime_checks[i].format, d);
+ g_assert_cmpstr (buf, ==, strftime_checks[i].expect);
+ }
+
+#ifdef G_OS_WIN32
+ /*
+ * Time zone is too versatile on OS_WIN32 to be checked precisely,
+ * According to msdn: "Either the locale's time-zone name
+ * or time zone abbreviation, depending on registry settings; no characters
+ * if time zone is unknown".
+ */
+ g_assert_cmpint (g_date_strftime (buf, sizeof (buf), "%Z", d), !=, 0);
+#endif
+
+ g_date_free (d);
+
+ setlocale (LC_ALL, oldlocale);
+ g_free (oldlocale);
+#ifdef G_OS_WIN32
+ SetThreadLocale (old_lcid);
+#endif
+}
+
+static void
+test_two_digit_years (void)
+{
+ GDate *d;
+ gchar buf[101];
+ gchar *old_locale;
+ gboolean use_alternative_format = FALSE;
+
+#ifdef G_OS_WIN32
+ LCID old_lcid;
+#endif
+
+ old_locale = g_strdup (setlocale (LC_ALL, NULL));
+#ifdef G_OS_WIN32
+ old_lcid = GetThreadLocale ();
+#endif
+
+ /* Make sure that nothing has been changed in the original locales. */
+ setlocale (LC_ALL, "C");
+#ifdef G_OS_WIN32
+ SetThreadLocale (MAKELCID (MAKELANGID (LANG_NEUTRAL, SUBLANG_DEFAULT), SORT_DEFAULT));
+#endif
+
+ d = g_date_new ();
+
+ /* Check two digit years */
+ g_date_set_dmy (d, 10, 10, 1976);
+ g_date_strftime (buf, sizeof (buf), "%D", d);
+ g_assert_cmpstr (buf, ==, "10/10/76");
+ g_date_set_parse (d, buf);
+
+#ifdef G_OS_WIN32
+ /*
+ * It depends on the locale setting whether the dd/mm/yy
+ * format is allowed for g_date_set_parse() on Windows, which
+ * corresponds to whether there is an d/M/YY or d/M/YYYY (or so)
+ * option in the "Date and Time Format" setting for the selected
+ * locale in the Control Panel settings. If g_date_set_parse()
+ * renders the GDate invalid with the dd/mm/yy format, use an
+ * alternative format (yy/mm/dd) for g_date_set_parse() for the
+ * 2-digit year tests.
+ */
+ if (!g_date_valid (d))
+ use_alternative_format = TRUE;
+#endif
+
+ if (use_alternative_format)
+ g_date_set_parse (d, "76/10/10");
+
+ g_assert_cmpint (g_date_get_month (d), ==, 10);
+ g_assert_cmpint (g_date_get_day (d), ==, 10);
+ g_assert_true ((g_date_get_year (d) == 1976) ||
+ (g_date_get_year (d) == 76));
+
+ /* Check two digit years below 100 */
+ g_date_set_dmy (d, 10, 10, 29);
+ g_date_strftime (buf, sizeof (buf), "%D", d);
+ g_assert_cmpstr (buf, ==, "10/10/29");
+ g_date_set_parse (d, use_alternative_format ? "29/10/10" : buf);
+ g_assert_cmpint (g_date_get_month (d), ==, 10);
+ g_assert_cmpint (g_date_get_day (d), ==, 10);
+ g_assert_true ((g_date_get_year (d) == 2029) ||
+ (g_date_get_year (d) == 29));
+
+ g_date_free (d);
+
+ setlocale (LC_ALL, old_locale);
+ g_free (old_locale);
+#ifdef G_OS_WIN32
+ SetThreadLocale (old_lcid);
+#endif
+}
+
+static void
+test_parse (void)
+{
+ GDate *d;
+ gchar buf[101];
+
+ d = g_date_new ();
+
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_set_parse (NULL, "");
+ g_test_assert_expected_messages ();
+ }
+
+ g_date_set_time (d, 1);
+ g_assert_true (g_date_valid (d));
+ g_date_strftime (buf, sizeof (buf), "Today is a %A, in the month of %B, %x", d);
+ g_date_set_parse (d, buf);
+
+ if (g_test_undefined ())
+ {
+ /* g_date_strftime() */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_strftime (NULL, 100, "%x", d);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_strftime (buf, 0, "%x", d);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_strftime (buf, sizeof (buf), NULL, d);
+ g_test_assert_expected_messages ();
+ }
+ g_date_set_julian (d, 1);
+ g_assert_true (g_date_valid (d));
+#ifndef G_OS_WIN32
+ /* Windows FILETIME does not support dates before Jan 1 1601,
+ so we can't strftime() the beginning of the "Julian" epoch. */
+ g_date_strftime (buf, sizeof (buf), "Today is a %A, in the month of %B, %x", d);
+ g_date_set_parse (d, buf);
+#endif
+
+ g_date_set_dmy (d, 10, 1, 2000);
+ g_assert_true (g_date_valid (d));
+ g_date_strftime (buf, sizeof (buf), "%x", d);
g_date_set_parse (d, buf);
- g_assert (g_date_valid (d));
g_assert_cmpint (g_date_get_month (d), ==, 1);
g_assert_cmpint (g_date_get_day (d), ==, 10);
g_assert_cmpint (g_date_get_year (d), ==, 2000);
g_date_set_parse (d, "2001 10 1");
- g_assert (g_date_valid (d));
+ g_assert_true (g_date_valid (d));
g_assert_cmpint (g_date_get_month (d), ==, 10);
g_assert_cmpint (g_date_get_day (d), ==, 1);
g_assert_cmpint (g_date_get_year (d), ==, 2001);
g_date_set_parse (d, "2001 10");
- g_assert (!g_date_valid (d));
+ g_assert_false (g_date_valid (d));
g_date_set_parse (d, "2001 10 1 1");
- g_assert (!g_date_valid (d));
+ g_assert_false (g_date_valid (d));
+
+ g_date_set_parse (d, "2001-10-01");
+ g_assert_true (g_date_valid (d));
+ g_assert_cmpint (g_date_get_month (d), ==, 10);
+ g_assert_cmpint (g_date_get_day (d), ==, 1);
+ g_assert_cmpint (g_date_get_year (d), ==, 2001);
g_date_set_parse (d, "March 1999");
- g_assert (g_date_valid (d));
+ g_assert_true (g_date_valid (d));
g_assert_cmpint (g_date_get_month (d), ==, 3);
g_assert_cmpint (g_date_get_day (d), ==, 1);
g_assert_cmpint (g_date_get_year (d), ==, 1999);
+ g_date_set_parse (d, "October 98");
+ g_assert_true (g_date_valid (d));
+ g_assert_cmpint (g_date_get_month (d), ==, 10);
+ g_assert_cmpint (g_date_get_day (d), ==, 1);
+ g_assert_cmpint (g_date_get_year (d), ==, 98);
+
+ g_date_set_parse (d, "oCT 98");
+ g_assert_true (g_date_valid (d));
+ g_assert_cmpint (g_date_get_month (d), ==, 10);
+ g_assert_cmpint (g_date_get_day (d), ==, 1);
+ g_assert_cmpint (g_date_get_year (d), ==, 98);
+
+ g_date_set_parse (d, "10/24/98");
+ g_assert_true (g_date_valid (d));
+ g_assert_cmpint (g_date_get_month (d), ==, 10);
+ g_assert_cmpint (g_date_get_day (d), ==, 24);
+ g_assert_true (g_date_get_year (d) == 1998 ||
+ g_date_get_year (d) == 98);
+
+ g_date_set_parse (d, "10 -- 24 -- 98");
+ g_assert_true (g_date_valid (d));
+ g_assert_cmpint (g_date_get_month (d), ==, 10);
+ g_assert_cmpint (g_date_get_day (d), ==, 24);
+ g_assert_true (g_date_get_year (d) == 1998 ||
+ g_date_get_year (d) == 98);
+
+ g_date_set_parse (d, "10/24/1998");
+ g_assert_true (g_date_valid (d));
+ g_assert_cmpint (g_date_get_month (d), ==, 10);
+ g_assert_cmpint (g_date_get_day (d), ==, 24);
+ g_assert_cmpint (g_date_get_year (d), ==, 1998);
+
+ g_date_set_parse (d, "October 24, 1998");
+ g_assert_true (g_date_valid (d));
+ g_assert_cmpint (g_date_get_month (d), ==, 10);
+ g_assert_cmpint (g_date_get_day (d), ==, 24);
+ g_assert_cmpint (g_date_get_year (d), ==, 1998);
+
g_date_set_parse (d, "10 Sep 1087");
- g_assert (g_date_valid (d));
+ g_assert_true (g_date_valid (d));
g_assert_cmpint (g_date_get_month (d), ==, 9);
g_assert_cmpint (g_date_get_day (d), ==, 10);
g_assert_cmpint (g_date_get_year (d), ==, 1087);
g_date_set_parse (d, "19990301");
- g_assert (g_date_valid (d));
+ g_assert_true (g_date_valid (d));
g_assert_cmpint (g_date_get_month (d), ==, 3);
g_assert_cmpint (g_date_get_day (d), ==, 1);
g_assert_cmpint (g_date_get_year (d), ==, 1999);
+ g_date_set_parse (d, "981024");
+ g_assert_true (g_date_valid (d));
+ g_assert_cmpint (g_date_get_month (d), ==, 10);
+ g_assert_cmpint (g_date_get_day (d), ==, 24);
+ g_assert_true (g_date_get_year (d) == 1998 ||
+ g_date_get_year (d) == 98);
+
+ /* Catching some invalid dates */
g_date_set_parse (d, "20011320");
- g_assert (!g_date_valid (d));
+ g_assert_false (g_date_valid (d));
+
+ g_date_set_parse (d, "19998 10 1");
+ g_assert_false (g_date_valid (d));
g_date_free (d);
}
@@ -232,7 +1089,14 @@ test_parse_locale_change (void)
g_date_set_parse (&date, "07/04/76");
g_assert_cmpint (g_date_get_day (&date), ==, 4);
g_assert_cmpint (g_date_get_month (&date), ==, 7);
+#ifdef G_OS_WIN32
+ /* Windows g_date_strftime() implementation doesn't use twodigit_years */
+ /* FIXME: check if the function can be changed to return 4 digit years instead
+ * See https://gitlab.gnome.org/GNOME/glib/-/issues/2604 */
+ g_assert_cmpint (g_date_get_year (&date), ==, 76);
+#else
g_assert_cmpint (g_date_get_year (&date), ==, 1976);
+#endif
setlocale (LC_ALL, "");
}
@@ -241,6 +1105,9 @@ static void
test_month_substring (void)
{
GDate date;
+#ifdef G_OS_WIN32
+ LCID old_lcid;
+#endif
g_test_bug ("https://bugzilla.gnome.org/show_bug.cgi?id=793550");
@@ -250,6 +1117,13 @@ test_month_substring (void)
return;
}
+#ifdef G_OS_WIN32
+ /* after the crt, set also the win32 thread locale: */
+ /* https://www.codeproject.com/Articles/9600/Windows-SetThreadLocale-and-CRT-setlocale */
+ old_lcid = GetThreadLocale ();
+ SetThreadLocale (MAKELCID (MAKELANGID (LANG_POLISH, SUBLANG_POLISH_POLAND), SORT_DEFAULT));
+#endif
+
/* In Polish language September is "wrzesień" and August is "sierpień"
* abbreviated as "sie". The former used to be confused with the latter
* because "sie" is a substring of "wrzesień" and was matched first. */
@@ -266,6 +1140,9 @@ test_month_substring (void)
g_assert_true (g_date_valid (&date));
g_assert_cmpint (g_date_get_month (&date), ==, G_DATE_AUGUST);
+#ifdef G_OS_WIN32
+ SetThreadLocale (old_lcid);
+#endif
setlocale (LC_ALL, "");
}
@@ -311,21 +1188,24 @@ test_month_names (void)
g_test_skip ("libc doesn’t support all alternative month names");
#else
-#define TEST_DATE(d,m,y,f,o) G_STMT_START { \
- gchar *o_casefold, *buf_casefold; \
- g_date_set_dmy (gdate, d, m, y); \
- g_date_strftime (buf, 100, f, gdate); \
- buf_casefold = g_utf8_casefold (buf, -1); \
- o_casefold = g_utf8_casefold ((o), -1); \
- g_assert_cmpstr (buf_casefold, ==, o_casefold); \
- g_free (buf_casefold); \
- g_free (o_casefold); \
- g_date_set_parse (gdate, buf); \
- g_assert (g_date_valid (gdate)); \
- g_assert_cmpint (g_date_get_day (gdate), ==, d); \
- g_assert_cmpint (g_date_get_month (gdate), ==, m); \
- g_assert_cmpint (g_date_get_year (gdate), ==, y); \
-} G_STMT_END
+#define TEST_DATE(d, m, y, f, o) \
+ G_STMT_START \
+ { \
+ gchar *o_casefold, *buf_casefold; \
+ g_date_set_dmy (gdate, d, m, y); \
+ g_date_strftime (buf, sizeof (buf), f, gdate); \
+ buf_casefold = g_utf8_casefold (buf, -1); \
+ o_casefold = g_utf8_casefold ((o), -1); \
+ g_assert_cmpstr (buf_casefold, ==, o_casefold); \
+ g_free (buf_casefold); \
+ g_free (o_casefold); \
+ g_date_set_parse (gdate, buf); \
+ g_assert_true (g_date_valid (gdate)); \
+ g_assert_cmpint (g_date_get_day (gdate), ==, d); \
+ g_assert_cmpint (g_date_get_month (gdate), ==, m); \
+ g_assert_cmpint (g_date_get_year (gdate), ==, y); \
+ } \
+ G_STMT_END
oldlocale = g_strdup (setlocale (LC_ALL, NULL));
#ifdef G_OS_WIN32
@@ -380,10 +1260,17 @@ test_month_names (void)
{
TEST_DATE ( 9, 1, 2018, "%d de %B de %Y", "09 de enero de 2018");
TEST_DATE ( 1, 2, 2018, "%OB de %Y", "febrero de 2018");
+#if defined(G_OS_WIN32) && defined(_UCRT)
+ TEST_DATE (10, 3, 2018, "%e de %b de %Y", "10 de mar. de 2018");
+ TEST_DATE ( 1, 4, 2018, "%Ob de %Y", "abr. de 2018");
+ TEST_DATE (11, 5, 2018, "%d de %h de %Y", "11 de may. de 2018");
+ TEST_DATE ( 1, 6, 2018, "%Oh de %Y", "jun. de 2018");
+#else
TEST_DATE (10, 3, 2018, "%e de %b de %Y", "10 de mar de 2018");
TEST_DATE ( 1, 4, 2018, "%Ob de %Y", "abr de 2018");
TEST_DATE (11, 5, 2018, "%d de %h de %Y", "11 de may de 2018");
TEST_DATE ( 1, 6, 2018, "%Oh de %Y", "jun de 2018");
+#endif
}
else
g_test_skip ("locale es_ES not available, skipping Spanish month names test");
@@ -418,7 +1305,11 @@ test_month_names (void)
TEST_DATE ( 1, 5, 2018, "%OB %Y", "Μάιος 2018");
TEST_DATE ( 1, 6, 2018, "%OB %Y", "ΙοÏνιος 2018");
TEST_DATE (16, 7, 2018, "%e %b %Y", "16 Ιουλ 2018");
+#if defined(G_OS_WIN32) && defined(_UCRT)
+ TEST_DATE ( 1, 8, 2018, "%Ob %Y", "Αυγ 2018");
+#else
TEST_DATE ( 1, 8, 2018, "%Ob %Y", "ΑÏγ 2018");
+#endif
}
else
g_test_skip ("locale el_GR not available, skipping Greek month names test");
@@ -527,7 +1418,7 @@ test_year (gconstpointer t)
guint monday_weeks_in_year = g_date_get_monday_weeks_in_year (y);
guint iso8601_week_of_year = 0;
- g_assert (g_date_valid_year (y));
+ g_assert_true (g_date_valid_year (y));
/* Years ought to have roundabout 52 weeks */
g_assert (sunday_weeks_in_year == 52 || sunday_weeks_in_year == 53);
g_assert (monday_weeks_in_year == 52 || monday_weeks_in_year == 53);
@@ -541,64 +1432,82 @@ test_year (gconstpointer t)
g_date_clear (days, 31);
g_assert (dim > 0 && dim < 32);
- g_assert (g_date_valid_month (m));
+ g_assert_true (g_date_valid_month (m));
day = 1;
while (day <= dim)
{
- g_assert (g_date_valid_dmy (day, m, y));
+ g_assert_true (g_date_valid_dmy (day, m, y));
d = &days[day - 1];
- //g_assert (!g_date_valid (d));
+ g_assert_false (g_date_valid (d));
g_date_set_dmy (d, day, m, y);
- g_assert (g_date_valid (d));
+ g_assert_true (g_date_valid (d));
if (m == G_DATE_JANUARY && day == 1)
first_day_of_year = g_date_get_julian (d);
- g_assert (first_day_of_year != G_DATE_BAD_JULIAN);
+ g_assert_cmpint (first_day_of_year, !=, G_DATE_BAD_JULIAN);
g_assert_cmpint (g_date_get_month (d), ==, m);
g_assert_cmpint (g_date_get_year (d), ==, y);
g_assert_cmpint (g_date_get_day (d), ==, day);
- g_assert (g_date_get_julian (d) + 1 - first_day_of_year ==
- g_date_get_day_of_year (d));
+ g_assert_cmpint (g_date_get_julian (d) + 1 - first_day_of_year,
+ ==,
+ g_date_get_day_of_year (d));
if (m == G_DATE_DECEMBER && day == 31)
g_assert_cmpint (g_date_get_day_of_year (d), ==, days_in_year);
g_assert_cmpint (g_date_get_day_of_year (d), <=, days_in_year);
- g_assert_cmpint (g_date_get_monday_week_of_year (d), <=, monday_weeks_in_year);
- g_assert_cmpint (g_date_get_monday_week_of_year (d), >=, monday_week_of_year);
+ g_assert_cmpint (g_date_get_monday_week_of_year (d),
+ <=, monday_weeks_in_year);
+ g_assert_cmpint (g_date_get_monday_week_of_year (d),
+ >=, monday_week_of_year);
if (g_date_get_weekday(d) == G_DATE_MONDAY)
{
- g_assert_cmpint (g_date_get_monday_week_of_year (d) - monday_week_of_year, ==, 1);
+ g_assert_cmpint (g_date_get_monday_week_of_year (d) -
+ monday_week_of_year,
+ ==, 1);
if ((m == G_DATE_JANUARY && day <= 4) ||
(m == G_DATE_DECEMBER && day >= 29))
- g_assert_cmpint (g_date_get_iso8601_week_of_year (d), ==, 1);
+ g_assert_cmpint (g_date_get_iso8601_week_of_year (d),
+ ==, 1);
else
- g_assert_cmpint (g_date_get_iso8601_week_of_year (d) - iso8601_week_of_year, ==, 1);
+ g_assert_cmpint (g_date_get_iso8601_week_of_year (d) -
+ iso8601_week_of_year,
+ ==, 1);
}
else
{
- g_assert_cmpint (g_date_get_monday_week_of_year(d) - monday_week_of_year, ==, 0);
+ g_assert_cmpint (g_date_get_monday_week_of_year (d) -
+ monday_week_of_year,
+ ==, 0);
if (!(day == 1 && m == G_DATE_JANUARY))
- g_assert_cmpint (g_date_get_iso8601_week_of_year(d) - iso8601_week_of_year, ==, 0);
+ g_assert_cmpint (g_date_get_iso8601_week_of_year (d) -
+ iso8601_week_of_year,
+ ==, 0);
}
monday_week_of_year = g_date_get_monday_week_of_year (d);
iso8601_week_of_year = g_date_get_iso8601_week_of_year (d);
- g_assert_cmpint (g_date_get_sunday_week_of_year (d), <=, sunday_weeks_in_year);
- g_assert_cmpint (g_date_get_sunday_week_of_year (d), >=, sunday_week_of_year);
+ g_assert_cmpint (g_date_get_sunday_week_of_year (d),
+ <=, sunday_weeks_in_year);
+ g_assert_cmpint (g_date_get_sunday_week_of_year (d),
+ >=, sunday_week_of_year);
if (g_date_get_weekday(d) == G_DATE_SUNDAY)
- g_assert_cmpint (g_date_get_sunday_week_of_year (d) - sunday_week_of_year, ==, 1);
+ g_assert_cmpint (g_date_get_sunday_week_of_year (d) -
+ sunday_week_of_year,
+ ==, 1);
else
- g_assert_cmpint (g_date_get_sunday_week_of_year (d) - sunday_week_of_year, ==, 0);
+ g_assert_cmpint (g_date_get_sunday_week_of_year (d) -
+ sunday_week_of_year,
+ ==, 0);
sunday_week_of_year = g_date_get_sunday_week_of_year (d);
@@ -660,36 +1569,110 @@ test_year (gconstpointer t)
static void
test_clamp (void)
{
- GDate d1, d2, d, o;
+ GDate *d, *d1, *d2, *o;
- g_date_set_dmy (&d1, 1, 1, 1970);
- g_date_set_dmy (&d2, 1, 1, 1980);
- g_date_set_dmy (&d, 1, 1, 1);
+ d = g_date_new ();
+ d1 = g_date_new ();
+ d2 = g_date_new ();
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_clamp (d, d1, d2);
+ g_test_assert_expected_messages ();
+ }
+
+ g_date_set_dmy (d, 1, 1, 1);
+ g_date_clamp (d, NULL, NULL);
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_clamp (d, d1, NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_clamp (d, d1, d2);
+ g_test_assert_expected_messages ();
+ }
- o = d;
- g_date_clamp (&o, NULL, NULL);
- g_assert (g_date_compare (&o, &d) == 0);
+ g_date_set_dmy (d1, 1, 1, 1970);
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_clamp (d, d1, d2);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_clamp (d, NULL, d2);
+ g_test_assert_expected_messages ();
+ }
- g_date_clamp (&o, &d1, &d2);
- g_assert (g_date_compare (&o, &d1) == 0);
+ g_date_set_dmy (d2, 1, 1, 1980);
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_clamp (d, d2, d1);
+ g_test_assert_expected_messages ();
+ }
- g_date_set_dmy (&o, 1, 1, 2000);
+ o = g_date_copy (d);
+ g_date_clamp (o, NULL, NULL);
+ g_assert_cmpint (g_date_compare (o, d), ==, 0);
- g_date_clamp (&o, &d1, &d2);
- g_assert (g_date_compare (&o, &d2) == 0);
+ g_date_clamp (o, d1, d2);
+ g_assert_cmpint (g_date_compare (o, d1), ==, 0);
+
+ g_date_set_dmy (o, 1, 1, 2000);
+
+ g_date_clamp (o, d1, d2);
+ g_assert_cmpint (g_date_compare (o, d2), ==, 0);
+
+ g_date_free (d);
+ g_date_free (d1);
+ g_date_free (d2);
+ g_date_free (o);
}
static void
test_order (void)
{
- GDate d1, d2;
+ GDate *d1, *d2;
+
+ d1 = g_date_new ();
+ d2 = g_date_new ();
+
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_order (d1, d2);
+ g_test_assert_expected_messages ();
+ }
- g_date_set_dmy (&d1, 1, 1, 1970);
- g_date_set_dmy (&d2, 1, 1, 1980);
+ g_date_set_dmy (d1, 1, 1, 1970);
- g_assert (g_date_compare (&d1, &d2) == -1);
- g_date_order (&d2, &d1);
- g_assert (g_date_compare (&d1, &d2) == 1);
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_date_order (d1, d2);
+ g_test_assert_expected_messages ();
+ }
+
+ g_date_set_dmy (d2, 1, 1, 1980);
+
+ g_date_order (d1, d2);
+ g_assert_cmpint (g_date_compare (d1, d2), ==, -1);
+ g_date_order (d2, d1);
+ g_assert_cmpint (g_date_compare (d1, d2), ==, 1);
+
+ g_date_free (d1);
+ g_date_free (d2);
}
static void
@@ -698,6 +1681,14 @@ test_copy (void)
GDate *d;
GDate *c;
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion *failed*");
+ g_assert_null (g_date_copy (NULL));
+ g_test_assert_expected_messages ();
+ }
+
d = g_date_new ();
g_assert_false (g_date_valid (d));
@@ -751,7 +1742,9 @@ test_valid_dmy (void)
i, vectors[i].year, vectors[i].month, vectors[i].day,
vectors[i].expected_valid ? "valid" : "invalid");
- valid = g_date_valid_dmy (vectors[i].day, vectors[i].month, vectors[i].year);
+ valid = g_date_valid_dmy (vectors[i].day,
+ vectors[i].month,
+ vectors[i].year);
if (vectors[i].expected_valid)
g_assert_true (valid);
@@ -794,7 +1787,10 @@ main (int argc, char** argv)
g_test_add_func ("/date/empty", test_empty_constructor);
g_test_add_func ("/date/dmy", test_dmy_constructor);
g_test_add_func ("/date/julian", test_julian_constructor);
+ g_test_add_func ("/date/compare", test_date_compare);
g_test_add_func ("/date/dates", test_dates);
+ g_test_add_func ("/date/strftime", test_strftime);
+ g_test_add_func ("/date/two-digit-years", test_two_digit_years);
g_test_add_func ("/date/parse", test_parse);
g_test_add_func ("/date/parse/invalid", test_parse_invalid);
g_test_add_func ("/date/parse_locale_change", test_parse_locale_change);
diff --git a/glib/tests/environment.c b/glib/tests/environment.c
index aba19a7ae..94135507f 100644
--- a/glib/tests/environment.c
+++ b/glib/tests/environment.c
@@ -1,3 +1,20 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 2010 Ryan Lortie
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ */
+
#include <glib.h>
static void
@@ -16,7 +33,7 @@ test_listenv (void)
gchar **parts;
parts = g_strsplit (list[i], "=", 2);
- g_assert (g_hash_table_lookup (table, parts[0]) == NULL);
+ g_assert_null (g_hash_table_lookup (table, parts[0]));
if (g_strcmp0 (parts[0], ""))
g_hash_table_insert (table, parts[0], parts[1]);
g_free (parts);
@@ -42,6 +59,87 @@ test_listenv (void)
}
static void
+test_getenv (void)
+{
+ const gchar *data;
+ const gchar *variable = "TEST_G_SETENV";
+ const gchar *value1 = "works";
+ const gchar *value2 = "again";
+
+ /* Check that TEST_G_SETENV is not already set */
+ g_assert_null (g_getenv (variable));
+
+ /* Check if g_setenv() failed */
+ g_assert_cmpint (g_setenv (variable, value1, TRUE), !=, 0);
+
+ data = g_getenv (variable);
+ g_assert_nonnull (data);
+ g_assert_cmpstr (data, ==, value1);
+
+ g_assert_cmpint (g_setenv (variable, value2, FALSE), !=, 0);
+
+ data = g_getenv (variable);
+ g_assert_nonnull (data);
+ g_assert_cmpstr (data, !=, value2);
+ g_assert_cmpstr (data, ==, value1);
+
+ g_assert_cmpint (g_setenv (variable, value2, TRUE), !=, 0);
+
+ data = g_getenv (variable);
+ g_assert_nonnull (data);
+ g_assert_cmpstr (data, !=, value1);
+ g_assert_cmpstr (data, ==, value2);
+
+ g_unsetenv (variable);
+ g_assert_null (g_getenv (variable));
+
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* != NULL*");
+ g_assert_false (g_setenv (NULL, "baz", TRUE));
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* != NULL*");
+ g_assert_false (g_setenv ("foo", NULL, TRUE));
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* == NULL*");
+ g_assert_false (g_setenv ("foo=bar", "baz", TRUE));
+ g_test_assert_expected_messages ();
+ }
+
+ g_assert_true (g_setenv ("foo", "bar=baz", TRUE));
+
+ /* Different OSs return different values; some return NULL because the key
+ * is invalid, but some are happy to return what we set above. */
+ data = g_getenv ("foo=bar");
+ if (data != NULL)
+ g_assert_cmpstr (data, ==, "baz");
+
+ data = g_getenv ("foo");
+ g_assert_cmpstr (data, ==, "bar=baz");
+
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* != NULL*");
+ g_unsetenv (NULL);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* == NULL*");
+ g_unsetenv ("foo=bar");
+ g_test_assert_expected_messages ();
+ }
+
+ g_unsetenv ("foo");
+ g_assert_null (g_getenv ("foo"));
+}
+
+static void
test_setenv (void)
{
const gchar *var, *value;
@@ -49,15 +147,15 @@ test_setenv (void)
var = "NOSUCHENVVAR";
value = "value1";
- g_assert (g_getenv (var) == NULL);
+ g_assert_null (g_getenv (var));
g_setenv (var, value, FALSE);
g_assert_cmpstr (g_getenv (var), ==, value);
- g_assert (g_setenv (var, "value2", FALSE));
+ g_assert_true (g_setenv (var, "value2", FALSE));
g_assert_cmpstr (g_getenv (var), ==, value);
- g_assert (g_setenv (var, "value2", TRUE));
+ g_assert_true (g_setenv (var, "value2", TRUE));
g_assert_cmpstr (g_getenv (var), ==, "value2");
g_unsetenv (var);
- g_assert (g_getenv (var) == NULL);
+ g_assert_null (g_getenv (var));
}
static void
@@ -69,8 +167,45 @@ test_environ_array (void)
env = g_new (gchar *, 1);
env[0] = NULL;
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* != NULL*");
+ g_environ_getenv (env, NULL);
+ g_test_assert_expected_messages ();
+ }
+
value = g_environ_getenv (env, "foo");
- g_assert (value == NULL);
+ g_assert_null (value);
+
+ if (g_test_undefined ())
+ {
+ gchar **undefined_env;
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* != NULL*");
+ undefined_env = g_environ_setenv (env, NULL, "bar", TRUE);
+ g_test_assert_expected_messages ();
+ g_strfreev (undefined_env);
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* == NULL*");
+ undefined_env = g_environ_setenv (env, "foo=fuz", "bar", TRUE);
+ g_test_assert_expected_messages ();
+ g_strfreev (undefined_env);
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* != NULL*");
+ undefined_env = g_environ_setenv (env, "foo", NULL, TRUE);
+ g_test_assert_expected_messages ();
+ g_strfreev (undefined_env);
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion* != NULL*");
+ undefined_env = g_environ_unsetenv (env, NULL);
+ g_test_assert_expected_messages ();
+ g_strfreev (undefined_env);
+ }
env = g_environ_setenv (env, "foo", "bar", TRUE);
value = g_environ_getenv (env, "foo");
@@ -92,7 +227,7 @@ test_environ_array (void)
env = g_environ_unsetenv (env, "foo2");
value = g_environ_getenv (env, "foo2");
- g_assert (value == NULL);
+ g_assert_null (value);
g_strfreev (env);
}
@@ -106,14 +241,14 @@ test_environ_null (void)
env = NULL;
value = g_environ_getenv (env, "foo");
- g_assert (value == NULL);
+ g_assert_null (value);
env = g_environ_setenv (NULL, "foo", "bar", TRUE);
- g_assert (env != NULL);
+ g_assert_nonnull (env);
g_strfreev (env);
env = g_environ_unsetenv (NULL, "foo");
- g_assert (env == NULL);
+ g_assert_null (env);
}
static void
@@ -132,7 +267,7 @@ test_environ_case (void)
#ifdef G_OS_WIN32
g_assert_cmpstr (value, ==, "bar");
#else
- g_assert (value == NULL);
+ g_assert_null (value);
#endif
env = g_environ_setenv (env, "FOO", "x", TRUE);
@@ -146,7 +281,7 @@ test_environ_case (void)
env = g_environ_unsetenv (env, "Foo");
value = g_environ_getenv (env, "foo");
#ifdef G_OS_WIN32
- g_assert (value == NULL);
+ g_assert_null (value);
#else
g_assert_cmpstr (value, ==, "bar");
#endif
@@ -160,6 +295,7 @@ main (int argc, char **argv)
g_test_init (&argc, &argv, NULL);
g_test_add_func ("/environ/listenv", test_listenv);
+ g_test_add_func ("/environ/getenv", test_getenv);
g_test_add_func ("/environ/setenv", test_setenv);
g_test_add_func ("/environ/array", test_environ_array);
g_test_add_func ("/environ/null", test_environ_null);
diff --git a/glib/tests/fileutils.c b/glib/tests/fileutils.c
index a3c1c33d0..e0ade532d 100644
--- a/glib/tests/fileutils.c
+++ b/glib/tests/fileutils.c
@@ -68,8 +68,229 @@ check_string (gchar *str, const gchar *expected)
}
static void
+test_paths (void)
+{
+ struct
+ {
+ gchar *filename;
+ gchar *dirname;
+ } dirname_checks[] = {
+ { "/", "/" },
+ { "////", "/" },
+ { ".////", "." },
+ { "../", ".." },
+ { "..////", ".." },
+ { "a/b", "a" },
+ { "a/b/", "a/b" },
+ { "c///", "c" },
+#ifdef G_OS_WIN32
+ { "\\", "\\" },
+ { ".\\\\\\\\", "." },
+ { "..\\", ".." },
+ { "..\\\\\\\\", ".." },
+ { "a\\b", "a" },
+ { "a\\b/", "a\\b" },
+ { "a/b\\", "a/b" },
+ { "c\\\\/", "c" },
+ { "//\\", "/" },
+#endif
+#ifdef G_WITH_CYGWIN
+ { "//server/share///x", "//server/share" },
+#endif
+ { ".", "." },
+ { "..", "." },
+ { "", "." },
+ };
+ const guint n_dirname_checks = G_N_ELEMENTS (dirname_checks);
+ struct
+ {
+ gchar *filename;
+ gchar *without_root;
+ } skip_root_checks[] = {
+ { "/", "" },
+ { "//", "" },
+ { "/foo", "foo" },
+ { "//foo", "foo" },
+ { "a/b", NULL },
+#ifdef G_OS_WIN32
+ { "\\", "" },
+ { "\\foo", "foo" },
+ { "\\\\server\\foo", "" },
+ { "\\\\server\\foo\\bar", "bar" },
+ { "a\\b", NULL },
+#endif
+#ifdef G_WITH_CYGWIN
+ { "//server/share///x", "//x" },
+#endif
+ { ".", NULL },
+ { "", NULL },
+ };
+ const guint n_skip_root_checks = G_N_ELEMENTS (skip_root_checks);
+ struct
+ {
+ gchar *cwd;
+ gchar *relative_path;
+ gchar *canonical_path;
+ } canonicalize_filename_checks[] = {
+#ifndef G_OS_WIN32
+ { "/etc", "../usr/share", "/usr/share" },
+ { "/", "/foo/bar", "/foo/bar" },
+ { "/usr/bin", "../../foo/bar", "/foo/bar" },
+ { "/", "../../foo/bar", "/foo/bar" },
+ { "/double//dash", "../../foo/bar", "/foo/bar" },
+ { "/usr/share/foo", ".././././bar", "/usr/share/bar" },
+ { "/foo/bar", "../bar/./.././bar", "/foo/bar" },
+ { "/test///dir", "../../././foo/bar", "/foo/bar" },
+ { "/test///dir", "../../././/foo///bar", "/foo/bar" },
+ { "/etc", "///triple/slash", "/triple/slash" },
+ { "/etc", "//double/slash", "//double/slash" },
+ { "///triple/slash", ".", "/triple/slash" },
+ { "//double/slash", ".", "//double/slash" },
+ { "/cwd/../with/./complexities/", "./hello", "/with/complexities/hello" },
+ { "/", ".dot-dir", "/.dot-dir" },
+ { "/cwd", "..", "/" },
+ { "/etc", "hello/..", "/etc" },
+ { "/etc", "hello/../", "/etc" },
+ { "/", "..", "/" },
+ { "/", "../", "/" },
+ { "/", "/..", "/" },
+ { "/", "/../", "/" },
+ { "/", ".", "/" },
+ { "/", "./", "/" },
+ { "/", "/.", "/" },
+ { "/", "/./", "/" },
+ { "/", "///usr/../usr", "/usr" },
+#else
+ { "/etc", "../usr/share", "\\usr\\share" },
+ { "/", "/foo/bar", "\\foo\\bar" },
+ { "/usr/bin", "../../foo/bar", "\\foo\\bar" },
+ { "/", "../../foo/bar", "\\foo\\bar" },
+ { "/double//dash", "../../foo/bar", "\\foo\\bar" },
+ { "/usr/share/foo", ".././././bar", "\\usr\\share\\bar" },
+ { "/foo/bar", "../bar/./.././bar", "\\foo\\bar" },
+ { "/test///dir", "../../././foo/bar", "\\foo\\bar" },
+ { "/test///dir", "../../././/foo///bar", "\\foo\\bar" },
+ { "/etc", "///triple/slash", "\\triple\\slash" },
+ { "/etc", "//double/slash", "//double/slash" },
+ { "///triple/slash", ".", "\\triple\\slash" },
+ { "//double/slash", ".", "//double/slash\\" },
+ { "/cwd/../with/./complexities/", "./hello", "\\with\\complexities\\hello" },
+ { "/", ".dot-dir", "\\.dot-dir" },
+ { "/cwd", "..", "\\" },
+ { "/etc", "hello/..", "\\etc" },
+ { "/etc", "hello/../", "\\etc" },
+ { "/", "..", "\\" },
+ { "/", "../", "\\" },
+ { "/", "/..", "\\" },
+ { "/", "/../", "\\" },
+ { "/", ".", "\\" },
+ { "/", "./", "\\" },
+ { "/", "/.", "\\" },
+ { "/", "/./", "\\" },
+ { "/", "///usr/../usr", "\\usr" },
+
+ { "\\etc", "..\\usr\\share", "\\usr\\share" },
+ { "\\", "\\foo\\bar", "\\foo\\bar" },
+ { "\\usr\\bin", "..\\..\\foo\\bar", "\\foo\\bar" },
+ { "\\", "..\\..\\foo\\bar", "\\foo\\bar" },
+ { "\\double\\\\dash", "..\\..\\foo\\bar", "\\foo\\bar" },
+ { "\\usr\\share\\foo", "..\\.\\.\\.\\bar", "\\usr\\share\\bar" },
+ { "\\foo\\bar", "..\\bar\\.\\..\\.\\bar", "\\foo\\bar" },
+ { "\\test\\\\\\dir", "..\\..\\.\\.\\foo\\bar", "\\foo\\bar" },
+ { "\\test\\\\\\dir", "..\\..\\.\\.\\\\foo\\\\\\bar", "\\foo\\bar" },
+ { "\\etc", "\\\\\\triple\\slash", "\\triple\\slash" },
+ { "\\etc", "\\\\double\\slash", "\\\\double\\slash" },
+ { "\\\\\\triple\\slash", ".", "\\triple\\slash" },
+ { "\\\\double\\slash", ".", "\\\\double\\slash\\" },
+ { "\\cwd\\..\\with\\.\\complexities\\", ".\\hello", "\\with\\complexities\\hello" },
+ { "\\", ".dot-dir", "\\.dot-dir" },
+ { "\\cwd", "..", "\\" },
+ { "\\etc", "hello\\..", "\\etc" },
+ { "\\etc", "hello\\..\\", "\\etc" },
+ { "\\", "..", "\\" },
+ { "\\", "..\\", "\\" },
+ { "\\", "\\..", "\\" },
+ { "\\", "\\..\\", "\\" },
+ { "\\", ".", "\\" },
+ { "\\", ".\\", "\\" },
+ { "\\", "\\.", "\\" },
+ { "\\", "\\.\\", "\\" },
+ { "\\", "\\\\\\usr\\..\\usr", "\\usr" },
+#endif
+ };
+ const guint n_canonicalize_filename_checks = G_N_ELEMENTS (canonicalize_filename_checks);
+ gchar *string;
+ guint i;
+
+ string = g_path_get_basename (G_DIR_SEPARATOR_S "foo" G_DIR_SEPARATOR_S "dir" G_DIR_SEPARATOR_S);
+ g_assert_cmpstr (string, ==, "dir");
+ g_free (string);
+ string = g_path_get_basename (G_DIR_SEPARATOR_S "foo" G_DIR_SEPARATOR_S "file");
+ g_assert_cmpstr (string, ==, "file");
+ g_free (string);
+
+#ifdef G_OS_WIN32
+ string = g_path_get_basename ("/foo/dir/");
+ g_assert_cmpstr (string, ==, "dir");
+ g_free (string);
+ string = g_path_get_basename ("/foo/file");
+ g_assert_cmpstr (string, ==, "file");
+ g_free (string);
+#endif
+
+ for (i = 0; i < n_dirname_checks; i++)
+ {
+ gchar *dirname = g_path_get_dirname (dirname_checks[i].filename);
+ g_assert_cmpstr (dirname, ==, dirname_checks[i].dirname);
+ g_free (dirname);
+ }
+
+ for (i = 0; i < n_skip_root_checks; i++)
+ {
+ const gchar *skipped = g_path_skip_root (skip_root_checks[i].filename);
+ if ((skipped && !skip_root_checks[i].without_root) ||
+ (!skipped && skip_root_checks[i].without_root) ||
+ ((skipped && skip_root_checks[i].without_root) &&
+ strcmp (skipped, skip_root_checks[i].without_root)))
+ {
+ g_error ("failed for \"%s\"==\"%s\" (returned: \"%s\")",
+ skip_root_checks[i].filename,
+ (skip_root_checks[i].without_root ? skip_root_checks[i].without_root : "<NULL>"),
+ (skipped ? skipped : "<NULL>"));
+ }
+ }
+
+ for (i = 0; i < n_canonicalize_filename_checks; i++)
+ {
+ gchar *canonical_path =
+ g_canonicalize_filename (canonicalize_filename_checks[i].relative_path,
+ canonicalize_filename_checks[i].cwd);
+ g_assert_cmpstr (canonical_path, ==,
+ canonicalize_filename_checks[i].canonical_path);
+ g_free (canonical_path);
+ }
+
+ {
+ const gchar *relative_path = "./";
+ gchar *canonical_path = g_canonicalize_filename (relative_path, NULL);
+ gchar *cwd = g_get_current_dir ();
+ g_assert_cmpstr (canonical_path, ==, cwd);
+ g_free (cwd);
+ g_free (canonical_path);
+ }
+}
+
+static void
test_build_path (void)
{
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion*!= NULL*");
+ g_assert_null (g_build_path (NULL, "x", "y", NULL));
+ g_test_assert_expected_messages ();
+ }
+
/* check_string (g_build_path ("", NULL), "");*/
check_string (g_build_path ("", "", NULL), "");
check_string (g_build_path ("", "x", NULL), "x");
@@ -255,7 +476,6 @@ test_build_pathv (void)
static void
test_build_filename (void)
{
-/* check_string (g_build_filename (NULL), "");*/
check_string (g_build_filename (S, NULL), S);
check_string (g_build_filename (S"x", NULL), S"x");
check_string (g_build_filename ("x"S, NULL), "x"S);
@@ -503,14 +723,14 @@ test_mkdir_with_parents_1 (const gchar *base)
static void
test_mkdir_with_parents (void)
{
- gchar *cwd;
+ gchar *cwd, *new_path;
if (g_test_verbose())
g_printerr ("checking g_mkdir_with_parents() in subdir ./hum/");
test_mkdir_with_parents_1 ("hum");
g_remove ("hum");
if (g_test_verbose())
g_printerr ("checking g_mkdir_with_parents() in subdir ./hii///haa/hee/");
- test_mkdir_with_parents_1 ("hii///haa/hee");
+ test_mkdir_with_parents_1 ("./hii///haa/hee///");
g_remove ("hii/haa/hee");
g_remove ("hii/haa");
g_remove ("hii");
@@ -518,8 +738,26 @@ test_mkdir_with_parents (void)
if (g_test_verbose())
g_printerr ("checking g_mkdir_with_parents() in cwd: %s", cwd);
test_mkdir_with_parents_1 (cwd);
+
+ new_path = g_build_filename (cwd, "new", NULL);
+ g_assert_cmpint (g_mkdir_with_parents (new_path, 0), ==, 0);
+ g_assert_cmpint (g_rmdir (new_path), ==, 0);
+ g_free (new_path);
g_free (cwd);
+ g_assert_cmpint (g_mkdir_with_parents ("./test", 0), ==, 0);
+ g_assert_cmpint (g_mkdir_with_parents ("./test", 0), ==, 0);
+ g_remove ("./test");
+
+#ifdef G_OS_WIN32
+ g_assert_cmpint (g_mkdir_with_parents ("\\Windows\\b\\c", 0), ==, -1);
+#else
+ g_assert_cmpint (g_mkdir_with_parents ("/usr/b/c", 0), ==, -1);
+ /* EPERM may be returned if the filesystem as a whole is read-only */
+ if (errno != EPERM)
+ g_assert_cmpint (errno, ==, EACCES);
+#endif
+
g_assert_cmpint (g_mkdir_with_parents (NULL, 0), ==, -1);
g_assert_cmpint (errno, ==, EINVAL);
}
@@ -577,7 +815,7 @@ check_cap_dac_override (const char *tmpdir)
inside = g_build_filename (dac_denies_write, "inside", NULL);
g_assert_no_errno (mkdir (dac_denies_write, S_IRWXU));
- g_assert_no_errno (chmod (dac_denies_write, 0));
+ g_assert_no_errno (g_chmod (dac_denies_write, 0));
if (mkdir (inside, S_IRWXU) == 0)
{
@@ -594,7 +832,7 @@ check_cap_dac_override (const char *tmpdir)
have_cap = FALSE;
}
- g_assert_no_errno (chmod (dac_denies_write, S_IRWXU));
+ g_assert_no_errno (g_chmod (dac_denies_write, S_IRWXU));
g_assert_no_errno (rmdir (dac_denies_write));
if (safe_tmpdir != NULL)
@@ -742,6 +980,8 @@ test_format_size_for_display (void)
static void
test_file_errors (void)
{
+ g_assert_cmpint (g_file_error_from_errno (-1), ==, G_FILE_ERROR_FAILED);
+
#ifdef EEXIST
g_assert_cmpint (g_file_error_from_errno (EEXIST), ==, G_FILE_ERROR_EXIST);
#endif
@@ -819,8 +1059,35 @@ test_file_errors (void)
static void
test_basename (void)
{
+ const gchar *path = "/path/to/a/file/deep/down.sh";
+ const gchar *b;
+
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion*!= NULL*");
+ g_assert_null (g_basename (NULL));
+ g_test_assert_expected_messages ();
+ }
+
+ b = g_basename (path);
+
+ g_assert_cmpstr (b, ==, "down.sh");
+}
+
+static void
+test_get_basename (void)
+{
gchar *b;
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion*!= NULL*");
+ g_assert_null (g_path_get_basename (NULL));
+ g_test_assert_expected_messages ();
+ }
+
b = g_path_get_basename ("");
g_assert_cmpstr (b, ==, ".");
g_free (b);
@@ -835,6 +1102,75 @@ test_basename (void)
}
static void
+test_dirname (void)
+{
+ gsize i;
+ struct {
+ const gchar *filename;
+ const gchar *dirname;
+ } dirname_checks[] = {
+ { "/", "/" },
+ { "////", "/" },
+ { ".////", "." },
+ { ".", "." },
+ { "..", "." },
+ { "../", ".." },
+ { "..////", ".." },
+ { "", "." },
+ { "a/b", "a" },
+ { "a/b/", "a/b" },
+ { "c///", "c" },
+ { "/a/b", "/a" },
+ { "/a/b/", "/a/b" },
+#ifdef G_OS_WIN32
+ { "\\", "\\" },
+ { ".\\\\\\\\", "." },
+ { ".\\/\\/", "." },
+ { ".", "." },
+ { "..", "." },
+ { "..\\", ".." },
+ { "..\\\\\\\\", ".." },
+ { "..\\//\\", ".." },
+ { "", "." },
+ { "a\\b", "a" },
+ { "a\\b\\", "a\\b" },
+ { "\\a\\b", "\\a" },
+ { "\\a\\b\\", "\\a\\b" },
+ { "c\\\\\\", "c" },
+ { "c/\\\\", "c" },
+ { "a:", "a:." },
+ { "a:foo", "a:." },
+ { "a:foo\\bar", "a:foo" },
+ { "a:/foo", "a:/" },
+ { "a:/foo/bar", "a:/foo" },
+ { "a:/", "a:/" },
+ { "a://", "a:/" },
+ { "a:\\foo", "a:\\" },
+ { "a:\\", "a:\\" },
+ { "a:\\\\", "a:\\" },
+ { "a:\\/", "a:\\" },
+#endif
+ };
+
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion*!= NULL*");
+ g_assert_null (g_path_get_dirname (NULL));
+ g_test_assert_expected_messages ();
+ }
+
+ for (i = 0; i < G_N_ELEMENTS (dirname_checks); i++)
+ {
+ gchar *dirname;
+
+ dirname = g_path_get_dirname (dirname_checks[i].filename);
+ g_assert_cmpstr (dirname, ==, dirname_checks[i].dirname);
+ g_free (dirname);
+ }
+}
+
+static void
test_dir_make_tmp (void)
{
gchar *name;
@@ -901,14 +1237,68 @@ test_file_open_tmp (void)
g_assert_null (name);
g_assert_error (error, G_FILE_ERROR, G_FILE_ERROR_FAILED);
g_clear_error (&error);
+
+ error = NULL;
+ name = NULL;
+ fd = g_file_open_tmp ("zap" G_DIR_SEPARATOR_S "barXXXXXX", &name, &error);
+ g_assert_cmpint (fd, ==, -1);
+
+ g_clear_error (&error);
+ g_free (name);
+
+#ifdef G_OS_WIN32
+ name = NULL;
+ fd = g_file_open_tmp ("zap/barXXXXXX", &name, &error);
+ g_assert_cmpint (fd, ==, -1);
+
+ g_clear_error (&error);
+ g_free (name);
+#endif
+
+ name = NULL;
+ fd = g_file_open_tmp ("zapXXXXXX", &name, &error);
+ g_assert_cmpint (fd, !=, -1);
+
+ close (fd);
+ g_clear_error (&error);
+ remove (name);
+ g_free (name);
+
+ name = NULL;
+ fd = g_file_open_tmp (NULL, &name, &error);
+ g_assert_cmpint (fd, !=, -1);
+
+ close (fd);
+ g_clear_error (&error);
+ remove (name);
+ g_free (name);
}
static void
test_mkstemp (void)
{
- gchar *name;
gint fd;
+ gint result;
+ gchar *name;
+ char chars[62];
+ char template[32];
+ const char hello[] = "Hello, World";
+ const gsize hellolen = sizeof (hello) - 1;
+
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion*!= NULL*");
+ g_assert_cmpint (g_mkstemp (NULL), ==, -1);
+ g_test_assert_expected_messages ();
+ }
+
+ /* Expect to fail if no 'XXXXXX' is given */
+ name = g_strdup ("test");
+ g_assert_cmpint (g_mkstemp (name), ==, -1);
+ g_free (name);
+ /* Test normal case */
name = g_strdup ("testXXXXXXtest"),
fd = g_mkstemp (name);
g_assert_cmpint (fd, !=, -1);
@@ -917,17 +1307,48 @@ test_mkstemp (void)
close (fd);
g_free (name);
- name = g_strdup ("testYYYYYYtest"),
- fd = g_mkstemp (name);
- g_assert_cmpint (fd, ==, -1);
- g_free (name);
+ /* g_mkstemp() must not work if template doesn't contain XXXXXX */
+ strcpy (template, "foobar");
+ g_assert_cmpint (g_mkstemp (template), ==, -1);
+
+ /* g_mkstemp() must not work if template doesn't contain six X */
+ strcpy (template, "foobarXXX");
+ g_assert_cmpint (g_mkstemp (template), ==, -1);
+
+ strcpy (template, "fooXXXXXX");
+ fd = g_mkstemp (template);
+ g_assert_cmpint (fd, !=, -1);
+ result = write (fd, hello, hellolen);
+ g_assert_cmpint (result, !=, -1);
+ g_assert_cmpint (result, ==, hellolen);
+
+ lseek (fd, 0, 0);
+ result = read (fd, chars, sizeof (chars));
+ g_assert_cmpint (result, !=, -1);
+ g_assert_cmpint (result, ==, hellolen);
+
+ chars[result] = '\0';
+ g_assert_cmpstr (chars, ==, hello);
+
+ close (fd);
+ remove (template);
+
+ /* Check that is does not work for "fooXXXXXX.pdf" */
+ strcpy (template, "fooXXXXXX.pdf");
+ fd = g_mkstemp (template);
+ g_assert_cmpint (fd, !=, -1);
+
+ close (fd);
+ remove (template);
}
static void
test_mkdtemp (void)
{
- gchar *name;
+ gint fd;
gchar *ret;
+ gchar *name;
+ char template[32];
name = g_strdup ("testXXXXXXtest"),
ret = g_mkdtemp (name);
@@ -940,6 +1361,108 @@ test_mkdtemp (void)
ret = g_mkdtemp (name);
g_assert_null (ret);
g_free (name);
+
+ strcpy (template, "foodir");
+ g_assert_null (g_mkdtemp (template));
+
+ strcpy (template, "foodir");
+ g_assert_null (g_mkdtemp (template));
+
+ strcpy (template, "fooXXXXXX");
+ ret = g_mkdtemp (template);
+ g_assert_nonnull (ret);
+ g_assert_true (ret == template);
+ g_assert_false (g_file_test (template, G_FILE_TEST_IS_REGULAR));
+ g_assert_true (g_file_test (template, G_FILE_TEST_IS_DIR));
+
+ strcat (template, "/abc");
+ fd = g_open (template, O_WRONLY | O_CREAT, 0600);
+ g_assert_cmpint (fd, !=, -1);
+ close (fd);
+ g_assert_true (g_file_test (template, G_FILE_TEST_IS_REGULAR));
+ g_assert_cmpint (g_unlink (template), !=, -1);
+
+ template[9] = '\0';
+ g_assert_cmpint (g_rmdir (template), !=, -1);
+
+ strcpy (template, "fooXXXXXX.dir");
+ g_assert_nonnull (g_mkdtemp (template));
+ g_assert_true (g_file_test (template, G_FILE_TEST_IS_DIR));
+ g_rmdir (template);
+}
+
+static void
+test_get_contents (void)
+{
+ FILE *f;
+ gsize len;
+ gchar *contents;
+ GError *error = NULL;
+ const gchar *text = "abcdefghijklmnopqrstuvwxyz";
+ const gchar *filename = "file-test-get-contents";
+
+ f = g_fopen (filename, "w");
+ fwrite (text, 1, strlen (text), f);
+ fclose (f);
+
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion*!= NULL*");
+ g_assert_false (g_file_get_contents (NULL, &contents, &len, &error));
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion*!= NULL*");
+ g_assert_false (g_file_get_contents (filename, NULL, &len, &error));
+ g_test_assert_expected_messages ();
+ }
+
+ g_assert_true (g_file_test (filename, G_FILE_TEST_IS_REGULAR));
+
+ g_assert_true (g_file_get_contents (filename, &contents, &len, &error));
+ g_assert_cmpstr (text, ==, contents);
+ g_assert_no_error (error);
+
+ g_free (contents);
+}
+
+static void
+test_file_test (void)
+{
+ GError *error = NULL;
+ gboolean result;
+ gchar *name;
+ gint fd;
+
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion*!= NULL*");
+ result = g_file_test (NULL, G_FILE_TEST_EXISTS);
+ g_assert_false (result);
+ g_test_assert_expected_messages ();
+ }
+
+ fd = g_file_open_tmp (NULL, &name, &error);
+ g_assert_no_error (error);
+ write (fd, "a", 1);
+ g_assert_cmpint (g_fsync (fd), ==, 0);
+ close (fd);
+
+#ifndef G_OS_WIN32
+ result = g_file_test (name, G_FILE_TEST_IS_SYMLINK);
+ g_assert_false (result);
+
+ symlink (name, "symlink");
+ result = g_file_test ("symlink", G_FILE_TEST_IS_SYMLINK);
+ g_assert_true (result);
+ unlink ("symlink");
+#endif
+
+ /* Cleaning */
+ g_remove (name);
+ g_free (name);
}
static void
@@ -1012,8 +1535,11 @@ test_set_contents_full (void)
{ EXISTING_FILE_REGULAR, 0644, FALSE, TRUE, 0 },
#ifndef G_OS_WIN32
{ EXISTING_FILE_SYMLINK, 0644, FALSE, TRUE, 0 },
-#endif
{ EXISTING_FILE_DIRECTORY, 0644, FALSE, FALSE, G_FILE_ERROR_ISDIR },
+#else
+ /* on win32, _wopen returns EACCES if path is a directory */
+ { EXISTING_FILE_DIRECTORY, 0644, FALSE, FALSE, G_FILE_ERROR_ACCES },
+#endif
};
gsize i;
@@ -1116,7 +1642,17 @@ test_set_contents_full (void)
g_assert_no_errno (g_lstat (set_contents_name, &statbuf));
if (tests[i].existing_file == EXISTING_FILE_NONE)
- g_assert_cmpint (statbuf.st_mode & ~S_IFMT, ==, tests[i].new_mode);
+ {
+ int mode = statbuf.st_mode & ~S_IFMT;
+ int new_mode = tests[i].new_mode;
+#ifdef G_OS_WIN32
+ /* on windows, group and others perms handling is different */
+ /* only check the rwx user permissions */
+ mode &= (_S_IREAD|_S_IWRITE|_S_IEXEC);
+ new_mode &= (_S_IREAD|_S_IWRITE|_S_IEXEC);
+#endif
+ g_assert_cmpint (mode, ==, new_mode);
+ }
#ifndef G_OS_WIN32
if (tests[i].existing_file == EXISTING_FILE_SYMLINK)
@@ -1170,7 +1706,24 @@ test_set_contents_full_read_only_file (void)
write (fd, "a", 1);
g_assert_no_errno (g_fsync (fd));
close (fd);
- g_assert_no_errno (chmod (file_name, 0200));
+ g_assert_no_errno (g_chmod (file_name, 0400)); /* S_IREAD */
+
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion*!= NULL*");
+ ret = g_file_set_contents_full (NULL, "b", 1,
+ G_FILE_SET_CONTENTS_NONE, 0644, &error);
+ g_assert_false (ret);
+ g_test_assert_expected_messages ();
+
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion*!= NULL*");
+ ret = g_file_set_contents_full (file_name, NULL, 1,
+ G_FILE_SET_CONTENTS_NONE, 0644, &error);
+ g_assert_false (ret);
+ g_test_assert_expected_messages ();
+ }
/* Set the file contents */
ret = g_file_set_contents_full (file_name, "b", 1, G_FILE_SET_CONTENTS_NONE, 0644, &error);
@@ -1196,6 +1749,8 @@ test_set_contents_full_read_only_file (void)
static void
test_set_contents_full_read_only_directory (void)
{
+#ifndef G_OS_WIN32
+/* windows mostly ignores read-only flagged directories, chmod doesn't work */
GFileSetContentsFlags flags_mask =
G_FILE_SET_CONTENTS_ONLY_EXISTING |
G_FILE_SET_CONTENTS_DURABLE |
@@ -1226,7 +1781,7 @@ test_set_contents_full_read_only_directory (void)
g_assert_no_errno (g_fsync (fd));
close (fd);
- g_assert_no_errno (chmod (dir_name, 0));
+ g_assert_no_errno (g_chmod (dir_name, 0));
/* Set the file contents */
ret = g_file_set_contents_full (file_name, "b", 1, flags, 0644, &error);
@@ -1249,6 +1804,9 @@ test_set_contents_full_read_only_directory (void)
g_free (file_name);
g_free (dir_name);
}
+#else
+ g_test_skip ("Windows doesn’t support read-only directories in the same way as Unix");
+#endif
}
static void
@@ -1257,12 +1815,26 @@ test_read_link (void)
#ifdef HAVE_READLINK
#ifdef G_OS_UNIX
int ret;
- const gchar *oldpath;
+ FILE *file;
gchar *cwd;
+ gchar *data;
gchar *newpath;
gchar *badpath;
gchar *path;
GError *error = NULL;
+ const gchar *oldpath;
+ const gchar *filename = "file-test-data";
+ const gchar *link1 = "file-test-link1";
+ const gchar *link2 = "file-test-link2";
+ const gchar *link3 = "file-test-link3";
+
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion*!= NULL*");
+ newpath = g_file_read_link (NULL, &error);
+ g_test_assert_expected_messages ();
+ }
cwd = g_get_current_dir ();
@@ -1295,6 +1867,42 @@ test_read_link (void)
g_free (newpath);
g_free (badpath);
+ file = fopen (filename, "w");
+ g_assert_nonnull (file);
+ fclose (file);
+
+ g_assert_cmpint (symlink (filename, link1), ==, 0);
+ g_assert_cmpint (symlink (link1, link2), ==, 0);
+
+ error = NULL;
+ data = g_file_read_link (link1, &error);
+ g_assert_nonnull (data);
+ g_assert_cmpstr (data, ==, filename);
+ g_assert_no_error (error);
+ g_free (data);
+
+ error = NULL;
+ data = g_file_read_link (link2, &error);
+ g_assert_nonnull (data);
+ g_assert_cmpstr (data, ==, link1);
+ g_assert_no_error (error);
+ g_free (data);
+
+ error = NULL;
+ data = g_file_read_link (link3, &error);
+ g_assert_null (data);
+ g_assert_error (error, G_FILE_ERROR, G_FILE_ERROR_NOENT);
+ g_error_free (error);
+
+ error = NULL;
+ data = g_file_read_link (filename, &error);
+ g_assert_null (data);
+ g_assert_error (error, G_FILE_ERROR, G_FILE_ERROR_INVAL);
+ g_error_free (error);
+
+ remove (filename);
+ remove (link1);
+ remove (link2);
#endif
#else
g_test_skip ("Symbolic links not supported");
@@ -1830,6 +2438,7 @@ main (int argc,
g_test_add_func ("/fileutils/stdio-win32-pathstrip", test_win32_pathstrip);
g_test_add_func ("/fileutils/stdio-win32-zero-terminate-symlink", test_win32_zero_terminate_symlink);
#endif
+ g_test_add_func ("/fileutils/paths", test_paths);
g_test_add_func ("/fileutils/build-path", test_build_path);
g_test_add_func ("/fileutils/build-pathv", test_build_pathv);
g_test_add_func ("/fileutils/build-filename", test_build_filename);
@@ -1839,10 +2448,14 @@ main (int argc,
g_test_add_func ("/fileutils/format-size-for-display", test_format_size_for_display);
g_test_add_func ("/fileutils/errors", test_file_errors);
g_test_add_func ("/fileutils/basename", test_basename);
+ g_test_add_func ("/fileutils/get-basename", test_get_basename);
+ g_test_add_func ("/fileutils/dirname", test_dirname);
g_test_add_func ("/fileutils/dir-make-tmp", test_dir_make_tmp);
g_test_add_func ("/fileutils/file-open-tmp", test_file_open_tmp);
+ g_test_add_func ("/fileutils/file-test", test_file_test);
g_test_add_func ("/fileutils/mkstemp", test_mkstemp);
g_test_add_func ("/fileutils/mkdtemp", test_mkdtemp);
+ g_test_add_func ("/fileutils/get-contents", test_get_contents);
g_test_add_func ("/fileutils/set-contents", test_set_contents);
g_test_add_func ("/fileutils/set-contents-full", test_set_contents_full);
g_test_add_func ("/fileutils/set-contents-full/read-only-file", test_set_contents_full_read_only_file);
diff --git a/glib/tests/gdatetime.c b/glib/tests/gdatetime.c
index 38555bfeb..141263b66 100644
--- a/glib/tests/gdatetime.c
+++ b/glib/tests/gdatetime.c
@@ -49,6 +49,23 @@
g_assert_cmpint ((U), ==, g_date_time_get_microsecond ((dt))); \
} G_STMT_END
+static gboolean
+skip_if_running_uninstalled (void)
+{
+ /* If running uninstalled (G_TEST_BUILDDIR is set), skip this test, since we
+ * need the translations to be installed. We can’t mess around with
+ * bindtextdomain() here, as the compiled .gmo files in po/ are not in the
+ * right installed directory hierarchy to be successfully loaded by gettext. */
+ if (g_getenv ("G_TEST_BUILDDIR") != NULL)
+ {
+ g_test_skip ("Skipping due to running uninstalled. "
+ "This test can only be run when the translations are installed.");
+ return TRUE;
+ }
+
+ return FALSE;
+}
+
static void
get_localtime_tm (time_t time_,
struct tm *retval)
@@ -1650,16 +1667,8 @@ test_non_utf8_printf (void)
{
gchar *oldlocale;
- /* If running uninstalled (G_TEST_BUILDDIR is set), skip this test, since we
- * need the translations to be installed. We can’t mess around with
- * bindtextdomain() here, as the compiled .gmo files in po/ are not in the
- * right installed directory hierarchy to be successfully loaded by gettext. */
- if (g_getenv ("G_TEST_BUILDDIR") != NULL)
- {
- g_test_skip ("Skipping due to running uninstalled. "
- "This test can only be run when the translations are installed.");
- return;
- }
+ if (skip_if_running_uninstalled())
+ return;
oldlocale = g_strdup (setlocale (LC_ALL, NULL));
setlocale (LC_ALL, "ja_JP.eucjp");
@@ -1805,6 +1814,7 @@ test_modifiers (void)
oldlocale = g_strdup (setlocale (LC_ALL, NULL));
setlocale (LC_ALL, "fa_IR.utf-8");
+#ifdef HAVE_LANGINFO_OUTDIGIT
if (strstr (setlocale (LC_ALL, NULL), "fa_IR") != NULL)
{
TEST_PRINTF_TIME (23, 0, 0, "%OH", "\333\262\333\263"); /* '23' */
@@ -1818,6 +1828,9 @@ test_modifiers (void)
}
else
g_test_skip ("locale fa_IR not available, skipping O modifier tests");
+#else
+ g_test_skip ("langinfo not available, skipping O modifier tests");
+#endif
setlocale (LC_ALL, oldlocale);
g_free (oldlocale);
}
@@ -1831,16 +1844,8 @@ test_month_names (void)
g_test_bug ("http://bugzilla.gnome.org/749206");
- /* If running uninstalled (G_TEST_BUILDDIR is set), skip this test, since we
- * need the translations to be installed. We can’t mess around with
- * bindtextdomain() here, as the compiled .gmo files in po/ are not in the
- * right installed directory hierarchy to be successfully loaded by gettext. */
- if (g_getenv ("G_TEST_BUILDDIR") != NULL)
- {
- g_test_skip ("Skipping due to running uninstalled. "
- "This test can only be run when the translations are installed.");
- return;
- }
+ if (skip_if_running_uninstalled())
+ return;
oldlocale = g_strdup (setlocale (LC_ALL, NULL));
@@ -2316,6 +2321,22 @@ test_format_iso8601 (void)
g_free (p);
g_date_time_unref (dt);
g_time_zone_unref (tz);
+
+ tz = g_time_zone_new_utc ();
+ dt = g_date_time_new (tz, 9, 1, 2, 3, 4, 55);
+ p = g_date_time_format_iso8601 (dt);
+ g_assert_cmpstr (p, ==, "0009-01-02T03:04:55Z");
+ g_free (p);
+ g_date_time_unref (dt);
+ g_time_zone_unref (tz);
+
+ tz = g_time_zone_new_utc ();
+ dt = g_date_time_new (tz, 9990, 1, 2, 3, 4, 55.000001);
+ p = g_date_time_format_iso8601 (dt);
+ g_assert_cmpstr (p, ==, "9990-01-02T03:04:55.000001Z");
+ g_free (p);
+ g_date_time_unref (dt);
+ g_time_zone_unref (tz);
}
typedef struct
@@ -2351,7 +2372,7 @@ check_and_set_locale (int category,
setlocale (category, name);
if (strstr (setlocale (category, NULL), name) == NULL)
{
- g_print ("Unavaible '%s' locale\n", name);
+ g_print ("Unavailable '%s' locale\n", name);
g_test_skip ("required locale not available, skipping tests");
return FALSE;
}
@@ -2361,6 +2382,9 @@ check_and_set_locale (int category,
static void
test_format_time_mixed_utf8 (gconstpointer data)
{
+#ifdef _MSC_VER
+ g_test_skip ("setlocale (LC_MESSAGES) asserts on ucrt");
+#else
const MixedUtf8TestData *test_data;
gchar *old_time_locale;
gchar *old_messages_locale;
@@ -2426,6 +2450,7 @@ test_format_time_mixed_utf8 (gconstpointer data)
setlocale (LC_MESSAGES, old_messages_locale);
g_free (old_time_locale);
g_free (old_messages_locale);
+#endif
}
#pragma GCC diagnostic push
@@ -2463,6 +2488,17 @@ static void
test_GDateTime_strftime_error_handling (void)
{
gchar *oldlocale;
+#ifdef G_OS_WIN32
+ LCID old_lcid;
+#endif
+
+ if (skip_if_running_uninstalled())
+ return;
+
+#ifdef G_OS_WIN32
+ old_lcid = GetThreadLocale ();
+ SetThreadLocale (MAKELCID (MAKELANGID (LANG_GERMAN, SUBLANG_GERMAN), SORT_DEFAULT));
+#endif
oldlocale = g_strdup (setlocale (LC_ALL, NULL));
setlocale (LC_ALL, "de_DE.utf-8");
@@ -2476,6 +2512,10 @@ test_GDateTime_strftime_error_handling (void)
g_test_skip ("locale de_DE not available, skipping error handling tests");
setlocale (LC_ALL, oldlocale);
g_free (oldlocale);
+
+#ifdef G_OS_WIN32
+ SetThreadLocale (old_lcid);
+#endif
}
static void
@@ -2965,6 +3005,7 @@ test_new_offset (void)
static void
test_time_zone_parse_rfc8536 (void)
{
+#ifndef G_OS_WIN32
const gchar *test_files[] =
{
/* Generated with `zic -b slim`; see
@@ -2990,6 +3031,9 @@ test_time_zone_parse_rfc8536 (void)
g_time_zone_unref (tz);
g_free (path);
}
+#else
+ g_test_skip ("RFC 8536 format time zone files are not available on Windows");
+#endif
}
/* Check GTimeZone instances are cached. */
@@ -3063,6 +3107,10 @@ main (gint argc,
* Unset it to avoid interference with tests using setlocale and translation. */
g_unsetenv ("LANGUAGE");
+ /* GLib uses CHARSET to allow overriding the character set used for all locale
+ * categories. Unset it to avoid interference with tests. */
+ g_unsetenv ("CHARSET");
+
g_test_init (&argc, &argv, NULL);
/* GDateTime Tests */
diff --git a/tests/gen-casefold-txt.py b/glib/tests/gen-casefold-txt.py
index e7bafa0ba..e7bafa0ba 100755
--- a/tests/gen-casefold-txt.py
+++ b/glib/tests/gen-casefold-txt.py
diff --git a/tests/gen-casemap-txt.py b/glib/tests/gen-casemap-txt.py
index 62d59638a..62d59638a 100755
--- a/tests/gen-casemap-txt.py
+++ b/glib/tests/gen-casemap-txt.py
diff --git a/glib/tests/hash.c b/glib/tests/hash.c
index fe72606f8..114b6a242 100644
--- a/glib/tests/hash.c
+++ b/glib/tests/hash.c
@@ -34,9 +34,7 @@
#include <glib.h>
-
-
-int array[10000];
+static int global_array[10000];
static void
fill_hash_table_and_array (GHashTable *hash_table)
@@ -45,8 +43,8 @@ fill_hash_table_and_array (GHashTable *hash_table)
for (i = 0; i < 10000; i++)
{
- array[i] = i;
- g_hash_table_insert (hash_table, &array[i], &array[i]);
+ global_array[i] = i;
+ g_hash_table_insert (hash_table, &global_array[i], &global_array[i]);
}
}
@@ -641,7 +639,7 @@ test_hash_misc (void)
verify_result_array (result_array);
for (i = 0; i < 10000; i++)
- g_hash_table_remove (hash_table, &array[i]);
+ g_hash_table_remove (hash_table, &global_array[i]);
fill_hash_table_and_array (hash_table);
@@ -971,14 +969,14 @@ set_ref_hash_test (void)
key_unref (key2);
}
-GHashTable *h;
+static GHashTable *global_hashtable;
typedef struct {
gchar *string;
gboolean freed;
} FakeFreeData;
-GPtrArray *fake_free_data;
+static GPtrArray *fake_free_data;
static void
fake_free (gpointer dead)
@@ -1003,7 +1001,7 @@ fake_free (gpointer dead)
static void
value_destroy_insert (gpointer value)
{
- g_hash_table_remove_all (h);
+ g_hash_table_remove_all (global_hashtable);
}
static void
@@ -1016,44 +1014,44 @@ test_destroy_modify (void)
fake_free_data = g_ptr_array_new ();
- h = g_hash_table_new_full (g_str_hash, g_str_equal, fake_free, value_destroy_insert);
+ global_hashtable = g_hash_table_new_full (g_str_hash, g_str_equal, fake_free, value_destroy_insert);
ffd = g_new0 (FakeFreeData, 1);
ffd->string = g_strdup ("a");
g_ptr_array_add (fake_free_data, ffd);
- g_hash_table_insert (h, ffd->string, "b");
+ g_hash_table_insert (global_hashtable, ffd->string, "b");
ffd = g_new0 (FakeFreeData, 1);
ffd->string = g_strdup ("c");
g_ptr_array_add (fake_free_data, ffd);
- g_hash_table_insert (h, ffd->string, "d");
+ g_hash_table_insert (global_hashtable, ffd->string, "d");
ffd = g_new0 (FakeFreeData, 1);
ffd->string = g_strdup ("e");
g_ptr_array_add (fake_free_data, ffd);
- g_hash_table_insert (h, ffd->string, "f");
+ g_hash_table_insert (global_hashtable, ffd->string, "f");
ffd = g_new0 (FakeFreeData, 1);
ffd->string = g_strdup ("g");
g_ptr_array_add (fake_free_data, ffd);
- g_hash_table_insert (h, ffd->string, "h");
+ g_hash_table_insert (global_hashtable, ffd->string, "h");
ffd = g_new0 (FakeFreeData, 1);
ffd->string = g_strdup ("h");
g_ptr_array_add (fake_free_data, ffd);
- g_hash_table_insert (h, ffd->string, "k");
+ g_hash_table_insert (global_hashtable, ffd->string, "k");
ffd = g_new0 (FakeFreeData, 1);
ffd->string = g_strdup ("a");
g_ptr_array_add (fake_free_data, ffd);
- g_hash_table_insert (h, ffd->string, "c");
+ g_hash_table_insert (global_hashtable, ffd->string, "c");
- g_hash_table_remove (h, "c");
+ g_hash_table_remove (global_hashtable, "c");
/* that removed everything... */
for (i = 0; i < fake_free_data->len; i++)
{
- FakeFreeData *ffd = g_ptr_array_index (fake_free_data, i);
+ ffd = g_ptr_array_index (fake_free_data, i);
g_assert (ffd->freed);
g_free (ffd->string);
@@ -1063,9 +1061,9 @@ test_destroy_modify (void)
g_ptr_array_unref (fake_free_data);
/* ... so this is a no-op */
- g_hash_table_remove (h, "e");
+ g_hash_table_remove (global_hashtable, "e");
- g_hash_table_unref (h);
+ g_hash_table_unref (global_hashtable);
}
static gboolean
@@ -1345,6 +1343,49 @@ test_lookup_extended (void)
g_hash_table_unref (hash);
}
+static void
+inc_state (gpointer user_data)
+{
+ int *state = user_data;
+ g_assert_cmpint (*state, ==, 0);
+ *state = 1;
+}
+
+static void
+test_new_similar (void)
+{
+ GHashTable *hash1;
+ GHashTable *hash2;
+ int state1;
+ int state2;
+
+ hash1 = g_hash_table_new_full (g_str_hash, g_str_equal,
+ g_free, inc_state);
+ state1 = 0;
+ g_hash_table_insert (hash1,
+ g_strdup ("test"),
+ &state1);
+ g_assert_true (g_hash_table_lookup (hash1, "test") == &state1);
+
+ hash2 = g_hash_table_new_similar (hash1);
+
+ g_assert_true (g_hash_table_lookup (hash1, "test") == &state1);
+ g_assert_null (g_hash_table_lookup (hash2, "test"));
+
+ state2 = 0;
+ g_hash_table_insert (hash2, g_strdup ("test"), &state2);
+ g_assert_true (g_hash_table_lookup (hash2, "test") == &state2);
+ g_hash_table_remove (hash2, "test");
+ g_assert_cmpint (state2, ==, 1);
+
+ g_assert_cmpint (state1, ==, 0);
+ g_hash_table_remove (hash1, "test");
+ g_assert_cmpint (state1, ==, 1);
+
+ g_hash_table_unref (hash1);
+ g_hash_table_unref (hash2);
+}
+
struct _GHashTable
{
gsize size;
@@ -1685,6 +1726,7 @@ main (int argc, char *argv[])
g_test_add_func ("/hash/steal-extended", test_steal_extended);
g_test_add_func ("/hash/steal-extended/optional", test_steal_extended_optional);
g_test_add_func ("/hash/lookup-extended", test_lookup_extended);
+ g_test_add_func ("/hash/new-similar", test_new_similar);
/* tests for individual bugs */
g_test_add_func ("/hash/lookup-null-key", test_lookup_null_key);
diff --git a/glib/tests/io-channel.c b/glib/tests/io-channel.c
index 4a1b10876..a04bcd098 100644
--- a/glib/tests/io-channel.c
+++ b/glib/tests/io-channel.c
@@ -1,5 +1,13 @@
/* GLib testing framework examples and tests
*
+ * Copyright © 2001 Hidetoshi Tajima
+ * Copyright © 2001 Ron Steinke
+ * Copyright © 2001 Owen Taylor
+ * Copyright © 2002 Manish Singh
+ * Copyright © 2011 Sjoerd Simons
+ * Copyright © 2012 Simon McVittie
+ * Copyright © 2013 Stef Walter
+ * Copyright © 2005, 2006, 2008, 2012, 2013 Matthias Clasen
* Copyright © 2020 Endless Mobile, Inc.
*
* This library is free software; you can redistribute it and/or
@@ -22,6 +30,138 @@
#include <glib/gstdio.h>
static void
+test_small_writes (void)
+{
+ GIOChannel *io;
+ GIOStatus status = G_IO_STATUS_ERROR;
+ guint bytes_remaining;
+ gchar tmp;
+ GError *local_error = NULL;
+
+ io = g_io_channel_new_file ("iochannel-test-outfile", "w", &local_error);
+ g_assert_no_error (local_error);
+
+ g_io_channel_set_encoding (io, NULL, NULL);
+ g_io_channel_set_buffer_size (io, 1022);
+
+ bytes_remaining = 2 * g_io_channel_get_buffer_size (io);
+ tmp = 0;
+
+ while (bytes_remaining)
+ {
+ status = g_io_channel_write_chars (io, &tmp, 1, NULL, NULL);
+ if (status == G_IO_STATUS_ERROR)
+ break;
+ if (status == G_IO_STATUS_NORMAL)
+ bytes_remaining--;
+ }
+
+ g_assert_cmpint (status, ==, G_IO_STATUS_NORMAL);
+
+ g_io_channel_unref (io);
+}
+
+static void
+test_read_write (void)
+{
+ GIOChannel *gio_r, *gio_w ;
+ GError *local_error = NULL;
+ GString *buffer;
+ char *filename;
+ gint rlength = 0;
+ glong wlength = 0;
+ gsize length_out;
+ const gchar *encoding = "EUC-JP";
+ GIOStatus status;
+ const gsize buffer_size_bytes = 1024;
+
+ filename = g_test_build_filename (G_TEST_DIST, "iochannel-test-infile", NULL);
+
+ setbuf (stdout, NULL); /* For debugging */
+
+ gio_r = g_io_channel_new_file (filename, "r", &local_error);
+ g_assert_no_error (local_error);
+
+ gio_w = g_io_channel_new_file ("iochannel-test-outfile", "w", &local_error);
+ g_assert_no_error (local_error);
+
+ g_io_channel_set_encoding (gio_r, encoding, &local_error);
+ g_assert_no_error (local_error);
+
+ g_io_channel_set_buffer_size (gio_r, buffer_size_bytes);
+
+ status = g_io_channel_set_flags (gio_r, G_IO_FLAG_NONBLOCK, &local_error);
+ if (status == G_IO_STATUS_ERROR)
+ {
+ /* Errors should not happen */
+ g_assert_no_error (local_error);
+ g_clear_error (&local_error);
+ }
+ buffer = g_string_sized_new (buffer_size_bytes);
+
+ while (TRUE)
+ {
+ do
+ status = g_io_channel_read_line_string (gio_r, buffer, NULL, &local_error);
+ while (status == G_IO_STATUS_AGAIN);
+ if (status != G_IO_STATUS_NORMAL)
+ break;
+
+ rlength += buffer->len;
+
+ do
+ status = g_io_channel_write_chars (gio_w, buffer->str, buffer->len,
+ &length_out, &local_error);
+ while (status == G_IO_STATUS_AGAIN);
+ if (status != G_IO_STATUS_NORMAL)
+ break;
+
+ wlength += length_out;
+
+ /* Ensure the whole line was written */
+ g_assert_cmpuint (length_out, ==, buffer->len);
+
+ g_test_message ("%s", buffer->str);
+ g_string_truncate (buffer, 0);
+ }
+
+ switch (status)
+ {
+ case G_IO_STATUS_EOF:
+ break;
+ case G_IO_STATUS_ERROR:
+ /* Errors should not happen */
+ g_assert_no_error (local_error);
+ g_clear_error (&local_error);
+ break;
+ default:
+ g_assert_not_reached ();
+ break;
+ }
+
+ do
+ status = g_io_channel_flush (gio_w, &local_error);
+ while (status == G_IO_STATUS_AGAIN);
+
+ if (status == G_IO_STATUS_ERROR)
+ {
+ /* Errors should not happen */
+ g_assert_no_error (local_error);
+ g_clear_error (&local_error);
+ }
+
+ g_test_message ("read %d bytes, wrote %ld bytes", rlength, wlength);
+
+ g_io_channel_unref (gio_r);
+ g_io_channel_unref (gio_w);
+
+ test_small_writes ();
+
+ g_free (filename);
+ g_string_free (buffer, TRUE);
+}
+
+static void
test_read_line_embedded_nuls (void)
{
const guint8 test_data[] = { 'H', 'i', '!', '\0', 'y', 'o', 'u', '\n', ':', ')', '\n' };
@@ -75,6 +215,7 @@ main (int argc,
{
g_test_init (&argc, &argv, NULL);
+ g_test_add_func ("/io-channel/read-write", test_read_write);
g_test_add_func ("/io-channel/read-line/embedded-nuls", test_read_line_embedded_nuls);
return g_test_run ();
diff --git a/tests/iochannel-test-infile b/glib/tests/iochannel-test-infile
index 86e24ee4c..86e24ee4c 100644
--- a/tests/iochannel-test-infile
+++ b/glib/tests/iochannel-test-infile
diff --git a/glib/tests/keyfile.c b/glib/tests/keyfile.c
index 1f5be8b38..3d72d9670 100644
--- a/glib/tests/keyfile.c
+++ b/glib/tests/keyfile.c
@@ -45,7 +45,7 @@ check_string_value (GKeyFile *keyfile,
value = g_key_file_get_string (keyfile, group, key, &error);
check_no_error (&error);
- g_assert (value != NULL);
+ g_assert_nonnull (value);
g_assert_cmpstr (value, ==, expected);
g_free (value);
}
@@ -62,7 +62,7 @@ check_locale_string_value (GKeyFile *keyfile,
value = g_key_file_get_locale_string (keyfile, group, key, locale, &error);
check_no_error (&error);
- g_assert (value != NULL);
+ g_assert_nonnull (value);
g_assert_cmpstr (value, ==, expected);
g_free (value);
}
@@ -95,14 +95,14 @@ check_string_list_value (GKeyFile *keyfile,
value = g_key_file_get_string_list (keyfile, group, key, &len, &error);
check_no_error (&error);
- g_assert (value != NULL);
+ g_assert_nonnull (value);
va_start (args, key);
i = 0;
v = va_arg (args, gchar*);
while (v)
{
- g_assert (value[i] != NULL);
+ g_assert_nonnull (value[i]);
g_assert_cmpstr (v, ==, value[i]);
i++;
v = va_arg (args, gchar*);
@@ -128,14 +128,14 @@ check_locale_string_list_value (GKeyFile *keyfile,
value = g_key_file_get_locale_string_list (keyfile, group, key, locale, &len, &error);
check_no_error (&error);
- g_assert (value != NULL);
+ g_assert_nonnull (value);
va_start (args, locale);
i = 0;
v = va_arg (args, gchar*);
while (v)
{
- g_assert (value[i] != NULL);
+ g_assert_nonnull (value[i]);
g_assert_cmpstr (v, ==, value[i]);
i++;
v = va_arg (args, gchar*);
@@ -160,7 +160,7 @@ check_integer_list_value (GKeyFile *keyfile,
value = g_key_file_get_integer_list (keyfile, group, key, &len, &error);
check_no_error (&error);
- g_assert (value != NULL);
+ g_assert_nonnull (value);
va_start (args, key);
i = 0;
@@ -192,7 +192,7 @@ check_double_list_value (GKeyFile *keyfile,
value = g_key_file_get_double_list (keyfile, group, key, &len, &error);
check_no_error (&error);
- g_assert (value != NULL);
+ g_assert_nonnull (value);
va_start (args, key);
i = 0;
@@ -224,7 +224,7 @@ check_boolean_list_value (GKeyFile *keyfile,
value = g_key_file_get_boolean_list (keyfile, group, key, &len, &error);
check_no_error (&error);
- g_assert (value != NULL);
+ g_assert_nonnull (value);
va_start (args, key);
i = 0;
@@ -436,7 +436,7 @@ test_comments (void)
check_no_error (&error);
comment = g_key_file_get_comment (keyfile, "group1", "key2", &error);
check_no_error (&error);
- g_assert (comment == NULL);
+ g_assert_null (comment);
comment = g_key_file_get_comment (keyfile, "group1", "key4", &error);
check_no_error (&error);
@@ -452,7 +452,7 @@ test_comments (void)
check_error (&error,
G_KEY_FILE_ERROR,
G_KEY_FILE_ERROR_GROUP_NOT_FOUND);
- g_assert (comment == NULL);
+ g_assert_null (comment);
g_key_file_free (keyfile);
}
@@ -479,7 +479,7 @@ test_listing (void)
keyfile = load_data (data, 0);
names = g_key_file_get_groups (keyfile, &len);
- g_assert (names != NULL);
+ g_assert_nonnull (names);
check_length ("groups", g_strv_length (names), len, 2);
check_name ("group name", names[0], "group1", 0);
@@ -501,20 +501,20 @@ test_listing (void)
g_strfreev (names);
- g_assert (g_key_file_has_group (keyfile, "group1"));
- g_assert (g_key_file_has_group (keyfile, "group2"));
- g_assert (!g_key_file_has_group (keyfile, "group10"));
- g_assert (!g_key_file_has_group (keyfile, "group20"));
+ g_assert_true (g_key_file_has_group (keyfile, "group1"));
+ g_assert_true (g_key_file_has_group (keyfile, "group2"));
+ g_assert_false (g_key_file_has_group (keyfile, "group10"));
+ g_assert_false (g_key_file_has_group (keyfile, "group20"));
start = g_key_file_get_start_group (keyfile);
g_assert_cmpstr (start, ==, "group1");
g_free (start);
- g_assert (g_key_file_has_key (keyfile, "group1", "key1", &error));
+ g_assert_true (g_key_file_has_key (keyfile, "group1", "key1", &error));
check_no_error (&error);
- g_assert (g_key_file_has_key (keyfile, "group2", "key3", &error));
+ g_assert_true (g_key_file_has_key (keyfile, "group2", "key3", &error));
check_no_error (&error);
- g_assert (!g_key_file_has_key (keyfile, "group2", "no-such-key", NULL));
+ g_assert_false (g_key_file_has_key (keyfile, "group2", "no-such-key", NULL));
g_key_file_has_key (keyfile, "no-such-group", "key", &error);
check_error (&error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_GROUP_NOT_FOUND);
@@ -902,7 +902,7 @@ test_group_remove (void)
keyfile = load_data (data, 0);
names = g_key_file_get_groups (keyfile, &len);
- g_assert (names != NULL);
+ g_assert_nonnull (names);
check_length ("groups", g_strv_length (names), len, 3);
check_name ("group name", names[0], "group1", 0);
@@ -915,7 +915,7 @@ test_group_remove (void)
g_strfreev (names);
names = g_key_file_get_groups (keyfile, &len);
- g_assert (names != NULL);
+ g_assert_nonnull (names);
check_length ("groups", g_strv_length (names), len, 2);
check_name ("group name", names[0], "group2", 0);
@@ -927,7 +927,7 @@ test_group_remove (void)
g_strfreev (names);
names = g_key_file_get_groups (keyfile, &len);
- g_assert (names != NULL);
+ g_assert_nonnull (names);
check_length ("groups", g_strv_length (names), len, 1);
check_name ("group name", names[0], "group3", 0);
@@ -1058,7 +1058,7 @@ test_group_names (void)
check_error (&error,
G_KEY_FILE_ERROR,
G_KEY_FILE_ERROR_GROUP_NOT_FOUND);
- g_assert (value == NULL);
+ g_assert_null (value);
g_key_file_free (keyfile);
keyfile = g_key_file_new ();
@@ -1067,7 +1067,7 @@ test_group_names (void)
check_error (&error,
G_KEY_FILE_ERROR,
G_KEY_FILE_ERROR_GROUP_NOT_FOUND);
- g_assert (value == NULL);
+ g_assert_null (value);
g_key_file_free (keyfile);
keyfile = g_key_file_new ();
@@ -1076,7 +1076,7 @@ test_group_names (void)
check_error (&error,
G_KEY_FILE_ERROR,
G_KEY_FILE_ERROR_GROUP_NOT_FOUND);
- g_assert (value == NULL);
+ g_assert_null (value);
g_key_file_free (keyfile);
keyfile = g_key_file_new ();
@@ -1335,7 +1335,7 @@ test_reload_idempotency (void)
check_no_error (&error);
data1 = g_key_file_to_data (keyfile, &len1, &error);
- g_assert (data1 != NULL);
+ g_assert_nonnull (data1);
g_key_file_free (keyfile);
keyfile = g_key_file_new ();
@@ -1346,7 +1346,7 @@ test_reload_idempotency (void)
check_no_error (&error);
data2 = g_key_file_to_data (keyfile, &len2, &error);
- g_assert (data2 != NULL);
+ g_assert_nonnull (data2);
g_key_file_free (keyfile);
g_assert_cmpstr (data1, ==, data2);
@@ -1377,13 +1377,13 @@ test_int64 (void)
ok = g_key_file_load_from_data (file, int64_data, strlen (int64_data),
0, NULL);
- g_assert (ok);
+ g_assert_true (ok);
c = g_key_file_get_uint64 (file, "bees", "c", NULL);
- g_assert (c == G_GUINT64_CONSTANT (123456789123456789));
+ g_assert_cmpuint (c, ==, G_GUINT64_CONSTANT (123456789123456789));
d = g_key_file_get_int64 (file, "bees", "d", NULL);
- g_assert (d == G_GINT64_CONSTANT (-123456789123456789));
+ g_assert_cmpint (d, ==, G_GINT64_CONSTANT (-123456789123456789));
g_key_file_set_uint64 (file, "bees", "c",
G_GUINT64_CONSTANT (987654321987654321));
@@ -1417,7 +1417,7 @@ test_load (void)
loaded = g_key_file_load_from_file (file, g_test_get_filename (G_TEST_DIST, "keyfiletest.ini", NULL), 0, &error);
#endif
g_assert_no_error (error);
- g_assert (loaded);
+ g_assert_true (loaded);
g_key_file_set_locale_string (file, "test", "key4", "de", "Vierter Schlüssel");
g_key_file_set_boolean_list (file, "test", "key5", bools, 2);
@@ -1431,7 +1431,7 @@ test_load (void)
file = g_key_file_new ();
error = NULL;
- g_assert (!g_key_file_load_from_data_dirs (file, "keyfile-test.ini", NULL, 0, &error));
+ g_assert_false (g_key_file_load_from_data_dirs (file, "keyfile-test.ini", NULL, 0, &error));
g_assert_error (error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_NOT_FOUND);
g_error_free (error);
g_key_file_free (file);
@@ -1456,25 +1456,25 @@ test_save (void)
kf = g_key_file_new ();
ok = g_key_file_load_from_data (kf, data, strlen (data), 0, NULL);
- g_assert (ok);
+ g_assert_true (ok);
file = g_strdup ("key_file_XXXXXX");
fd = g_mkstemp (file);
- g_assert (fd != -1);
+ g_assert_cmpint (fd, !=, -1);
ok = g_close (fd, &error);
- g_assert (ok);
+ g_assert_true (ok);
g_assert_no_error (error);
ok = g_key_file_save_to_file (kf, file, &error);
- g_assert (ok);
+ g_assert_true (ok);
g_assert_no_error (error);
kf2 = g_key_file_new ();
ok = g_key_file_load_from_file (kf2, file, 0, &error);
- g_assert (ok);
+ g_assert_true (ok);
g_assert_no_error (error);
c = g_key_file_get_uint64 (kf2, "bees", "c", NULL);
- g_assert (c == G_GUINT64_CONSTANT (123456789123456789));
+ g_assert_cmpuint (c, ==, G_GUINT64_CONSTANT (123456789123456789));
remove (file);
g_free (file);
@@ -1490,10 +1490,10 @@ test_load_fail (void)
file = g_key_file_new ();
error = NULL;
- g_assert (!g_key_file_load_from_file (file, g_test_get_filename (G_TEST_DIST, "keyfile.c", NULL), 0, &error));
+ g_assert_false (g_key_file_load_from_file (file, g_test_get_filename (G_TEST_DIST, "keyfile.c", NULL), 0, &error));
g_assert_error (error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_PARSE);
g_clear_error (&error);
- g_assert (!g_key_file_load_from_file (file, "/nosuchfile", 0, &error));
+ g_assert_false (g_key_file_load_from_file (file, "/nosuchfile", 0, &error));
g_assert_error (error, G_FILE_ERROR, G_FILE_ERROR_NOENT);
g_clear_error (&error);
@@ -1517,22 +1517,22 @@ test_non_utf8 (void)
file = g_key_file_new ();
ok = g_key_file_load_from_data (file, data, strlen (data), 0, NULL);
- g_assert (ok);
+ g_assert_true (ok);
error = NULL;
s = g_key_file_get_string (file, "group", "a", &error);
g_assert_error (error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_UNKNOWN_ENCODING);
- g_assert (s == NULL);
+ g_assert_null (s);
g_clear_error (&error);
l = g_key_file_get_string_list (file, "group", "b", NULL, &error);
g_assert_error (error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_UNKNOWN_ENCODING);
- g_assert (l == NULL);
+ g_assert_null (l);
g_clear_error (&error);
l = g_key_file_get_string_list (file, "group", "c", NULL, &error);
g_assert_error (error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_INVALID_VALUE);
- g_assert (l == NULL);
+ g_assert_null (l);
g_clear_error (&error);
@@ -1587,8 +1587,8 @@ test_ref (void)
file = g_key_file_new ();
ok = g_key_file_load_from_data (file, data, strlen (data), 0, NULL);
- g_assert (ok);
- g_assert (g_key_file_has_key (file, "group", "a", NULL));
+ g_assert_true (ok);
+ g_assert_true (g_key_file_has_key (file, "group", "a", NULL));
g_key_file_ref (file);
g_key_file_free (file);
g_key_file_unref (file);
@@ -1666,7 +1666,7 @@ test_limbo (void)
error = NULL;
ok = g_key_file_load_from_data (file, data, strlen (data), 0, &error);
- g_assert (!ok);
+ g_assert_false (ok);
g_assert_error (error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_GROUP_NOT_FOUND);
g_clear_error (&error);
g_key_file_free (file);
@@ -1675,21 +1675,33 @@ test_limbo (void)
static void
test_utf8 (void)
{
- GKeyFile *file;
- static const char data[] =
-"[group]\n"
-"Encoding=non-UTF-8\n";
- gboolean ok;
- GError *error;
-
- file = g_key_file_new ();
+ const gchar *invalid_encoding_names[] =
+ {
+ "non-UTF-8",
+ "UTF",
+ "UTF-9",
+ };
+ gsize i;
- error = NULL;
- ok = g_key_file_load_from_data (file, data, strlen (data), 0, &error);
- g_assert (!ok);
- g_assert_error (error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_UNKNOWN_ENCODING);
- g_clear_error (&error);
- g_key_file_free (file);
+ for (i = 0; i < G_N_ELEMENTS (invalid_encoding_names); i++)
+ {
+ GKeyFile *file = NULL;
+ gchar *data = NULL;
+ gboolean ok;
+ GError *error = NULL;
+
+ g_test_message ("Testing invalid encoding ‘%s’", invalid_encoding_names[i]);
+
+ file = g_key_file_new ();
+ data = g_strdup_printf ("[group]\n"
+ "Encoding=%s\n", invalid_encoding_names[i]);
+ ok = g_key_file_load_from_data (file, data, strlen (data), 0, &error);
+ g_assert_false (ok);
+ g_assert_error (error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_UNKNOWN_ENCODING);
+ g_clear_error (&error);
+ g_key_file_free (file);
+ g_free (data);
+ }
}
static void
diff --git a/glib/tests/list.c b/glib/tests/list.c
index 5620c244d..4efd8b625 100644
--- a/glib/tests/list.c
+++ b/glib/tests/list.c
@@ -500,25 +500,29 @@ static void
test_position (void)
{
GList *l, *ll;
+ char *a = "a";
+ char *b = "b";
+ char *c = "c";
+ char *d = "d";
l = NULL;
- l = g_list_append (l, "a");
- l = g_list_append (l, "b");
- l = g_list_append (l, "c");
+ l = g_list_append (l, a);
+ l = g_list_append (l, b);
+ l = g_list_append (l, c);
- ll = g_list_find (l, "a");
+ ll = g_list_find (l, a);
g_assert_cmpint (g_list_position (l, ll), ==, 0);
- g_assert_cmpint (g_list_index (l, "a"), ==, 0);
- ll = g_list_find (l, "b");
+ g_assert_cmpint (g_list_index (l, a), ==, 0);
+ ll = g_list_find (l, b);
g_assert_cmpint (g_list_position (l, ll), ==, 1);
- g_assert_cmpint (g_list_index (l, "b"), ==, 1);
- ll = g_list_find (l, "c");
+ g_assert_cmpint (g_list_index (l, b), ==, 1);
+ ll = g_list_find (l, c);
g_assert_cmpint (g_list_position (l, ll), ==, 2);
- g_assert_cmpint (g_list_index (l, "c"), ==, 2);
+ g_assert_cmpint (g_list_index (l, c), ==, 2);
- ll = g_list_append (NULL, "d");
+ ll = g_list_append (NULL, d);
g_assert_cmpint (g_list_position (l, ll), ==, -1);
- g_assert_cmpint (g_list_index (l, "d"), ==, -1);
+ g_assert_cmpint (g_list_index (l, d), ==, -1);
g_list_free (l);
g_list_free (ll);
@@ -528,7 +532,9 @@ static void
test_double_free (void)
{
GList *list, *link;
- GList intruder = { NULL, (gpointer)0xDEADBEEF, (gpointer)0xDEADBEEF };
+ // Casts to size_t first ensure compilers won't warn about pointer casts that change size
+ // MSVC's C4312 warning with /Wp64
+ GList intruder = { NULL, (gpointer)(size_t)0xDEADBEEF, (gpointer)(size_t)0xDEADBEEF };
if (g_test_subprocess ())
{
diff --git a/glib/tests/logging.c b/glib/tests/logging.c
index ab6014847..e9c4e396c 100644
--- a/glib/tests/logging.c
+++ b/glib/tests/logging.c
@@ -525,9 +525,9 @@ test_structured_logging_roundtrip1 (void)
if (expected_messages != NULL)
{
char *str;
- ExpectedMessage *expected = expected_messages->data;
+ ExpectedMessage *msg = expected_messages->data;
- str = g_log_writer_format_fields (0, expected->fields, expected->n_fields, FALSE);
+ str = g_log_writer_format_fields (0, msg->fields, msg->n_fields, FALSE);
g_test_fail_printf ("Unexpected message: %s", str);
g_free (str);
}
diff --git a/glib/tests/mainloop.c b/glib/tests/mainloop.c
index ab1317644..38eee475c 100644
--- a/glib/tests/mainloop.c
+++ b/glib/tests/mainloop.c
@@ -48,7 +48,7 @@ dispatch (GSource *source, GSourceFunc cb, gpointer date)
return FALSE;
}
-static GSourceFuncs funcs = {
+static GSourceFuncs global_funcs = {
prepare,
check,
dispatch,
@@ -63,14 +63,14 @@ test_maincontext_basic (void)
GMainContext *ctx;
GSource *source;
guint id;
- gpointer data = &funcs;
+ gpointer data = &global_funcs;
ctx = g_main_context_new ();
g_assert_false (g_main_context_pending (ctx));
g_assert_false (g_main_context_iteration (ctx, FALSE));
- source = g_source_new (&funcs, sizeof (GSource));
+ source = g_source_new (&global_funcs, sizeof (GSource));
g_assert_cmpint (g_source_get_priority (source), ==, G_PRIORITY_DEFAULT);
g_assert_false (g_source_is_destroyed (source));
@@ -87,7 +87,7 @@ test_maincontext_basic (void)
g_assert_cmpstr (g_source_get_name (source), ==, "still d");
g_assert_null (g_main_context_find_source_by_user_data (ctx, NULL));
- g_assert_null (g_main_context_find_source_by_funcs_user_data (ctx, &funcs, NULL));
+ g_assert_null (g_main_context_find_source_by_funcs_user_data (ctx, &global_funcs, NULL));
id = g_source_attach (source, ctx);
g_assert_cmpint (g_source_get_id (source), ==, id);
@@ -113,18 +113,18 @@ test_maincontext_basic (void)
g_source_unref (source);
ctx = g_main_context_default ();
- source = g_source_new (&funcs, sizeof (GSource));
- g_source_set_funcs (source, &funcs);
+ source = g_source_new (&global_funcs, sizeof (GSource));
+ g_source_set_funcs (source, &global_funcs);
g_source_set_callback (source, cb, data, NULL);
id = g_source_attach (source, ctx);
g_source_unref (source);
g_source_set_name_by_id (id, "e");
g_assert_cmpstr (g_source_get_name (source), ==, "e");
g_assert_true (g_source_get_context (source) == ctx);
- g_assert_true (g_source_remove_by_funcs_user_data (&funcs, data));
+ g_assert_true (g_source_remove_by_funcs_user_data (&global_funcs, data));
- source = g_source_new (&funcs, sizeof (GSource));
- g_source_set_funcs (source, &funcs);
+ source = g_source_new (&global_funcs, sizeof (GSource));
+ g_source_set_funcs (source, &global_funcs);
g_source_set_callback (source, cb, data, NULL);
id = g_source_attach (source, ctx);
g_assert_cmpint (id, >, 0);
@@ -158,9 +158,59 @@ test_mainloop_basic (void)
g_main_loop_unref (loop);
}
-static gint a;
-static gint b;
-static gint c;
+static void
+test_ownerless_polling (gconstpointer test_data)
+{
+ gboolean attach_first = GPOINTER_TO_INT (test_data);
+ GMainContext *ctx = g_main_context_new_with_flags (
+ G_MAIN_CONTEXT_FLAGS_OWNERLESS_POLLING);
+
+ GPollFD fds[20];
+ gint fds_size;
+ gint max_priority;
+ GSource *source = NULL;
+
+ g_assert_true (ctx != g_main_context_default ());
+
+ g_main_context_push_thread_default (ctx);
+
+ /* Drain events */
+ for (;;)
+ {
+ gboolean ready_to_dispatch = g_main_context_prepare (ctx, &max_priority);
+ gint timeout, nready;
+ fds_size = g_main_context_query (ctx, max_priority, &timeout, fds, G_N_ELEMENTS (fds));
+ nready = g_poll (fds, fds_size, /*timeout=*/0);
+ if (!ready_to_dispatch && nready == 0)
+ {
+ if (timeout == -1)
+ break;
+ else
+ g_usleep (timeout * 1000);
+ }
+ ready_to_dispatch = g_main_context_check (ctx, max_priority, fds, fds_size);
+ if (ready_to_dispatch)
+ g_main_context_dispatch (ctx);
+ }
+
+ if (!attach_first)
+ g_main_context_pop_thread_default (ctx);
+
+ source = g_idle_source_new ();
+ g_source_attach (source, ctx);
+ g_source_unref (source);
+
+ if (attach_first)
+ g_main_context_pop_thread_default (ctx);
+
+ g_assert_cmpint (g_poll (fds, fds_size, 0), >, 0);
+
+ g_main_context_unref (ctx);
+}
+
+static gint global_a;
+static gint global_b;
+static gint global_c;
static gboolean
count_calls (gpointer data)
@@ -185,23 +235,23 @@ test_timeouts (void)
return;
}
- a = b = c = 0;
+ global_a = global_b = global_c = 0;
ctx = g_main_context_new ();
loop = g_main_loop_new (ctx, FALSE);
source = g_timeout_source_new (100);
- g_source_set_callback (source, count_calls, &a, NULL);
+ g_source_set_callback (source, count_calls, &global_a, NULL);
g_source_attach (source, ctx);
g_source_unref (source);
source = g_timeout_source_new (250);
- g_source_set_callback (source, count_calls, &b, NULL);
+ g_source_set_callback (source, count_calls, &global_b, NULL);
g_source_attach (source, ctx);
g_source_unref (source);
source = g_timeout_source_new (330);
- g_source_set_callback (source, count_calls, &c, NULL);
+ g_source_set_callback (source, count_calls, &global_c, NULL);
g_source_attach (source, ctx);
g_source_unref (source);
@@ -215,13 +265,13 @@ test_timeouts (void)
/* We may be delayed for an arbitrary amount of time - for example,
* it's possible for all timeouts to fire exactly once.
*/
- g_assert_cmpint (a, >, 0);
- g_assert_cmpint (a, >=, b);
- g_assert_cmpint (b, >=, c);
+ g_assert_cmpint (global_a, >, 0);
+ g_assert_cmpint (global_a, >=, global_b);
+ g_assert_cmpint (global_b, >=, global_c);
- g_assert_cmpint (a, <=, 10);
- g_assert_cmpint (b, <=, 4);
- g_assert_cmpint (c, <=, 3);
+ g_assert_cmpint (global_a, <=, 10);
+ g_assert_cmpint (global_b, <=, 4);
+ g_assert_cmpint (global_c, <=, 3);
g_main_loop_unref (loop);
g_main_context_unref (ctx);
@@ -234,36 +284,36 @@ test_priorities (void)
GSource *sourcea;
GSource *sourceb;
- a = b = c = 0;
+ global_a = global_b = global_c = 0;
ctx = g_main_context_new ();
sourcea = g_idle_source_new ();
- g_source_set_callback (sourcea, count_calls, &a, NULL);
+ g_source_set_callback (sourcea, count_calls, &global_a, NULL);
g_source_set_priority (sourcea, 1);
g_source_attach (sourcea, ctx);
g_source_unref (sourcea);
sourceb = g_idle_source_new ();
- g_source_set_callback (sourceb, count_calls, &b, NULL);
+ g_source_set_callback (sourceb, count_calls, &global_b, NULL);
g_source_set_priority (sourceb, 0);
g_source_attach (sourceb, ctx);
g_source_unref (sourceb);
g_assert_true (g_main_context_pending (ctx));
g_assert_true (g_main_context_iteration (ctx, FALSE));
- g_assert_cmpint (a, ==, 0);
- g_assert_cmpint (b, ==, 1);
+ g_assert_cmpint (global_a, ==, 0);
+ g_assert_cmpint (global_b, ==, 1);
g_assert_true (g_main_context_iteration (ctx, FALSE));
- g_assert_cmpint (a, ==, 0);
- g_assert_cmpint (b, ==, 2);
+ g_assert_cmpint (global_a, ==, 0);
+ g_assert_cmpint (global_b, ==, 2);
g_source_destroy (sourceb);
g_assert_true (g_main_context_iteration (ctx, FALSE));
- g_assert_cmpint (a, ==, 1);
- g_assert_cmpint (b, ==, 2);
+ g_assert_cmpint (global_a, ==, 1);
+ g_assert_cmpint (global_b, ==, 2);
g_assert_true (g_main_context_pending (ctx));
g_source_destroy (sourcea);
@@ -449,7 +499,7 @@ run_inner_loop (gpointer user_data)
GMainLoop *inner;
GSource *timeout;
- a++;
+ global_a++;
inner = g_main_loop_new (ctx, FALSE);
timeout = counter_source_new (100);
@@ -473,7 +523,7 @@ test_child_sources (void)
ctx = g_main_context_new ();
loop = g_main_loop_new (ctx, FALSE);
- a = b = c = 0;
+ global_a = global_b = global_c = 0;
parent = counter_source_new (2000);
g_source_set_callback (parent, run_inner_loop, ctx, NULL);
@@ -481,11 +531,11 @@ test_child_sources (void)
g_source_attach (parent, ctx);
child_b = counter_source_new (250);
- g_source_set_callback (child_b, count_calls, &b, NULL);
+ g_source_set_callback (child_b, count_calls, &global_b, NULL);
g_source_add_child_source (parent, child_b);
child_c = counter_source_new (330);
- g_source_set_callback (child_c, count_calls, &c, NULL);
+ g_source_set_callback (child_c, count_calls, &global_c, NULL);
g_source_set_priority (child_c, G_PRIORITY_HIGH);
g_source_add_child_source (parent, child_c);
@@ -528,9 +578,9 @@ test_child_sources (void)
* 1110 - inner loop ends, a returns, outer loop exits
*/
- g_assert_cmpint (a, ==, 6);
- g_assert_cmpint (b, ==, 3);
- g_assert_cmpint (c, ==, 3);
+ g_assert_cmpint (global_a, ==, 6);
+ g_assert_cmpint (global_b, ==, 3);
+ g_assert_cmpint (global_c, ==, 3);
g_source_destroy (parent);
g_source_unref (parent);
@@ -551,17 +601,17 @@ test_recursive_child_sources (void)
ctx = g_main_context_new ();
loop = g_main_loop_new (ctx, FALSE);
- a = b = c = 0;
+ global_a = global_b = global_c = 0;
parent = counter_source_new (500);
- g_source_set_callback (parent, count_calls, &a, NULL);
+ g_source_set_callback (parent, count_calls, &global_a, NULL);
child_b = counter_source_new (220);
- g_source_set_callback (child_b, count_calls, &b, NULL);
+ g_source_set_callback (child_b, count_calls, &global_b, NULL);
g_source_add_child_source (parent, child_b);
child_c = counter_source_new (430);
- g_source_set_callback (child_c, count_calls, &c, NULL);
+ g_source_set_callback (child_c, count_calls, &global_c, NULL);
g_source_add_child_source (child_b, child_c);
g_source_attach (parent, ctx);
@@ -585,9 +635,9 @@ test_recursive_child_sources (void)
* 1940 b (b -> 2160, a -> 2440)
*/
- g_assert_cmpint (a, ==, 9);
- g_assert_cmpint (b, ==, 9);
- g_assert_cmpint (c, ==, 4);
+ g_assert_cmpint (global_a, ==, 9);
+ g_assert_cmpint (global_b, ==, 9);
+ g_assert_cmpint (global_c, ==, 4);
g_source_destroy (parent);
g_source_unref (parent);
@@ -1637,10 +1687,11 @@ threadf (gpointer data)
source = g_timeout_source_new (250);
g_source_set_callback (source, timeout_cb, loop, NULL);
g_source_attach (source, context);
- g_source_unref (source);
g_main_loop_run (loop);
+ g_source_destroy (source);
+ g_source_unref (source);
g_main_loop_unref (loop);
return NULL;
@@ -1803,14 +1854,17 @@ test_nfds (void)
/* Now actually iterate the loop; the fd should be readable and
* writable, so source1 and source3 should be triggered, but *not*
- * source2, since it's lower priority than them. (Though on
- * G_OS_WIN32, source3 doesn't get triggered, probably because of
- * giowin32 weirdness...)
+ * source2, since it's lower priority than them.
*/
g_main_context_iteration (ctx, FALSE);
- g_assert_true (source1_ran);
+ /* FIXME:
+ * On win32, giowin32.c uses blocking threads for read/write on channels. They
+ * may not have yet triggered an event after one loop iteration. Hence, the
+ * following asserts are racy and disabled.
+ */
#ifndef G_OS_WIN32
+ g_assert_true (source1_ran);
g_assert_true (source3_ran);
#endif
@@ -1828,6 +1882,191 @@ test_nfds (void)
g_main_context_unref (ctx);
}
+static gboolean
+nsources_cb (gpointer user_data)
+{
+ g_assert_not_reached ();
+ return FALSE;
+}
+
+static void
+shuffle_nsources (GSource **sources, int num)
+{
+ int i, a, b;
+ GSource *tmp;
+
+ for (i = 0; i < num * 10; i++)
+ {
+ a = g_random_int_range (0, num);
+ b = g_random_int_range (0, num);
+ tmp = sources[a];
+ sources[a] = sources[b];
+ sources[b] = tmp;
+ }
+}
+
+static void
+test_nsources_same_priority (void)
+{
+ GMainContext *context;
+ GSource **sources;
+ gint64 start, end;
+ gsize n_sources = 50000, i;
+
+ context = g_main_context_default ();
+ sources = g_new0 (GSource *, n_sources);
+
+ start = g_get_monotonic_time ();
+ for (i = 0; i < n_sources; i++)
+ {
+ sources[i] = g_idle_source_new ();
+ g_source_set_callback (sources[i], nsources_cb, NULL, NULL);
+ g_source_attach (sources[i], context);
+ }
+ end = g_get_monotonic_time ();
+ g_test_message ("Add same-priority sources: %" G_GINT64_FORMAT,
+ (end - start) / 1000);
+
+ start = g_get_monotonic_time ();
+ for (i = 0; i < n_sources; i++)
+ g_assert_true (sources[i] == g_main_context_find_source_by_id (context, g_source_get_id (sources[i])));
+ end = g_get_monotonic_time ();
+ g_test_message ("Find each source: %" G_GINT64_FORMAT,
+ (end - start) / 1000);
+
+ shuffle_nsources (sources, n_sources);
+
+ start = g_get_monotonic_time ();
+ for (i = 0; i < n_sources; i++)
+ {
+ g_source_destroy (sources[i]);
+ g_source_unref (sources[i]);
+ }
+ end = g_get_monotonic_time ();
+ g_test_message ("Remove in random order: %" G_GINT64_FORMAT,
+ (end - start) / 1000);
+
+ /* Make sure they really did get removed */
+ g_main_context_iteration (context, FALSE);
+
+ g_free (sources);
+}
+
+static void
+test_nsources_different_priority (void)
+{
+ GMainContext *context;
+ GSource **sources;
+ gint64 start, end;
+ gsize n_sources = 50000, i;
+
+ context = g_main_context_default ();
+ sources = g_new0 (GSource *, n_sources);
+
+ start = g_get_monotonic_time ();
+ for (i = 0; i < n_sources; i++)
+ {
+ sources[i] = g_idle_source_new ();
+ g_source_set_callback (sources[i], nsources_cb, NULL, NULL);
+ g_source_set_priority (sources[i], i % 100);
+ g_source_attach (sources[i], context);
+ }
+ end = g_get_monotonic_time ();
+ g_test_message ("Add different-priority sources: %" G_GINT64_FORMAT,
+ (end - start) / 1000);
+
+ start = g_get_monotonic_time ();
+ for (i = 0; i < n_sources; i++)
+ g_assert_true (sources[i] == g_main_context_find_source_by_id (context, g_source_get_id (sources[i])));
+ end = g_get_monotonic_time ();
+ g_test_message ("Find each source: %" G_GINT64_FORMAT,
+ (end - start) / 1000);
+
+ shuffle_nsources (sources, n_sources);
+
+ start = g_get_monotonic_time ();
+ for (i = 0; i < n_sources; i++)
+ {
+ g_source_destroy (sources[i]);
+ g_source_unref (sources[i]);
+ }
+ end = g_get_monotonic_time ();
+ g_test_message ("Remove in random order: %" G_GINT64_FORMAT,
+ (end - start) / 1000);
+
+ /* Make sure they really did get removed */
+ g_main_context_iteration (context, FALSE);
+
+ g_free (sources);
+}
+
+static void
+thread_pool_attach_func (gpointer data,
+ gpointer user_data)
+{
+ GMainContext *context = user_data;
+ GSource *source = data;
+
+ g_source_attach (source, context);
+ g_source_unref (source);
+}
+
+static void
+thread_pool_destroy_func (gpointer data,
+ gpointer user_data)
+{
+ GSource *source = data;
+
+ g_source_destroy (source);
+}
+
+static void
+test_nsources_threadpool (void)
+{
+ GMainContext *context;
+ GSource **sources;
+ GThreadPool *pool;
+ GError *error = NULL;
+ gint64 start, end;
+ gsize n_sources = 50000, i;
+
+ context = g_main_context_default ();
+ sources = g_new0 (GSource *, n_sources);
+
+ pool = g_thread_pool_new (thread_pool_attach_func, context,
+ 20, TRUE, NULL);
+ start = g_get_monotonic_time ();
+ for (i = 0; i < n_sources; i++)
+ {
+ sources[i] = g_idle_source_new ();
+ g_source_set_callback (sources[i], nsources_cb, NULL, NULL);
+ g_thread_pool_push (pool, sources[i], &error);
+ g_assert_no_error (error);
+ }
+ g_thread_pool_free (pool, FALSE, TRUE);
+ end = g_get_monotonic_time ();
+ g_test_message ("Add sources from threads: %" G_GINT64_FORMAT,
+ (end - start) / 1000);
+
+ pool = g_thread_pool_new (thread_pool_destroy_func, context,
+ 20, TRUE, NULL);
+ start = g_get_monotonic_time ();
+ for (i = 0; i < n_sources; i++)
+ {
+ g_thread_pool_push (pool, sources[i], &error);
+ g_assert_no_error (error);
+ }
+ g_thread_pool_free (pool, FALSE, TRUE);
+ end = g_get_monotonic_time ();
+ g_test_message ("Remove sources from threads: %" G_GINT64_FORMAT,
+ (end - start) / 1000);
+
+ /* Make sure they really did get removed */
+ g_main_context_iteration (context, FALSE);
+
+ g_free (sources);
+}
+
static gboolean source_finalize_called = FALSE;
static guint source_dispose_called = 0;
static gboolean source_dispose_recycle = FALSE;
@@ -2108,6 +2347,9 @@ main (int argc, char *argv[])
g_test_init (&argc, &argv, NULL);
g_test_add_func ("/maincontext/basic", test_maincontext_basic);
+ g_test_add_func ("/maincontext/nsources_same_priority", test_nsources_same_priority);
+ g_test_add_func ("/maincontext/nsources_different_priority", test_nsources_different_priority);
+ g_test_add_func ("/maincontext/nsources_threadpool", test_nsources_threadpool);
g_test_add_func ("/maincontext/source_finalization", test_maincontext_source_finalization);
for (i = 0; i < 10; i++)
{
@@ -2145,6 +2387,8 @@ main (int argc, char *argv[])
#endif
g_test_add_func ("/mainloop/nfds", test_nfds);
g_test_add_func ("/mainloop/steal-fd", test_steal_fd);
+ g_test_add_data_func ("/mainloop/ownerless-polling/attach-first", GINT_TO_POINTER (TRUE), test_ownerless_polling);
+ g_test_add_data_func ("/mainloop/ownerless-polling/pop-first", GINT_TO_POINTER (FALSE), test_ownerless_polling);
return g_test_run ();
}
diff --git a/glib/tests/mem-overflow.c b/glib/tests/mem-overflow.c
index 1654ab7fc..fd926854f 100644
--- a/glib/tests/mem-overflow.c
+++ b/glib/tests/mem-overflow.c
@@ -34,13 +34,14 @@ static gsize a = G_MAXSIZE / 10 + 10;
static gsize b = 10;
typedef char X[10];
-#define MEM_OVERFLOW_TEST(name, code) \
+#define MEM_OVERFLOW_TEST(name, code) MEM_OVERFLOW_TEST_FULL(name, code, g_free)
+#define MEM_OVERFLOW_TEST_FULL(name, code, free_func) \
static void \
mem_overflow_ ## name (void) \
{ \
gpointer p; \
code; \
- g_free (p); \
+ free_func (p); \
exit (0); \
}
@@ -68,6 +69,12 @@ MEM_OVERFLOW_TEST (new0_b, p = g_new0 (X, b))
MEM_OVERFLOW_TEST (renew_a, p = g_malloc (1); p = g_renew (X, p, a))
MEM_OVERFLOW_TEST (renew_b, p = g_malloc (1); p = g_renew (X, p, b))
+MEM_OVERFLOW_TEST_FULL (aligned_alloc_a, p = g_aligned_alloc (sizeof(X), a, 16), g_aligned_free)
+MEM_OVERFLOW_TEST_FULL (aligned_alloc_b, p = g_aligned_alloc (sizeof(X), b, 16), g_aligned_free)
+
+MEM_OVERFLOW_TEST_FULL (aligned_alloc0_a, p = g_aligned_alloc0 (sizeof(X), a, 16), g_aligned_free)
+MEM_OVERFLOW_TEST_FULL (aligned_alloc0_b, p = g_aligned_alloc0 (sizeof(X), b, 16), g_aligned_free)
+
static void
mem_overflow_malloc_0 (void)
{
@@ -171,6 +178,12 @@ mem_overflow (void)
CHECK_SUBPROCESS_PASS (malloc_0);
CHECK_SUBPROCESS_PASS (realloc_0);
+
+ CHECK_SUBPROCESS_FAIL (aligned_alloc_a);
+ CHECK_SUBPROCESS_PASS (aligned_alloc_b);
+
+ CHECK_SUBPROCESS_FAIL (aligned_alloc0_a);
+ CHECK_SUBPROCESS_PASS (aligned_alloc0_b);
}
#ifdef __GNUC__
@@ -231,6 +244,10 @@ main (int argc,
g_test_add_func ("/mem/overflow/subprocess/renew_b", mem_overflow_renew_b);
g_test_add_func ("/mem/overflow/subprocess/malloc_0", mem_overflow_malloc_0);
g_test_add_func ("/mem/overflow/subprocess/realloc_0", mem_overflow_realloc_0);
+ g_test_add_func ("/mem/overflow/subprocess/aligned_alloc_a", mem_overflow_aligned_alloc_a);
+ g_test_add_func ("/mem/overflow/subprocess/aligned_alloc_b", mem_overflow_aligned_alloc_b);
+ g_test_add_func ("/mem/overflow/subprocess/aligned_alloc0_a", mem_overflow_aligned_alloc0_a);
+ g_test_add_func ("/mem/overflow/subprocess/aligned_alloc0_b", mem_overflow_aligned_alloc0_b);
#ifdef __GNUC__
g_test_add_func ("/mem/empty-alloc", empty_alloc);
diff --git a/glib/tests/memchunk.c b/glib/tests/memchunk.c
new file mode 100644
index 000000000..8c13787f2
--- /dev/null
+++ b/glib/tests/memchunk.c
@@ -0,0 +1,64 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000. See the AUTHORS
+ * file for a list of people on the GLib Team. See the ChangeLog
+ * files for a list of changes. These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/.
+ */
+
+/* We are testing some deprecated APIs here */
+#ifndef GLIB_DISABLE_DEPRECATION_WARNINGS
+#define GLIB_DISABLE_DEPRECATION_WARNINGS
+#endif
+
+#include <glib.h>
+
+static void
+test_basic (void)
+{
+ G_GNUC_BEGIN_IGNORE_DEPRECATIONS
+
+ GMemChunk *mem_chunk = g_mem_chunk_new ("test mem chunk", 50, 100, G_ALLOC_AND_FREE);
+ gchar *mem[10000];
+ guint i;
+ for (i = 0; i < 10000; i++)
+ {
+ guint j;
+ mem[i] = g_chunk_new (gchar, mem_chunk);
+ for (j = 0; j < 50; j++)
+ mem[i][j] = i * j;
+ }
+ for (i = 0; i < 10000; i++)
+ g_mem_chunk_free (mem_chunk, mem[i]);
+
+ g_mem_chunk_destroy (mem_chunk);
+
+ G_GNUC_END_IGNORE_DEPRECATIONS
+}
+
+int
+main (int argc,
+ char *argv[])
+{
+ g_test_init (&argc, &argv, NULL);
+
+ g_test_add_func ("/memchunk/basic", test_basic);
+
+ return g_test_run ();
+}
diff --git a/glib/tests/meson.build b/glib/tests/meson.build
index c77ccdd14..301158e0f 100644
--- a/glib/tests/meson.build
+++ b/glib/tests/meson.build
@@ -12,15 +12,22 @@ glib_tests = {
'charset' : {},
'checksum' : {},
'collate' : {},
+ 'completion' : {},
'cond' : {},
'convert' : {},
'cxx' : {
'source' : ['cxx.cpp'],
},
'dataset' : {},
- 'date' : {},
+ 'date' : {
+ # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392
+ 'should_fail' : host_system == 'darwin',
+ },
'dir' : {},
- 'environment' : {},
+ 'environment' : {
+ # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392
+ 'should_fail' : host_system == 'darwin',
+ },
'error' : {},
'fileutils' : {},
'gdatetime' : {
@@ -50,6 +57,7 @@ glib_tests = {
'markup-collect' : {},
'markup-escape' : {},
'markup-subparser' : {},
+ 'memchunk' : {},
'mem-overflow' : {
'link_args' : cc.get_id() == 'gcc' and cc.version().version_compare('> 6')
? ['-Wno-alloc-size-larger-than'] : [],
@@ -81,6 +89,7 @@ glib_tests = {
'dependencies' : [pcre],
'c_args' : use_pcre_static_flag ? ['-DPCRE_STATIC'] : [],
},
+ 'relation' : {},
'rwlock' : {},
'scannerapi' : {},
'search-utils' : {},
@@ -89,6 +98,10 @@ glib_tests = {
},
'shell' : {},
'slice' : {},
+ 'slice-color' : {
+ 'extra_sources' : ['memchunks.c'],
+ },
+ 'slice-concurrent' : {},
'slist' : {},
'sort' : {},
'spawn-multithreaded' : {},
@@ -104,6 +117,7 @@ glib_tests = {
'timeout' : {},
'timer' : {},
'tree' : {},
+ 'types' : {},
'utf8-performance' : {},
'utf8-pointer' : {},
'utf8-validate' : {},
@@ -183,13 +197,16 @@ endif
if installed_tests_enabled
install_data(
- 'keyfiletest.ini',
- 'pages.ini',
- 'keyfile.c',
- 'empty',
'4096-random-bytes',
+ 'casefold.txt',
+ 'casemap.txt',
'echo-script',
'echo-script.bat',
+ 'empty',
+ 'iochannel-test-infile',
+ 'keyfile.c',
+ 'keyfiletest.ini',
+ 'pages.ini',
install_dir : installed_tests_execdir,
)
install_subdir('bookmarks', install_dir : installed_tests_execdir)
@@ -237,7 +254,12 @@ foreach test_name, extra_args : glib_tests
suite = ['glib'] + extra_args.get('suite', [])
timeout = suite.contains('slow') ? test_timeout_slow : test_timeout
- test(test_name, exe, env : test_env, timeout : timeout, suite : suite)
+ test(test_name, exe,
+ env : test_env,
+ timeout : timeout,
+ suite : suite,
+ should_fail : extra_args.get('should_fail', false),
+ )
endforeach
executable('spawn-path-search-helper', 'spawn-path-search-helper.c',
@@ -262,6 +284,16 @@ executable('test-spawn-echo', 'test-spawn-echo.c',
install: installed_tests_enabled,
)
+if host_machine.system() == 'windows'
+ # test-spawn-sleep helper binary required by the spawn tests above
+ executable('test-spawn-sleep', 'test-spawn-sleep.c',
+ c_args : test_cargs,
+ dependencies : test_deps,
+ install_dir: installed_tests_execdir,
+ install: installed_tests_enabled,
+ )
+endif
+
executable('testing-helper', 'testing-helper.c',
c_args : test_cargs,
dependencies : test_deps,
diff --git a/glib/tests/node.c b/glib/tests/node.c
index 22e80233f..e75821cee 100644
--- a/glib/tests/node.c
+++ b/glib/tests/node.c
@@ -31,9 +31,6 @@
#include "glib.h"
-#define C2P(c) ((gpointer) ((long) (c)))
-#define P2C(p) ((gchar) ((long) (p)))
-
typedef struct {
GString *s;
gint count;
@@ -45,7 +42,7 @@ node_build_string (GNode *node,
{
CallbackData *d = data;
- g_string_append_c (d->s, P2C (node->data));
+ g_string_append_c (d->s, GPOINTER_TO_INT (node->data));
d->count--;
@@ -171,22 +168,22 @@ traversal_test (void)
gsize i;
CallbackData data;
- root = g_node_new (C2P ('A'));
- node_B = g_node_new (C2P ('B'));
+ root = g_node_new (GINT_TO_POINTER ('A'));
+ node_B = g_node_new (GINT_TO_POINTER ('B'));
g_node_append (root, node_B);
- g_node_append_data (node_B, C2P ('E'));
- g_node_prepend_data (node_B, C2P ('C'));
- node_D = g_node_new (C2P ('D'));
+ g_node_append_data (node_B, GINT_TO_POINTER ('E'));
+ g_node_prepend_data (node_B, GINT_TO_POINTER ('C'));
+ node_D = g_node_new (GINT_TO_POINTER ('D'));
g_node_insert (node_B, 1, node_D);
- node_F = g_node_new (C2P ('F'));
+ node_F = g_node_new (GINT_TO_POINTER ('F'));
g_node_append (root, node_F);
- node_G = g_node_new (C2P ('G'));
+ node_G = g_node_new (GINT_TO_POINTER ('G'));
g_node_append (node_F, node_G);
- node_J = g_node_new (C2P ('J'));
+ node_J = g_node_new (GINT_TO_POINTER ('J'));
g_node_prepend (node_G, node_J);
- g_node_insert (node_G, 42, g_node_new (C2P ('K')));
- g_node_insert_data (node_G, 0, C2P ('H'));
- g_node_insert (node_G, 1, g_node_new (C2P ('I')));
+ g_node_insert (node_G, 42, g_node_new (GINT_TO_POINTER ('K')));
+ g_node_insert_data (node_G, 0, GINT_TO_POINTER ('H'));
+ g_node_insert (node_G, 1, g_node_new (GINT_TO_POINTER ('I')));
/* we have built: A
* / \
@@ -227,14 +224,24 @@ traversal_test (void)
g_node_traverse (root, G_LEVEL_ORDER, G_TRAVERSE_ALL, -1, node_build_string, &data);
g_assert_cmpstr (data.s->str, ==, "ABFEDCGKJIH");
- g_node_append (node_D, g_node_new (C2P ('L')));
- g_node_insert (node_D, -1, g_node_new (C2P ('M')));
+ g_node_append (node_D, g_node_new (GINT_TO_POINTER ('L')));
+ g_node_insert (node_D, -1, g_node_new (GINT_TO_POINTER ('M')));
g_string_set_size (data.s, 0);
data.count = -1;
g_node_traverse (root, G_LEVEL_ORDER, G_TRAVERSE_ALL, -1, node_build_string, &data);
g_assert_cmpstr (data.s->str, ==, "ABFEDCGLMKJIH");
+ g_string_set_size (data.s, 0);
+ data.count = -1;
+ g_node_traverse (root, G_PRE_ORDER, G_TRAVERSE_LEAFS, -1, node_build_string, &data);
+ g_assert_cmpstr (data.s->str, ==, "ELMCKJIH");
+
+ g_string_set_size (data.s, 0);
+ data.count = -1;
+ g_node_traverse (root, G_PRE_ORDER, G_TRAVERSE_NON_LEAFS, -1, node_build_string, &data);
+ g_assert_cmpstr (data.s->str, ==, "ABDFG");
+
g_node_destroy (root);
g_string_free (data.s, TRUE);
}
@@ -252,31 +259,31 @@ construct_test (void)
GNode *node_H;
guint i;
- root = g_node_new (C2P ('A'));
+ root = g_node_new (GINT_TO_POINTER ('A'));
g_assert_cmpint (g_node_depth (root), ==, 1);
g_assert_cmpint (g_node_max_height (root), ==, 1);
- node_B = g_node_new (C2P ('B'));
+ node_B = g_node_new (GINT_TO_POINTER ('B'));
g_node_append (root, node_B);
g_assert (root->children == node_B);
- g_node_append_data (node_B, C2P ('E'));
- g_node_prepend_data (node_B, C2P ('C'));
- node_D = g_node_new (C2P ('D'));
+ g_node_append_data (node_B, GINT_TO_POINTER ('E'));
+ g_node_prepend_data (node_B, GINT_TO_POINTER ('C'));
+ node_D = g_node_new (GINT_TO_POINTER ('D'));
g_node_insert (node_B, 1, node_D);
- node_F = g_node_new (C2P ('F'));
+ node_F = g_node_new (GINT_TO_POINTER ('F'));
g_node_append (root, node_F);
g_assert (root->children->next == node_F);
- node_G = g_node_new (C2P ('G'));
+ node_G = g_node_new (GINT_TO_POINTER ('G'));
g_node_append (node_F, node_G);
- node_J = g_node_new (C2P ('J'));
+ node_J = g_node_new (GINT_TO_POINTER ('J'));
g_node_insert_after (node_G, NULL, node_J);
- g_node_insert (node_G, 42, g_node_new (C2P ('K')));
- node_H = g_node_new (C2P ('H'));
+ g_node_insert (node_G, 42, g_node_new (GINT_TO_POINTER ('K')));
+ node_H = g_node_new (GINT_TO_POINTER ('H'));
g_node_insert_after (node_G, NULL, node_H);
- g_node_insert (node_G, 1, g_node_new (C2P ('I')));
+ g_node_insert (node_G, 1, g_node_new (GINT_TO_POINTER ('I')));
/* we have built: A
* / \
@@ -294,16 +301,16 @@ construct_test (void)
g_assert_cmpint (g_node_n_nodes (root, G_TRAVERSE_ALL), ==, 11);
g_assert_cmpint (g_node_max_height (node_F), ==, 3);
g_assert_cmpint (g_node_n_children (node_G), ==, 4);
- g_assert (g_node_find_child (root, G_TRAVERSE_ALL, C2P ('F')) == node_F);
- g_assert (g_node_find_child (node_G, G_TRAVERSE_LEAFS, C2P ('H')) == node_H);
- g_assert (g_node_find_child (root, G_TRAVERSE_ALL, C2P ('H')) == NULL);
- g_assert (g_node_find (root, G_LEVEL_ORDER, G_TRAVERSE_NON_LEAFS, C2P ('I')) == NULL);
- g_assert (g_node_find (root, G_IN_ORDER, G_TRAVERSE_LEAFS, C2P ('J')) == node_J);
+ g_assert (g_node_find_child (root, G_TRAVERSE_ALL, GINT_TO_POINTER ('F')) == node_F);
+ g_assert (g_node_find_child (node_G, G_TRAVERSE_LEAFS, GINT_TO_POINTER ('H')) == node_H);
+ g_assert (g_node_find_child (root, G_TRAVERSE_ALL, GINT_TO_POINTER ('H')) == NULL);
+ g_assert (g_node_find (root, G_LEVEL_ORDER, G_TRAVERSE_NON_LEAFS, GINT_TO_POINTER ('I')) == NULL);
+ g_assert (g_node_find (root, G_IN_ORDER, G_TRAVERSE_LEAFS, GINT_TO_POINTER ('J')) == node_J);
for (i = 0; i < g_node_n_children (node_B); i++)
{
node = g_node_nth_child (node_B, i);
- g_assert_cmpint (P2C (node->data), ==, ('C' + i));
+ g_assert_cmpint (GPOINTER_TO_INT (node->data), ==, ('C' + i));
}
for (i = 0; i < g_node_n_children (node_G); i++)
@@ -345,14 +352,14 @@ misc_test (void)
GNode *node_E;
CallbackData data;
- root = g_node_new (C2P ('A'));
- node_B = g_node_new (C2P ('B'));
+ root = g_node_new (GINT_TO_POINTER ('A'));
+ node_B = g_node_new (GINT_TO_POINTER ('B'));
g_node_append (root, node_B);
- node_D = g_node_new (C2P ('D'));
+ node_D = g_node_new (GINT_TO_POINTER ('D'));
g_node_append (root, node_D);
- node_C = g_node_new (C2P ('C'));
+ node_C = g_node_new (GINT_TO_POINTER ('C'));
g_node_insert_after (root, node_B, node_C);
- node_E = g_node_new (C2P ('E'));
+ node_E = g_node_new (GINT_TO_POINTER ('E'));
g_node_append (node_C, node_E);
g_assert (g_node_get_root (node_E) == root);
@@ -362,10 +369,10 @@ misc_test (void)
g_assert (g_node_first_sibling (node_D) == node_B);
g_assert (g_node_first_sibling (node_E) == node_E);
g_assert (g_node_first_sibling (root) == root);
- g_assert_cmpint (g_node_child_index (root, C2P ('B')), ==, 0);
- g_assert_cmpint (g_node_child_index (root, C2P ('C')), ==, 1);
- g_assert_cmpint (g_node_child_index (root, C2P ('D')), ==, 2);
- g_assert_cmpint (g_node_child_index (root, C2P ('E')), ==, -1);
+ g_assert_cmpint (g_node_child_index (root, GINT_TO_POINTER ('B')), ==, 0);
+ g_assert_cmpint (g_node_child_index (root, GINT_TO_POINTER ('C')), ==, 1);
+ g_assert_cmpint (g_node_child_index (root, GINT_TO_POINTER ('D')), ==, 2);
+ g_assert_cmpint (g_node_child_index (root, GINT_TO_POINTER ('E')), ==, -1);
data.s = g_string_new ("");
data.count = -1;
@@ -418,21 +425,21 @@ unlink_test (void)
*
*/
- root = g_node_new (C2P ('a'));
- node = bnode = g_node_append_data (root, C2P ('b'));
- g_node_append_data (node, C2P ('e'));
- g_node_append_data (node, C2P ('f'));
- g_node_append_data (node, C2P ('g'));
+ root = g_node_new (GINT_TO_POINTER ('a'));
+ node = bnode = g_node_append_data (root, GINT_TO_POINTER ('b'));
+ g_node_append_data (node, GINT_TO_POINTER ('e'));
+ g_node_append_data (node, GINT_TO_POINTER ('f'));
+ g_node_append_data (node, GINT_TO_POINTER ('g'));
- node = cnode = g_node_append_data (root, C2P ('c'));
- g_node_append_data (node, C2P ('h'));
- g_node_append_data (node, C2P ('i'));
- g_node_append_data (node, C2P ('j'));
+ node = cnode = g_node_append_data (root, GINT_TO_POINTER ('c'));
+ g_node_append_data (node, GINT_TO_POINTER ('h'));
+ g_node_append_data (node, GINT_TO_POINTER ('i'));
+ g_node_append_data (node, GINT_TO_POINTER ('j'));
- node = g_node_append_data (root, C2P ('d'));
- g_node_append_data (node, C2P ('k'));
- g_node_append_data (node, C2P ('l'));
- g_node_append_data (node, C2P ('m'));
+ node = g_node_append_data (root, GINT_TO_POINTER ('d'));
+ g_node_append_data (node, GINT_TO_POINTER ('k'));
+ g_node_append_data (node, GINT_TO_POINTER ('l'));
+ g_node_append_data (node, GINT_TO_POINTER ('m'));
g_node_unlink (cnode);
@@ -473,10 +480,10 @@ copy_test (void)
GNode *copy;
gchar *expected;
- root = g_node_new (C2P ('a'));
- g_node_append_data (root, C2P ('b'));
- g_node_append_data (root, C2P ('c'));
- g_node_append_data (root, C2P ('d'));
+ root = g_node_new (GINT_TO_POINTER ('a'));
+ g_node_append_data (root, GINT_TO_POINTER ('b'));
+ g_node_append_data (root, GINT_TO_POINTER ('c'));
+ g_node_append_data (root, GINT_TO_POINTER ('d'));
expected = "abcd";
g_node_traverse (root, G_LEVEL_ORDER, G_TRAVERSE_ALL, -1, check_order, &expected);
diff --git a/glib/tests/option-argv0.c b/glib/tests/option-argv0.c
index 37ac44a9f..a18e68676 100644
--- a/glib/tests/option-argv0.c
+++ b/glib/tests/option-argv0.c
@@ -39,7 +39,6 @@ test_platform_argv0 (void)
const gchar * const expected_prgnames[] =
{
"option-argv0",
- "lt-option-argv0",
#ifdef G_OS_WIN32
"option-argv0.exe",
#endif
diff --git a/glib/tests/option-context.c b/glib/tests/option-context.c
index d4ed3a94f..0fdb67c9a 100644
--- a/glib/tests/option-context.c
+++ b/glib/tests/option-context.c
@@ -28,15 +28,14 @@
#include <locale.h>
#include <math.h>
-
-static GOptionEntry main_entries[] = {
+static GOptionEntry global_main_entries[] = {
{ "main-switch", 0, 0,
G_OPTION_ARG_NONE, NULL,
"A switch that is in the main group", NULL },
G_OPTION_ENTRY_NULL
};
-static GOptionEntry group_entries[] = {
+static GOptionEntry global_group_entries[] = {
{ "test-switch", 0, 0,
G_OPTION_ARG_NONE, NULL,
"A switch that is in the test group", NULL },
@@ -54,14 +53,14 @@ make_options (int test_number)
options = g_option_context_new (NULL);
if (have_main_entries)
- g_option_context_add_main_entries (options, main_entries, NULL);
+ g_option_context_add_main_entries (options, global_main_entries, NULL);
if (have_test_entries)
{
group = g_option_group_new ("test", "Test Options",
"Show all test options",
NULL, NULL);
g_option_context_add_group (options, group);
- g_option_group_add_entries (group, group_entries);
+ g_option_group_add_entries (group, global_group_entries);
}
return options;
diff --git a/glib/tests/private.c b/glib/tests/private.c
index 5e89b35e2..6ecf1a8bc 100644
--- a/glib/tests/private.c
+++ b/glib/tests/private.c
@@ -146,6 +146,19 @@ test_private3 (void)
thread = (HANDLE) _beginthreadex (NULL, 0, private3_func, NULL, 0, &ignore);
WaitForSingleObject (thread, INFINITE);
CloseHandle (thread);
+
+ /* FIXME: with static compilation on Windows this test will fail because
+ * it is mixing up glib threads with Microsoft native thread API. See
+ * comment in gthread-win32.c for g_system_thread_exit() implementation.
+ * Fix is not straightforward, possible solution could be to use FLS
+ * functions (instead of TLS) as proposed in
+ * https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1655
+ */
+ if (!private3_freed)
+ {
+ g_test_skip ("FIXME: GPrivate with native win32 thread");
+ return;
+ }
}
#else
{
diff --git a/glib/tests/protocol.c b/glib/tests/protocol.c
index 27ebd99be..b03aaf97b 100644
--- a/glib/tests/protocol.c
+++ b/glib/tests/protocol.c
@@ -100,7 +100,10 @@ test_message_cb1 (GIOChannel * channel,
g_test_log_buffer_push (user_data, read_bytes, buf);
}
- g_assert_cmpuint (status, ==, G_IO_STATUS_AGAIN);
+ if (status == G_IO_STATUS_EOF)
+ return FALSE;
+ else
+ g_assert_cmpuint (status, ==, G_IO_STATUS_AGAIN);
return TRUE;
}
@@ -133,7 +136,6 @@ test_message (void)
GMainLoop * loop;
GError * error = NULL;
gulong child_source;
- gulong io_source;
GPid pid = 0;
int pipes[2];
int passed = 0;
@@ -159,6 +161,7 @@ test_message (void)
g_error ("error spawning the test: %s", error->message);
}
+ close (pipes[1]);
tlb = g_test_log_buffer_new ();
loop = g_main_loop_new (NULL, FALSE);
@@ -181,7 +184,7 @@ test_message (void)
g_assert (g_io_channel_get_encoding (channel) == NULL);
g_assert (!g_io_channel_get_buffered (channel));
- io_source = g_io_add_watch (channel, G_IO_IN, test_message_cb1, tlb);
+ g_io_add_watch (channel, G_IO_IN, test_message_cb1, tlb);
child_source = g_child_watch_add (pid, test_message_cb2, loop);
g_main_loop_run (loop);
@@ -191,7 +194,6 @@ test_message (void)
g_test_expect_message ("GLib", G_LOG_LEVEL_CRITICAL, "Source ID*");
g_assert (!g_source_remove (child_source));
g_test_assert_expected_messages ();
- g_assert (g_source_remove (io_source));
g_io_channel_unref (channel);
for (msg = g_test_log_buffer_pop (tlb);
@@ -264,7 +266,6 @@ test_error (void)
GMainLoop * loop;
GError * error = NULL;
gulong child_source;
- gulong io_source;
GPid pid = 0;
int pipes[2];
@@ -286,6 +287,7 @@ test_error (void)
g_error ("error spawning the test: %s", error->message);
}
+ close (pipes[1]);
tlb = g_test_log_buffer_new ();
loop = g_main_loop_new (NULL, FALSE);
@@ -299,7 +301,7 @@ test_error (void)
g_io_channel_set_buffered (channel, FALSE);
g_io_channel_set_flags (channel, G_IO_FLAG_NONBLOCK, NULL);
- io_source = g_io_add_watch (channel, G_IO_IN, test_message_cb1, tlb);
+ g_io_add_watch (channel, G_IO_IN, test_message_cb1, tlb);
child_source = g_child_watch_add (pid, test_message_cb2, loop);
g_main_loop_run (loop);
@@ -309,7 +311,6 @@ test_error (void)
g_test_expect_message ("GLib", G_LOG_LEVEL_CRITICAL, "Source ID*");
g_assert (!g_source_remove (child_source));
g_test_assert_expected_messages ();
- g_assert (g_source_remove (io_source));
g_io_channel_unref (channel);
for (msg = g_test_log_buffer_pop (tlb);
diff --git a/tests/relation-test.c b/glib/tests/relation.c
index 67fcb494d..f96890b2b 100644
--- a/tests/relation-test.c
+++ b/glib/tests/relation.c
@@ -19,15 +19,12 @@
* Modified by the GLib Team and others 1997-2000. See the AUTHORS
* file for a list of people on the GLib Team. See the ChangeLog
* files for a list of changes. These files are distributed with
- * GLib at ftp://ftp.gtk.org/pub/gtk/.
+ * GLib at ftp://ftp.gtk.org/pub/gtk/.
*/
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
+#define GLIB_DISABLE_DEPRECATION_WARNINGS
-#include <stdio.h>
-#include <string.h>
-#include "glib.h"
+#include <glib.h>
int array[10000];
gboolean failed = FALSE;
@@ -50,22 +47,18 @@ else \
#define GLIB_TEST_STRING_5 "el do"
typedef struct {
- guint age;
- gchar name[40];
+ guint age;
+ gchar name[40];
} GlibTestInfo;
-
-
-int
-main (int argc,
- char *argv[])
+static void
+test_relation (void)
{
gint i;
GRelation *relation;
GTuples *tuples;
gint data [1024];
-
relation = g_relation_new (2);
g_relation_index (relation, 0, g_int_hash, g_int_equal);
@@ -82,55 +75,54 @@ main (int argc,
for (i = 2; i < 1022; i += 1)
{
- g_assert (! g_relation_exists (relation, data + i, data + i));
- g_assert (! g_relation_exists (relation, data + i, data + i + 2));
- g_assert (! g_relation_exists (relation, data + i, data + i - 2));
+ g_assert_false (g_relation_exists (relation, data + i, data + i));
+ g_assert_false (g_relation_exists (relation, data + i, data + i + 2));
+ g_assert_false (g_relation_exists (relation, data + i, data + i - 2));
}
for (i = 1; i < 1023; i += 1)
{
- g_assert (g_relation_exists (relation, data + i, data + i + 1));
- g_assert (g_relation_exists (relation, data + i, data + i - 1));
+ g_assert_true (g_relation_exists (relation, data + i, data + i + 1));
+ g_assert_true (g_relation_exists (relation, data + i, data + i - 1));
}
for (i = 2; i < 1022; i += 1)
{
- g_assert (g_relation_count (relation, data + i, 0) == 2);
- g_assert (g_relation_count (relation, data + i, 1) == 2);
+ g_assert_cmpint (g_relation_count (relation, data + i, 0), ==, 2);
+ g_assert_cmpint (g_relation_count (relation, data + i, 1), ==, 2);
}
- g_assert (g_relation_count (relation, data, 0) == 0);
+ g_assert_cmpint (g_relation_count (relation, data, 0), ==, 0);
+
+ g_assert_cmpint (g_relation_count (relation, data + 42, 0), ==, 2);
+ g_assert_cmpint (g_relation_count (relation, data + 43, 1), ==, 2);
+ g_assert_cmpint (g_relation_count (relation, data + 41, 1), ==, 2);
- g_assert (g_relation_count (relation, data + 42, 0) == 2);
- g_assert (g_relation_count (relation, data + 43, 1) == 2);
- g_assert (g_relation_count (relation, data + 41, 1) == 2);
g_relation_delete (relation, data + 42, 0);
- g_assert (g_relation_count (relation, data + 42, 0) == 0);
- g_assert (g_relation_count (relation, data + 43, 1) == 1);
- g_assert (g_relation_count (relation, data + 41, 1) == 1);
- tuples = g_relation_select (relation, data + 200, 0);
+ g_assert_cmpint (g_relation_count (relation, data + 42, 0), ==, 0);
+ g_assert_cmpint (g_relation_count (relation, data + 43, 1), ==, 1);
+ g_assert_cmpint (g_relation_count (relation, data + 41, 1), ==, 1);
- g_assert (tuples->len == 2);
+ tuples = g_relation_select (relation, data + 200, 0);
-#if 0
- for (i = 0; i < tuples->len; i += 1)
- {
- printf ("%d %d\n",
- *(gint*) g_tuples_index (tuples, i, 0),
- *(gint*) g_tuples_index (tuples, i, 1));
- }
-#endif
+ g_assert_cmpint (tuples->len, ==, 2);
- g_assert (g_relation_exists (relation, data + 300, data + 301));
+ g_assert_true (g_relation_exists (relation, data + 300, data + 301));
g_relation_delete (relation, data + 300, 0);
- g_assert (!g_relation_exists (relation, data + 300, data + 301));
+ g_assert_false (g_relation_exists (relation, data + 300, data + 301));
g_tuples_destroy (tuples);
-
g_relation_destroy (relation);
+}
+
+int
+main (int argc,
+ char *argv[])
+{
+ g_test_init (&argc, &argv, NULL);
- relation = NULL;
+ g_test_add_func ("/glib/relation", test_relation);
- return 0;
+ return g_test_run ();
}
diff --git a/glib/tests/search-utils.c b/glib/tests/search-utils.c
index 7478a290a..cbe5bed80 100644
--- a/glib/tests/search-utils.c
+++ b/glib/tests/search-utils.c
@@ -76,7 +76,7 @@ test_search (gconstpointer d)
for (i = 0; tests[i].string != NULL; i++)
{
gboolean match;
- gboolean ok;
+ gboolean ok = FALSE;
gboolean skipped;
if (setlocale (LC_ALL, tests[i].locale))
diff --git a/glib/tests/sequence.c b/glib/tests/sequence.c
index c2eba2c79..842bc5435 100644
--- a/glib/tests/sequence.c
+++ b/glib/tests/sequence.c
@@ -15,7 +15,8 @@ struct _GSequence
struct _GSequenceNode
{
- guint n_nodes;
+ gint n_nodes;
+ guint32 priority;
GSequenceNode * parent;
GSequenceNode * left;
GSequenceNode * right;
@@ -25,15 +26,9 @@ struct _GSequenceNode
static guint
get_priority (GSequenceNode *node)
{
- guint key = GPOINTER_TO_UINT (node);
-
- key = (key << 15) - key - 1;
- key = key ^ (key >> 12);
- key = key + (key << 2);
- key = key ^ (key >> 4);
- key = key + (key << 3) + (key << 11);
- key = key ^ (key >> 16);
+ guint key = node->priority;
+ /* We rely on 0 being less than all other priorities */
return key? key : 1;
}
@@ -549,8 +544,6 @@ run_random_tests (gconstpointer d)
break;
case GET_ITER_AT_POS:
{
- int i;
-
g_assert (g_queue_get_length (seq->queue) == (guint) g_sequence_get_length (seq->sequence));
for (i = 0; i < 10; ++i)
@@ -665,7 +658,6 @@ run_random_tests (gconstpointer d)
break;
case INSERT_SORTED:
{
- int i;
dump_info (seq);
g_sequence_sort (seq->sequence, compare_items, NULL);
@@ -688,7 +680,6 @@ run_random_tests (gconstpointer d)
break;
case INSERT_SORTED_ITER:
{
- int i;
dump_info (seq);
g_sequence_sort (seq->sequence, compare_items, NULL);
@@ -715,8 +706,6 @@ run_random_tests (gconstpointer d)
break;
case SORT_CHANGED:
{
- int i;
-
g_sequence_sort (seq->sequence, compare_items, NULL);
g_queue_sort (seq->queue, compare_iters, NULL);
@@ -742,8 +731,6 @@ run_random_tests (gconstpointer d)
break;
case SORT_CHANGED_ITER:
{
- int i;
-
g_sequence_sort (seq->sequence, compare_items, NULL);
g_queue_sort (seq->queue, compare_iters, NULL);
@@ -770,8 +757,6 @@ run_random_tests (gconstpointer d)
break;
case REMOVE:
{
- int i;
-
for (i = 0; i < N_TIMES; ++i)
{
GList *link;
@@ -963,7 +948,6 @@ run_random_tests (gconstpointer d)
if (!g_sequence_iter_is_end (iter))
{
Item *item;
- int i;
check_integrity (seq);
diff --git a/glib/tests/slice-color.c b/glib/tests/slice-color.c
new file mode 100644
index 000000000..733bfcc56
--- /dev/null
+++ b/glib/tests/slice-color.c
@@ -0,0 +1,133 @@
+/* GLIB sliced memory - fast threaded memory chunk allocator
+ * Copyright (C) 2005 Tim Janik
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include <glib.h>
+
+#define ALIGN(size, base) \
+ ((base) * (gsize) (((size) + (base) - 1) / (base)))
+
+static void
+fill_memory (guint **mem,
+ guint n,
+ guint val)
+{
+ guint j;
+
+ for (j = 0; j < n; j++)
+ mem[j][0] = val;
+}
+
+static guint64
+access_memory3 (guint **mema,
+ guint **memb,
+ guint **memd,
+ guint n,
+ guint64 repeats)
+{
+ guint64 accu = 0, i, j;
+
+ for (i = 0; i < repeats; i++)
+ {
+ for (j = 1; j < n; j += 2)
+ memd[j][0] = mema[j][0] + memb[j][0];
+ }
+
+ for (i = 0; i < repeats; i++)
+ for (j = 0; j < n; j++)
+ accu += memd[j][0];
+
+ return accu;
+}
+
+static void
+touch_mem (guint64 block_size,
+ guint64 n_blocks,
+ guint64 repeats)
+{
+ GTimer *timer;
+ guint **mema, **memb, **memc;
+ guint64 j, accu, n = n_blocks;
+
+ mema = g_new (guint*, n);
+ for (j = 0; j < n; j++)
+ mema[j] = g_slice_alloc (block_size);
+
+ memb = g_new (guint*, n);
+ for (j = 0; j < n; j++)
+ memb[j] = g_slice_alloc (block_size);
+
+ memc = g_new (guint*, n);
+ for (j = 0; j < n; j++)
+ memc[j] = g_slice_alloc (block_size);
+
+ timer = g_timer_new();
+
+ fill_memory (mema, n, 2);
+ fill_memory (memb, n, 3);
+ fill_memory (memc, n, 4);
+
+ access_memory3 (mema, memb, memc, n, 3);
+
+ g_timer_start (timer);
+ accu = access_memory3 (mema, memb, memc, n, repeats);
+ g_timer_stop (timer);
+
+ g_test_message ("Access-time = %fs", g_timer_elapsed (timer, NULL));
+ g_assert_cmpuint (accu / repeats, ==, (2 + 3) * n / 2 + 4 * n / 2);
+
+ for (j = 0; j < n; j++)
+ {
+ g_slice_free1 (block_size, mema[j]);
+ g_slice_free1 (block_size, memb[j]);
+ g_slice_free1 (block_size, memc[j]);
+ }
+
+ g_timer_destroy (timer);
+ g_free (mema);
+ g_free (memb);
+ g_free (memc);
+}
+
+static void
+test_slice_colors (void)
+{
+ guint64 block_size = 512;
+ guint64 area_size = 1024 * 1024;
+ guint64 n_blocks, repeats = 1000000;
+
+ /* figure number of blocks from block and area size.
+ * divide area by 3 because touch_mem() allocates 3 areas */
+ n_blocks = area_size / 3 / ALIGN (block_size, sizeof (gsize) * 2);
+
+ g_test_message ("Allocate and touch %" G_GUINT64_FORMAT
+ " blocks of %" G_GUINT64_FORMAT " bytes"
+ " (= %" G_GUINT64_FORMAT " bytes) %" G_GUINT64_FORMAT
+ " times with color increment",
+ n_blocks, block_size, n_blocks * block_size, repeats);
+
+ touch_mem (block_size, n_blocks, repeats);
+}
+
+int
+main (int argc, char **argv)
+{
+ g_test_init (&argc, &argv, NULL);
+
+ g_test_add_func ("/slice/colors", test_slice_colors);
+
+ return g_test_run ();
+}
diff --git a/tests/slice-concurrent.c b/glib/tests/slice-concurrent.c
index 66f055265..4551e20dc 100644
--- a/tests/slice-concurrent.c
+++ b/glib/tests/slice-concurrent.c
@@ -15,19 +15,18 @@
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
+
#include <glib.h>
+
#include <stdlib.h>
-#ifdef G_OS_UNIX
-#include <unistd.h>
-#endif
-#define N_THREADS 8
-#define N_ALLOCS 50000
+#define N_THREADS 8
+#define N_ALLOCS 50000
#define MAX_BLOCK_SIZE 64
struct ThreadData
{
- int thread_id;
+ int thread_id;
GThread* gthread;
GMutex to_free_mutex;
@@ -40,25 +39,23 @@ struct ThreadData
static void *
thread_func (void *arg)
{
- struct ThreadData *td = arg;
int i;
-/* g_print ("Thread %d starting\n", td->thread_id); */
+ struct ThreadData *td = arg;
+
for (i = 0; i < N_ALLOCS; i++)
{
- int bytes;
+ int bytes, f, t;
char *mem;
- int f;
- int t;
if (rand() % (N_ALLOCS / 20) == 0)
- g_print ("%c", 'a' - 1 + td->thread_id);
+ g_test_message ("%c", 'a' - 1 + td->thread_id);
/* allocate block of random size and randomly fill */
bytes = rand() % MAX_BLOCK_SIZE + 1;
mem = g_slice_alloc (bytes);
for (f = 0; f < bytes; f++)
- mem[f] = rand();
+ mem[f] = rand();
/* associate block with random thread */
t = rand() % N_THREADS;
@@ -80,19 +77,20 @@ thread_func (void *arg)
/* free a block associated with this thread */
g_mutex_lock (&td->to_free_mutex);
if (td->n_to_free > 0)
- {
- td->n_to_free--;
- g_slice_free1 (td->bytes_to_free[td->n_to_free], td->to_free[td->n_to_free]);
- td->n_freed++;
- }
+ {
+ td->n_to_free--;
+ g_slice_free1 (td->bytes_to_free[td->n_to_free],
+ td->to_free[td->n_to_free]);
+ td->n_freed++;
+ }
g_mutex_unlock (&td->to_free_mutex);
}
return NULL;
}
-int
-main (void)
+static void
+test_concurrent_slice (void)
{
int t;
@@ -102,21 +100,31 @@ main (void)
tdata[t].n_to_free = 0;
tdata[t].n_freed = 0;
}
- g_print ("Starting %d threads for concurrent GSlice usage...\n", N_THREADS);
+
for (t = 0; t < N_THREADS; t++)
{
- tdata[t].gthread = g_thread_create (thread_func, &tdata[t], TRUE, NULL);
- g_assert (tdata[t].gthread != NULL);
+ tdata[t].gthread = g_thread_new (NULL, thread_func, &tdata[t]);
+ g_assert_nonnull (tdata[t].gthread);
}
+
for (t = 0; t < N_THREADS; t++)
{
g_thread_join (tdata[t].gthread);
}
- g_print ("\n");
+
for (t = 0; t < N_THREADS; t++)
{
- g_print ("Thread %d: %d blocks freed, %d blocks not freed\n",
- tdata[t].thread_id, tdata[t].n_freed, tdata[t].n_to_free);
+ g_test_message ("Thread %d: %d blocks freed, %d blocks not freed",
+ tdata[t].thread_id, tdata[t].n_freed, tdata[t].n_to_free);
}
- return 0;
+}
+
+int
+main (int argc, char **argv)
+{
+ g_test_init (&argc, &argv, NULL);
+
+ g_test_add_func ("/slice/concurrent", test_concurrent_slice);
+
+ return g_test_run ();
}
diff --git a/glib/tests/sort.c b/glib/tests/sort.c
index c2923b932..eb748c504 100644
--- a/glib/tests/sort.c
+++ b/glib/tests/sort.c
@@ -46,6 +46,30 @@ test_sort_basic (void)
g_free (data);
}
+static void
+test_sort_zero_elements (void)
+{
+ gint *data, *data_copy;
+ gsize i;
+
+ data = g_malloc (100 * sizeof (int));
+ data_copy = g_malloc (100 * sizeof (int));
+ for (i = 0; i < 100; i++)
+ {
+ data[i] = g_random_int ();
+ data_copy[i] = data[i];
+ }
+
+ /* 0 elements is a valid case */
+ g_qsort_with_data (data, 0, sizeof (int), int_compare_data, NULL);
+
+ for (i = 0; i < 100; i++)
+ g_assert_cmpint (data[i], ==, data_copy[i]);
+
+ g_free (data);
+ g_free (data_copy);
+}
+
typedef struct {
int val;
int i;
@@ -120,6 +144,7 @@ main (int argc, char *argv[])
g_test_init (&argc, &argv, NULL);
g_test_add_func ("/sort/basic", test_sort_basic);
+ g_test_add_func ("/sort/zero-elements", test_sort_zero_elements);
g_test_add_func ("/sort/stable", test_sort_stable);
g_test_add_func ("/sort/big", test_sort_big);
diff --git a/glib/tests/spawn-multithreaded.c b/glib/tests/spawn-multithreaded.c
index bf2c8a501..8dbc7bfbb 100644
--- a/glib/tests/spawn-multithreaded.c
+++ b/glib/tests/spawn-multithreaded.c
@@ -23,10 +23,210 @@
#include "config.h"
+#include <stdlib.h>
+
#include <glib.h>
#include <string.h>
+#include <sys/types.h>
+
static char *echo_prog_path;
+static char *sleep_prog_path;
+
+#ifdef G_OS_UNIX
+#include <unistd.h>
+#endif
+
+#ifdef G_OS_WIN32
+#include <windows.h>
+#endif
+
+typedef struct
+{
+ GMainLoop *main_loop;
+ gint *n_alive; /* (atomic) */
+ gint ttl; /* seconds */
+ GMainLoop *thread_main_loop; /* (nullable) */
+} SpawnChildsData;
+
+static GPid
+get_a_child (gint ttl)
+{
+ GPid pid;
+
+#ifdef G_OS_WIN32
+ STARTUPINFO si;
+ PROCESS_INFORMATION pi;
+ gchar *cmdline;
+
+ memset (&si, 0, sizeof (si));
+ si.cb = sizeof (&si);
+ memset (&pi, 0, sizeof (pi));
+
+ cmdline = g_strdup_printf ("%s %d", sleep_prog_path, ttl);
+
+ if (!CreateProcess (NULL, cmdline, NULL, NULL,
+ FALSE, 0, NULL, NULL, &si, &pi))
+ g_error ("CreateProcess failed: %s",
+ g_win32_error_message (GetLastError ()));
+
+ g_free (cmdline);
+
+ CloseHandle (pi.hThread);
+ pid = pi.hProcess;
+
+ return pid;
+#else
+ pid = fork ();
+ if (pid < 0)
+ exit (1);
+
+ if (pid > 0)
+ return pid;
+
+ sleep (ttl);
+ _exit (0);
+#endif /* G_OS_WIN32 */
+}
+
+static void
+child_watch_callback (GPid pid, gint status, gpointer user_data)
+{
+ SpawnChildsData *data = user_data;
+
+ g_test_message ("Child %" G_PID_FORMAT " (ttl %d) exited, status %d",
+ pid, data->ttl, status);
+
+ g_spawn_close_pid (pid);
+
+ if (g_atomic_int_dec_and_test (data->n_alive))
+ g_main_loop_quit (data->main_loop);
+ if (data->thread_main_loop != NULL)
+ g_main_loop_quit (data->thread_main_loop);
+}
+
+static gpointer
+start_thread (gpointer user_data)
+{
+ GMainLoop *new_main_loop;
+ GSource *source;
+ GPid pid;
+ SpawnChildsData *data = user_data;
+ gint ttl = data->ttl;
+ GMainContext *new_main_context = NULL;
+
+ new_main_context = g_main_context_new ();
+ new_main_loop = g_main_loop_new (new_main_context, FALSE);
+ data->thread_main_loop = new_main_loop;
+
+ pid = get_a_child (ttl);
+ source = g_child_watch_source_new (pid);
+ g_source_set_callback (source,
+ (GSourceFunc) child_watch_callback, data, NULL);
+ g_source_attach (source, g_main_loop_get_context (new_main_loop));
+ g_source_unref (source);
+
+ g_test_message ("Created pid: %" G_PID_FORMAT " (ttl %d)", pid, ttl);
+
+ g_main_loop_run (new_main_loop);
+ g_main_loop_unref (new_main_loop);
+ g_main_context_unref (new_main_context);
+
+ return NULL;
+}
+
+static gboolean
+quit_loop (gpointer data)
+{
+ GMainLoop *main_loop = data;
+
+ g_main_loop_quit (main_loop);
+
+ return TRUE;
+}
+
+static void
+test_spawn_childs (void)
+{
+ GPid pid;
+ GMainLoop *main_loop = NULL;
+ SpawnChildsData child1_data = { 0, }, child2_data = { 0, };
+ gint n_alive;
+ guint timeout_id;
+
+ main_loop = g_main_loop_new (NULL, FALSE);
+
+#ifdef G_OS_WIN32
+ system ("cd .");
+#else
+ system ("true");
+#endif
+
+ n_alive = 2;
+ timeout_id = g_timeout_add_seconds (30, quit_loop, main_loop);
+
+ child1_data.main_loop = main_loop;
+ child1_data.ttl = 1;
+ child1_data.n_alive = &n_alive;
+ pid = get_a_child (child1_data.ttl);
+ g_child_watch_add (pid,
+ (GChildWatchFunc) child_watch_callback,
+ &child1_data);
+
+ child2_data.main_loop = main_loop;
+ child2_data.ttl = 2;
+ child2_data.n_alive = &n_alive;
+ pid = get_a_child (child2_data.ttl);
+ g_child_watch_add (pid,
+ (GChildWatchFunc) child_watch_callback,
+ &child2_data);
+
+ g_main_loop_run (main_loop);
+ g_main_loop_unref (main_loop);
+ g_source_remove (timeout_id);
+
+ g_assert_cmpint (g_atomic_int_get (&n_alive), ==, 0);
+}
+
+static void
+test_spawn_childs_threads (void)
+{
+ GMainLoop *main_loop = NULL;
+ SpawnChildsData thread1_data = { 0, }, thread2_data = { 0, };
+ gint n_alive;
+ guint timeout_id;
+ GThread *thread1, *thread2;
+
+ main_loop = g_main_loop_new (NULL, FALSE);
+
+#ifdef G_OS_WIN32
+ system ("cd .");
+#else
+ system ("true");
+#endif
+
+ n_alive = 2;
+ timeout_id = g_timeout_add_seconds (30, quit_loop, main_loop);
+
+ thread1_data.main_loop = main_loop;
+ thread1_data.n_alive = &n_alive;
+ thread1_data.ttl = 1; /* seconds */
+ thread1 = g_thread_new (NULL, start_thread, &thread1_data);
+
+ thread2_data.main_loop = main_loop;
+ thread2_data.n_alive = &n_alive;
+ thread2_data.ttl = 2; /* seconds */
+ thread2 = g_thread_new (NULL, start_thread, &thread2_data);
+
+ g_main_loop_run (main_loop);
+ g_main_loop_unref (main_loop);
+ g_source_remove (timeout_id);
+
+ g_assert_cmpint (g_atomic_int_get (&n_alive), ==, 0);
+
+ g_thread_join (g_steal_pointer (&thread2));
+ g_thread_join (g_steal_pointer (&thread1));
+}
static void
multithreaded_test_run (GThreadFunc function)
@@ -105,7 +305,7 @@ on_child_exited (GPid pid,
data->child_exited = TRUE;
if (data->child_exited && data->stdout_done)
g_main_loop_quit (data->loop);
-
+
return G_SOURCE_REMOVE;
}
@@ -192,8 +392,8 @@ test_spawn_async_multithreaded_instance (gpointer thread_data)
g_main_loop_run (loop);
- g_assert (data.child_exited);
- g_assert (data.stdout_done);
+ g_assert_true (data.child_exited);
+ g_assert_true (data.stdout_done);
g_assert_cmpstr (data.stdout_buf->str, ==, arg);
g_string_free (data.stdout_buf, TRUE);
@@ -223,21 +423,23 @@ main (int argc,
dirname = g_path_get_dirname (argv[0]);
echo_prog_path = g_build_filename (dirname, "test-spawn-echo" EXEEXT, NULL);
- if (!g_file_test (echo_prog_path, G_FILE_TEST_EXISTS))
- {
- g_free (echo_prog_path);
- echo_prog_path = g_build_filename (dirname, "lt-test-spawn-echo" EXEEXT, NULL);
- }
+ sleep_prog_path = g_build_filename (dirname, "test-spawn-sleep" EXEEXT, NULL);
g_free (dirname);
g_assert (g_file_test (echo_prog_path, G_FILE_TEST_EXISTS));
+#ifdef G_OS_WIN32
+ g_assert (g_file_test (sleep_prog_path, G_FILE_TEST_EXISTS));
+#endif
+ g_test_add_func ("/gthread/spawn-childs", test_spawn_childs);
+ g_test_add_func ("/gthread/spawn-childs-threads", test_spawn_childs_threads);
g_test_add_func ("/gthread/spawn-sync", test_spawn_sync_multithreaded);
g_test_add_func ("/gthread/spawn-async", test_spawn_async_multithreaded);
ret = g_test_run();
g_free (echo_prog_path);
+ g_free (sleep_prog_path);
return ret;
}
diff --git a/glib/tests/spawn-path-search.c b/glib/tests/spawn-path-search.c
index 2a8911139..5008fc960 100644
--- a/glib/tests/spawn-path-search.c
+++ b/glib/tests/spawn-path-search.c
@@ -23,6 +23,17 @@
#include <sys/wait.h>
#endif
+static gboolean
+skip_win32 (void)
+{
+#ifdef G_OS_WIN32
+ g_test_skip ("The test manipulate PATH, and breaks DLL lookups.");
+ return TRUE;
+#else
+ return FALSE;
+#endif
+}
+
static void
test_do_not_search (void)
{
@@ -38,6 +49,9 @@ test_do_not_search (void)
g_test_summary ("Without G_SPAWN_SEARCH_PATH, spawn-test-helper "
"means ./spawn-test-helper.");
+ if (skip_win32 ())
+ return;
+
envp = g_environ_setenv (envp, "PATH", subdir, TRUE);
g_ptr_array_add (argv,
@@ -90,6 +104,9 @@ test_search_path (void)
g_test_summary ("With G_SPAWN_SEARCH_PATH, spawn-test-helper "
"means $PATH/spawn-test-helper.");
+ if (skip_win32 ())
+ return;
+
envp = g_environ_setenv (envp, "PATH", subdir, TRUE);
g_ptr_array_add (argv,
@@ -143,6 +160,9 @@ test_search_path_from_envp (void)
g_test_summary ("With G_SPAWN_SEARCH_PATH_FROM_ENVP, spawn-test-helper "
"means $PATH/spawn-test-helper with $PATH from envp.");
+ if (skip_win32 ())
+ return;
+
envp = g_environ_setenv (envp, "PATH", here, TRUE);
g_ptr_array_add (argv,
@@ -198,6 +218,9 @@ test_search_path_ambiguous (void)
g_test_summary ("With G_SPAWN_SEARCH_PATH and G_SPAWN_SEARCH_PATH_FROM_ENVP, "
"the latter wins.");
+ if (skip_win32 ())
+ return;
+
envp = g_environ_setenv (envp, "PATH", here, TRUE);
g_ptr_array_add (argv,
@@ -252,6 +275,10 @@ test_search_path_fallback_in_environ (void)
int wait_status = -1;
g_test_summary ("With G_SPAWN_SEARCH_PATH but no PATH, a fallback is used.");
+
+ if (skip_win32 ())
+ return;
+
/* We can't make a meaningful assertion about what the fallback *is*,
* but we can assert that it *includes* the current working directory. */
@@ -319,6 +346,9 @@ test_search_path_fallback_in_envp (void)
/* We can't make a meaningful assertion about what the fallback *is*,
* but we can assert that it *includes* the current working directory. */
+ if (skip_win32 ())
+ return;
+
if (g_file_test ("/usr/bin/spawn-test-helper", G_FILE_TEST_IS_EXECUTABLE) ||
g_file_test ("/bin/spawn-test-helper", G_FILE_TEST_IS_EXECUTABLE))
{
@@ -384,6 +414,9 @@ test_search_path_heap_allocation (void)
int wait_status = -1;
gsize i;
+ if (skip_win32 ())
+ return;
+
memset (placeholder, '_', sizeof (placeholder));
/* Force search_path_buffer to be heap-allocated */
long_dir = g_test_build_filename (G_TEST_BUILT, "path-test-subdir", placeholder, NULL);
diff --git a/glib/tests/spawn-singlethread.c b/glib/tests/spawn-singlethread.c
index 6b17027fd..b17b47237 100644
--- a/glib/tests/spawn-singlethread.c
+++ b/glib/tests/spawn-singlethread.c
@@ -27,10 +27,10 @@
#include <locale.h>
#include <string.h>
#include <fcntl.h>
+#include <glib/gstdio.h>
#ifdef G_OS_UNIX
#include <glib-unix.h>
-#include <glib/gstdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
@@ -433,12 +433,11 @@ test_spawn_nonexistent (void)
static void
test_spawn_fd_assignment_clash (void)
{
-#if defined(G_OS_UNIX) && defined(F_DUPFD_CLOEXEC)
int tmp_fd;
guint i;
- const guint n_fds = 10;
- gint source_fds[n_fds];
- gint target_fds[n_fds];
+#define N_FDS 10
+ gint source_fds[N_FDS];
+ gint target_fds[N_FDS];
const gchar *argv[] = { "/nonexistent", NULL };
gboolean retval;
GError *local_error = NULL;
@@ -449,27 +448,32 @@ test_spawn_fd_assignment_clash (void)
tmp_fd = g_file_open_tmp ("glib-spawn-test-XXXXXX", NULL, NULL);
g_assert_cmpint (tmp_fd, >=, 0);
- for (i = 0; i < (n_fds - 1); ++i)
+ for (i = 0; i < (N_FDS - 1); ++i)
{
- int source = fcntl (tmp_fd, F_DUPFD_CLOEXEC, 3);
+ int source;
+#ifdef F_DUPFD_CLOEXEC
+ source = fcntl (tmp_fd, F_DUPFD_CLOEXEC, 3);
+#else
+ source = dup (tmp_fd);
+#endif
g_assert_cmpint (source, >=, 0);
source_fds[i] = source;
- target_fds[i] = source + n_fds;
+ target_fds[i] = source + N_FDS;
}
source_fds[i] = tmp_fd;
- target_fds[i] = tmp_fd + n_fds;
+ target_fds[i] = tmp_fd + N_FDS;
/* Print out the FD map. */
g_test_message ("FD map:");
- for (i = 0; i < n_fds; i++)
+ for (i = 0; i < N_FDS; i++)
g_test_message (" • %d → %d", source_fds[i], target_fds[i]);
/* Spawn the subprocess. This should fail because the executable doesn’t
* exist. */
retval = g_spawn_async_with_pipes_and_fds (NULL, argv, NULL, G_SPAWN_DEFAULT,
NULL, NULL, -1, -1, -1,
- source_fds, target_fds, n_fds,
+ source_fds, target_fds, N_FDS,
NULL, NULL, NULL, NULL,
&local_error);
g_assert_error (local_error, G_SPAWN_ERROR, G_SPAWN_ERROR_NOENT);
@@ -484,11 +488,8 @@ test_spawn_fd_assignment_clash (void)
g_assert_cmpuint (statbuf.st_size, ==, 0);
/* Clean up. */
- for (i = 0; i < n_fds; i++)
+ for (i = 0; i < N_FDS; i++)
g_close (source_fds[i], NULL);
-#else /* !G_OS_UNIX */
- g_test_skip ("FD redirection only supported on Unix with F_DUPFD_CLOEXEC");
-#endif /* !G_OS_UNIX */
}
int
@@ -504,11 +505,6 @@ main (int argc,
dirname = g_path_get_dirname (argv[0]);
echo_prog_path = g_build_filename (dirname, "test-spawn-echo" EXEEXT, NULL);
- if (!g_file_test (echo_prog_path, G_FILE_TEST_EXISTS))
- {
- g_free (echo_prog_path);
- echo_prog_path = g_build_filename (dirname, "lt-test-spawn-echo" EXEEXT, NULL);
- }
echo_script_path = g_build_filename (dirname, "echo-script" SCRIPT_EXT, NULL);
if (!g_file_test (echo_script_path, G_FILE_TEST_EXISTS))
{
diff --git a/glib/tests/strfuncs.c b/glib/tests/strfuncs.c
index ab93f8602..082eec074 100644
--- a/glib/tests/strfuncs.c
+++ b/glib/tests/strfuncs.c
@@ -2440,15 +2440,14 @@ test_ascii_string_to_number_usual (void)
case UNSIGNED:
{
- guint64 value64 = 0;
result = g_ascii_string_to_unsigned (data->str,
data->base,
data->min,
data->max,
- &value64,
+ &valueu64,
&error);
- value = value64;
- g_assert_cmpint (value, ==, value64);
+ value = valueu64;
+ g_assert_cmpint (value, ==, valueu64);
break;
}
diff --git a/glib/tests/string.c b/glib/tests/string.c
index 24098d1be..0229099e7 100644
--- a/glib/tests/string.c
+++ b/glib/tests/string.c
@@ -215,6 +215,44 @@ test_string_append (void)
g_string_free (string, TRUE);
}
+static void string_append_vprintf_va (GString *string,
+ const gchar *format,
+ ...) G_GNUC_PRINTF (2, 3);
+
+/* Wrapper around g_string_append_vprintf() which takes varargs */
+static void
+string_append_vprintf_va (GString *string,
+ const gchar *format,
+ ...)
+{
+ va_list args;
+
+ va_start (args, format);
+ g_string_append_vprintf (string, format, args);
+ va_end (args);
+}
+
+static void
+test_string_append_vprintf (void)
+{
+ GString *string;
+
+ /* append */
+ string = g_string_new ("firsthalf");
+
+ string_append_vprintf_va (string, "some %s placeholders", "format");
+
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wformat"
+#pragma GCC diagnostic ignored "-Wformat-extra-args"
+ string_append_vprintf_va (string, "%l", "invalid");
+#pragma GCC diagnostic pop
+
+ g_assert_cmpstr (string->str, ==, "firsthalfsome format placeholders");
+
+ g_string_free (string, TRUE);
+}
+
static void
test_string_prepend_c (void)
{
@@ -571,6 +609,7 @@ main (int argc,
g_test_add_func ("/string/test-string-assign", test_string_assign);
g_test_add_func ("/string/test-string-append-c", test_string_append_c);
g_test_add_func ("/string/test-string-append", test_string_append);
+ g_test_add_func ("/string/test-string-append-vprintf", test_string_append_vprintf);
g_test_add_func ("/string/test-string-prepend-c", test_string_prepend_c);
g_test_add_func ("/string/test-string-prepend", test_string_prepend);
g_test_add_func ("/string/test-string-insert", test_string_insert);
diff --git a/glib/tests/test-printf.c b/glib/tests/test-printf.c
index 59a461ddb..6eadf1e98 100644
--- a/glib/tests/test-printf.c
+++ b/glib/tests/test-printf.c
@@ -895,6 +895,52 @@ test_upper_bound (void)
g_assert_cmpint (res, ==, 20);
}
+#if !defined(__APPLE__) && !defined(__FreeBSD__)
+static gint test_vasprintf_va (gchar **string,
+ const gchar *format,
+ ...) G_GNUC_PRINTF (2, 3);
+
+/* Wrapper around g_vasprintf() which takes varargs */
+static gint
+test_vasprintf_va (gchar **string,
+ const gchar *format,
+ ...)
+{
+ va_list args;
+ gint len;
+
+ va_start (args, format);
+ len = g_vasprintf (string, format, args);
+ va_end (args);
+
+ return len;
+}
+#endif /* !defined(__APPLE__) && !defined(__FreeBSD__) */
+
+static void
+test_vasprintf_invalid_format_placeholder (void)
+{
+#if !defined(__APPLE__) && !defined(__FreeBSD__)
+ gint len = 0;
+ gchar *buf = "some non-null string";
+#endif
+
+ g_test_summary ("Test error handling for invalid format placeholder in g_vasprintf()");
+
+#if !defined(__APPLE__) && !defined(__FreeBSD__)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wformat"
+#pragma GCC diagnostic ignored "-Wformat-extra-args"
+ len = test_vasprintf_va (&buf, "%l", "nope");
+#pragma GCC diagnostic pop
+
+ g_assert_cmpint (len, ==, -1);
+ g_assert_null (buf);
+#else
+ g_test_skip ("vasprintf() placeholder checks on BSDs are less strict");
+#endif
+}
+
int
main (int argc,
char *argv[])
@@ -935,5 +981,7 @@ main (int argc,
g_test_add_func ("/sprintf/test-positional-params", test_positional_params3);
g_test_add_func ("/sprintf/upper-bound", test_upper_bound);
+ g_test_add_func ("/vasprintf/invalid-format-placeholder", test_vasprintf_invalid_format_placeholder);
+
return g_test_run();
}
diff --git a/glib/tests/test-spawn-sleep.c b/glib/tests/test-spawn-sleep.c
new file mode 100644
index 000000000..34dfd5bd9
--- /dev/null
+++ b/glib/tests/test-spawn-sleep.c
@@ -0,0 +1,32 @@
+/*
+ * Copyright (C) 2022 Red Hat, Inc.
+ *
+ * This work is provided "as is"; redistribution and modification
+ * in whole or in part, in any medium, physical or electronic is
+ * permitted without restriction.
+ *
+ * This work is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *
+ * In no event shall the authors or contributors be liable for any
+ * direct, indirect, incidental, special, exemplary, or consequential
+ * damages (including, but not limited to, procurement of substitute
+ * goods or services; loss of use, data, or profits; or business
+ * interruption) however caused and on any theory of liability, whether
+ * in contract, strict liability, or tort (including negligence or
+ * otherwise) arising in any way out of the use of this software, even
+ * if advised of the possibility of such damage.
+ */
+#include "config.h"
+
+#include <stdlib.h>
+#include "glib.h"
+
+int
+main (int argc,
+ char *argv[])
+{
+ g_usleep (atoi (argv[1]) * G_USEC_PER_SEC);
+ return 0;
+}
diff --git a/glib/tests/testing-helper.c b/glib/tests/testing-helper.c
index 7b61e8337..7731538a0 100644
--- a/glib/tests/testing-helper.c
+++ b/glib/tests/testing-helper.c
@@ -102,6 +102,24 @@ main (int argc,
argc -= 1;
argv[argc] = NULL;
+ if (g_strcmp0 (argv1, "init-null-argv0") == 0)
+ {
+ int test_argc = 0;
+ char *test_argva[1] = { NULL };
+ char **test_argv = test_argva;
+
+ /* Test that `g_test_init()` can handle being called with an empty argv
+ * and argc == 0. While this isn’t recommended, it is possible for another
+ * process to use execve() to call a gtest process this way, so we’d
+ * better handle it gracefully.
+ *
+ * This test can’t be run after `g_test_init()` has been called normally,
+ * as it isn’t allowed to be called more than once in a process. */
+ g_test_init (&test_argc, &test_argv, NULL);
+
+ return 0;
+ }
+
g_test_init (&argc, &argv, NULL);
g_test_set_nonfatal_assertions ();
diff --git a/glib/tests/testing.c b/glib/tests/testing.c
index 03cfe03e1..accd5dbfe 100644
--- a/glib/tests/testing.c
+++ b/glib/tests/testing.c
@@ -1585,16 +1585,57 @@ test_tap_summary (void)
g_ptr_array_unref (argv);
}
+static void
+test_init_no_argv0 (void)
+{
+ const char *testing_helper;
+ GPtrArray *argv;
+ GError *error = NULL;
+ int status;
+ gchar *output;
+
+ g_test_summary ("Test that g_test_init() can be called safely with argc == 0.");
+
+ testing_helper = g_test_get_filename (G_TEST_BUILT, "testing-helper" EXEEXT, NULL);
+
+ argv = g_ptr_array_new ();
+ g_ptr_array_add (argv, (char *) testing_helper);
+ g_ptr_array_add (argv, "init-null-argv0");
+ g_ptr_array_add (argv, NULL);
+
+ /* This has to be spawned manually and can’t be run with g_test_subprocess()
+ * because the test helper can’t be run after `g_test_init()` has been called
+ * in the process. */
+ g_spawn_sync (NULL, (char **) argv->pdata, NULL,
+ G_SPAWN_STDERR_TO_DEV_NULL,
+ NULL, NULL, &output, NULL, &status,
+ &error);
+ g_assert_no_error (error);
+
+ g_spawn_check_wait_status (status, &error);
+ g_assert_no_error (error);
+ g_assert_nonnull (strstr (output, "# random seed:"));
+ g_free (output);
+ g_ptr_array_unref (argv);
+}
+
int
main (int argc,
char *argv[])
{
+ int ret;
+ char *filename, *filename2;
+
argv0 = argv[0];
setlocale (LC_ALL, "");
g_test_init (&argc, &argv, NULL);
+ /* Part of a test for
+ * https://gitlab.gnome.org/GNOME/glib/-/issues/2563, see below */
+ filename = g_test_build_filename (G_TEST_BUILT, "nonexistent", NULL);
+
g_test_add_func ("/random-generator/rand-1", test_rand1);
g_test_add_func ("/random-generator/rand-2", test_rand2);
g_test_add_func ("/random-generator/random-conversions", test_random_conversions);
@@ -1675,5 +1716,18 @@ main (int argc,
g_test_add_func ("/tap", test_tap);
g_test_add_func ("/tap/summary", test_tap_summary);
- return g_test_run();
+ g_test_add_func ("/init/no_argv0", test_init_no_argv0);
+
+ ret = g_test_run ();
+
+ /* We can't test for https://gitlab.gnome.org/GNOME/glib/-/issues/2563
+ * from a test-case, because the whole point of that issue is that it's
+ * about whether certain patterns are valid after g_test_run() has
+ * returned... so put an ad-hoc test here, and just crash if it fails. */
+ filename2 = g_test_build_filename (G_TEST_BUILT, "nonexistent", NULL);
+ g_assert_cmpstr (filename, ==, filename2);
+
+ g_free (filename);
+ g_free (filename2);
+ return ret;
}
diff --git a/glib/tests/timer.c b/glib/tests/timer.c
index e805ef581..42ed5a92c 100644
--- a/glib/tests/timer.c
+++ b/glib/tests/timer.c
@@ -35,10 +35,28 @@ test_timer_basic (void)
timer = g_timer_new ();
+ g_timer_start (timer);
+ elapsed = g_timer_elapsed (timer, NULL);
+ g_timer_stop (timer);
+ g_assert_cmpfloat (elapsed, <=, g_timer_elapsed (timer, NULL));
+
+ g_timer_destroy (timer);
+
+ timer = g_timer_new ();
+
+ g_timer_start (timer);
+ elapsed = g_timer_elapsed (timer, NULL);
+ g_timer_stop (timer);
+ g_assert_cmpfloat (elapsed, <=, g_timer_elapsed (timer, NULL));
+
+ g_timer_destroy (timer);
+
+ timer = g_timer_new ();
+
elapsed = g_timer_elapsed (timer, &micros);
g_assert_cmpfloat (elapsed, <, 1.0);
- g_assert_cmpuint (micros, ==, ((guint64)(elapsed * 1e6)) % 1000000);
+ g_assert_cmpfloat_with_epsilon (elapsed, micros / 1e6, 0.001);
g_timer_destroy (timer);
}
@@ -69,6 +87,19 @@ test_timer_continue (void)
gdouble elapsed, elapsed2;
timer = g_timer_new ();
+
+ /* Continue on a running timer */
+ if (g_test_undefined ())
+ {
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*assertion*== FALSE*");
+ g_timer_continue (timer);
+ g_test_assert_expected_messages ();
+ }
+
+ g_timer_reset (timer);
+
+ /* Continue on a stopped timer */
g_usleep (100);
g_timer_stop (timer);
@@ -164,16 +195,27 @@ test_timeval_from_iso8601 (void)
{ TRUE, "1970-01-01T00:00:17.1234Z", { 17, 123400 } },
{ TRUE, "1970-01-01T00:00:17.123456Z", { 17, 123456 } },
{ TRUE, "1980-02-22T12:36:00+02:00", { 320063760, 0 } },
+ { TRUE, "1980-02-22T10:36:00Z", { 320063760, 0 } },
+ { TRUE, "1980-02-22T10:36:00", { 320063760, 0 } },
+ { TRUE, "1980-02-22T12:36:00+02:00", { 320063760, 0 } },
+ { TRUE, "19800222T053600-0500", { 320063760, 0 } },
+ { TRUE, "1980-02-22T07:06:00-03:30", { 320063760, 0 } },
+ { TRUE, "1980-02-22T10:36:00.050000Z", { 320063760, 50000 } },
+ { TRUE, "1980-02-22T05:36:00,05-05:00", { 320063760, 50000 } },
+ { TRUE, "19800222T123600.050000000+0200", { 320063760, 50000 } },
+ { TRUE, "19800222T070600,0500-0330", { 320063760, 50000 } },
{ FALSE, " ", { 0, 0 } },
{ FALSE, "x", { 0, 0 } },
{ FALSE, "123x", { 0, 0 } },
{ FALSE, "2001-10+x", { 0, 0 } },
+ { FALSE, "1980-02-22", { 0, 0 } },
{ FALSE, "1980-02-22T", { 0, 0 } },
{ FALSE, "2001-10-08Tx", { 0, 0 } },
{ FALSE, "2001-10-08T10:11x", { 0, 0 } },
{ FALSE, "Wed Dec 19 17:20:20 GMT 2007", { 0, 0 } },
{ FALSE, "1980-02-22T10:36:00Zulu", { 0, 0 } },
{ FALSE, "2T0+819855292164632335", { 0, 0 } },
+ { FALSE, "1980-02-22", { 320063760, 50000 } },
{ TRUE, "2018-08-03T14:08:05.446178377+01:00", { 1533301685, 446178 } },
{ FALSE, "2147483648-08-03T14:08:05.446178377+01:00", { 0, 0 } },
{ FALSE, "2018-13-03T14:08:05.446178377+01:00", { 0, 0 } },
@@ -222,7 +264,7 @@ test_timeval_from_iso8601 (void)
out.tv_sec = 0;
out.tv_usec = 0;
success = g_time_val_from_iso8601 (tests[i].in, &out);
- g_assert (success == tests[i].success);
+ g_assert_cmpint (success, ==, tests[i].success);
if (tests[i].success)
{
g_assert_cmpint (out.tv_sec, ==, tests[i].val.tv_sec);
@@ -230,10 +272,20 @@ test_timeval_from_iso8601 (void)
}
}
+ /* revert back user defined time zone */
if (old_tz != NULL)
g_assert_true (g_setenv ("TZ", old_tz, TRUE));
else
g_unsetenv ("TZ");
+ tzset ();
+
+ for (i = 0; i < G_N_ELEMENTS (tests); i++)
+ {
+ out.tv_sec = 0;
+ out.tv_usec = 0;
+ success = g_time_val_from_iso8601 (tests[i].in, &out);
+ g_assert_cmpint (success, ==, tests[i].success);
+ }
g_free (old_tz);
}
diff --git a/glib/tests/tree.c b/glib/tests/tree.c
index 5174479b9..e882926e6 100644
--- a/glib/tests/tree.c
+++ b/glib/tests/tree.c
@@ -482,6 +482,235 @@ test_tree_insert (void)
g_tree_unref (tree);
}
+static void
+binary_tree_bound (GTree *tree,
+ char c,
+ char expected,
+ int lower)
+{
+ GTreeNode *node;
+
+ if (lower)
+ node = g_tree_lower_bound (tree, &c);
+ else
+ node = g_tree_upper_bound (tree, &c);
+
+ if (g_test_verbose ())
+ g_test_message ("%c %s: ", c, lower ? "lower" : "upper");
+
+ if (!node)
+ {
+ if (!g_tree_nnodes (tree))
+ {
+ if (g_test_verbose ())
+ g_test_message ("empty tree");
+ }
+ else
+ {
+ GTreeNode *last = g_tree_node_last (tree);
+
+ g_assert (last);
+ if (g_test_verbose ())
+ g_test_message ("past end last %c",
+ *(char *) g_tree_node_key (last));
+ }
+ g_assert (expected == '\x00');
+ }
+ else
+ {
+ GTreeNode *begin = g_tree_node_first (tree);
+ GTreeNode *last = g_tree_node_last (tree);
+ GTreeNode *prev = g_tree_node_previous (node);
+ GTreeNode *next = g_tree_node_next (node);
+
+ g_assert (expected != '\x00');
+ g_assert (expected == *(char *) g_tree_node_key (node));
+
+ if (g_test_verbose ())
+ g_test_message ("%c", *(char *) g_tree_node_key (node));
+
+ if (node != begin)
+ {
+ g_assert (prev);
+ if (g_test_verbose ())
+ g_test_message (" prev %c", *(char *) g_tree_node_key (prev));
+ }
+ else
+ {
+ g_assert (!prev);
+ if (g_test_verbose ())
+ g_test_message (" no prev, it's the first one");
+ }
+
+ if (node != last)
+ {
+ g_assert (next);
+ if (g_test_verbose ())
+ g_test_message (" next %c", *(char *) g_tree_node_key (next));
+ }
+ else
+ {
+ g_assert (!next);
+ if (g_test_verbose ())
+ g_test_message (" no next, it's the last one");
+ }
+ }
+
+ if (g_test_verbose ())
+ g_test_message ("\n");
+}
+
+static void
+binary_tree_bounds (GTree *tree,
+ char c,
+ int mode)
+{
+ char expectedl, expectedu;
+ char first = mode == 0 ? '0' : mode == 1 ? 'A' : 'z';
+
+ g_assert (mode >= 0 && mode <= 3);
+
+ if (c < first)
+ expectedl = first;
+ else if (c > 'z')
+ expectedl = '\x00';
+ else
+ expectedl = c;
+
+ if (c < first)
+ expectedu = first;
+ else if (c >= 'z')
+ expectedu = '\x00';
+ else
+ expectedu = c == '9' ? 'A' : c == 'Z' ? 'a' : c + 1;
+
+ if (mode == 3)
+ {
+ expectedl = '\x00';
+ expectedu = '\x00';
+ }
+
+ binary_tree_bound (tree, c, expectedl, 1);
+ binary_tree_bound (tree, c, expectedu, 0);
+}
+
+static void
+binary_tree_bounds_test (GTree *tree,
+ int mode)
+{
+ binary_tree_bounds (tree, 'a', mode);
+ binary_tree_bounds (tree, 'A', mode);
+ binary_tree_bounds (tree, 'z', mode);
+ binary_tree_bounds (tree, 'Z', mode);
+ binary_tree_bounds (tree, 'Y', mode);
+ binary_tree_bounds (tree, '0', mode);
+ binary_tree_bounds (tree, '9', mode);
+ binary_tree_bounds (tree, '0' - 1, mode);
+ binary_tree_bounds (tree, 'z' + 1, mode);
+ binary_tree_bounds (tree, '0' - 2, mode);
+ binary_tree_bounds (tree, 'z' + 2, mode);
+}
+
+static void
+test_tree_bounds (void)
+{
+ GQueue queue = G_QUEUE_INIT;
+ GTree *tree;
+ char chars[62];
+ guint i, j;
+
+ tree = g_tree_new (my_compare);
+
+ i = 0;
+ for (j = 0; j < 10; j++, i++)
+ {
+ chars[i] = '0' + j;
+ g_queue_push_tail (&queue, &chars[i]);
+ }
+
+ for (j = 0; j < 26; j++, i++)
+ {
+ chars[i] = 'A' + j;
+ g_queue_push_tail (&queue, &chars[i]);
+ }
+
+ for (j = 0; j < 26; j++, i++)
+ {
+ chars[i] = 'a' + j;
+ g_queue_push_tail (&queue, &chars[i]);
+ }
+
+ if (g_test_verbose ())
+ g_test_message ("tree insert: ");
+
+ while (!g_queue_is_empty (&queue))
+ {
+ gint32 which = g_random_int_range (0, g_queue_get_length (&queue));
+ gpointer elem = g_queue_pop_nth (&queue, which);
+ GTreeNode *node;
+
+ if (g_test_verbose ())
+ g_test_message ("%c ", *(char *) elem);
+
+ node = g_tree_insert_node (tree, elem, elem);
+ g_assert (g_tree_node_key (node) == elem);
+ g_assert (g_tree_node_value (node) == elem);
+ }
+
+ if (g_test_verbose ())
+ g_test_message ("\n");
+
+ g_assert_cmpint (g_tree_nnodes (tree), ==, 10 + 26 + 26);
+ g_assert_cmpint (g_tree_height (tree), >=, 6);
+ g_assert_cmpint (g_tree_height (tree), <=, 8);
+
+ if (g_test_verbose ())
+ {
+ g_test_message ("tree: ");
+ g_tree_foreach (tree, my_traverse, NULL);
+ g_test_message ("\n");
+ }
+
+ binary_tree_bounds_test (tree, 0);
+
+ for (i = 0; i < 10; i++)
+ g_tree_remove (tree, &chars[i]);
+
+ g_assert_cmpint (g_tree_nnodes (tree), ==, 26 + 26);
+ g_assert_cmpint (g_tree_height (tree), >=, 6);
+ g_assert_cmpint (g_tree_height (tree), <=, 8);
+
+ if (g_test_verbose ())
+ {
+ g_test_message ("tree: ");
+ g_tree_foreach (tree, my_traverse, NULL);
+ g_test_message ("\n");
+ }
+
+ binary_tree_bounds_test (tree, 1);
+
+ for (i = 10; i < 10 + 26 + 26 - 1; i++)
+ g_tree_remove (tree, &chars[i]);
+
+ if (g_test_verbose ())
+ {
+ g_test_message ("tree: ");
+ g_tree_foreach (tree, my_traverse, NULL);
+ g_test_message ("\n");
+ }
+
+ binary_tree_bounds_test (tree, 2);
+
+ g_tree_remove (tree, &chars[10 + 26 + 26 - 1]);
+
+ if (g_test_verbose ())
+ g_test_message ("empty tree\n");
+
+ binary_tree_bounds_test (tree, 3);
+
+ g_tree_unref (tree);
+}
+
int
main (int argc, char *argv[])
{
@@ -492,6 +721,7 @@ main (int argc, char *argv[])
g_test_add_func ("/tree/destroy", test_tree_destroy);
g_test_add_func ("/tree/traverse", test_tree_traverse);
g_test_add_func ("/tree/insert", test_tree_insert);
+ g_test_add_func ("/tree/bounds", test_tree_bounds);
g_test_add_func ("/tree/remove-all", test_tree_remove_all);
return g_test_run ();
diff --git a/tests/type-test.c b/glib/tests/types.c
index dceccdd9f..58eb7487c 100644
--- a/tests/type-test.c
+++ b/glib/tests/types.c
@@ -19,21 +19,15 @@
* Modified by the GLib Team and others 1997-2000. See the AUTHORS
* file for a list of people on the GLib Team. See the ChangeLog
* files for a list of changes. These files are distributed with
- * GLib at ftp://ftp.gtk.org/pub/gtk/.
+ * GLib at ftp://ftp.gtk.org/pub/gtk/.
*/
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
-
#include <stdio.h>
-#include <string.h>
-#include "glib.h"
-
+#include <glib.h>
-int
-main (int argc,
- char *argv[])
+static void
+test_basic_types (void)
{
gchar *string;
gushort gus;
@@ -50,7 +44,7 @@ main (int argc,
guint16 gu16t1 = 0x44afU, gu16t2 = 0xaf44U;
guint32 gu32t1 = 0x02a7f109U, gu32t2 = 0x09f1a702U;
guint64 gu64t1 = G_GINT64_CONSTANT(0x1d636b02300a7aa7U),
- gu64t2 = G_GINT64_CONSTANT(0xa77a0a30026b631dU);
+ gu64t2 = G_GINT64_CONSTANT(0xa77a0a30026b631dU);
gint64 gi64t1;
gint64 gi64t2;
gssize gsst1;
@@ -59,65 +53,65 @@ main (int argc,
gsize gst2;
/* type sizes */
- g_assert (sizeof (gint8) == 1);
- g_assert (sizeof (gint16) == 2);
- g_assert (sizeof (gint32) == 4);
- g_assert (sizeof (gint64) == 8);
+ g_assert_cmpint (sizeof (gint8), ==, 1);
+ g_assert_cmpint (sizeof (gint16), ==, 2);
+ g_assert_cmpint (sizeof (gint32), ==, 4);
+ g_assert_cmpint (sizeof (gint64), ==, 8);
- g_assert (GUINT16_SWAP_LE_BE (gu16t1) == gu16t2);
- g_assert (GUINT32_SWAP_LE_BE (gu32t1) == gu32t2);
- g_assert (GUINT64_SWAP_LE_BE (gu64t1) == gu64t2);
+ g_assert_cmpuint (GUINT16_SWAP_LE_BE (gu16t1), ==, gu16t2);
+ g_assert_cmpuint (GUINT32_SWAP_LE_BE (gu32t1), ==, gu32t2);
+ g_assert_cmpuint (GUINT64_SWAP_LE_BE (gu64t1), ==, gu64t2);
/* Test the G_(MIN|MAX|MAXU)(SHORT|INT|LONG) macros */
gus = G_MAXUSHORT;
gus++;
- g_assert (gus == 0);
+ g_assert_cmpuint (gus, ==, 0);
gui = G_MAXUINT;
gui++;
- g_assert (gui == 0);
+ g_assert_cmpuint (gui, ==, 0);
gul = G_MAXULONG;
gul++;
- g_assert (gul == 0);
+ g_assert_cmpuint (gul, ==, 0);
gsz = G_MAXSIZE;
gsz++;
-
- g_assert (gsz == 0);
+
+ g_assert_cmpuint (gsz, ==, 0);
gs = G_MAXSHORT;
gs = (gshort) (1 + (gushort) gs);
- g_assert (gs == G_MINSHORT);
+ g_assert_cmpint (gs, ==, G_MINSHORT);
gi = G_MAXINT;
gi = (gint) (1 + (guint) gi);
- g_assert (gi == G_MININT);
+ g_assert_cmpint (gi, ==, G_MININT);
gl = G_MAXLONG;
gl = (glong) (1 + (gulong) gl);
- g_assert (gl == G_MINLONG);
+ g_assert_cmpint (gl, ==, G_MINLONG);
/* Test the G_G(U)?INT(16|32|64)_FORMAT macros */
gi16t1 = -0x3AFA;
gu16t1 = 0xFAFA;
gi32t1 = -0x3AFAFAFA;
- gu32t1 = 0xFAFAFAFA;
+ gu32t1 = 0xFAFAFAFA;
#define FORMAT "%" G_GINT16_FORMAT " %" G_GINT32_FORMAT \
" %" G_GUINT16_FORMAT " %" G_GUINT32_FORMAT "\n"
string = g_strdup_printf (FORMAT, gi16t1, gi32t1, gu16t1, gu32t1);
sscanf (string, FORMAT, &gi16t2, &gi32t2, &gu16t2, &gu32t2);
g_free (string);
- g_assert (gi16t1 == gi16t2);
- g_assert (gi32t1 == gi32t2);
- g_assert (gu16t1 == gu16t2);
- g_assert (gu32t1 == gu32t2);
+ g_assert_cmpint (gi16t1, ==, gi16t2);
+ g_assert_cmpint (gi32t1, ==, gi32t2);
+ g_assert_cmpint (gu16t1, ==, gu16t2);
+ g_assert_cmpint (gu32t1, ==, gu32t2);
gi64t1 = G_GINT64_CONSTANT (-0x3AFAFAFAFAFAFAFA);
- gu64t1 = G_GINT64_CONSTANT (0xFAFAFAFAFAFAFAFA);
+ gu64t1 = G_GINT64_CONSTANT (0xFAFAFAFAFAFAFAFA);
#define FORMAT64 "%" G_GINT64_FORMAT " %" G_GUINT64_FORMAT "\n"
#ifndef G_OS_WIN32
@@ -129,11 +123,11 @@ main (int argc,
string = g_strdup_printf (FORMAT64, gi64t1, gu64t1);
sscanf (string, SCAN_FORMAT64, &gi64t2, &gu64t2);
g_free (string);
- g_assert (gi64t1 == gi64t2);
- g_assert (gu64t1 == gu64t2);
+ g_assert_cmpint (gi64t1, ==, gi64t2);
+ g_assert_cmpint (gu64t1, ==, gu64t2);
gsst1 = -0x3AFAFAFA;
- gst1 = 0xFAFAFAFA;
+ gst1 = 0xFAFAFAFA;
#define FORMATSIZE "%" G_GSSIZE_FORMAT " %" G_GSIZE_FORMAT "\n"
#ifndef G_OS_WIN32
@@ -145,8 +139,16 @@ main (int argc,
string = g_strdup_printf (FORMATSIZE, gsst1, gst1);
sscanf (string, SCAN_FORMATSIZE, &gsst2, &gst2);
g_free (string);
- g_assert (gsst1 == gsst2);
- g_assert (gst1 == gst2);
-
- return 0;
+ g_assert_cmpint (gsst1, ==, gsst2);
+ g_assert_cmpint (gst1, ==, gst2);
+}
+
+int
+main (int argc, char *argv[])
+{
+ g_test_init (&argc, &argv, NULL);
+
+ g_test_add_func ("/types/basic_types", test_basic_types);
+
+ return g_test_run ();
}
diff --git a/glib/tests/unicode.c b/glib/tests/unicode.c
index 1d4e37c99..5ba167e56 100644
--- a/glib/tests/unicode.c
+++ b/glib/tests/unicode.c
@@ -28,6 +28,7 @@
#endif
#include <locale.h>
+#include <stdio.h>
#include "glib.h"
@@ -337,6 +338,11 @@ test_unichar_script (void)
{ G_UNICODE_SCRIPT_DIVES_AKURU, 0x11900 },
{ G_UNICODE_SCRIPT_KHITAN_SMALL_SCRIPT, 0x18B00 },
{ G_UNICODE_SCRIPT_YEZIDI, 0x10E80 },
+ { G_UNICODE_SCRIPT_CYPRO_MINOAN, 0x12F90 },
+ { G_UNICODE_SCRIPT_OLD_UYGHUR, 0x10F70 },
+ { G_UNICODE_SCRIPT_TANGSA, 0x16A70 },
+ { G_UNICODE_SCRIPT_TOTO, 0x1E290 },
+ { G_UNICODE_SCRIPT_VITHKUQI, 0x10570 }
};
for (i = 0; i < G_N_ELEMENTS (examples); i++)
g_assert_cmpint (g_unichar_get_script (examples[i].c), ==, examples[i].script);
@@ -530,6 +536,99 @@ test_casefold (void)
g_free (str_casefold);
}
+static void
+test_casemap_and_casefold (void)
+{
+ FILE *infile;
+ char buffer[1024];
+ char **strings;
+ char *filename;
+ const char *locale;
+ const char *test;
+ const char *expected;
+ char *convert;
+ char *current_locale = setlocale (LC_CTYPE, NULL);
+
+ filename = g_test_build_filename (G_TEST_DIST, "casemap.txt", NULL);
+ infile = fopen (filename, "r");
+ g_assert (infile != NULL);
+
+ while (fgets (buffer, sizeof (buffer), infile))
+ {
+ if (buffer[0] == '#')
+ continue;
+
+ strings = g_strsplit (buffer, "\t", -1);
+ locale = strings[0];
+ if (!locale[0])
+ locale = "C";
+
+ if (strcmp (locale, current_locale) != 0)
+ {
+ setlocale (LC_CTYPE, locale);
+ current_locale = setlocale (LC_CTYPE, NULL);
+
+ if (strncmp (current_locale, locale, 2) != 0)
+ {
+ g_test_message ("Cannot set locale to %s, skipping", locale);
+ goto next;
+ }
+ }
+
+ test = strings[1];
+
+ /* gen-casemap-txt.py uses an empty string when a single
+ * character doesn't have an equivalent in a particular case;
+ * since that behavior is nonsense for multicharacter strings,
+ * it would make more sense to put the expected result ... the
+ * original character unchanged. But for now, we just work
+ * around it here and take the empty string to mean "same as
+ * original"
+ */
+
+ convert = g_utf8_strup (test, -1);
+ expected = strings[4][0] ? strings[4] : test;
+ g_assert_cmpstr (convert, ==, expected);
+ g_free (convert);
+
+ convert = g_utf8_strdown (test, -1);
+ expected = strings[2][0] ? strings[2] : test;
+ g_assert_cmpstr (convert, ==, expected);
+ g_free (convert);
+
+ next:
+ g_strfreev (strings);
+ }
+
+ fclose (infile);
+
+ g_free (filename);
+ filename = g_test_build_filename (G_TEST_DIST, "casefold.txt", NULL);
+
+ infile = fopen (filename, "r");
+ g_assert (infile != NULL);
+
+ while (fgets (buffer, sizeof (buffer), infile))
+ {
+ if (buffer[0] == '#')
+ continue;
+
+ buffer[strlen (buffer) - 1] = '\0';
+ strings = g_strsplit (buffer, "\t", -1);
+
+ test = strings[0];
+
+ convert = g_utf8_casefold (test, -1);
+ g_assert_cmpstr (convert, ==, strings[1]);
+ g_free (convert);
+
+ g_strfreev (strings);
+ }
+
+ fclose (infile);
+ g_free (filename);
+}
+
/* Test that g_unichar_ismark() returns the correct value for various
* ASCII and Unicode alphabetic, numeric, and other, codepoints. */
static void
@@ -904,6 +1003,11 @@ test_zerowidth (void)
g_assert_false (g_unichar_iszerowidth (G_UNICODE_LAST_CHAR + 1));
g_assert_false (g_unichar_iszerowidth (G_UNICODE_LAST_CHAR_PART1));
g_assert_false (g_unichar_iszerowidth (G_UNICODE_LAST_CHAR_PART1 + 1));
+
+ /* Hangul Jamo Extended-B block, containing jungseong and jongseong for
+ * Old Korean */
+ g_assert_true (g_unichar_iszerowidth (0xD7B0));
+ g_assert_true (g_unichar_iszerowidth (0xD7FB));
}
/* Test that g_unichar_istitle() returns the correct value for various
@@ -1483,6 +1587,7 @@ test_iso15924 (void)
} data[] = {
{ G_UNICODE_SCRIPT_COMMON, "Zyyy" },
{ G_UNICODE_SCRIPT_INHERITED, "Zinh" },
+ { G_UNICODE_SCRIPT_MATH, "Zmth" },
{ G_UNICODE_SCRIPT_ARABIC, "Arab" },
{ G_UNICODE_SCRIPT_ARMENIAN, "Armn" },
{ G_UNICODE_SCRIPT_BENGALI, "Beng" },
@@ -1666,6 +1771,13 @@ test_iso15924 (void)
{ G_UNICODE_SCRIPT_DIVES_AKURU, "Diak" },
{ G_UNICODE_SCRIPT_KHITAN_SMALL_SCRIPT, "Kits" },
{ G_UNICODE_SCRIPT_YEZIDI, "Yezi" },
+
+ /* Unicode 14.0 additions */
+ { G_UNICODE_SCRIPT_CYPRO_MINOAN, "Cpmn" },
+ { G_UNICODE_SCRIPT_OLD_UYGHUR, "Ougr" },
+ { G_UNICODE_SCRIPT_TANGSA, "Tnsa" },
+ { G_UNICODE_SCRIPT_TOTO, "Toto" },
+ { G_UNICODE_SCRIPT_VITHKUQI, "Vith" }
};
guint i;
@@ -1708,6 +1820,7 @@ main (int argc,
g_test_add_func ("/unicode/break-type", test_unichar_break_type);
g_test_add_func ("/unicode/canonical-decomposition", test_canonical_decomposition);
g_test_add_func ("/unicode/casefold", test_casefold);
+ g_test_add_func ("/unicode/casemap_and_casefold", test_casemap_and_casefold);
g_test_add_func ("/unicode/cases", test_cases);
g_test_add_func ("/unicode/character-type", test_unichar_character_type);
g_test_add_func ("/unicode/cntrl", test_cntrl);
diff --git a/glib/tests/utf8-misc.c b/glib/tests/utf8-misc.c
index 7a8c37448..c13729422 100644
--- a/glib/tests/utf8-misc.c
+++ b/glib/tests/utf8-misc.c
@@ -128,6 +128,10 @@ test_utf8_substring (void)
r = g_utf8_substring ("abc\xe2\x82\xa0gh\xe2\x82\xa4", 2, 5);
g_assert_cmpstr (r, ==, "c\xe2\x82\xa0g");
g_free (r);
+
+ r = g_utf8_substring ("abcd", 1, -1);
+ g_assert_cmpstr (r, ==, "bcd");
+ g_free (r);
}
static void
diff --git a/glib/tests/utf8-validate.c b/glib/tests/utf8-validate.c
index 5fc37a3a3..41d19adb5 100644
--- a/glib/tests/utf8-validate.c
+++ b/glib/tests/utf8-validate.c
@@ -32,7 +32,7 @@ typedef struct {
gboolean valid;
} Test;
-Test test[] = {
+static Test global_test[] = {
/* some tests to check max_len handling */
/* length 1 */
{ "abcde", -1, 5, TRUE },
@@ -364,10 +364,10 @@ main (int argc, char *argv[])
g_test_init (&argc, &argv, NULL);
- for (i = 0; test[i].text; i++)
+ for (i = 0; global_test[i].text; i++)
{
path = g_strdup_printf ("/utf8/validate/%d", i);
- g_test_add_data_func (path, &test[i], do_test);
+ g_test_add_data_func (path, &global_test[i], do_test);
g_free (path);
}
diff --git a/glib/tests/utils.c b/glib/tests/utils.c
index f47e3595c..11fed555a 100644
--- a/glib/tests/utils.c
+++ b/glib/tests/utils.c
@@ -158,6 +158,52 @@ test_appname (void)
g_assert_cmpstr (appname, ==, "appname");
}
+static gpointer
+thread_prgname_check (gpointer data)
+{
+ gint *n_threads_got_prgname = (gint *) data;
+ const gchar *old_prgname;
+
+ old_prgname = g_get_prgname ();
+ g_assert_cmpstr (old_prgname, ==, "prgname");
+
+ g_atomic_int_inc (n_threads_got_prgname);
+
+ while (g_strcmp0 (g_get_prgname (), "prgname2") != 0);
+
+ return NULL;
+}
+
+static void
+test_prgname_thread_safety (void)
+{
+ gsize i;
+ gint n_threads_got_prgname;
+ GThread *threads[4];
+
+ g_test_bug ("https://gitlab.gnome.org/GNOME/glib/-/issues/847");
+ g_test_summary ("Test that threads racing to get and set the program name "
+ "always receive a valid program name.");
+
+ g_set_prgname ("prgname");
+ g_atomic_int_set (&n_threads_got_prgname, 0);
+
+ for (i = 0; i < G_N_ELEMENTS (threads); i++)
+ threads[i] = g_thread_new (NULL, thread_prgname_check, &n_threads_got_prgname);
+
+ while (g_atomic_int_get (&n_threads_got_prgname) != G_N_ELEMENTS (threads))
+ g_usleep (50);
+
+ g_set_prgname ("prgname2");
+
+ /* Wait for all the workers to exit. */
+ for (i = 0; i < G_N_ELEMENTS (threads); i++)
+ g_thread_join (threads[i]);
+
+ /* reset prgname */
+ g_set_prgname ("prgname");
+}
+
static void
test_tmpdir (void)
{
@@ -165,6 +211,148 @@ test_tmpdir (void)
g_assert_cmpstr (g_get_tmp_dir (), !=, "");
}
+#if defined(__GNUC__) && (__GNUC__ >= 4)
+#define TEST_BUILTINS 1
+#else
+#define TEST_BUILTINS 0
+#endif
+
+#if TEST_BUILTINS
+static gint
+builtin_bit_nth_lsf1 (gulong mask, gint nth_bit)
+{
+ if (nth_bit >= 0)
+ {
+ if (G_LIKELY (nth_bit < GLIB_SIZEOF_LONG * 8 - 1))
+ mask &= -(1UL << (nth_bit + 1));
+ else
+ mask = 0;
+ }
+ return __builtin_ffsl (mask) - 1;
+}
+
+static gint
+builtin_bit_nth_lsf2 (gulong mask, gint nth_bit)
+{
+ if (nth_bit >= 0)
+ {
+ if (G_LIKELY (nth_bit < GLIB_SIZEOF_LONG * 8 - 1))
+ mask &= -(1UL << (nth_bit + 1));
+ else
+ mask = 0;
+ }
+ return mask ? __builtin_ctzl (mask) : -1;
+}
+
+static gint
+builtin_bit_nth_msf (gulong mask, gint nth_bit)
+{
+ if (nth_bit >= 0 && nth_bit < GLIB_SIZEOF_LONG * 8)
+ mask &= (1UL << nth_bit) - 1;
+ return mask ? GLIB_SIZEOF_LONG * 8 - 1 - __builtin_clzl (mask) : -1;
+}
+
+static guint
+builtin_bit_storage (gulong number)
+{
+ return number ? GLIB_SIZEOF_LONG * 8 - __builtin_clzl (number) : 1;
+}
+#endif
+
+static gint
+naive_bit_nth_lsf (gulong mask, gint nth_bit)
+{
+ if (G_UNLIKELY (nth_bit < -1))
+ nth_bit = -1;
+ while (nth_bit < ((GLIB_SIZEOF_LONG * 8) - 1))
+ {
+ nth_bit++;
+ if (mask & (1UL << nth_bit))
+ return nth_bit;
+ }
+ return -1;
+}
+
+static gint
+naive_bit_nth_msf (gulong mask, gint nth_bit)
+{
+ if (nth_bit < 0 || G_UNLIKELY (nth_bit > GLIB_SIZEOF_LONG * 8))
+ nth_bit = GLIB_SIZEOF_LONG * 8;
+ while (nth_bit > 0)
+ {
+ nth_bit--;
+ if (mask & (1UL << nth_bit))
+ return nth_bit;
+ }
+ return -1;
+}
+
+static guint
+naive_bit_storage (gulong number)
+{
+ guint n_bits = 0;
+
+ do
+ {
+ n_bits++;
+ number >>= 1;
+ }
+ while (number);
+ return n_bits;
+}
+
+static void
+test_basic_bits (void)
+{
+ gulong i;
+ gint nth_bit;
+
+ /* we loop like this: 0, -1, 1, -2, 2, -3, 3, ... */
+ for (i = 0; (glong) i < 1500; i = -(i + ((glong) i >= 0)))
+ {
+ guint naive_bit_storage_i = naive_bit_storage (i);
+
+ /* Test the g_bit_*() implementations against the compiler builtins (if
+ * available), and against a slow-but-correct ‘naive’ implementation.
+ * They should all agree.
+ *
+ * The macro and function versions of the g_bit_*() functions are tested,
+ * hence one call with the function name in brackets (to avoid it being
+ * expanded as a macro). */
+#if TEST_BUILTINS
+ g_assert_cmpint (naive_bit_storage_i, ==, builtin_bit_storage (i));
+#endif
+ g_assert_cmpint (naive_bit_storage_i, ==, g_bit_storage (i));
+ g_assert_cmpint (naive_bit_storage_i, ==, (g_bit_storage) (i));
+
+ for (nth_bit = -3; nth_bit <= 2 + GLIB_SIZEOF_LONG * 8; nth_bit++)
+ {
+ gint naive_bit_nth_lsf_i_nth_bit = naive_bit_nth_lsf (i, nth_bit);
+ gint naive_bit_nth_msf_i_nth_bit = naive_bit_nth_msf (i, nth_bit);
+
+#if TEST_BUILTINS
+ g_assert_cmpint (naive_bit_nth_lsf_i_nth_bit, ==,
+ builtin_bit_nth_lsf1 (i, nth_bit));
+ g_assert_cmpint (naive_bit_nth_lsf_i_nth_bit, ==,
+ builtin_bit_nth_lsf2 (i, nth_bit));
+#endif
+ g_assert_cmpint (naive_bit_nth_lsf_i_nth_bit, ==,
+ g_bit_nth_lsf (i, nth_bit));
+ g_assert_cmpint (naive_bit_nth_lsf_i_nth_bit, ==,
+ (g_bit_nth_lsf) (i, nth_bit));
+
+#if TEST_BUILTINS
+ g_assert_cmpint (naive_bit_nth_msf_i_nth_bit, ==,
+ builtin_bit_nth_msf (i, nth_bit));
+#endif
+ g_assert_cmpint (naive_bit_nth_msf_i_nth_bit, ==,
+ g_bit_nth_msf (i, nth_bit));
+ g_assert_cmpint (naive_bit_nth_msf_i_nth_bit, ==,
+ (g_bit_nth_msf) (i, nth_bit));
+ }
+ }
+}
+
static void
test_bits (void)
{
@@ -405,17 +593,6 @@ test_console_charset (void)
#endif
}
-static void
-test_basename (void)
-{
- const gchar *path = "/path/to/a/file/deep/down.sh";
- const gchar *b;
-
- b = g_basename (path);
-
- g_assert_cmpstr (b, ==, "down.sh");
-}
-
extern const gchar *glib_pgettext (const gchar *msgidctxt, gsize msgidoffset);
static void
@@ -500,6 +677,15 @@ test_xdg_dirs (void)
g_assert_cmpstr (dir, ==, xdg);
g_free (xdg);
+ xdg = g_strdup (g_getenv ("XDG_STATE_HOME"));
+ if (!xdg)
+ xdg = g_build_filename (g_get_home_dir (), ".local/state", NULL);
+
+ dir = g_get_user_state_dir ();
+
+ g_assert_cmpstr (dir, ==, xdg);
+ g_free (xdg);
+
xdg = g_strdup (g_getenv ("XDG_RUNTIME_DIR"));
if (!xdg)
xdg = g_strdup (g_get_user_cache_dir ());
@@ -553,7 +739,7 @@ test_os_info (void)
{
gchar *name;
gchar *contents = NULL;
-#ifdef G_OS_UNIX
+#if defined (G_OS_UNIX) && !(defined (G_OS_WIN32) || defined (__APPLE__))
struct utsname info;
#endif
@@ -719,6 +905,101 @@ test_misc_mem (void)
}
static void
+aligned_alloc_nz (void)
+{
+ gpointer a;
+
+ /* Test an alignment that’s zero */
+ a = g_aligned_alloc (16, sizeof(char), 0);
+ g_aligned_free (a);
+ exit (0);
+}
+
+static void
+aligned_alloc_npot (void)
+{
+ gpointer a;
+
+ /* Test an alignment that’s not a power of two */
+ a = g_aligned_alloc (16, sizeof(char), 15);
+ g_aligned_free (a);
+ exit (0);
+}
+
+static void
+aligned_alloc_nmov (void)
+{
+ gpointer a;
+
+ /* Test an alignment that’s not a multiple of sizeof(void*) */
+ a = g_aligned_alloc (16, sizeof(char), sizeof(void *) / 2);
+ g_aligned_free (a);
+ exit (0);
+}
+
+static void
+test_aligned_mem (void)
+{
+ gpointer a;
+
+ g_test_summary ("Aligned memory allocator");
+
+ a = g_aligned_alloc (0, sizeof(int), 8);
+ g_assert_null (a);
+
+ a = g_aligned_alloc0 (0, sizeof(int), 8);
+ g_assert_null (a);
+
+ a = g_aligned_alloc (16, 0, 8);
+ g_assert_null (a);
+
+#define CHECK_SUBPROCESS_FAIL(name,msg) do { \
+ if (g_test_undefined ()) \
+ { \
+ g_test_message (msg); \
+ g_test_trap_subprocess ("/utils/aligned-mem/subprocess/" #name, 0, 0); \
+ g_test_trap_assert_failed (); \
+ } \
+ } while (0)
+
+ CHECK_SUBPROCESS_FAIL (aligned_alloc_nz, "Alignment must not be zero");
+ CHECK_SUBPROCESS_FAIL (aligned_alloc_npot, "Alignment must be a power of two");
+ CHECK_SUBPROCESS_FAIL (aligned_alloc_nmov, "Alignment must be a multiple of sizeof(void*)");
+}
+
+static void
+test_aligned_mem_alignment (void)
+{
+ gchar *p;
+
+ g_test_summary ("Check that g_aligned_alloc() returns a correctly aligned pointer");
+
+ p = g_aligned_alloc (5, sizeof (*p), 256);
+ g_assert_nonnull (p);
+ g_assert_cmpuint (((guintptr) p) % 256, ==, 0);
+
+ g_aligned_free (p);
+}
+
+static void
+test_aligned_mem_zeroed (void)
+{
+ gsize n_blocks = 10;
+ guint *p;
+ gsize i;
+
+ g_test_summary ("Check that g_aligned_alloc0() zeroes out its allocation");
+
+ p = g_aligned_alloc0 (n_blocks, sizeof (*p), 16);
+ g_assert_nonnull (p);
+
+ for (i = 0; i < n_blocks; i++)
+ g_assert_cmpuint (p[i], ==, 0);
+
+ g_aligned_free (p);
+}
+
+static void
test_nullify (void)
{
gpointer p = &test_nullify;
@@ -860,7 +1141,9 @@ main (int argc,
g_test_add_func ("/utils/locale-variants", test_locale_variants);
g_test_add_func ("/utils/version", test_version);
g_test_add_func ("/utils/appname", test_appname);
+ g_test_add_func ("/utils/prgname-thread-safety", test_prgname_thread_safety);
g_test_add_func ("/utils/tmpdir", test_tmpdir);
+ g_test_add_func ("/utils/basic_bits", test_basic_bits);
g_test_add_func ("/utils/bits", test_bits);
g_test_add_func ("/utils/swap", test_swap);
g_test_add_func ("/utils/find-program", test_find_program);
@@ -868,7 +1151,6 @@ main (int argc,
g_test_add_func ("/utils/codeset", test_codeset);
g_test_add_func ("/utils/codeset2", test_codeset2);
g_test_add_func ("/utils/console-charset", test_console_charset);
- g_test_add_func ("/utils/basename", test_basename);
g_test_add_func ("/utils/gettext", test_gettext);
g_test_add_func ("/utils/username", test_username);
g_test_add_func ("/utils/realname", test_realname);
@@ -885,6 +1167,12 @@ main (int argc,
g_test_add_func ("/utils/take-pointer", test_take_pointer);
g_test_add_func ("/utils/clear-source", test_clear_source);
g_test_add_func ("/utils/misc-mem", test_misc_mem);
+ g_test_add_func ("/utils/aligned-mem", test_aligned_mem);
+ g_test_add_func ("/utils/aligned-mem/subprocess/aligned_alloc_nz", aligned_alloc_nz);
+ g_test_add_func ("/utils/aligned-mem/subprocess/aligned_alloc_npot", aligned_alloc_npot);
+ g_test_add_func ("/utils/aligned-mem/subprocess/aligned_alloc_nmov", aligned_alloc_nmov);
+ g_test_add_func ("/utils/aligned-mem/alignment", test_aligned_mem_alignment);
+ g_test_add_func ("/utils/aligned-mem/zeroed", test_aligned_mem_zeroed);
g_test_add_func ("/utils/nullify", test_nullify);
g_test_add_func ("/utils/atexit", test_atexit);
g_test_add_func ("/utils/check-setuid", test_check_setuid);
diff --git a/glib/win_iconv.c b/glib/win_iconv.c
index 605e5f08d..7c78e78fc 100644
--- a/glib/win_iconv.c
+++ b/glib/win_iconv.c
@@ -1680,7 +1680,7 @@ utf32_wctomb(csconv_t *cv, ushort *wbuf, int wbufsize, uchar *buf, int bufsize)
* Use MLang instead.
*/
-#define ISO2022_MODE(cs, shift) (((cs) << 8) | (shift))
+#define ISO2022_MODE(cs, shift) ((((DWORD) cs) << 8) | (shift))
#define ISO2022_MODE_CS(mode) (((mode) >> 8) & 0xFF)
#define ISO2022_MODE_SHIFT(mode) ((mode) & 0xFF)
@@ -2034,7 +2034,8 @@ main(int argc, char **argv)
if (fromcode == NULL || tocode == NULL)
{
- printf("usage: %s [-c] -f from-enc -t to-enc [file]\n", argv[0]);
+ printf("usage: %s [-c] -f from-enc -t to-enc [file]\n",
+ (argc > 0) ? argv[0] : "win_iconv");
return 0;
}
diff --git a/gmodule/gmodule.c b/gmodule/gmodule.c
index 4a4e279a1..c722c4427 100644
--- a/gmodule/gmodule.c
+++ b/gmodule/gmodule.c
@@ -477,7 +477,7 @@ static GRecMutex g_module_global_lock;
* If that fails and @file_name has the ".la"-suffix (and is a libtool
* archive) it tries to open the corresponding module. If that fails
* and it doesn't have the proper module suffix for the platform
- * (#G_MODULE_SUFFIX), this suffix will be appended and the corresponding
+ * (%G_MODULE_SUFFIX), this suffix will be appended and the corresponding
* module will be opened. If that fails and @file_name doesn't have the
* ".la"-suffix, this suffix is appended and g_module_open_full() tries to open
* the corresponding module. If eventually that fails as well, %NULL is
@@ -782,7 +782,7 @@ g_module_error (void)
* @symbol: (out): returns the pointer to the symbol value
*
* Gets a symbol pointer from a module, such as one exported
- * by #G_MODULE_EXPORT. Note that a valid symbol can be %NULL.
+ * by %G_MODULE_EXPORT. Note that a valid symbol can be %NULL.
*
* Returns: %TRUE on success
*/
diff --git a/gmodule/meson.build b/gmodule/meson.build
index b1a5a11a9..e4c1023ec 100644
--- a/gmodule/meson.build
+++ b/gmodule/meson.build
@@ -30,7 +30,7 @@ if g_module_impl == 'G_MODULE_IMPL_DL'
rres = cc.run(dlopen_dlsym_test_code,
dependencies : libdl_dep,
name : 'dlsym() preceding underscores')
- if host_system == 'windows' or rres.returncode() == 0
+ if host_system == 'windows' or (rres.compiled() and rres.returncode() == 0)
g_module_need_uscore = 1
endif
else
@@ -59,9 +59,14 @@ gmoduleconf_h = configure_file(input : 'gmoduleconf.h.in',
output : 'gmoduleconf.h',
configuration : gmoduleconf_conf)
-install_headers(['gmodule.h'], subdir : 'glib-2.0')
+# Expose as variable to be used by gobject-introspection
+# when it includes GLib as a subproject
+gmodule_h = files('gmodule.h')
+gmodule_c = files('gmodule.c')
-gmodule_sources = ['gmodule.c']
+install_headers([gmodule_h], subdir : 'glib-2.0')
+
+gmodule_sources = [gmodule_c]
if host_system == 'windows'
gmodule_win_rc = configure_file(
input: 'gmodule.rc.in',
@@ -126,3 +131,7 @@ if meson.version().version_compare('>=0.54.0')
meson.override_dependency('gmodule-export-2.0', libgmodule_dep)
meson.override_dependency('gmodule-2.0', libgmodule_dep)
endif
+
+if build_tests
+ subdir('tests')
+endif
diff --git a/gmodule/tests/cxx.cpp b/gmodule/tests/cxx.cpp
new file mode 100644
index 000000000..85242c59a
--- /dev/null
+++ b/gmodule/tests/cxx.cpp
@@ -0,0 +1,26 @@
+/* Copyright (C) 2001 Sebastian Wilhelmi <wilhelmi@google.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this library; if not, see <http://www.gnu.org/licenses/>.
+ */
+
+/* A trivial C++ program to be compiled in C++ mode, which
+ * smoketests that the GModule headers are valid C++ headers. */
+
+#include <gmodule.h>
+
+int
+main ()
+{
+ return 0;
+}
diff --git a/gmodule/tests/meson.build b/gmodule/tests/meson.build
new file mode 100644
index 000000000..9b475a88e
--- /dev/null
+++ b/gmodule/tests/meson.build
@@ -0,0 +1,45 @@
+gmodule_tests = {
+ 'cxx' : {
+ 'source' : ['cxx.cpp'],
+ },
+}
+
+test_env = environment()
+test_env.set('G_TEST_SRCDIR', meson.current_source_dir())
+test_env.set('G_TEST_BUILDDIR', meson.current_build_dir())
+test_env.set('G_DEBUG', 'gc-friendly')
+test_env.set('MALLOC_CHECK_', '2')
+test_env.set('MALLOC_PERTURB_', '@0@'.format(random_number % 256))
+
+test_deps = [libm, thread_dep, libglib_dep, libgmodule_dep]
+test_cargs = ['-DG_LOG_DOMAIN="GModule"', '-UG_DISABLE_ASSERT']
+
+foreach test_name, extra_args : gmodule_tests
+ source = extra_args.get('source', test_name + '.c')
+ install = installed_tests_enabled and extra_args.get('install', true)
+
+ if install
+ test_conf = configuration_data()
+ test_conf.set('installed_tests_dir', installed_tests_execdir)
+ test_conf.set('program', test_name)
+ test_conf.set('env', '')
+ configure_file(
+ input: installed_tests_template_tap,
+ output: test_name + '.test',
+ install_dir: installed_tests_metadir,
+ configuration: test_conf
+ )
+ endif
+
+ exe = executable(test_name, source,
+ c_args : test_cargs + extra_args.get('c_args', []),
+ link_args : extra_args.get('link_args', []),
+ dependencies : test_deps + extra_args.get('dependencies', []),
+ install_dir: installed_tests_execdir,
+ install: install,
+ )
+
+ suite = ['gmodule'] + extra_args.get('suite', [])
+ timeout = suite.contains('slow') ? test_timeout_slow : test_timeout
+ test(test_name, exe, env : test_env, timeout : timeout, suite : suite)
+endforeach
diff --git a/gobject/gbindinggroup.c b/gobject/gbindinggroup.c
new file mode 100644
index 000000000..e5c8980bf
--- /dev/null
+++ b/gobject/gbindinggroup.c
@@ -0,0 +1,679 @@
+/* GObject - GLib Type, Object, Parameter and Signal Library
+ *
+ * Copyright (C) 2015-2022 Christian Hergert <christian@hergert.me>
+ * Copyright (C) 2015 Garrett Regier <garrettregier@gmail.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ *
+ * SPDX-License-Identifier: LGPL-2.1-or-later
+ */
+
+#include "config.h"
+#include "glib.h"
+#include "glibintl.h"
+
+#include "gbindinggroup.h"
+#include "gparamspecs.h"
+
+/**
+ * SECTION:gbindinggroup
+ * @Title: GBindingGroup
+ * @Short_description: Binding multiple properties as a group
+ * @include: glib-object.h
+ *
+ * The #GBindingGroup can be used to bind multiple properties
+ * from an object collectively.
+ *
+ * Use the various methods to bind properties from a single source
+ * object to multiple destination objects. Properties can be bound
+ * bidirectionally and are connected when the source object is set
+ * with g_binding_group_set_source().
+ *
+ * Since: 2.72
+ */
+
+#if 0
+# define DEBUG_BINDINGS
+#endif
+
+struct _GBindingGroup
+{
+ GObject parent_instance;
+ GMutex mutex;
+ GObject *source; /* (owned weak) */
+ GPtrArray *lazy_bindings; /* (owned) (element-type LazyBinding) */
+};
+
+typedef struct _GBindingGroupClass
+{
+ GObjectClass parent_class;
+} GBindingGroupClass;
+
+typedef struct
+{
+ GBindingGroup *group; /* (unowned) */
+ const char *source_property; /* (interned) */
+ const char *target_property; /* (interned) */
+ GObject *target; /* (owned weak) */
+ GBinding *binding; /* (unowned) */
+ gpointer user_data;
+ GDestroyNotify user_data_destroy;
+ gpointer transform_to; /* (nullable) (owned) */
+ gpointer transform_from; /* (nullable) (owned) */
+ GBindingFlags binding_flags;
+ guint using_closures : 1;
+} LazyBinding;
+
+G_DEFINE_TYPE (GBindingGroup, g_binding_group, G_TYPE_OBJECT)
+
+typedef enum
+{
+ PROP_SOURCE = 1,
+ N_PROPS
+} GBindingGroupProperty;
+
+static void lazy_binding_free (gpointer data);
+
+static GParamSpec *properties[N_PROPS];
+
+static void
+g_binding_group_connect (GBindingGroup *self,
+ LazyBinding *lazy_binding)
+{
+ GBinding *binding;
+
+ g_assert (G_IS_BINDING_GROUP (self));
+ g_assert (self->source != NULL);
+ g_assert (lazy_binding != NULL);
+ g_assert (lazy_binding->binding == NULL);
+ g_assert (lazy_binding->target != NULL);
+ g_assert (lazy_binding->target_property != NULL);
+ g_assert (lazy_binding->source_property != NULL);
+
+#ifdef DEBUG_BINDINGS
+ {
+ GFlagsClass *flags_class;
+ g_autofree gchar *flags_str = NULL;
+
+ flags_class = g_type_class_ref (G_TYPE_BINDING_FLAGS);
+ flags_str = g_flags_to_string (flags_class, lazy_binding->binding_flags);
+
+ g_print ("Binding %s(%p):%s to %s(%p):%s (flags=%s)\n",
+ G_OBJECT_TYPE_NAME (self->source),
+ self->source,
+ lazy_binding->source_property,
+ G_OBJECT_TYPE_NAME (lazy_binding->target),
+ lazy_binding->target,
+ lazy_binding->target_property,
+ flags_str);
+
+ g_type_class_unref (flags_class);
+ }
+#endif
+
+ if (!lazy_binding->using_closures)
+ binding = g_object_bind_property_full (self->source,
+ lazy_binding->source_property,
+ lazy_binding->target,
+ lazy_binding->target_property,
+ lazy_binding->binding_flags,
+ lazy_binding->transform_to,
+ lazy_binding->transform_from,
+ lazy_binding->user_data,
+ NULL);
+ else
+ binding = g_object_bind_property_with_closures (self->source,
+ lazy_binding->source_property,
+ lazy_binding->target,
+ lazy_binding->target_property,
+ lazy_binding->binding_flags,
+ lazy_binding->transform_to,
+ lazy_binding->transform_from);
+
+ lazy_binding->binding = binding;
+}
+
+static void
+g_binding_group_disconnect (LazyBinding *lazy_binding)
+{
+ g_assert (lazy_binding != NULL);
+
+ if (lazy_binding->binding != NULL)
+ {
+ g_binding_unbind (lazy_binding->binding);
+ lazy_binding->binding = NULL;
+ }
+}
+
+static void
+g_binding_group__source_weak_notify (gpointer data,
+ GObject *where_object_was)
+{
+ GBindingGroup *self = data;
+ guint i;
+
+ g_assert (G_IS_BINDING_GROUP (self));
+
+ g_mutex_lock (&self->mutex);
+
+ self->source = NULL;
+
+ for (i = 0; i < self->lazy_bindings->len; i++)
+ {
+ LazyBinding *lazy_binding = g_ptr_array_index (self->lazy_bindings, i);
+
+ lazy_binding->binding = NULL;
+ }
+
+ g_mutex_unlock (&self->mutex);
+}
+
+static void
+g_binding_group__target_weak_notify (gpointer data,
+ GObject *where_object_was)
+{
+ GBindingGroup *self = data;
+ LazyBinding *to_free = NULL;
+ guint i;
+
+ g_assert (G_IS_BINDING_GROUP (self));
+
+ g_mutex_lock (&self->mutex);
+
+ for (i = 0; i < self->lazy_bindings->len; i++)
+ {
+ LazyBinding *lazy_binding = g_ptr_array_index (self->lazy_bindings, i);
+
+ if (lazy_binding->target == where_object_was)
+ {
+ lazy_binding->target = NULL;
+ lazy_binding->binding = NULL;
+
+ to_free = g_ptr_array_steal_index_fast (self->lazy_bindings, i);
+ break;
+ }
+ }
+
+ g_mutex_unlock (&self->mutex);
+
+ if (to_free != NULL)
+ lazy_binding_free (to_free);
+}
+
+static void
+lazy_binding_free (gpointer data)
+{
+ LazyBinding *lazy_binding = data;
+
+ if (lazy_binding->target != NULL)
+ {
+ g_object_weak_unref (lazy_binding->target,
+ g_binding_group__target_weak_notify,
+ lazy_binding->group);
+ lazy_binding->target = NULL;
+ }
+
+ g_binding_group_disconnect (lazy_binding);
+
+ lazy_binding->group = NULL;
+ lazy_binding->source_property = NULL;
+ lazy_binding->target_property = NULL;
+
+ if (lazy_binding->user_data_destroy)
+ lazy_binding->user_data_destroy (lazy_binding->user_data);
+
+ if (lazy_binding->using_closures)
+ {
+ g_clear_pointer (&lazy_binding->transform_to, g_closure_unref);
+ g_clear_pointer (&lazy_binding->transform_from, g_closure_unref);
+ }
+
+ g_slice_free (LazyBinding, lazy_binding);
+}
+
+static void
+g_binding_group_dispose (GObject *object)
+{
+ GBindingGroup *self = (GBindingGroup *)object;
+ LazyBinding **lazy_bindings = NULL;
+ gsize len = 0;
+ gsize i;
+
+ g_assert (G_IS_BINDING_GROUP (self));
+
+ g_mutex_lock (&self->mutex);
+
+ if (self->source != NULL)
+ {
+ g_object_weak_unref (self->source,
+ g_binding_group__source_weak_notify,
+ self);
+ self->source = NULL;
+ }
+
+ if (self->lazy_bindings->len > 0)
+ lazy_bindings = (LazyBinding **)g_ptr_array_steal (self->lazy_bindings, &len);
+
+ g_mutex_unlock (&self->mutex);
+
+ /* Free bindings without holding self->mutex to avoid re-entrancy
+ * from collateral damage through release of binding closure data,
+ * GDataList, etc.
+ */
+ for (i = 0; i < len; i++)
+ lazy_binding_free (lazy_bindings[i]);
+ g_free (lazy_bindings);
+
+ G_OBJECT_CLASS (g_binding_group_parent_class)->dispose (object);
+}
+
+static void
+g_binding_group_finalize (GObject *object)
+{
+ GBindingGroup *self = (GBindingGroup *)object;
+
+ g_assert (self->lazy_bindings != NULL);
+ g_assert (self->lazy_bindings->len == 0);
+
+ g_clear_pointer (&self->lazy_bindings, g_ptr_array_unref);
+ g_mutex_clear (&self->mutex);
+
+ G_OBJECT_CLASS (g_binding_group_parent_class)->finalize (object);
+}
+
+static void
+g_binding_group_get_property (GObject *object,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
+{
+ GBindingGroup *self = G_BINDING_GROUP (object);
+
+ switch ((GBindingGroupProperty) prop_id)
+ {
+ case PROP_SOURCE:
+ g_value_take_object (value, g_binding_group_dup_source (self));
+ break;
+
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+ }
+}
+
+static void
+g_binding_group_set_property (GObject *object,
+ guint prop_id,
+ const GValue *value,
+ GParamSpec *pspec)
+{
+ GBindingGroup *self = G_BINDING_GROUP (object);
+
+ switch ((GBindingGroupProperty) prop_id)
+ {
+ case PROP_SOURCE:
+ g_binding_group_set_source (self, g_value_get_object (value));
+ break;
+
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+ }
+}
+
+static void
+g_binding_group_class_init (GBindingGroupClass *klass)
+{
+ GObjectClass *object_class = G_OBJECT_CLASS (klass);
+
+ object_class->dispose = g_binding_group_dispose;
+ object_class->finalize = g_binding_group_finalize;
+ object_class->get_property = g_binding_group_get_property;
+ object_class->set_property = g_binding_group_set_property;
+
+ /**
+ * GBindingGroup:source: (nullable)
+ *
+ * The source object used for binding properties.
+ *
+ * Since: 2.72
+ */
+ properties[PROP_SOURCE] =
+ g_param_spec_object ("source",
+ "Source",
+ "The source GObject used for binding properties.",
+ G_TYPE_OBJECT,
+ (G_PARAM_READWRITE | G_PARAM_EXPLICIT_NOTIFY | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_properties (object_class, N_PROPS, properties);
+}
+
+static void
+g_binding_group_init (GBindingGroup *self)
+{
+ g_mutex_init (&self->mutex);
+ self->lazy_bindings = g_ptr_array_new_with_free_func (lazy_binding_free);
+}
+
+/**
+ * g_binding_group_new:
+ *
+ * Creates a new #GBindingGroup.
+ *
+ * Returns: (transfer full): a new #GBindingGroup
+ *
+ * Since: 2.72
+ */
+GBindingGroup *
+g_binding_group_new (void)
+{
+ return g_object_new (G_TYPE_BINDING_GROUP, NULL);
+}
+
+/**
+ * g_binding_group_dup_source:
+ * @self: the #GBindingGroup
+ *
+ * Gets the source object used for binding properties.
+ *
+ * Returns: (transfer none) (nullable) (type GObject): a #GObject or %NULL.
+ *
+ * Since: 2.72
+ */
+gpointer
+g_binding_group_dup_source (GBindingGroup *self)
+{
+ GObject *source;
+
+ g_return_val_if_fail (G_IS_BINDING_GROUP (self), NULL);
+
+ g_mutex_lock (&self->mutex);
+ source = self->source ? g_object_ref (self->source) : NULL;
+ g_mutex_unlock (&self->mutex);
+
+ return source;
+}
+
+static gboolean
+g_binding_group_check_source (GBindingGroup *self,
+ gpointer source)
+{
+ guint i;
+
+ g_assert (G_IS_BINDING_GROUP (self));
+ g_assert (!source || G_IS_OBJECT (source));
+
+ for (i = 0; i < self->lazy_bindings->len; i++)
+ {
+ LazyBinding *lazy_binding = g_ptr_array_index (self->lazy_bindings, i);
+
+ g_return_val_if_fail (g_object_class_find_property (G_OBJECT_GET_CLASS (source),
+ lazy_binding->source_property) != NULL,
+ FALSE);
+ }
+
+ return TRUE;
+}
+
+/**
+ * g_binding_group_set_source:
+ * @self: the #GBindingGroup
+ * @source: (type GObject) (nullable) (transfer none): the source #GObject,
+ * or %NULL to clear it
+ *
+ * Sets @source as the source object used for creating property
+ * bindings. If there is already a source object all bindings from it
+ * will be removed.
+ *
+ * Note that all properties that have been bound must exist on @source.
+ *
+ * Since: 2.72
+ */
+void
+g_binding_group_set_source (GBindingGroup *self,
+ gpointer source)
+{
+ gboolean notify = FALSE;
+
+ g_return_if_fail (G_IS_BINDING_GROUP (self));
+ g_return_if_fail (!source || G_IS_OBJECT (source));
+ g_return_if_fail (source != (gpointer) self);
+
+ g_mutex_lock (&self->mutex);
+
+ if (source == (gpointer) self->source)
+ goto unlock;
+
+ if (self->source != NULL)
+ {
+ guint i;
+
+ g_object_weak_unref (self->source,
+ g_binding_group__source_weak_notify,
+ self);
+ self->source = NULL;
+
+ for (i = 0; i < self->lazy_bindings->len; i++)
+ {
+ LazyBinding *lazy_binding = g_ptr_array_index (self->lazy_bindings, i);
+
+ g_binding_group_disconnect (lazy_binding);
+ }
+ }
+
+ if (source != NULL && g_binding_group_check_source (self, source))
+ {
+ guint i;
+
+ self->source = source;
+ g_object_weak_ref (self->source,
+ g_binding_group__source_weak_notify,
+ self);
+
+ for (i = 0; i < self->lazy_bindings->len; i++)
+ {
+ LazyBinding *lazy_binding;
+
+ lazy_binding = g_ptr_array_index (self->lazy_bindings, i);
+ g_binding_group_connect (self, lazy_binding);
+ }
+ }
+
+ notify = TRUE;
+
+unlock:
+ g_mutex_unlock (&self->mutex);
+
+ if (notify)
+ g_object_notify_by_pspec (G_OBJECT (self), properties[PROP_SOURCE]);
+}
+
+static void
+g_binding_group_bind_helper (GBindingGroup *self,
+ const gchar *source_property,
+ gpointer target,
+ const gchar *target_property,
+ GBindingFlags flags,
+ gpointer transform_to,
+ gpointer transform_from,
+ gpointer user_data,
+ GDestroyNotify user_data_destroy,
+ gboolean using_closures)
+{
+ LazyBinding *lazy_binding;
+
+ g_return_if_fail (G_IS_BINDING_GROUP (self));
+ g_return_if_fail (source_property != NULL);
+ g_return_if_fail (self->source == NULL ||
+ g_object_class_find_property (G_OBJECT_GET_CLASS (self->source),
+ source_property) != NULL);
+ g_return_if_fail (G_IS_OBJECT (target));
+ g_return_if_fail (target_property != NULL);
+ g_return_if_fail (g_object_class_find_property (G_OBJECT_GET_CLASS (target),
+ target_property) != NULL);
+ g_return_if_fail (target != (gpointer) self ||
+ strcmp (source_property, target_property) != 0);
+
+ g_mutex_lock (&self->mutex);
+
+ lazy_binding = g_slice_new0 (LazyBinding);
+ lazy_binding->group = self;
+ lazy_binding->source_property = g_intern_string (source_property);
+ lazy_binding->target_property = g_intern_string (target_property);
+ lazy_binding->target = target;
+ lazy_binding->binding_flags = flags | G_BINDING_SYNC_CREATE;
+ lazy_binding->user_data = user_data;
+ lazy_binding->user_data_destroy = user_data_destroy;
+ lazy_binding->transform_to = transform_to;
+ lazy_binding->transform_from = transform_from;
+
+ if (using_closures)
+ {
+ lazy_binding->using_closures = TRUE;
+
+ if (transform_to != NULL)
+ g_closure_sink (g_closure_ref (transform_to));
+
+ if (transform_from != NULL)
+ g_closure_sink (g_closure_ref (transform_from));
+ }
+
+ g_object_weak_ref (target,
+ g_binding_group__target_weak_notify,
+ self);
+
+ g_ptr_array_add (self->lazy_bindings, lazy_binding);
+
+ if (self->source != NULL)
+ g_binding_group_connect (self, lazy_binding);
+
+ g_mutex_unlock (&self->mutex);
+}
+
+/**
+ * g_binding_group_bind:
+ * @self: the #GBindingGroup
+ * @source_property: the property on the source to bind
+ * @target: (type GObject) (transfer none) (not nullable): the target #GObject
+ * @target_property: the property on @target to bind
+ * @flags: the flags used to create the #GBinding
+ *
+ * Creates a binding between @source_property on the source object
+ * and @target_property on @target. Whenever the @source_property
+ * is changed the @target_property is updated using the same value.
+ * The binding flag %G_BINDING_SYNC_CREATE is automatically specified.
+ *
+ * See g_object_bind_property() for more information.
+ *
+ * Since: 2.72
+ */
+void
+g_binding_group_bind (GBindingGroup *self,
+ const gchar *source_property,
+ gpointer target,
+ const gchar *target_property,
+ GBindingFlags flags)
+{
+ g_binding_group_bind_full (self, source_property,
+ target, target_property,
+ flags,
+ NULL, NULL,
+ NULL, NULL);
+}
+
+/**
+ * g_binding_group_bind_full:
+ * @self: the #GBindingGroup
+ * @source_property: the property on the source to bind
+ * @target: (type GObject) (transfer none) (not nullable): the target #GObject
+ * @target_property: the property on @target to bind
+ * @flags: the flags used to create the #GBinding
+ * @transform_to: (scope notified) (nullable): the transformation function
+ * from the source object to the @target, or %NULL to use the default
+ * @transform_from: (scope notified) (nullable): the transformation function
+ * from the @target to the source object, or %NULL to use the default
+ * @user_data: custom data to be passed to the transformation
+ * functions, or %NULL
+ * @user_data_destroy: function to be called when disposing the binding,
+ * to free the resources used by the transformation functions
+ *
+ * Creates a binding between @source_property on the source object and
+ * @target_property on @target, allowing you to set the transformation
+ * functions to be used by the binding. The binding flag
+ * %G_BINDING_SYNC_CREATE is automatically specified.
+ *
+ * See g_object_bind_property_full() for more information.
+ *
+ * Since: 2.72
+ */
+void
+g_binding_group_bind_full (GBindingGroup *self,
+ const gchar *source_property,
+ gpointer target,
+ const gchar *target_property,
+ GBindingFlags flags,
+ GBindingTransformFunc transform_to,
+ GBindingTransformFunc transform_from,
+ gpointer user_data,
+ GDestroyNotify user_data_destroy)
+{
+ g_binding_group_bind_helper (self, source_property,
+ target, target_property,
+ flags,
+ transform_to, transform_from,
+ user_data, user_data_destroy,
+ FALSE);
+}
+
+/**
+ * g_binding_group_bind_with_closures: (rename-to g_binding_group_bind_full)
+ * @self: the #GBindingGroup
+ * @source_property: the property on the source to bind
+ * @target: (type GObject) (transfer none) (not nullable): the target #GObject
+ * @target_property: the property on @target to bind
+ * @flags: the flags used to create the #GBinding
+ * @transform_to: (nullable) (transfer none): a #GClosure wrapping the
+ * transformation function from the source object to the @target,
+ * or %NULL to use the default
+ * @transform_from: (nullable) (transfer none): a #GClosure wrapping the
+ * transformation function from the @target to the source object,
+ * or %NULL to use the default
+ *
+ * Creates a binding between @source_property on the source object and
+ * @target_property on @target, allowing you to set the transformation
+ * functions to be used by the binding. The binding flag
+ * %G_BINDING_SYNC_CREATE is automatically specified.
+ *
+ * This function is the language bindings friendly version of
+ * g_binding_group_bind_property_full(), using #GClosures
+ * instead of function pointers.
+ *
+ * See g_object_bind_property_with_closures() for more information.
+ *
+ * Since: 2.72
+ */
+void
+g_binding_group_bind_with_closures (GBindingGroup *self,
+ const gchar *source_property,
+ gpointer target,
+ const gchar *target_property,
+ GBindingFlags flags,
+ GClosure *transform_to,
+ GClosure *transform_from)
+{
+ g_binding_group_bind_helper (self, source_property,
+ target, target_property,
+ flags,
+ transform_to, transform_from,
+ NULL, NULL,
+ TRUE);
+}
diff --git a/gobject/gbindinggroup.h b/gobject/gbindinggroup.h
new file mode 100644
index 000000000..472ebc5b3
--- /dev/null
+++ b/gobject/gbindinggroup.h
@@ -0,0 +1,85 @@
+/* GObject - GLib Type, Object, Parameter and Signal Library
+ *
+ * Copyright (C) 2015-2022 Christian Hergert <christian@hergert.me>
+ * Copyright (C) 2015 Garrett Regier <garrettregier@gmail.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ *
+ * SPDX-License-Identifier: LGPL-2.1-or-later
+ */
+
+#ifndef __G_BINDING_GROUP_H__
+#define __G_BINDING_GROUP_H__
+
+#if !defined (__GLIB_GOBJECT_H_INSIDE__) && !defined (GOBJECT_COMPILATION)
+#error "Only <glib-object.h> can be included directly."
+#endif
+
+#include <glib.h>
+#include <gobject/gobject.h>
+#include <gobject/gbinding.h>
+
+G_BEGIN_DECLS
+
+#define G_BINDING_GROUP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), G_TYPE_BINDING_GROUP, GBindingGroup))
+#define G_IS_BINDING_GROUP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), G_TYPE_BINDING_GROUP))
+#define G_TYPE_BINDING_GROUP (g_binding_group_get_type())
+
+/**
+ * GBindingGroup:
+ *
+ * GBindingGroup is an opaque structure whose members
+ * cannot be accessed directly.
+ *
+ * Since: 2.72
+ */
+typedef struct _GBindingGroup GBindingGroup;
+
+GLIB_AVAILABLE_IN_2_72
+GType g_binding_group_get_type (void) G_GNUC_CONST;
+GLIB_AVAILABLE_IN_2_72
+GBindingGroup *g_binding_group_new (void);
+GLIB_AVAILABLE_IN_2_72
+gpointer g_binding_group_dup_source (GBindingGroup *self);
+GLIB_AVAILABLE_IN_2_72
+void g_binding_group_set_source (GBindingGroup *self,
+ gpointer source);
+GLIB_AVAILABLE_IN_2_72
+void g_binding_group_bind (GBindingGroup *self,
+ const gchar *source_property,
+ gpointer target,
+ const gchar *target_property,
+ GBindingFlags flags);
+GLIB_AVAILABLE_IN_2_72
+void g_binding_group_bind_full (GBindingGroup *self,
+ const gchar *source_property,
+ gpointer target,
+ const gchar *target_property,
+ GBindingFlags flags,
+ GBindingTransformFunc transform_to,
+ GBindingTransformFunc transform_from,
+ gpointer user_data,
+ GDestroyNotify user_data_destroy);
+GLIB_AVAILABLE_IN_2_72
+void g_binding_group_bind_with_closures (GBindingGroup *self,
+ const gchar *source_property,
+ gpointer target,
+ const gchar *target_property,
+ GBindingFlags flags,
+ GClosure *transform_to,
+ GClosure *transform_from);
+
+G_END_DECLS
+
+#endif /* __G_BINDING_GROUP_H__ */
diff --git a/gobject/gboxed.c b/gobject/gboxed.c
index c1624a598..4a2699257 100644
--- a/gobject/gboxed.c
+++ b/gobject/gboxed.c
@@ -286,7 +286,7 @@ boxed_proxy_lcopy_value (const GValue *value,
* Boxed type handling functions have to be provided to copy and free
* opaque boxed structures of this type.
*
- * For the general case, it is recommended to use #G_DEFINE_BOXED_TYPE
+ * For the general case, it is recommended to use G_DEFINE_BOXED_TYPE()
* instead of calling g_boxed_type_register_static() directly. The macro
* will create the appropriate `*_get_type()` function for the boxed type.
*
diff --git a/gobject/glib-types.h b/gobject/glib-types.h
index 808284622..f0d33234a 100644
--- a/gobject/glib-types.h
+++ b/gobject/glib-types.h
@@ -44,7 +44,7 @@ typedef gsize GType;
* The #GType for a boxed type holding a %NULL-terminated array of strings.
*
* The code fragments in the following example show the use of a property of
- * type #G_TYPE_STRV with g_object_class_install_property(), g_object_set()
+ * type %G_TYPE_STRV with g_object_class_install_property(), g_object_set()
* and g_object_get().
*
* |[
diff --git a/gobject/gobject-query.c b/gobject/gobject-query.c
index fd45fba82..5c3c7dc42 100644
--- a/gobject/gobject-query.c
+++ b/gobject/gobject-query.c
@@ -196,7 +196,7 @@ main (gint argc,
}
if (!gen_froots && !gen_tree)
- return help (argv[i-1]);
+ return help ((argc > 0) ? argv[i-1] : NULL);
if (!indent_inc)
{
diff --git a/gobject/gobject.c b/gobject/gobject.c
index 879ed848b..d33d8e5b0 100644
--- a/gobject/gobject.c
+++ b/gobject/gobject.c
@@ -24,6 +24,8 @@
#include <string.h>
#include <signal.h>
+#include "../glib/glib-private.h"
+
#include "gobject.h"
#include "gtype-private.h"
#include "gvaluecollector.h"
@@ -233,6 +235,7 @@ static guint object_floating_flag_handler (GObject *object,
static void object_interface_check_properties (gpointer check_data,
gpointer g_iface);
+static void weak_locations_free_unlocked (GSList **weak_locations);
/* --- typedefs --- */
typedef struct _GObjectNotifyQueue GObjectNotifyQueue;
@@ -300,6 +303,7 @@ g_object_notify_queue_freeze (GObject *object,
G_OBJECT_TYPE_NAME (object), object);
else
nqueue->freeze_count++;
+
G_UNLOCK(notify_lock);
return nqueue;
@@ -1178,8 +1182,29 @@ g_object_real_dispose (GObject *object)
g_signal_handlers_destroy (object);
g_datalist_id_set_data (&object->qdata, quark_closure_array, NULL);
g_datalist_id_set_data (&object->qdata, quark_weak_refs, NULL);
+ g_datalist_id_set_data (&object->qdata, quark_weak_locations, NULL);
}
+#ifdef G_ENABLE_DEBUG
+static gboolean
+floating_check (GObject *object)
+{
+ static const char *g_enable_diagnostic = NULL;
+
+ if (G_UNLIKELY (g_enable_diagnostic == NULL))
+ {
+ g_enable_diagnostic = g_getenv ("G_ENABLE_DIAGNOSTIC");
+ if (g_enable_diagnostic == NULL)
+ g_enable_diagnostic = "0";
+ }
+
+ if (g_enable_diagnostic[0] == '1')
+ return g_object_is_floating (object);
+
+ return FALSE;
+}
+#endif
+
static void
g_object_finalize (GObject *object)
{
@@ -1189,6 +1214,17 @@ g_object_finalize (GObject *object)
G_OBJECT_TYPE_NAME (object), object);
}
+#ifdef G_ENABLE_DEBUG
+ if (floating_check (object))
+ {
+ g_critical ("A floating object %s %p was finalized. This means that someone\n"
+ "called g_object_unref() on an object that had only a floating\n"
+ "reference; the initial floating reference is not owned by anyone\n"
+ "and must be removed with g_object_ref_sink().",
+ G_OBJECT_TYPE_NAME (object), object);
+ }
+#endif
+
g_datalist_clear (&object->qdata);
GOBJECT_IF_DEBUG (OBJECTS,
@@ -1744,7 +1780,7 @@ g_object_get_type (void)
*
* Creates a new instance of a #GObject subtype and sets its properties.
*
- * Construction parameters (see #G_PARAM_CONSTRUCT, #G_PARAM_CONSTRUCT_ONLY)
+ * Construction parameters (see %G_PARAM_CONSTRUCT, %G_PARAM_CONSTRUCT_ONLY)
* which are not explicitly specified are set to their default values. Any
* private data for the object is guaranteed to be initialized with zeros, as
* per g_type_create_instance().
@@ -1763,6 +1799,12 @@ g_object_get_type (void)
* Similarly, #gfloat is promoted to #gdouble, so you must ensure that the value
* you provide is a #gdouble, even for a property of type #gfloat.
*
+ * Since GLib 2.72, all #GObjects are guaranteed to be aligned to at least the
+ * alignment of the largest basic GLib type (typically this is #guint64 or
+ * #gdouble). If you need larger alignment for an element in a #GObject, you
+ * should allocate it on the heap (aligned), or arrange for your #GObject to be
+ * appropriately padded.
+ *
* Returns: (transfer full) (type GObject.Object): a new instance of
* @object_type
*/
@@ -1785,6 +1827,26 @@ g_object_new (GType object_type,
return object;
}
+/* Check alignment. (See https://gitlab.gnome.org/GNOME/glib/-/issues/1231.)
+ * This should never fail, since g_type_create_instance() uses g_slice_alloc0().
+ * The GSlice allocator always aligns to the next power of 2 greater than the
+ * allocation size. The allocation size for a GObject is
+ * sizeof(GTypeInstance) + sizeof(guint) + sizeof(GData*)
+ * which is 12B on 32-bit platforms, and larger on 64-bit systems. In both
+ * cases, that’s larger than the 8B needed for a guint64 or gdouble.
+ *
+ * If GSlice falls back to malloc(), it’s documented to return something
+ * suitably aligned for any basic type. */
+static inline gboolean
+g_object_is_aligned (GObject *object)
+{
+ return ((((guintptr) (void *) object) %
+ MAX (G_ALIGNOF (gdouble),
+ MAX (G_ALIGNOF (guint64),
+ MAX (G_ALIGNOF (gint),
+ G_ALIGNOF (glong))))) == 0);
+}
+
static gpointer
g_object_new_with_custom_constructor (GObjectClass *class,
GObjectConstructParam *params,
@@ -1872,6 +1934,16 @@ g_object_new_with_custom_constructor (GObjectClass *class,
return NULL;
}
+ if (!g_object_is_aligned (object))
+ {
+ g_critical ("Custom constructor for class %s returned a non-aligned "
+ "GObject (which is invalid since GLib 2.72). Assuming any "
+ "code using this object doesn’t require it to be aligned. "
+ "Please fix your constructor to align to the largest GLib "
+ "basic type (typically gdouble or guint64).",
+ G_OBJECT_CLASS_NAME (class));
+ }
+
/* g_object_init() will have marked the object as being in-construction.
* Check if the returned object still is so marked, or if this is an
* already-existing singleton (in which case we should not do 'constructed').
@@ -1938,6 +2010,8 @@ g_object_new_internal (GObjectClass *class,
object = (GObject *) g_type_create_instance (class->g_type_class.g_type);
+ g_assert (g_object_is_aligned (object));
+
if (CLASS_HAS_PROPS (class))
{
GSList *node;
@@ -2092,8 +2166,7 @@ g_object_new_with_properties (GType object_type,
params[count].pspec = pspec;
/* Init GValue */
- params[count].value = g_newa (GValue, 1);
- memset (params[count].value, 0, sizeof (GValue));
+ params[count].value = g_newa0 (GValue, 1);
g_value_init (params[count].value, G_VALUE_TYPE (&values[i]));
g_value_copy (&values[i], params[count].value);
@@ -2121,7 +2194,7 @@ g_object_new_with_properties (GType object_type,
*
* Creates a new instance of a #GObject subtype and sets its properties.
*
- * Construction parameters (see #G_PARAM_CONSTRUCT, #G_PARAM_CONSTRUCT_ONLY)
+ * Construction parameters (see %G_PARAM_CONSTRUCT, %G_PARAM_CONSTRUCT_ONLY)
* which are not explicitly specified are set to their default values.
*
* Returns: (type GObject.Object) (transfer full): a new instance of
@@ -2193,7 +2266,7 @@ G_GNUC_END_IGNORE_DEPRECATIONS
*
* Creates a new instance of a #GObject subtype and sets its properties.
*
- * Construction parameters (see #G_PARAM_CONSTRUCT, #G_PARAM_CONSTRUCT_ONLY)
+ * Construction parameters (see %G_PARAM_CONSTRUCT, %G_PARAM_CONSTRUCT_ONLY)
* which are not explicitly specified are set to their default values.
*
* Returns: a new instance of @object_type
@@ -3274,6 +3347,16 @@ toggle_refs_notify (GObject *object,
ToggleRefStack tstack, *tstackptr;
G_LOCK (toggle_refs_mutex);
+ /* If another thread removed the toggle reference on the object, while
+ * we were waiting here, there's nothing to notify.
+ * So let's check again if the object has toggle reference and in case return.
+ */
+ if (!OBJECT_HAS_TOGGLE_REF (object))
+ {
+ G_UNLOCK (toggle_refs_mutex);
+ return;
+ }
+
tstackptr = g_datalist_id_get_data (&object->qdata, quark_toggle_refs);
tstack = *tstackptr;
G_UNLOCK (toggle_refs_mutex);
@@ -3494,6 +3577,7 @@ g_object_unref (gpointer _object)
else
{
GSList **weak_locations;
+ GObjectNotifyQueue *nqueue;
/* The only way that this object can live at this point is if
* there are outstanding weak references already established
@@ -3503,6 +3587,10 @@ g_object_unref (gpointer _object)
* established at this time, because the other thread would have
* to hold a strong ref in order to call
* g_object_add_weak_pointer() and then we wouldn't be here.
+ *
+ * Other GWeakRef's (weak locations) instead may still be added
+ * before the object is finalized, but in such case we'll unset
+ * them as part of the qdata removal.
*/
weak_locations = g_datalist_id_get_data (&object->qdata, quark_weak_locations);
@@ -3522,19 +3610,27 @@ g_object_unref (gpointer _object)
}
/* We got the lock first, so the object will definitely die
- * now. Clear out all the weak references.
+ * now. Clear out all the weak references, if they're still set.
*/
- while (*weak_locations)
- {
- GWeakRef *weak_ref_location = (*weak_locations)->data;
-
- weak_ref_location->priv.p = NULL;
- *weak_locations = g_slist_delete_link (*weak_locations, *weak_locations);
- }
+ weak_locations = g_datalist_id_remove_no_notify (&object->qdata,
+ quark_weak_locations);
+ g_clear_pointer (&weak_locations, weak_locations_free_unlocked);
g_rw_lock_writer_unlock (&weak_locations_lock);
}
+ /* freeze the notification queue, so we don't accidentally emit
+ * notifications during dispose() and finalize().
+ *
+ * The notification queue stays frozen unless the instance acquires
+ * a reference during dispose(), in which case we thaw it and
+ * dispatch all the notifications. If the instance gets through
+ * to finalize(), the notification queue gets automatically
+ * drained when g_object_finalize() is reached and
+ * the qdata is cleared.
+ */
+ nqueue = g_object_notify_queue_freeze (object, FALSE);
+
/* we are about to remove the last reference */
TRACE (GOBJECT_OBJECT_DISPOSE(object,G_TYPE_FROM_INSTANCE(object), 1));
G_OBJECT_GET_CLASS (object)->dispose (object);
@@ -3551,6 +3647,9 @@ g_object_unref (gpointer _object)
if (!g_atomic_int_compare_and_exchange ((int *)&object->ref_count, old_ref, old_ref - 1))
goto retry_atomic_decrement2;
+ /* emit all notifications that have been queued during dispose() */
+ g_object_notify_queue_thaw (object, nqueue);
+
TRACE (GOBJECT_OBJECT_UNREF(object,G_TYPE_FROM_INSTANCE(object),old_ref));
/* if we went from 2->1 we need to notify toggle refs if any */
@@ -3564,7 +3663,8 @@ g_object_unref (gpointer _object)
g_datalist_id_set_data (&object->qdata, quark_closure_array, NULL);
g_signal_handlers_destroy (object);
g_datalist_id_set_data (&object->qdata, quark_weak_refs, NULL);
-
+ g_datalist_id_set_data (&object->qdata, quark_weak_locations, NULL);
+
/* decrement the last reference */
old_ref = g_atomic_int_add (&object->ref_count, -1);
g_return_if_fail (old_ref > 0);
@@ -3576,7 +3676,6 @@ g_object_unref (gpointer _object)
{
TRACE (GOBJECT_OBJECT_FINALIZE(object,G_TYPE_FROM_INSTANCE(object)));
G_OBJECT_GET_CLASS (object)->finalize (object);
-
TRACE (GOBJECT_OBJECT_FINALIZE_END(object,G_TYPE_FROM_INSTANCE(object)));
GOBJECT_IF_DEBUG (OBJECTS,
@@ -3594,6 +3693,13 @@ g_object_unref (gpointer _object)
});
g_type_free_instance ((GTypeInstance*) object);
}
+ else
+ {
+ /* The instance acquired a reference between dispose() and
+ * finalize(), so we need to thaw the notification queue
+ */
+ g_object_notify_queue_thaw (object, nqueue);
+ }
}
}
@@ -4543,11 +4649,14 @@ g_initially_unowned_class_init (GInitiallyUnownedClass *klass)
* objects.
*
* If the object's #GObjectClass.dispose method results in additional
- * references to the object being held, any #GWeakRefs taken
- * before it was disposed will continue to point to %NULL. If
- * #GWeakRefs are taken after the object is disposed and
- * re-referenced, they will continue to point to it until its refcount
+ * references to the object being held (‘re-referencing’), any #GWeakRefs taken
+ * before it was disposed will continue to point to %NULL. Any #GWeakRefs taken
+ * during disposal and after re-referencing, or after disposal has returned due
+ * to the re-referencing, will continue to point to the object until its refcount
* goes back to zero, at which point they too will be invalidated.
+ *
+ * It is invalid to take a #GWeakRef on an object during #GObjectClass.dispose
+ * without first having or creating a strong reference to the object.
*/
/**
@@ -4637,6 +4746,35 @@ g_weak_ref_get (GWeakRef *weak_ref)
return object_or_null;
}
+static void
+weak_locations_free_unlocked (GSList **weak_locations)
+{
+ if (*weak_locations)
+ {
+ GSList *weak_location;
+
+ for (weak_location = *weak_locations; weak_location;)
+ {
+ GWeakRef *weak_ref_location = weak_location->data;
+
+ weak_ref_location->priv.p = NULL;
+ weak_location = g_slist_delete_link (weak_location, weak_location);
+ }
+ }
+
+ g_free (weak_locations);
+}
+
+static void
+weak_locations_free (gpointer data)
+{
+ GSList **weak_locations = data;
+
+ g_rw_lock_writer_lock (&weak_locations_lock);
+ weak_locations_free_unlocked (weak_locations);
+ g_rw_lock_writer_unlock (&weak_locations_lock);
+}
+
/**
* g_weak_ref_set: (skip)
* @weak_ref: location for a weak reference
@@ -4693,6 +4831,12 @@ g_weak_ref_set (GWeakRef *weak_ref,
g_assert (weak_locations != NULL);
*weak_locations = g_slist_remove (*weak_locations, weak_ref);
+
+ if (!*weak_locations)
+ {
+ weak_locations_free_unlocked (weak_locations);
+ g_datalist_id_remove_no_notify (&old_object->qdata, quark_weak_locations);
+ }
}
/* Add the weak ref to the new object */
@@ -4703,7 +4847,8 @@ g_weak_ref_set (GWeakRef *weak_ref,
if (weak_locations == NULL)
{
weak_locations = g_new0 (GSList *, 1);
- g_datalist_id_set_data_full (&new_object->qdata, quark_weak_locations, weak_locations, g_free);
+ g_datalist_id_set_data_full (&new_object->qdata, quark_weak_locations,
+ weak_locations, weak_locations_free);
}
*weak_locations = g_slist_prepend (*weak_locations, weak_ref);
diff --git a/gobject/gobject.h b/gobject/gobject.h
index f62f9c902..3dc4f7f48 100644
--- a/gobject/gobject.h
+++ b/gobject/gobject.h
@@ -238,6 +238,11 @@ typedef void (*GObjectFinalizeFunc) (GObject *object);
* Since the object is already being disposed when the #GWeakNotify is called,
* there's not much you could do with the object, apart from e.g. using its
* address as hash-index or the like.
+ *
+ * In particular, this means it’s invalid to call g_object_ref(),
+ * g_weak_ref_init(), g_weak_ref_set(), g_object_add_toggle_ref(),
+ * g_object_weak_ref(), g_object_add_weak_pointer() or any function which calls
+ * them on the object from this callback.
*/
typedef void (*GWeakNotify) (gpointer data,
GObject *where_the_object_was);
@@ -248,6 +253,14 @@ typedef void (*GWeakNotify) (gpointer data,
*
* All the fields in the `GObject` structure are private to the implementation
* and should never be accessed directly.
+ *
+ * Since GLib 2.72, all #GObjects are guaranteed to be aligned to at least the
+ * alignment of the largest basic GLib type (typically this is #guint64 or
+ * #gdouble). If you need larger alignment for an element in a #GObject, you
+ * should allocate it on the heap (aligned), or arrange for your #GObject to be
+ * appropriately padded. This guarantee applies to the #GObject (or derived)
+ * struct, the #GObjectClass (or derived) struct, and any private data allocated
+ * by G_ADD_PRIVATE().
*/
struct _GObject
{
diff --git a/gobject/gparam.c b/gobject/gparam.c
index b3e4c671f..e9d9eacb0 100644
--- a/gobject/gparam.c
+++ b/gobject/gparam.c
@@ -421,7 +421,7 @@ g_param_spec_is_valid_name (const gchar *name)
/**
* g_param_spec_internal: (skip)
- * @param_type: the #GType for the property; must be derived from #G_TYPE_PARAM
+ * @param_type: the #GType for the property; must be derived from %G_TYPE_PARAM
* @name: the canonical name of the property
* @nick: the nickname of the property
* @blurb: a short description of the property
@@ -1403,7 +1403,7 @@ default_values_cmp (GParamSpec *pspec,
* @pspec_info: The #GParamSpecTypeInfo for this #GParamSpec type.
*
* Registers @name as the name of a new static type derived
- * from #G_TYPE_PARAM.
+ * from %G_TYPE_PARAM.
*
* The type system uses the information contained in the #GParamSpecTypeInfo
* structure pointed to by @info to manage the #GParamSpec type and its
diff --git a/gobject/gsignal.c b/gobject/gsignal.c
index a106bbeec..fb85fd6ba 100644
--- a/gobject/gsignal.c
+++ b/gobject/gsignal.c
@@ -1041,7 +1041,7 @@ signal_finalize_hook (GHookList *hook_list,
*
* Adds an emission hook for a signal, which will get called for any emission
* of that signal, independent of the instance. This is possible only
- * for signals which don't have #G_SIGNAL_NO_HOOKS flag set.
+ * for signals which don't have %G_SIGNAL_NO_HOOKS flag set.
*
* Returns: the hook id, for later use with g_signal_remove_emission_hook().
*/
@@ -1458,7 +1458,7 @@ g_signal_query (guint signal_id,
* @accu_data: (nullable) (closure accumulator): user data for the @accumulator.
* @c_marshaller: (nullable): the function to translate arrays of parameter
* values to signal emissions into C language callback invocations or %NULL.
- * @return_type: the type of return value, or #G_TYPE_NONE for a signal
+ * @return_type: the type of return value, or %G_TYPE_NONE for a signal
* without a return value.
* @n_params: the number of parameter types to follow.
* @...: a list of types, one for each parameter.
@@ -1534,7 +1534,7 @@ g_signal_new (const gchar *signal_name,
* @accu_data: (nullable) (closure accumulator): user data for the @accumulator.
* @c_marshaller: (nullable): the function to translate arrays of parameter
* values to signal emissions into C language callback invocations or %NULL.
- * @return_type: the type of return value, or #G_TYPE_NONE for a signal
+ * @return_type: the type of return value, or %G_TYPE_NONE for a signal
* without a return value.
* @n_params: the number of parameter types to follow.
* @...: a list of types, one for each parameter.
@@ -1672,7 +1672,7 @@ signal_add_class_closure (SignalNode *node,
* @c_marshaller: (nullable): the function to translate arrays of
* parameter values to signal emissions into C language callback
* invocations or %NULL
- * @return_type: the type of return value, or #G_TYPE_NONE for a signal
+ * @return_type: the type of return value, or %G_TYPE_NONE for a signal
* without a return value
* @n_params: the length of @param_types
* @param_types: (array length=n_params) (nullable): an array of types, one for
@@ -1932,7 +1932,7 @@ g_signal_set_va_marshaller (guint signal_id,
* @accu_data: (nullable) (closure accumulator): user data for the @accumulator.
* @c_marshaller: (nullable): the function to translate arrays of parameter
* values to signal emissions into C language callback invocations or %NULL.
- * @return_type: the type of return value, or #G_TYPE_NONE for a signal
+ * @return_type: the type of return value, or %G_TYPE_NONE for a signal
* without a return value.
* @n_params: the number of parameter types in @args.
* @args: va_list of #GType, one for each parameter.
@@ -2203,7 +2203,7 @@ g_signal_chain_from_overridden (const GValue *instance_and_params,
* emitted on.
* @...: parameters to be passed to the parent class closure, followed by a
* location for the return value. If the return type of the signal
- * is #G_TYPE_NONE, the return value location can be omitted.
+ * is %G_TYPE_NONE, the return value location can be omitted.
*
* Calls the original class closure of a signal. This function should
* only be called from an overridden class closure; see
@@ -2219,7 +2219,7 @@ g_signal_chain_from_overridden_handler (gpointer instance,
GType chain_type = 0, restore_type = 0;
Emission *emission = NULL;
GClosure *closure = NULL;
- SignalNode *node;
+ SignalNode *node = NULL;
guint n_params = 0;
g_return_if_fail (G_TYPE_CHECK_INSTANCE (instance));
@@ -2266,8 +2266,7 @@ g_signal_chain_from_overridden_handler (gpointer instance,
va_start (var_args, instance);
signal_return_type = node->return_type;
- instance_and_params = g_alloca (sizeof (GValue) * (n_params + 1));
- memset (instance_and_params, 0, sizeof (GValue) * (n_params + 1));
+ instance_and_params = g_newa0 (GValue, n_params + 1);
param_values = instance_and_params + 1;
for (i = 0; i < node->n_params; i++)
@@ -3118,7 +3117,8 @@ g_signal_has_handler_pending (gpointer instance,
* store the return value of the signal emission. This must be provided if the
* specified signal returns a value, but may be ignored otherwise.
*
- * Emits a signal.
+ * Emits a signal. Signal emission is done synchronously.
+ * The method will only return control after all handlers are called or signal emission was stopped.
*
* Note that g_signal_emitv() doesn't change @return_value if no handlers are
* connected, in contrast to g_signal_emit() and g_signal_emit_valist().
@@ -3254,9 +3254,10 @@ accumulate (GSignalInvocationHint *ihint,
* @detail: the detail
* @var_args: a list of parameters to be passed to the signal, followed by a
* location for the return value. If the return type of the signal
- * is #G_TYPE_NONE, the return value location can be omitted.
+ * is %G_TYPE_NONE, the return value location can be omitted.
*
- * Emits a signal.
+ * Emits a signal. Signal emission is done synchronously.
+ * The method will only return control after all handlers are called or signal emission was stopped.
*
* Note that g_signal_emit_valist() resets the return value to the default
* if no handlers are connected, in contrast to g_signal_emitv().
@@ -3364,7 +3365,6 @@ g_signal_emit_valist (gpointer instance,
SignalAccumulator *accumulator;
Emission emission;
GValue *return_accu, accu = G_VALUE_INIT;
- guint signal_id;
GType instance_type = G_TYPE_FROM_INSTANCE (instance);
GValue emission_return = G_VALUE_INIT;
GType rtype = node->return_type & ~G_SIGNAL_TYPE_STATIC_SCOPE;
@@ -3462,8 +3462,7 @@ g_signal_emit_valist (gpointer instance,
n_params = node->n_params;
signal_return_type = node->return_type;
- instance_and_params = g_alloca (sizeof (GValue) * (n_params + 1));
- memset (instance_and_params, 0, sizeof (GValue) * (n_params + 1));
+ instance_and_params = g_newa0 (GValue, n_params + 1);
param_values = instance_and_params + 1;
for (i = 0; i < node->n_params; i++)
@@ -3534,9 +3533,10 @@ g_signal_emit_valist (gpointer instance,
* @detail: the detail
* @...: parameters to be passed to the signal, followed by a
* location for the return value. If the return type of the signal
- * is #G_TYPE_NONE, the return value location can be omitted.
+ * is %G_TYPE_NONE, the return value location can be omitted.
*
- * Emits a signal.
+ * Emits a signal. Signal emission is done synchronously.
+ * The method will only return control after all handlers are called or signal emission was stopped.
*
* Note that g_signal_emit() resets the return value to the default
* if no handlers are connected, in contrast to g_signal_emitv().
@@ -3563,7 +3563,8 @@ g_signal_emit (gpointer instance,
* is %G_TYPE_NONE, the return value location can be omitted. The
* number of parameters to pass to this function is defined when creating the signal.
*
- * Emits a signal.
+ * Emits a signal. Signal emission is done synchronously.
+ * The method will only return control after all handlers are called or signal emission was stopped.
*
* Note that g_signal_emit_by_name() resets the return value to the default
* if no handlers are connected, in contrast to g_signal_emitv().
@@ -3623,14 +3624,14 @@ signal_emit_unlocked_R (SignalNode *node,
if (node->flags & G_SIGNAL_NO_RECURSE)
{
- Emission *node = emission_find (signal_id, detail, instance);
-
- if (node)
- {
- node->state = EMISSION_RESTART;
- SIGNAL_UNLOCK ();
- return return_value_altered;
- }
+ Emission *emission_node = emission_find (signal_id, detail, instance);
+
+ if (emission_node)
+ {
+ emission_node->state = EMISSION_RESTART;
+ SIGNAL_UNLOCK ();
+ return return_value_altered;
+ }
}
accumulator = node->accumulator;
if (accumulator)
diff --git a/gobject/gsignal.h b/gobject/gsignal.h
index 96e4eb38a..04f134434 100644
--- a/gobject/gsignal.h
+++ b/gobject/gsignal.h
@@ -65,7 +65,7 @@ typedef GVaClosureMarshal GSignalCVaMarshaller;
* Emission hooks allow you to tie a hook to the signal type, so that it will
* trap all emissions of that signal, from any object.
*
- * You may not attach these to signals created with the #G_SIGNAL_NO_HOOKS flag.
+ * You may not attach these to signals created with the %G_SIGNAL_NO_HOOKS flag.
*
* Returns: whether it wants to stay connected. If it returns %FALSE, the signal
* hook is disconnected (and destroyed).
@@ -155,7 +155,7 @@ typedef enum
#define G_SIGNAL_FLAGS_MASK 0x1ff
/**
* GConnectFlags:
- * @G_CONNECT_AFTER: whether the handler should be called before or after the
+ * @G_CONNECT_AFTER: whether the handler should be called before or after the
* default handler of the signal.
* @G_CONNECT_SWAPPED: whether the instance and data should be swapped when
* calling the handler; see g_signal_connect_swapped() for an example.
@@ -497,7 +497,7 @@ void g_signal_chain_from_overridden_handler (gpointer instance,
*
* Connects a #GCallback function to a signal for a particular object.
*
- * The handler will be called before the default handler of the signal.
+ * The handler will be called synchronously, before the default handler of the signal. g_signal_emit() will not return control until all handlers are called.
*
* See [memory management of signal handlers][signal-memory-management] for
* details on how to handle the return value and memory management of @data.
@@ -515,7 +515,7 @@ void g_signal_chain_from_overridden_handler (gpointer instance,
*
* Connects a #GCallback function to a signal for a particular object.
*
- * The handler will be called after the default handler of the signal.
+ * The handler will be called synchronously, after the default handler of the signal.
*
* Returns: the handler ID, of type #gulong (always greater than 0 for successful connections)
*/
diff --git a/gobject/gsignalgroup.c b/gobject/gsignalgroup.c
new file mode 100644
index 000000000..8feba543c
--- /dev/null
+++ b/gobject/gsignalgroup.c
@@ -0,0 +1,912 @@
+/* GObject - GLib Type, Object, Parameter and Signal Library
+ *
+ * Copyright (C) 2015-2022 Christian Hergert <christian@hergert.me>
+ * Copyright (C) 2015 Garrett Regier <garrettregier@gmail.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ *
+ * SPDX-License-Identifier: LGPL-2.1-or-later
+ */
+
+#include "config.h"
+#include "glib.h"
+#include "glibintl.h"
+
+#include "gparamspecs.h"
+#include "gsignalgroup.h"
+#include "gvaluetypes.h"
+
+/**
+ * SECTION:gsignalgroup
+ * @Title: GSignalGroup
+ * @Short_description: Manage a collection of signals on a GObject
+ *
+ * #GSignalGroup manages to simplify the process of connecting
+ * many signals to a #GObject as a group. As such there is no API
+ * to disconnect a signal from the group.
+ *
+ * In particular, this allows you to:
+ *
+ * - Change the target instance, which automatically causes disconnection
+ * of the signals from the old instance and connecting to the new instance.
+ * - Block and unblock signals as a group
+ * - Ensuring that blocked state transfers across target instances.
+ *
+ * One place you might want to use such a structure is with #GtkTextView and
+ * #GtkTextBuffer. Often times, you'll need to connect to many signals on
+ * #GtkTextBuffer from a #GtkTextView subclass. This allows you to create a
+ * signal group during instance construction, simply bind the
+ * #GtkTextView:buffer property to #GSignalGroup:target and connect
+ * all the signals you need. When the #GtkTextView:buffer property changes
+ * all of the signals will be transitioned correctly.
+ *
+ * Since: 2.72
+ */
+
+struct _GSignalGroup
+{
+ GObject parent_instance;
+
+ GWeakRef target_ref;
+ GRecMutex mutex;
+ GPtrArray *handlers;
+ GType target_type;
+ gssize block_count;
+
+ guint has_bound_at_least_once : 1;
+};
+
+typedef struct _GSignalGroupClass
+{
+ GObjectClass parent_class;
+
+ void (*bind) (GSignalGroup *self,
+ GObject *target);
+} GSignalGroupClass;
+
+typedef struct
+{
+ GSignalGroup *group;
+ gulong handler_id;
+ GClosure *closure;
+ guint signal_id;
+ GQuark signal_detail;
+ guint connect_after : 1;
+} SignalHandler;
+
+G_DEFINE_TYPE (GSignalGroup, g_signal_group, G_TYPE_OBJECT)
+
+typedef enum
+{
+ PROP_TARGET = 1,
+ PROP_TARGET_TYPE,
+ LAST_PROP
+} GSignalGroupProperty;
+
+enum
+{
+ BIND,
+ UNBIND,
+ LAST_SIGNAL
+};
+
+static GParamSpec *properties[LAST_PROP];
+static guint signals[LAST_SIGNAL];
+
+static void
+g_signal_group_set_target_type (GSignalGroup *self,
+ GType target_type)
+{
+ g_assert (G_IS_SIGNAL_GROUP (self));
+ g_assert (g_type_is_a (target_type, G_TYPE_OBJECT));
+
+ self->target_type = target_type;
+
+ /* The class must be created at least once for the signals
+ * to be registered, otherwise g_signal_parse_name() will fail
+ */
+ if (G_TYPE_IS_INTERFACE (target_type))
+ {
+ if (g_type_default_interface_peek (target_type) == NULL)
+ g_type_default_interface_unref (g_type_default_interface_ref (target_type));
+ }
+ else
+ {
+ if (g_type_class_peek (target_type) == NULL)
+ g_type_class_unref (g_type_class_ref (target_type));
+ }
+}
+
+static void
+g_signal_group_gc_handlers (GSignalGroup *self)
+{
+ guint i;
+
+ g_assert (G_IS_SIGNAL_GROUP (self));
+
+ /*
+ * Remove any handlers for which the closures have become invalid. We do
+ * this cleanup lazily to avoid situations where we could have disposal
+ * active on both the signal group and the peer object.
+ */
+
+ for (i = self->handlers->len; i > 0; i--)
+ {
+ const SignalHandler *handler = g_ptr_array_index (self->handlers, i - 1);
+
+ g_assert (handler != NULL);
+ g_assert (handler->closure != NULL);
+
+ if (handler->closure->is_invalid)
+ g_ptr_array_remove_index (self->handlers, i - 1);
+ }
+}
+
+static void
+g_signal_group__target_weak_notify (gpointer data,
+ GObject *where_object_was)
+{
+ GSignalGroup *self = data;
+ guint i;
+
+ g_assert (G_IS_SIGNAL_GROUP (self));
+ g_assert (where_object_was != NULL);
+
+ g_rec_mutex_lock (&self->mutex);
+
+ g_weak_ref_set (&self->target_ref, NULL);
+
+ for (i = 0; i < self->handlers->len; i++)
+ {
+ SignalHandler *handler = g_ptr_array_index (self->handlers, i);
+
+ handler->handler_id = 0;
+ }
+
+ g_signal_emit (self, signals[UNBIND], 0);
+ g_object_notify_by_pspec (G_OBJECT (self), properties[PROP_TARGET]);
+
+ g_rec_mutex_unlock (&self->mutex);
+}
+
+static void
+g_signal_group_bind_handler (GSignalGroup *self,
+ SignalHandler *handler,
+ GObject *target)
+{
+ gssize i;
+
+ g_assert (self != NULL);
+ g_assert (G_IS_OBJECT (target));
+ g_assert (handler != NULL);
+ g_assert (handler->signal_id != 0);
+ g_assert (handler->closure != NULL);
+ g_assert (handler->closure->is_invalid == 0);
+ g_assert (handler->handler_id == 0);
+
+ handler->handler_id = g_signal_connect_closure_by_id (target,
+ handler->signal_id,
+ handler->signal_detail,
+ handler->closure,
+ handler->connect_after);
+
+ g_assert (handler->handler_id != 0);
+
+ for (i = 0; i < self->block_count; i++)
+ g_signal_handler_block (target, handler->handler_id);
+}
+
+static void
+g_signal_group_bind (GSignalGroup *self,
+ GObject *target)
+{
+ GObject *hold;
+ guint i;
+
+ g_assert (G_IS_SIGNAL_GROUP (self));
+ g_assert (!target || G_IS_OBJECT (target));
+
+ if (target == NULL)
+ return;
+
+ self->has_bound_at_least_once = TRUE;
+
+ hold = g_object_ref (target);
+
+ g_weak_ref_set (&self->target_ref, hold);
+ g_object_weak_ref (hold, g_signal_group__target_weak_notify, self);
+
+ g_signal_group_gc_handlers (self);
+
+ for (i = 0; i < self->handlers->len; i++)
+ {
+ SignalHandler *handler = g_ptr_array_index (self->handlers, i);
+
+ g_signal_group_bind_handler (self, handler, hold);
+ }
+
+ g_signal_emit (self, signals [BIND], 0, hold);
+
+ g_object_unref (hold);
+}
+
+static void
+g_signal_group_unbind (GSignalGroup *self)
+{
+ GObject *target;
+ guint i;
+
+ g_return_if_fail (G_IS_SIGNAL_GROUP (self));
+
+ target = g_weak_ref_get (&self->target_ref);
+
+ /*
+ * Target may be NULL by this point, as we got notified of its destruction.
+ * However, if we're early enough, we may get a full reference back and can
+ * cleanly disconnect our connections.
+ */
+
+ if (target != NULL)
+ {
+ g_weak_ref_set (&self->target_ref, NULL);
+
+ /*
+ * Let go of our weak reference now that we have a full reference
+ * for the life of this function.
+ */
+ g_object_weak_unref (target,
+ g_signal_group__target_weak_notify,
+ self);
+ }
+
+ g_signal_group_gc_handlers (self);
+
+ for (i = 0; i < self->handlers->len; i++)
+ {
+ SignalHandler *handler;
+ gulong handler_id;
+
+ handler = g_ptr_array_index (self->handlers, i);
+
+ g_assert (handler != NULL);
+ g_assert (handler->signal_id != 0);
+ g_assert (handler->closure != NULL);
+
+ handler_id = handler->handler_id;
+ handler->handler_id = 0;
+
+ /*
+ * If @target is NULL, we lost a race to cleanup the weak
+ * instance and the signal connections have already been
+ * finalized and therefore nothing to do.
+ */
+
+ if (target != NULL && handler_id != 0)
+ g_signal_handler_disconnect (target, handler_id);
+ }
+
+ g_signal_emit (self, signals [UNBIND], 0);
+
+ g_clear_object (&target);
+}
+
+static gboolean
+g_signal_group_check_target_type (GSignalGroup *self,
+ gpointer target)
+{
+ if ((target != NULL) &&
+ !g_type_is_a (G_OBJECT_TYPE (target), self->target_type))
+ {
+ g_critical ("Failed to set GSignalGroup of target type %s "
+ "using target %p of type %s",
+ g_type_name (self->target_type),
+ target, G_OBJECT_TYPE_NAME (target));
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+/**
+ * g_signal_group_block:
+ * @self: the #GSignalGroup
+ *
+ * Blocks all signal handlers managed by @self so they will not
+ * be called during any signal emissions. Must be unblocked exactly
+ * the same number of times it has been blocked to become active again.
+ *
+ * This blocked state will be kept across changes of the target instance.
+ *
+ * Since: 2.72
+ */
+void
+g_signal_group_block (GSignalGroup *self)
+{
+ GObject *target;
+ guint i;
+
+ g_return_if_fail (G_IS_SIGNAL_GROUP (self));
+ g_return_if_fail (self->block_count >= 0);
+
+ g_rec_mutex_lock (&self->mutex);
+
+ self->block_count++;
+
+ target = g_weak_ref_get (&self->target_ref);
+
+ if (target == NULL)
+ goto unlock;
+
+ for (i = 0; i < self->handlers->len; i++)
+ {
+ const SignalHandler *handler = g_ptr_array_index (self->handlers, i);
+
+ g_assert (handler != NULL);
+ g_assert (handler->signal_id != 0);
+ g_assert (handler->closure != NULL);
+ g_assert (handler->handler_id != 0);
+
+ g_signal_handler_block (target, handler->handler_id);
+ }
+
+ g_object_unref (target);
+
+unlock:
+ g_rec_mutex_unlock (&self->mutex);
+}
+
+/**
+ * g_signal_group_unblock:
+ * @self: the #GSignalGroup
+ *
+ * Unblocks all signal handlers managed by @self so they will be
+ * called again during any signal emissions unless it is blocked
+ * again. Must be unblocked exactly the same number of times it
+ * has been blocked to become active again.
+ *
+ * Since: 2.72
+ */
+void
+g_signal_group_unblock (GSignalGroup *self)
+{
+ GObject *target;
+ guint i;
+
+ g_return_if_fail (G_IS_SIGNAL_GROUP (self));
+ g_return_if_fail (self->block_count > 0);
+
+ g_rec_mutex_lock (&self->mutex);
+
+ self->block_count--;
+
+ target = g_weak_ref_get (&self->target_ref);
+ if (target == NULL)
+ goto unlock;
+
+ for (i = 0; i < self->handlers->len; i++)
+ {
+ const SignalHandler *handler = g_ptr_array_index (self->handlers, i);
+
+ g_assert (handler != NULL);
+ g_assert (handler->signal_id != 0);
+ g_assert (handler->closure != NULL);
+ g_assert (handler->handler_id != 0);
+
+ g_signal_handler_unblock (target, handler->handler_id);
+ }
+
+ g_object_unref (target);
+
+unlock:
+ g_rec_mutex_unlock (&self->mutex);
+}
+
+/**
+ * g_signal_group_dup_target:
+ * @self: the #GSignalGroup
+ *
+ * Gets the target instance used when connecting signals.
+ *
+ * Returns: (nullable) (transfer full) (type GObject): The target instance
+ *
+ * Since: 2.72
+ */
+gpointer
+g_signal_group_dup_target (GSignalGroup *self)
+{
+ GObject *target;
+
+ g_return_val_if_fail (G_IS_SIGNAL_GROUP (self), NULL);
+
+ g_rec_mutex_lock (&self->mutex);
+ target = g_weak_ref_get (&self->target_ref);
+ g_rec_mutex_unlock (&self->mutex);
+
+ return target;
+}
+
+/**
+ * g_signal_group_set_target:
+ * @self: the #GSignalGroup.
+ * @target: (nullable) (type GObject) (transfer none): The target instance used
+ * when connecting signals.
+ *
+ * Sets the target instance used when connecting signals. Any signal
+ * that has been registered with g_signal_group_connect_object() or
+ * similar functions will be connected to this object.
+ *
+ * If the target instance was previously set, signals will be
+ * disconnected from that object prior to connecting to @target.
+ *
+ * Since: 2.72
+ */
+void
+g_signal_group_set_target (GSignalGroup *self,
+ gpointer target)
+{
+ GObject *object;
+
+ g_return_if_fail (G_IS_SIGNAL_GROUP (self));
+
+ g_rec_mutex_lock (&self->mutex);
+
+ object = g_weak_ref_get (&self->target_ref);
+
+ if (object == (GObject *)target)
+ goto cleanup;
+
+ if (!g_signal_group_check_target_type (self, target))
+ goto cleanup;
+
+ /* Only emit unbind if we've ever called bind */
+ if (self->has_bound_at_least_once)
+ g_signal_group_unbind (self);
+
+ g_signal_group_bind (self, target);
+
+ g_object_notify_by_pspec (G_OBJECT (self), properties[PROP_TARGET]);
+
+cleanup:
+ g_clear_object (&object);
+ g_rec_mutex_unlock (&self->mutex);
+}
+
+static void
+signal_handler_free (gpointer data)
+{
+ SignalHandler *handler = data;
+
+ if (handler->closure != NULL)
+ g_closure_invalidate (handler->closure);
+
+ handler->handler_id = 0;
+ handler->signal_id = 0;
+ handler->signal_detail = 0;
+ g_clear_pointer (&handler->closure, g_closure_unref);
+ g_slice_free (SignalHandler, handler);
+}
+
+static void
+g_signal_group_constructed (GObject *object)
+{
+ GSignalGroup *self = (GSignalGroup *)object;
+ GObject *target;
+
+ g_rec_mutex_lock (&self->mutex);
+
+ target = g_weak_ref_get (&self->target_ref);
+ if (!g_signal_group_check_target_type (self, target))
+ g_signal_group_set_target (self, NULL);
+
+ G_OBJECT_CLASS (g_signal_group_parent_class)->constructed (object);
+
+ g_clear_object (&target);
+
+ g_rec_mutex_unlock (&self->mutex);
+}
+
+static void
+g_signal_group_dispose (GObject *object)
+{
+ GSignalGroup *self = (GSignalGroup *)object;
+
+ g_rec_mutex_lock (&self->mutex);
+
+ g_signal_group_gc_handlers (self);
+
+ if (self->has_bound_at_least_once)
+ g_signal_group_unbind (self);
+
+ g_clear_pointer (&self->handlers, g_ptr_array_unref);
+
+ g_rec_mutex_unlock (&self->mutex);
+
+ G_OBJECT_CLASS (g_signal_group_parent_class)->dispose (object);
+}
+
+static void
+g_signal_group_finalize (GObject *object)
+{
+ GSignalGroup *self = (GSignalGroup *)object;
+
+ g_weak_ref_clear (&self->target_ref);
+ g_rec_mutex_clear (&self->mutex);
+
+ G_OBJECT_CLASS (g_signal_group_parent_class)->finalize (object);
+}
+
+static void
+g_signal_group_get_property (GObject *object,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
+{
+ GSignalGroup *self = G_SIGNAL_GROUP (object);
+
+ switch ((GSignalGroupProperty) prop_id)
+ {
+ case PROP_TARGET:
+ g_value_take_object (value, g_signal_group_dup_target (self));
+ break;
+
+ case PROP_TARGET_TYPE:
+ g_value_set_gtype (value, self->target_type);
+ break;
+
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+ }
+}
+
+static void
+g_signal_group_set_property (GObject *object,
+ guint prop_id,
+ const GValue *value,
+ GParamSpec *pspec)
+{
+ GSignalGroup *self = G_SIGNAL_GROUP (object);
+
+ switch ((GSignalGroupProperty) prop_id)
+ {
+ case PROP_TARGET:
+ g_signal_group_set_target (self, g_value_get_object (value));
+ break;
+
+ case PROP_TARGET_TYPE:
+ g_signal_group_set_target_type (self, g_value_get_gtype (value));
+ break;
+
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+ }
+}
+
+static void
+g_signal_group_class_init (GSignalGroupClass *klass)
+{
+ GObjectClass *object_class = G_OBJECT_CLASS (klass);
+
+ object_class->constructed = g_signal_group_constructed;
+ object_class->dispose = g_signal_group_dispose;
+ object_class->finalize = g_signal_group_finalize;
+ object_class->get_property = g_signal_group_get_property;
+ object_class->set_property = g_signal_group_set_property;
+
+ /**
+ * GSignalGroup:target
+ *
+ * The target instance used when connecting signals.
+ *
+ * Since: 2.72
+ */
+ properties[PROP_TARGET] =
+ g_param_spec_object ("target",
+ "Target",
+ "The target instance used when connecting signals.",
+ G_TYPE_OBJECT,
+ (G_PARAM_READWRITE | G_PARAM_EXPLICIT_NOTIFY | G_PARAM_STATIC_STRINGS));
+
+ /**
+ * GSignalGroup:target-type
+ *
+ * The #GType of the target property.
+ *
+ * Since: 2.72
+ */
+ properties[PROP_TARGET_TYPE] =
+ g_param_spec_gtype ("target-type",
+ "Target Type",
+ "The GType of the target property.",
+ G_TYPE_OBJECT,
+ (G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_properties (object_class, LAST_PROP, properties);
+
+ /**
+ * GSignalGroup::bind:
+ * @self: the #GSignalGroup
+ * @instance: a #GObject containing the new value for #GSignalGroup:target
+ *
+ * This signal is emitted when #GSignalGroup:target is set to a new value
+ * other than %NULL. It is similar to #GObject::notify on `target` except it
+ * will not emit when #GSignalGroup:target is %NULL and also allows for
+ * receiving the #GObject without a data-race.
+ *
+ * Since: 2.72
+ */
+ signals[BIND] =
+ g_signal_new ("bind",
+ G_TYPE_FROM_CLASS (klass),
+ G_SIGNAL_RUN_LAST,
+ 0,
+ NULL, NULL, NULL,
+ G_TYPE_NONE,
+ 1,
+ G_TYPE_OBJECT);
+
+ /**
+ * GSignalGroup::unbind:
+ * @self: a #GSignalGroup
+ *
+ * This signal is emitted when the target instance of @self is set to a
+ * new #GObject.
+ *
+ * This signal will only be emitted if the previous target of @self is
+ * non-%NULL.
+ *
+ * Since: 2.72
+ */
+ signals[UNBIND] =
+ g_signal_new ("unbind",
+ G_TYPE_FROM_CLASS (klass),
+ G_SIGNAL_RUN_LAST,
+ 0,
+ NULL, NULL, NULL,
+ G_TYPE_NONE,
+ 0);
+}
+
+static void
+g_signal_group_init (GSignalGroup *self)
+{
+ g_rec_mutex_init (&self->mutex);
+ self->handlers = g_ptr_array_new_with_free_func (signal_handler_free);
+ self->target_type = G_TYPE_OBJECT;
+}
+
+/**
+ * g_signal_group_new:
+ * @target_type: the #GType of the target instance.
+ *
+ * Creates a new #GSignalGroup for target instances of @target_type.
+ *
+ * Returns: (transfer full): a new #GSignalGroup
+ *
+ * Since: 2.72
+ */
+GSignalGroup *
+g_signal_group_new (GType target_type)
+{
+ g_return_val_if_fail (g_type_is_a (target_type, G_TYPE_OBJECT), NULL);
+
+ return g_object_new (G_TYPE_SIGNAL_GROUP,
+ "target-type", target_type,
+ NULL);
+}
+
+static void
+g_signal_group_connect_full (GSignalGroup *self,
+ const gchar *detailed_signal,
+ GCallback c_handler,
+ gpointer data,
+ GClosureNotify notify,
+ GConnectFlags flags,
+ gboolean is_object)
+{
+ GObject *target;
+ SignalHandler *handler;
+ GClosure *closure;
+ guint signal_id;
+ GQuark signal_detail;
+
+ g_return_if_fail (G_IS_SIGNAL_GROUP (self));
+ g_return_if_fail (detailed_signal != NULL);
+ g_return_if_fail (g_signal_parse_name (detailed_signal, self->target_type,
+ &signal_id, &signal_detail, TRUE) != 0);
+ g_return_if_fail (c_handler != NULL);
+ g_return_if_fail (!is_object || G_IS_OBJECT (data));
+
+ g_rec_mutex_lock (&self->mutex);
+
+ if (self->has_bound_at_least_once)
+ {
+ g_critical ("Cannot add signals after setting target");
+ g_rec_mutex_unlock (&self->mutex);
+ return;
+ }
+
+ if ((flags & G_CONNECT_SWAPPED) != 0)
+ closure = g_cclosure_new_swap (c_handler, data, notify);
+ else
+ closure = g_cclosure_new (c_handler, data, notify);
+
+ handler = g_slice_new0 (SignalHandler);
+ handler->group = self;
+ handler->signal_id = signal_id;
+ handler->signal_detail = signal_detail;
+ handler->closure = g_closure_ref (closure);
+ handler->connect_after = ((flags & G_CONNECT_AFTER) != 0);
+
+ g_closure_sink (closure);
+
+ if (is_object)
+ {
+ /* Set closure->is_invalid when data is disposed. We only track this to avoid
+ * reconnecting in the future. However, we do a round of cleanup when ever we
+ * connect a new object or the target changes to GC the old handlers.
+ */
+ g_object_watch_closure (data, closure);
+ }
+
+ g_ptr_array_add (self->handlers, handler);
+
+ target = g_weak_ref_get (&self->target_ref);
+
+ if (target != NULL)
+ {
+ g_signal_group_bind_handler (self, handler, target);
+ g_object_unref (target);
+ }
+
+ /* Lazily remove any old handlers on connect */
+ g_signal_group_gc_handlers (self);
+
+ g_rec_mutex_unlock (&self->mutex);
+}
+
+/**
+ * g_signal_group_connect_object: (skip)
+ * @self: a #GSignalGroup
+ * @detailed_signal: a string of the form `signal-name` with optional `::signal-detail`
+ * @c_handler: (scope notified): the #GCallback to connect
+ * @object: (not nullable) (transfer none): the #GObject to pass as data to @c_handler calls
+ * @flags: #GConnectFlags for the signal connection
+ *
+ * Connects @c_handler to the signal @detailed_signal on #GSignalGroup:target.
+ *
+ * Ensures that the @object stays alive during the call to @c_handler
+ * by temporarily adding a reference count. When the @object is destroyed
+ * the signal handler will automatically be removed.
+ *
+ * You cannot connect a signal handler after #GSignalGroup:target has been set.
+ *
+ * Since: 2.72
+ */
+void
+g_signal_group_connect_object (GSignalGroup *self,
+ const gchar *detailed_signal,
+ GCallback c_handler,
+ gpointer object,
+ GConnectFlags flags)
+{
+ g_return_if_fail (G_IS_OBJECT (object));
+
+ g_signal_group_connect_full (self, detailed_signal, c_handler, object, NULL,
+ flags, TRUE);
+}
+
+/**
+ * g_signal_group_connect_data:
+ * @self: a #GSignalGroup
+ * @detailed_signal: a string of the form "signal-name::detail"
+ * @c_handler: (scope notified) (closure data) (destroy notify): the #GCallback to connect
+ * @data: the data to pass to @c_handler calls
+ * @notify: function to be called when disposing of @self
+ * @flags: the flags used to create the signal connection
+ *
+ * Connects @c_handler to the signal @detailed_signal
+ * on the target instance of @self.
+ *
+ * You cannot connect a signal handler after #GSignalGroup:target has been set.
+ *
+ * Since: 2.72
+ */
+void
+g_signal_group_connect_data (GSignalGroup *self,
+ const gchar *detailed_signal,
+ GCallback c_handler,
+ gpointer data,
+ GClosureNotify notify,
+ GConnectFlags flags)
+{
+ g_signal_group_connect_full (self, detailed_signal, c_handler, data, notify,
+ flags, FALSE);
+}
+
+/**
+ * g_signal_group_connect: (skip)
+ * @self: a #GSignalGroup
+ * @detailed_signal: a string of the form "signal-name::detail"
+ * @c_handler: (scope notified): the #GCallback to connect
+ * @data: the data to pass to @c_handler calls
+ *
+ * Connects @c_handler to the signal @detailed_signal
+ * on the target instance of @self.
+ *
+ * You cannot connect a signal handler after #GSignalGroup:target has been set.
+ *
+ * Since: 2.72
+ */
+void
+g_signal_group_connect (GSignalGroup *self,
+ const gchar *detailed_signal,
+ GCallback c_handler,
+ gpointer data)
+{
+ g_signal_group_connect_full (self, detailed_signal, c_handler, data, NULL,
+ 0, FALSE);
+}
+
+/**
+ * g_signal_group_connect_after: (skip)
+ * @self: a #GSignalGroup
+ * @detailed_signal: a string of the form "signal-name::detail"
+ * @c_handler: (scope notified): the #GCallback to connect
+ * @data: the data to pass to @c_handler calls
+ *
+ * Connects @c_handler to the signal @detailed_signal
+ * on the target instance of @self.
+ *
+ * The @c_handler will be called after the default handler of the signal.
+ *
+ * You cannot connect a signal handler after #GSignalGroup:target has been set.
+ *
+ * Since: 2.72
+ */
+void
+g_signal_group_connect_after (GSignalGroup *self,
+ const gchar *detailed_signal,
+ GCallback c_handler,
+ gpointer data)
+{
+ g_signal_group_connect_full (self, detailed_signal, c_handler,
+ data, NULL, G_CONNECT_AFTER, FALSE);
+}
+
+/**
+ * g_signal_group_connect_swapped:
+ * @self: a #GSignalGroup
+ * @detailed_signal: a string of the form "signal-name::detail"
+ * @c_handler: (scope async): the #GCallback to connect
+ * @data: the data to pass to @c_handler calls
+ *
+ * Connects @c_handler to the signal @detailed_signal
+ * on the target instance of @self.
+ *
+ * The instance on which the signal is emitted and @data
+ * will be swapped when calling @c_handler.
+ *
+ * You cannot connect a signal handler after #GSignalGroup:target has been set.
+ *
+ * Since: 2.72
+ */
+void
+g_signal_group_connect_swapped (GSignalGroup *self,
+ const gchar *detailed_signal,
+ GCallback c_handler,
+ gpointer data)
+{
+ g_signal_group_connect_full (self, detailed_signal, c_handler, data, NULL,
+ G_CONNECT_SWAPPED, FALSE);
+}
diff --git a/gobject/gsignalgroup.h b/gobject/gsignalgroup.h
new file mode 100644
index 000000000..c82a5cd4f
--- /dev/null
+++ b/gobject/gsignalgroup.h
@@ -0,0 +1,93 @@
+/* GObject - GLib Type, Object, Parameter and Signal Library
+ *
+ * Copyright (C) 2015-2022 Christian Hergert <christian@hergert.me>
+ * Copyright (C) 2015 Garrett Regier <garrettregier@gmail.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ *
+ * SPDX-License-Identifier: LGPL-2.1-or-later
+ */
+
+#ifndef __G_SIGNAL_GROUP_H__
+#define __G_SIGNAL_GROUP_H__
+
+#if !defined (__GLIB_GOBJECT_H_INSIDE__) && !defined (GOBJECT_COMPILATION)
+#error "Only <glib-object.h> can be included directly."
+#endif
+
+#include <glib.h>
+#include <gobject/gobject.h>
+#include <gobject/gsignal.h>
+
+G_BEGIN_DECLS
+
+#define G_SIGNAL_GROUP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), G_TYPE_SIGNAL_GROUP, GSignalGroup))
+#define G_IS_SIGNAL_GROUP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), G_TYPE_SIGNAL_GROUP))
+#define G_TYPE_SIGNAL_GROUP (g_signal_group_get_type())
+
+/**
+ * GSignalGroup:
+ *
+ * #GSignalGroup is an opaque structure whose members
+ * cannot be accessed directly.
+ *
+ * Since: 2.72
+ */
+typedef struct _GSignalGroup GSignalGroup;
+
+GLIB_AVAILABLE_IN_2_72
+GType g_signal_group_get_type (void) G_GNUC_CONST;
+GLIB_AVAILABLE_IN_2_72
+GSignalGroup *g_signal_group_new (GType target_type);
+GLIB_AVAILABLE_IN_2_72
+void g_signal_group_set_target (GSignalGroup *self,
+ gpointer target);
+GLIB_AVAILABLE_IN_2_72
+gpointer g_signal_group_dup_target (GSignalGroup *self);
+GLIB_AVAILABLE_IN_2_72
+void g_signal_group_block (GSignalGroup *self);
+GLIB_AVAILABLE_IN_2_72
+void g_signal_group_unblock (GSignalGroup *self);
+GLIB_AVAILABLE_IN_2_72
+void g_signal_group_connect_object (GSignalGroup *self,
+ const gchar *detailed_signal,
+ GCallback c_handler,
+ gpointer object,
+ GConnectFlags flags);
+GLIB_AVAILABLE_IN_2_72
+void g_signal_group_connect_data (GSignalGroup *self,
+ const gchar *detailed_signal,
+ GCallback c_handler,
+ gpointer data,
+ GClosureNotify notify,
+ GConnectFlags flags);
+GLIB_AVAILABLE_IN_2_72
+void g_signal_group_connect (GSignalGroup *self,
+ const gchar *detailed_signal,
+ GCallback c_handler,
+ gpointer data);
+GLIB_AVAILABLE_IN_2_72
+void g_signal_group_connect_after (GSignalGroup *self,
+ const gchar *detailed_signal,
+ GCallback c_handler,
+ gpointer data);
+GLIB_AVAILABLE_IN_2_72
+void g_signal_group_connect_swapped (GSignalGroup *self,
+ const gchar *detailed_signal,
+ GCallback c_handler,
+ gpointer data);
+
+G_END_DECLS
+
+#endif /* __G_SIGNAL_GROUP_H__ */
diff --git a/gobject/gtype.c b/gobject/gtype.c
index 26ec30b7b..cf213b760 100644
--- a/gobject/gtype.c
+++ b/gobject/gtype.c
@@ -2199,8 +2199,8 @@ type_class_init_Wm (TypeNode *node,
if (pclass)
{
- TypeNode *pnode = lookup_type_node_I (pclass->g_type);
-
+ pnode = lookup_type_node_I (pclass->g_type);
+
memcpy (class, pclass, pnode->data->class.class_size);
memcpy (G_STRUCT_MEMBER_P (class, ALIGN_STRUCT (node->data->class.class_size)), G_STRUCT_MEMBER_P (pclass, ALIGN_STRUCT (pnode->data->class.class_size)), pnode->data->class.class_private_size);
@@ -2849,7 +2849,7 @@ g_type_register_static (GType parent_type,
* instances (if not abstract). The value of @flags determines the nature
* (e.g. abstract or not) of the type.
*
- * Returns: the new type identifier or #G_TYPE_INVALID if registration failed
+ * Returns: the new type identifier or %G_TYPE_INVALID if registration failed
*/
GType
g_type_register_dynamic (GType parent_type,
@@ -4521,7 +4521,23 @@ gobject_init (void)
_g_signal_init ();
}
-#if defined (G_OS_WIN32)
+#ifdef G_PLATFORM_WIN32
+
+void gobject_win32_init (void);
+
+void
+gobject_win32_init (void)
+{
+ /* May be called more than once in static compilation mode */
+ static gboolean win32_already_init = FALSE;
+ if (!win32_already_init)
+ {
+ win32_already_init = TRUE;
+ gobject_init ();
+ }
+}
+
+#ifndef GLIB_STATIC_COMPILATION
BOOL WINAPI DllMain (HINSTANCE hinstDLL,
DWORD fdwReason,
@@ -4535,7 +4551,7 @@ DllMain (HINSTANCE hinstDLL,
switch (fdwReason)
{
case DLL_PROCESS_ATTACH:
- gobject_init ();
+ gobject_win32_init ();
break;
default:
@@ -4546,22 +4562,56 @@ DllMain (HINSTANCE hinstDLL,
return TRUE;
}
-#elif defined (G_HAS_CONSTRUCTORS)
+#elif defined(G_HAS_CONSTRUCTORS) /* && G_PLATFORM_WIN32 && GLIB_STATIC_COMPILATION */
+extern void glib_win32_init (void);
+
#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA
#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(gobject_init_ctor)
#endif
+
G_DEFINE_CONSTRUCTOR(gobject_init_ctor)
static void
gobject_init_ctor (void)
{
- gobject_init ();
+ /* When built dynamically, module initialization is done through DllMain
+ * function which is called when the dynamic library is loaded by the glib
+ * module. So, in dynamic configuration glib is always initialized BEFORE
+ * gobject.
+ *
+ * When built statically, initialization mechanism relies on hooking
+ * functions to the CRT section directly at compilation time. As we don't
+ * control how each compilation unit will be built and in which order, we
+ * obtain the same kind of issue as the "static initialization order fiasco".
+ * In this case, we must ensure explicitly that glib is always well
+ * initialized BEFORE gobject.
+ */
+ glib_win32_init ();
+ gobject_win32_init ();
}
-#else
+#else /* G_PLATFORM_WIN32 && GLIB_STATIC_COMPILATION && !G_HAS_CONSTRUCTORS */
# error Your platform/compiler is missing constructor support
+#endif /* GLIB_STATIC_COMPILATION */
+
+#elif defined(G_HAS_CONSTRUCTORS) /* && !G_PLATFORM_WIN32 */
+
+#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA
+#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(gobject_init_ctor)
#endif
+G_DEFINE_CONSTRUCTOR (gobject_init_ctor)
+
+static void
+gobject_init_ctor (void)
+{
+ gobject_init ();
+}
+
+#else /* !G_PLATFORM_WIN32 && !G_HAS_CONSTRUCTORS */
+#error Your platform/compiler is missing constructor support
+#endif /* G_PLATFORM_WIN32 */
+
/**
* g_type_class_add_private:
* @g_class: (type GObject.TypeClass): class structure for an instantiatable
@@ -4709,7 +4759,7 @@ g_type_add_instance_private (GType class_gtype,
* register the private data size in the get_type() implementation and we
* hide it behind a macro. the function will return the private size, instead
* of the offset, which will be stored inside a static variable defined by
- * the G_DEFINE_TYPE_EXTENDED macro. the G_DEFINE_TYPE_EXTENDED macro will
+ * the G_DEFINE_TYPE_EXTENDED() macro. the G_DEFINE_TYPE_EXTENDED() macro will
* check the variable and call g_type_class_add_instance_private(), which
* will use the data size and actually register the private data, then
* return the computed offset of the private data, which will be stored
diff --git a/gobject/gtype.h b/gobject/gtype.h
index 874a7c00c..2aa5e1316 100644
--- a/gobject/gtype.h
+++ b/gobject/gtype.h
@@ -72,7 +72,7 @@ G_BEGIN_DECLS
*
* The fundamental type corresponding to #gchar.
*
- * The type designated by G_TYPE_CHAR is unconditionally an 8-bit signed integer.
+ * The type designated by %G_TYPE_CHAR is unconditionally an 8-bit signed integer.
* This may or may not be the same type a the C type "gchar".
*/
#define G_TYPE_CHAR G_TYPE_MAKE_FUNDAMENTAL (3)
@@ -654,7 +654,7 @@ struct _GTypeQuery
* This macro should only be used in type implementations.
*
* Since: 2.4
- * Deprecated: 2.58: Use %G_ADD_PRIVATE and the generated
+ * Deprecated: 2.58: Use G_ADD_PRIVATE() and the generated
* `your_type_get_instance_private()` function instead
* Returns: (not nullable): a pointer to the private data structure
*/
@@ -1210,7 +1210,7 @@ struct _GInterfaceInfo
* return NULL;
* ]|
* It should be noted, that it is generally a bad idea to follow the
- * #G_VALUE_NOCOPY_CONTENTS hint for reference counted types. Due to
+ * %G_VALUE_NOCOPY_CONTENTS hint for reference counted types. Due to
* reentrancy requirements and reference count assertions performed
* by the signal emission code, reference counts should always be
* incremented for reference counted contents stored in the value->data
@@ -1401,6 +1401,17 @@ guint g_type_get_type_registration_serial (void);
* #endif
* ]|
*
+ * And use it as follow in your C file:
+ *
+ * |[<!-- language="C" -->
+ * struct _MyAppWindow
+ * {
+ * GtkWindow parent;
+ * ...
+ * };
+ * G_DEFINE_TYPE (MyAppWindow, my_app_window, GTK_TYPE_WINDOW)
+ * ]|
+ *
* This results in the following things happening:
*
* - the usual `my_app_window_get_type()` function is declared with a return type of #GType
@@ -1491,6 +1502,18 @@ guint g_type_get_type_registration_serial (void);
* #endif
* ]|
*
+ * Since the instance structure is public it is often needed to declare a
+ * private struct as follow in your C file:
+ *
+ * |[<!-- language="C" -->
+ * typedef struct _GtkFrobberPrivate GtkFrobberPrivate;
+ * struct _GtkFrobberPrivate
+ * {
+ * ...
+ * };
+ * G_DEFINE_TYPE_WITH_PRIVATE (GtkFrobber, gtk_frobber, GTK_TYPE_WIDGET)
+ * ]|
+ *
* This results in the following things happening:
*
* - the usual `gtk_frobber_get_type()` function is declared with a return type of #GType
@@ -1585,6 +1608,18 @@ guint g_type_get_type_registration_serial (void);
* #endif
* ]|
*
+ * And use it as follow in your C file:
+ *
+ * |[<!-- language="C" -->
+ * G_DEFINE_INTERFACE (MyModel, my_model, G_TYPE_OBJECT);
+ *
+ * static void
+ * my_model_default_init (MyModelInterface *iface)
+ * {
+ * ...
+ * }
+ * ]|
+ *
* This results in the following things happening:
*
* - the usual `my_model_get_type()` function is declared with a return type of #GType
@@ -1649,7 +1684,7 @@ guint g_type_get_type_registration_serial (void);
*
* A convenience macro for type implementations.
*
- * Similar to G_DEFINE_TYPE(), but allows you to insert custom code into the
+ * Similar to G_DEFINE_TYPE(), but allows you to insert custom code into the
* `*_get_type()` function, e.g. interface implementations via G_IMPLEMENT_INTERFACE().
* See G_DEFINE_TYPE_EXTENDED() for an example.
*
@@ -1709,7 +1744,7 @@ guint g_type_get_type_registration_serial (void);
*
* Similar to G_DEFINE_TYPE_WITH_CODE(), but defines an abstract type and
* allows you to insert custom code into the `*_get_type()` function, e.g.
- * interface implementations via G_IMPLEMENT_INTERFACE().
+ * interface implementations via G_IMPLEMENT_INTERFACE().
*
* See G_DEFINE_TYPE_EXTENDED() for an example.
*
@@ -1758,7 +1793,7 @@ guint g_type_get_type_registration_serial (void);
*
* Similar to G_DEFINE_TYPE_WITH_CODE(), but defines a final type and
* allows you to insert custom code into the `*_get_type()` function, e.g.
- * interface implementations via G_IMPLEMENT_INTERFACE().
+ * interface implementations via G_IMPLEMENT_INTERFACE().
*
* See G_DEFINE_TYPE_EXTENDED() for an example.
*
@@ -1981,6 +2016,12 @@ guint g_type_get_type_registration_serial (void);
* }
* ]|
*
+ * Since GLib 2.72, the returned `MyObjectPrivate` pointer is guaranteed to be
+ * aligned to at least the alignment of the largest basic GLib type (typically
+ * this is #guint64 or #gdouble). If you need larger alignment for an element in
+ * the struct, you should allocate it on the heap (aligned), or arrange for your
+ * `MyObjectPrivate` struct to be appropriately padded.
+ *
* Note that this macro can only be used together with the `G_DEFINE_TYPE_*`
* macros, since it depends on variable names from those macros.
*
@@ -2215,7 +2256,7 @@ type_name##_get_type (void) \
* register_rectangle_transform_funcs (g_define_type_id))
* ]|
*
- * Similarly to the %G_DEFINE_TYPE family of macros, the #GType of the newly
+ * Similarly to the `G_DEFINE_TYPE_*` family of macros, the #GType of the newly
* defined boxed type is exposed in the `g_define_type_id` variable.
*
* Since: 2.26
@@ -2414,9 +2455,9 @@ const gchar * g_type_name_from_class (GTypeClass *g_class);
/* --- implementation bits --- */
#ifndef G_DISABLE_CAST_CHECKS
# define _G_TYPE_CIC(ip, gt, ct) \
- ((ct*) g_type_check_instance_cast ((GTypeInstance*) ip, gt))
+ ((ct*) (void *) g_type_check_instance_cast ((GTypeInstance*) ip, gt))
# define _G_TYPE_CCC(cp, gt, ct) \
- ((ct*) g_type_check_class_cast ((GTypeClass*) cp, gt))
+ ((ct*) (void *) g_type_check_class_cast ((GTypeClass*) cp, gt))
#else /* G_DISABLE_CAST_CHECKS */
# define _G_TYPE_CIC(ip, gt, ct) ((ct*) ip)
# define _G_TYPE_CCC(cp, gt, ct) ((ct*) cp)
diff --git a/gobject/gvaluecollector.h b/gobject/gvaluecollector.h
index 2714b36a7..82e675cdd 100644
--- a/gobject/gvaluecollector.h
+++ b/gobject/gvaluecollector.h
@@ -144,8 +144,8 @@ G_STMT_START { \
* `va_list` variables cannot be passed by reference.
*
* Note: If you are creating the @value argument just before calling this macro,
- * you should use the #G_VALUE_COLLECT_INIT variant and pass the uninitialized
- * #GValue. That variant is faster than #G_VALUE_COLLECT.
+ * you should use the G_VALUE_COLLECT_INIT() variant and pass the uninitialized
+ * #GValue. That variant is faster than G_VALUE_COLLECT().
*/
#define G_VALUE_COLLECT(value, var_args, flags, __error) G_STMT_START { \
GValue *g_vc_value = (value); \
diff --git a/gobject/gvaluetypes.h b/gobject/gvaluetypes.h
index df2f0aa99..f37504b3c 100644
--- a/gobject/gvaluetypes.h
+++ b/gobject/gvaluetypes.h
@@ -306,7 +306,7 @@ void g_value_set_string_take_ownership (GValue *value,
/**
* gchararray:
*
- * A C representable type name for #G_TYPE_STRING.
+ * A C representable type name for %G_TYPE_STRING.
*/
typedef gchar* gchararray;
diff --git a/gobject/meson.build b/gobject/meson.build
index 536f15393..026a0351e 100644
--- a/gobject/meson.build
+++ b/gobject/meson.build
@@ -2,6 +2,7 @@ gobject_install_headers = files(
'gobject-autocleanups.h',
'glib-types.h',
'gbinding.h',
+ 'gbindinggroup.h',
'gboxed.h',
'gclosure.h',
'genums.h',
@@ -10,6 +11,7 @@ gobject_install_headers = files(
'gparam.h',
'gparamspecs.h',
'gsignal.h',
+ 'gsignalgroup.h',
'gsourceclosure.h',
'gtype.h',
'gtypemodule.h',
@@ -25,6 +27,7 @@ install_headers(gobject_install_headers, subdir : 'glib-2.0/gobject')
gobject_sources = files(
'gatomicarray.c',
'gbinding.c',
+ 'gbindinggroup.c',
'gboxed.c',
'gclosure.c',
'genums.c',
@@ -33,6 +36,7 @@ gobject_sources = files(
'gparam.c',
'gparamspecs.c',
'gsignal.c',
+ 'gsignalgroup.c',
'gsourceclosure.c',
'gtype.c',
'gtypemodule.c',
@@ -43,7 +47,7 @@ gobject_sources = files(
'gvaluetypes.c',
)
-if host_system == 'windows'
+if host_system == 'windows' and get_option('default_library') == 'shared'
gobject_win_rc = configure_file(
input: 'gobject.rc.in',
output: 'gobject.rc',
@@ -117,6 +121,10 @@ glib_enumtypes_c = custom_target('glib_enumtypes_c',
glib_enumtypes_dep = declare_dependency(sources : [glib_enumtypes_h])
+# Expose as variable to be used by gobject-introspection
+# when it includes GLib as a subproject
+glib_types_h = files('glib-types.h')
+
libgobject = library('gobject-2.0',
gobject_dtrace_obj, gobject_dtrace_hdr, glib_enumtypes_h, glib_enumtypes_c,
sources : gobject_sources,
@@ -159,8 +167,16 @@ configure_file(
output: 'libgobject-2.0.so.@0@-gdb.py'.format(library_version),
configuration: gdb_conf,
install_dir: gdb_install_dir,
+ install: gdb_install,
)
+# This is needed to make gdb find gobject_gdb.py
+if meson.version().version_compare('>=0.58')
+ env = environment()
+ env.prepend('PYTHONPATH', meson.current_source_dir())
+ meson.add_devenv(env)
+endif
+
if enable_systemtap
gobject_stp = configure_file(input : 'gobject.stp.in',
output : '@0@.stp'.format(libgobject.full_path().split('/').get(-1)),
diff --git a/gobject/tests/bindinggroup.c b/gobject/tests/bindinggroup.c
new file mode 100644
index 000000000..94bc9b968
--- /dev/null
+++ b/gobject/tests/bindinggroup.c
@@ -0,0 +1,694 @@
+/* GObject - GLib Type, Object, Parameter and Signal Library
+ *
+ * Copyright (C) 2015-2022 Christian Hergert <christian@hergert.me>
+ * Copyright (C) 2015 Garrett Regier <garrettregier@gmail.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ *
+ * SPDX-License-Identifier: LGPL-2.1-or-later
+ */
+
+#include <glib-object.h>
+
+/* Copied from glib */
+typedef struct _BindingSource
+{
+ GObject parent_instance;
+
+ gint foo;
+ gint bar;
+ gdouble value;
+ gboolean toggle;
+} BindingSource;
+
+typedef struct _BindingSourceClass
+{
+ GObjectClass parent_class;
+} BindingSourceClass;
+
+enum
+{
+ PROP_SOURCE_FOO = 1,
+ PROP_SOURCE_BAR,
+ PROP_SOURCE_VALUE,
+ PROP_SOURCE_TOGGLE
+};
+
+static GType binding_source_get_type (void);
+G_DEFINE_TYPE (BindingSource, binding_source, G_TYPE_OBJECT);
+
+static void
+binding_source_set_property (GObject *gobject,
+ guint prop_id,
+ const GValue *value,
+ GParamSpec *pspec)
+{
+ BindingSource *source = (BindingSource *) gobject;
+
+ switch (prop_id)
+ {
+ case PROP_SOURCE_FOO:
+ source->foo = g_value_get_int (value);
+ break;
+
+ case PROP_SOURCE_BAR:
+ source->bar = g_value_get_int (value);
+ break;
+
+ case PROP_SOURCE_VALUE:
+ source->value = g_value_get_double (value);
+ break;
+
+ case PROP_SOURCE_TOGGLE:
+ source->toggle = g_value_get_boolean (value);
+ break;
+
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (gobject, prop_id, pspec);
+ }
+}
+
+static void
+binding_source_get_property (GObject *gobject,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
+{
+ BindingSource *source = (BindingSource *) gobject;
+
+ switch (prop_id)
+ {
+ case PROP_SOURCE_FOO:
+ g_value_set_int (value, source->foo);
+ break;
+
+ case PROP_SOURCE_BAR:
+ g_value_set_int (value, source->bar);
+ break;
+
+ case PROP_SOURCE_VALUE:
+ g_value_set_double (value, source->value);
+ break;
+
+ case PROP_SOURCE_TOGGLE:
+ g_value_set_boolean (value, source->toggle);
+ break;
+
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (gobject, prop_id, pspec);
+ }
+}
+
+static void
+binding_source_class_init (BindingSourceClass *klass)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+
+ gobject_class->set_property = binding_source_set_property;
+ gobject_class->get_property = binding_source_get_property;
+
+ g_object_class_install_property (gobject_class, PROP_SOURCE_FOO,
+ g_param_spec_int ("foo", "Foo", "Foo",
+ -1, 100,
+ 0,
+ G_PARAM_READWRITE));
+ g_object_class_install_property (gobject_class, PROP_SOURCE_BAR,
+ g_param_spec_int ("bar", "Bar", "Bar",
+ -1, 100,
+ 0,
+ G_PARAM_READWRITE));
+ g_object_class_install_property (gobject_class, PROP_SOURCE_VALUE,
+ g_param_spec_double ("value", "Value", "Value",
+ -100.0, 200.0,
+ 0.0,
+ G_PARAM_READWRITE));
+ g_object_class_install_property (gobject_class, PROP_SOURCE_TOGGLE,
+ g_param_spec_boolean ("toggle", "Toggle", "Toggle",
+ FALSE,
+ G_PARAM_READWRITE));
+}
+
+static void
+binding_source_init (BindingSource *self)
+{
+}
+
+typedef struct _BindingTarget
+{
+ GObject parent_instance;
+
+ gint bar;
+ gdouble value;
+ gboolean toggle;
+} BindingTarget;
+
+typedef struct _BindingTargetClass
+{
+ GObjectClass parent_class;
+} BindingTargetClass;
+
+enum
+{
+ PROP_TARGET_BAR = 1,
+ PROP_TARGET_VALUE,
+ PROP_TARGET_TOGGLE
+};
+
+static GType binding_target_get_type (void);
+G_DEFINE_TYPE (BindingTarget, binding_target, G_TYPE_OBJECT);
+
+static void
+binding_target_set_property (GObject *gobject,
+ guint prop_id,
+ const GValue *value,
+ GParamSpec *pspec)
+{
+ BindingTarget *target = (BindingTarget *) gobject;
+
+ switch (prop_id)
+ {
+ case PROP_TARGET_BAR:
+ target->bar = g_value_get_int (value);
+ break;
+
+ case PROP_TARGET_VALUE:
+ target->value = g_value_get_double (value);
+ break;
+
+ case PROP_TARGET_TOGGLE:
+ target->toggle = g_value_get_boolean (value);
+ break;
+
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (gobject, prop_id, pspec);
+ }
+}
+
+static void
+binding_target_get_property (GObject *gobject,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
+{
+ BindingTarget *target = (BindingTarget *) gobject;
+
+ switch (prop_id)
+ {
+ case PROP_TARGET_BAR:
+ g_value_set_int (value, target->bar);
+ break;
+
+ case PROP_TARGET_VALUE:
+ g_value_set_double (value, target->value);
+ break;
+
+ case PROP_TARGET_TOGGLE:
+ g_value_set_boolean (value, target->toggle);
+ break;
+
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (gobject, prop_id, pspec);
+ }
+}
+
+static void
+binding_target_class_init (BindingTargetClass *klass)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+
+ gobject_class->set_property = binding_target_set_property;
+ gobject_class->get_property = binding_target_get_property;
+
+ g_object_class_install_property (gobject_class, PROP_TARGET_BAR,
+ g_param_spec_int ("bar", "Bar", "Bar",
+ -1, 100,
+ 0,
+ G_PARAM_READWRITE));
+ g_object_class_install_property (gobject_class, PROP_TARGET_VALUE,
+ g_param_spec_double ("value", "Value", "Value",
+ -100.0, 200.0,
+ 0.0,
+ G_PARAM_READWRITE));
+ g_object_class_install_property (gobject_class, PROP_TARGET_TOGGLE,
+ g_param_spec_boolean ("toggle", "Toggle", "Toggle",
+ FALSE,
+ G_PARAM_READWRITE));
+}
+
+static void
+binding_target_init (BindingTarget *self)
+{
+}
+
+static gboolean
+celsius_to_fahrenheit (GBinding *binding,
+ const GValue *from_value,
+ GValue *to_value,
+ gpointer user_data G_GNUC_UNUSED)
+{
+ gdouble celsius, fahrenheit;
+
+ g_assert_true (G_VALUE_HOLDS (from_value, G_TYPE_DOUBLE));
+ g_assert_true (G_VALUE_HOLDS (to_value, G_TYPE_DOUBLE));
+
+ celsius = g_value_get_double (from_value);
+ fahrenheit = (9 * celsius / 5) + 32.0;
+
+ if (g_test_verbose ())
+ g_printerr ("Converting %.2fC to %.2fF\n", celsius, fahrenheit);
+
+ g_value_set_double (to_value, fahrenheit);
+
+ return TRUE;
+}
+
+static gboolean
+fahrenheit_to_celsius (GBinding *binding,
+ const GValue *from_value,
+ GValue *to_value,
+ gpointer user_data G_GNUC_UNUSED)
+{
+ gdouble celsius, fahrenheit;
+
+ g_assert_true (G_VALUE_HOLDS (from_value, G_TYPE_DOUBLE));
+ g_assert_true (G_VALUE_HOLDS (to_value, G_TYPE_DOUBLE));
+
+ fahrenheit = g_value_get_double (from_value);
+ celsius = 5 * (fahrenheit - 32.0) / 9;
+
+ if (g_test_verbose ())
+ g_printerr ("Converting %.2fF to %.2fC\n", fahrenheit, celsius);
+
+ g_value_set_double (to_value, celsius);
+
+ return TRUE;
+}
+
+static void
+test_binding_group_invalid (void)
+{
+ GBindingGroup *group = g_binding_group_new ();
+ BindingSource *source = g_object_new (binding_source_get_type (), NULL);
+ BindingTarget *target = g_object_new (binding_target_get_type (), NULL);
+
+ /* Invalid Target Property */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*find_property*target_property*!=*NULL*");
+ g_binding_group_bind (group, "value",
+ target, "does-not-exist",
+ G_BINDING_DEFAULT);
+ g_test_assert_expected_messages ();
+
+ g_binding_group_set_source (group, NULL);
+
+ /* Invalid Source Property */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*find_property*source_property*!=*NULL*");
+ g_binding_group_set_source (group, source);
+ g_binding_group_bind (group, "does-not-exist",
+ target, "value",
+ G_BINDING_DEFAULT);
+ g_test_assert_expected_messages ();
+
+ g_binding_group_set_source (group, NULL);
+
+ /* Invalid Source */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*find_property*->source_property*!=*NULL*");
+ g_binding_group_bind (group, "does-not-exist",
+ target, "value",
+ G_BINDING_DEFAULT);
+ g_binding_group_set_source (group, source);
+ g_test_assert_expected_messages ();
+
+ g_object_unref (target);
+ g_object_unref (source);
+ g_object_unref (group);
+}
+
+static void
+test_binding_group_default (void)
+{
+ gsize i, j;
+ GBindingGroup *group = g_binding_group_new ();
+ BindingSource *source = g_object_new (binding_source_get_type (), NULL);
+ BindingTarget *targets[5];
+ BindingSource *readback;
+
+ for (i = 0; i < G_N_ELEMENTS (targets); ++i)
+ {
+ targets[i] = g_object_new (binding_target_get_type (), NULL);
+ g_binding_group_bind (group, "foo",
+ targets[i], "bar",
+ G_BINDING_DEFAULT);
+ }
+
+ g_assert_null (g_binding_group_dup_source (group));
+ g_binding_group_set_source (group, source);
+ readback = g_binding_group_dup_source (group);
+ g_assert_true (readback == source);
+ g_object_unref (readback);
+
+ for (i = 0; i < 2; ++i)
+ {
+ g_object_set (source, "foo", 42, NULL);
+ for (j = 0; j < G_N_ELEMENTS (targets); ++j)
+ g_assert_cmpint (source->foo, ==, targets[j]->bar);
+
+ g_object_set (targets[0], "bar", 47, NULL);
+ g_assert_cmpint (source->foo, !=, targets[0]->bar);
+
+ /* Check that we transition the source correctly */
+ g_binding_group_set_source (group, NULL);
+ g_assert_null (g_binding_group_dup_source (group));
+ g_binding_group_set_source (group, source);
+ readback = g_binding_group_dup_source (group);
+ g_assert_true (readback == source);
+ g_object_unref (readback);
+ }
+
+ g_object_unref (group);
+
+ g_object_set (source, "foo", 0, NULL);
+ for (i = 0; i < G_N_ELEMENTS (targets); ++i)
+ g_assert_cmpint (source->foo, !=, targets[i]->bar);
+
+ g_object_unref (source);
+ for (i = 0; i < G_N_ELEMENTS (targets); ++i)
+ g_object_unref (targets[i]);
+}
+
+static void
+test_binding_group_bidirectional (void)
+{
+ gsize i, j;
+ GBindingGroup *group = g_binding_group_new ();
+ BindingSource *source = g_object_new (binding_source_get_type (), NULL);
+ BindingTarget *targets[5];
+ BindingSource *readback;
+
+ for (i = 0; i < G_N_ELEMENTS (targets); ++i)
+ {
+ targets[i] = g_object_new (binding_target_get_type (), NULL);
+ g_binding_group_bind (group, "value",
+ targets[i], "value",
+ G_BINDING_BIDIRECTIONAL);
+ }
+
+ g_assert_null (g_binding_group_dup_source (group));
+ g_binding_group_set_source (group, source);
+ readback = g_binding_group_dup_source (group);
+ g_assert_true (readback == source);
+ g_object_unref (readback);
+
+ for (i = 0; i < 2; ++i)
+ {
+ g_object_set (source, "value", 42.0, NULL);
+ for (j = 0; j < G_N_ELEMENTS (targets); ++j)
+ g_assert_cmpfloat (source->value, ==, targets[j]->value);
+
+ g_object_set (targets[0], "value", 47.0, NULL);
+ g_assert_cmpfloat (source->value, ==, targets[0]->value);
+
+ /* Check that we transition the source correctly */
+ g_binding_group_set_source (group, NULL);
+ g_assert_null (g_binding_group_dup_source (group));
+ g_binding_group_set_source (group, source);
+ readback = g_binding_group_dup_source (group);
+ g_assert_true (readback == source);
+ g_object_unref (readback);
+ }
+
+ g_object_unref (group);
+
+ g_object_set (targets[0], "value", 0.0, NULL);
+ g_assert_cmpfloat (source->value, !=, targets[0]->value);
+
+ g_object_unref (source);
+ for (i = 0; i < G_N_ELEMENTS (targets); ++i)
+ g_object_unref (targets[i]);
+}
+
+static void
+transform_destroy_notify (gpointer data)
+{
+ gboolean *transform_destroy_called = data;
+
+ *transform_destroy_called = TRUE;
+}
+
+static void
+test_binding_group_transform (void)
+{
+ gboolean transform_destroy_called = FALSE;
+ GBindingGroup *group = g_binding_group_new ();
+ BindingSource *source = g_object_new (binding_source_get_type (), NULL);
+ BindingTarget *target = g_object_new (binding_target_get_type (), NULL);
+
+ g_binding_group_set_source (group, source);
+ g_binding_group_bind_full (group, "value",
+ target, "value",
+ G_BINDING_BIDIRECTIONAL,
+ celsius_to_fahrenheit,
+ fahrenheit_to_celsius,
+ &transform_destroy_called,
+ transform_destroy_notify);
+
+ g_object_set (source, "value", 24.0, NULL);
+ g_assert_cmpfloat (target->value, ==, ((9 * 24.0 / 5) + 32.0));
+
+ g_object_set (target, "value", 69.0, NULL);
+ g_assert_cmpfloat (source->value, ==, (5 * (69.0 - 32.0) / 9));
+
+ /* The GDestroyNotify should only be called when the
+ * set is freed, not when the various GBindings are freed
+ */
+ g_binding_group_set_source (group, NULL);
+ g_assert_false (transform_destroy_called);
+
+ g_object_unref (group);
+ g_assert_true (transform_destroy_called);
+
+ g_object_unref (source);
+ g_object_unref (target);
+}
+
+static void
+test_binding_group_transform_closures (void)
+{
+ gboolean transform_destroy_called_1 = FALSE;
+ gboolean transform_destroy_called_2 = FALSE;
+ GBindingGroup *group = g_binding_group_new ();
+ BindingSource *source = g_object_new (binding_source_get_type (), NULL);
+ BindingTarget *target = g_object_new (binding_target_get_type (), NULL);
+ GClosure *c2f_closure, *f2c_closure;
+
+ c2f_closure = g_cclosure_new (G_CALLBACK (celsius_to_fahrenheit),
+ &transform_destroy_called_1,
+ (GClosureNotify) transform_destroy_notify);
+ f2c_closure = g_cclosure_new (G_CALLBACK (fahrenheit_to_celsius),
+ &transform_destroy_called_2,
+ (GClosureNotify) transform_destroy_notify);
+
+ g_binding_group_set_source (group, source);
+ g_binding_group_bind_with_closures (group, "value",
+ target, "value",
+ G_BINDING_BIDIRECTIONAL,
+ c2f_closure,
+ f2c_closure);
+
+ g_object_set (source, "value", 24.0, NULL);
+ g_assert_cmpfloat (target->value, ==, ((9 * 24.0 / 5) + 32.0));
+
+ g_object_set (target, "value", 69.0, NULL);
+ g_assert_cmpfloat (source->value, ==, (5 * (69.0 - 32.0) / 9));
+
+ /* The GClsoureNotify should only be called when the
+ * set is freed, not when the various GBindings are freed
+ */
+ g_binding_group_set_source (group, NULL);
+ g_assert_false (transform_destroy_called_1);
+ g_assert_false (transform_destroy_called_2);
+
+ g_object_unref (group);
+ g_assert_true (transform_destroy_called_1);
+ g_assert_true (transform_destroy_called_2);
+
+ g_object_unref (source);
+ g_object_unref (target);
+}
+
+static void
+test_binding_group_same_object (void)
+{
+ gsize i;
+ GBindingGroup *group = g_binding_group_new ();
+ BindingSource *source = g_object_new (binding_source_get_type (),
+ "foo", 100,
+ "bar", 50,
+ NULL);
+
+ g_binding_group_set_source (group, source);
+ g_binding_group_bind (group, "foo",
+ source, "bar",
+ G_BINDING_BIDIRECTIONAL);
+
+ for (i = 0; i < 2; ++i)
+ {
+ g_object_set (source, "foo", 10, NULL);
+ g_assert_cmpint (source->foo, ==, 10);
+ g_assert_cmpint (source->bar, ==, 10);
+
+ g_object_set (source, "bar", 30, NULL);
+ g_assert_cmpint (source->foo, ==, 30);
+ g_assert_cmpint (source->bar, ==, 30);
+
+ /* Check that it is possible both when initially
+ * adding the binding and when changing the source
+ */
+ g_binding_group_set_source (group, NULL);
+ g_binding_group_set_source (group, source);
+ }
+
+ g_object_unref (source);
+ g_object_unref (group);
+}
+
+static void
+test_binding_group_weak_ref_source (void)
+{
+ GBindingGroup *group = g_binding_group_new ();
+ BindingSource *source = g_object_new (binding_source_get_type (), NULL);
+ BindingTarget *target = g_object_new (binding_target_get_type (), NULL);
+ BindingSource *readback;
+
+ g_binding_group_set_source (group, source);
+ g_binding_group_bind (group, "value",
+ target, "value",
+ G_BINDING_BIDIRECTIONAL);
+
+ g_object_add_weak_pointer (G_OBJECT (source), (gpointer)&source);
+ readback = g_binding_group_dup_source (group);
+ g_assert_true (readback == source);
+ g_object_unref (readback);
+ g_object_unref (source);
+ g_assert_null (source);
+ g_assert_null (g_binding_group_dup_source (group));
+
+ /* Hopefully this would explode if the binding was still alive */
+ g_object_set (target, "value", 0.0, NULL);
+
+ g_object_unref (target);
+ g_object_unref (group);
+}
+
+static void
+test_binding_group_weak_ref_target (void)
+{
+ GBindingGroup *group = g_binding_group_new ();
+ BindingSource *source = g_object_new (binding_source_get_type (), NULL);
+ BindingTarget *target = g_object_new (binding_target_get_type (), NULL);
+
+ g_binding_group_set_source (group, source);
+ g_binding_group_bind (group, "value",
+ target, "value",
+ G_BINDING_BIDIRECTIONAL);
+
+ g_object_set (source, "value", 47.0, NULL);
+ g_assert_cmpfloat (target->value, ==, 47.0);
+
+ g_object_add_weak_pointer (G_OBJECT (target), (gpointer)&target);
+ g_object_unref (target);
+ g_assert_null (target);
+
+ /* Hopefully this would explode if the binding was still alive */
+ g_object_set (source, "value", 0.0, NULL);
+
+ g_object_unref (source);
+ g_object_unref (group);
+}
+
+static void
+test_binding_group_properties (void)
+{
+ GBindingGroup *group = g_binding_group_new ();
+ BindingSource *source = g_object_new (binding_source_get_type (), NULL);
+ BindingTarget *target = g_object_new (binding_target_get_type (), NULL);
+ BindingSource *other;
+
+ g_binding_group_set_source (group, source);
+ g_binding_group_bind (group, "value",
+ target, "value",
+ G_BINDING_BIDIRECTIONAL);
+
+ g_object_get (group, "source", &other, NULL);
+ g_assert_true (other == source);
+ g_object_unref (other);
+
+ g_object_set (group, "source", NULL, NULL);
+ g_object_get (group, "source", &other, NULL);
+ g_assert_null (other);
+
+ g_object_add_weak_pointer (G_OBJECT (target), (gpointer)&target);
+ g_object_unref (target);
+ g_assert_null (target);
+
+ g_object_unref (source);
+ g_object_unref (group);
+}
+
+static void
+test_binding_group_weak_notify_no_bindings (void)
+{
+ GBindingGroup *group = g_binding_group_new ();
+ BindingSource *source = g_object_new (binding_source_get_type (), NULL);
+
+ g_binding_group_set_source (group, source);
+ g_assert_finalize_object (source);
+ g_assert_finalize_object (group);
+}
+
+static void
+test_binding_group_empty_closures (void)
+{
+ GBindingGroup *group = g_binding_group_new ();
+ BindingSource *source = g_object_new (binding_source_get_type (), NULL);
+ BindingTarget *target = g_object_new (binding_target_get_type (), NULL);
+
+ g_binding_group_bind_full (group, "value", target, "value", 0,
+ NULL, NULL, NULL, NULL);
+
+ g_assert_finalize_object (group);
+ g_assert_finalize_object (target);
+ g_assert_finalize_object (source);
+}
+
+gint
+main (gint argc,
+ gchar *argv[])
+{
+ g_test_init (&argc, &argv, NULL);
+ g_test_add_func ("/GObject/BindingGroup/invalid", test_binding_group_invalid);
+ g_test_add_func ("/GObject/BindingGroup/default", test_binding_group_default);
+ g_test_add_func ("/GObject/BindingGroup/bidirectional", test_binding_group_bidirectional);
+ g_test_add_func ("/GObject/BindingGroup/transform", test_binding_group_transform);
+ g_test_add_func ("/GObject/BindingGroup/transform-closures", test_binding_group_transform_closures);
+ g_test_add_func ("/GObject/BindingGroup/same-object", test_binding_group_same_object);
+ g_test_add_func ("/GObject/BindingGroup/weak-ref-source", test_binding_group_weak_ref_source);
+ g_test_add_func ("/GObject/BindingGroup/weak-ref-target", test_binding_group_weak_ref_target);
+ g_test_add_func ("/GObject/BindingGroup/properties", test_binding_group_properties);
+ g_test_add_func ("/GObject/BindingGroup/weak-notify-no-bindings", test_binding_group_weak_notify_no_bindings);
+ g_test_add_func ("/GObject/BindingGroup/empty-closures", test_binding_group_empty_closures);
+ return g_test_run ();
+}
diff --git a/gobject/tests/cxx.cpp b/gobject/tests/cxx.cpp
new file mode 100644
index 000000000..210c897ee
--- /dev/null
+++ b/gobject/tests/cxx.cpp
@@ -0,0 +1,26 @@
+/* Copyright (C) 2001 Sebastian Wilhelmi <wilhelmi@google.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this library; if not, see <http://www.gnu.org/licenses/>.
+ */
+
+/* A trivial C++ program to be compiled in C++ mode, which
+ * smoketests that the GObject headers are valid C++ headers. */
+
+#include <glib-object.h>
+
+int
+main ()
+{
+ return 0;
+}
diff --git a/gobject/tests/meson.build b/gobject/tests/meson.build
index e97e1bc7e..8d568f00e 100644
--- a/gobject/tests/meson.build
+++ b/gobject/tests/meson.build
@@ -29,11 +29,15 @@ marshalers_c = custom_target('marshalers_c',
gobject_tests = {
'qdata' : {},
'boxed' : {},
+ 'cxx' : {
+ 'source' : ['cxx.cpp'],
+ },
'enums' : {},
'param' : {},
'threadtests' : {},
'dynamictests' : {},
'binding' : {},
+ 'bindinggroup' : {},
'properties' : {},
'reference' : {},
'flags' : {},
@@ -50,6 +54,7 @@ gobject_tests = {
'signals' : {
'source' : ['signals.c', marshalers_h, marshalers_c],
},
+ 'signalgroup' : {},
'testing' : {},
'type-flags' : {},
}
diff --git a/gobject/tests/mkenums.py b/gobject/tests/mkenums.py
index a3273c525..0d0c0d0f4 100644
--- a/gobject/tests/mkenums.py
+++ b/gobject/tests/mkenums.py
@@ -247,7 +247,7 @@ file-tail
value_num,
):
"""Assert that out (from runMkenumsWithHeader()) contains a single
- enum and value matching the given arguments."""
+ enum and value matching the given arguments."""
subs = dict(
{
"enum_name_camel": enum_name_camel,
diff --git a/gobject/tests/param.c b/gobject/tests/param.c
index e1f3cdeb1..692f07d21 100644
--- a/gobject/tests/param.c
+++ b/gobject/tests/param.c
@@ -1,3 +1,27 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000. See the AUTHORS
+ * file for a list of people on the GLib Team. See the ChangeLog
+ * files for a list of changes. These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/.
+ */
+
#ifndef GLIB_DISABLE_DEPRECATION_WARNINGS
#define GLIB_DISABLE_DEPRECATION_WARNINGS
#endif
@@ -6,6 +30,325 @@
#include <stdlib.h>
static void
+test_param_spec_char (void)
+{
+ GParamSpec *pspec;
+ GValue value = G_VALUE_INIT;
+
+ pspec = g_param_spec_char ("char", "nick", "blurb",
+ 20, 40, 30, G_PARAM_READWRITE);
+
+ g_assert_cmpstr (g_param_spec_get_name (pspec), ==, "char");
+ g_assert_cmpstr (g_param_spec_get_nick (pspec), ==, "nick");
+ g_assert_cmpstr (g_param_spec_get_blurb (pspec), ==, "blurb");
+
+ g_value_init (&value, G_TYPE_CHAR);
+ g_value_set_char (&value, 30);
+
+ g_assert_true (g_param_value_defaults (pspec, &value));
+
+ g_value_set_char (&value, 0);
+ g_assert_true (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_char (&value), ==, 20);
+
+ g_value_set_char (&value, 20);
+ g_assert_false (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_char (&value), ==, 20);
+
+ g_value_set_char (&value, 40);
+ g_assert_false (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_char (&value), ==, 40);
+
+ g_value_set_char (&value, 60);
+ g_assert_true (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_char (&value), ==, 40);
+
+ g_value_set_schar (&value, 0);
+ g_assert_true (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_schar (&value), ==, 20);
+
+ g_value_set_schar (&value, 20);
+ g_assert_false (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_schar (&value), ==, 20);
+
+ g_value_set_schar (&value, 40);
+ g_assert_false (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_schar (&value), ==, 40);
+
+ g_value_set_schar (&value, 60);
+ g_assert_true (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_schar (&value), ==, 40);
+
+ g_param_spec_unref (pspec);
+}
+
+static void
+test_param_spec_string (void)
+{
+ GParamSpec *pspec;
+ GValue value = G_VALUE_INIT;
+
+ pspec = g_param_spec_string ("string", "nick", "blurb",
+ NULL, G_PARAM_READWRITE);
+ g_value_init (&value, G_TYPE_STRING);
+
+ g_value_set_string (&value, "foobar");
+ g_assert_false (g_param_value_validate (pspec, &value));
+
+ g_value_set_string (&value, "");
+ g_assert_false (g_param_value_validate (pspec, &value));
+ g_assert_nonnull (g_value_get_string (&value));
+
+ /* test ensure_non_null */
+
+ G_PARAM_SPEC_STRING (pspec)->ensure_non_null = TRUE;
+
+ g_value_set_string (&value, NULL);
+ g_assert_true (g_param_value_validate (pspec, &value));
+ g_assert_nonnull (g_value_get_string (&value));
+
+ G_PARAM_SPEC_STRING (pspec)->ensure_non_null = FALSE;
+
+ /* test null_fold_if_empty */
+
+ G_PARAM_SPEC_STRING (pspec)->null_fold_if_empty = TRUE;
+
+ g_value_set_string (&value, "");
+ g_assert_true (g_param_value_validate (pspec, &value));
+ g_assert_null (g_value_get_string (&value));
+
+ g_value_set_static_string (&value, "");
+ g_assert_true (g_param_value_validate (pspec, &value));
+ g_assert_null (g_value_get_string (&value));
+
+ G_PARAM_SPEC_STRING (pspec)->null_fold_if_empty = FALSE;
+
+ /* test cset_first */
+
+ G_PARAM_SPEC_STRING (pspec)->cset_first = g_strdup ("abc");
+ G_PARAM_SPEC_STRING (pspec)->substitutor = '-';
+
+ g_value_set_string (&value, "ABC");
+ g_assert_true (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_string (&value)[0], ==, '-');
+
+ g_value_set_static_string (&value, "ABC");
+ g_assert_true (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_string (&value)[0], ==, '-');
+
+ /* test cset_nth */
+
+ G_PARAM_SPEC_STRING (pspec)->cset_nth = g_strdup ("abc");
+
+ g_value_set_string (&value, "aBC");
+ g_assert_true (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_string (&value)[1], ==, '-');
+
+ g_value_set_static_string (&value, "aBC");
+ g_assert_true (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_string (&value)[1], ==, '-');
+
+ g_value_unset (&value);
+ g_param_spec_unref (pspec);
+}
+
+static void
+test_param_spec_override (void)
+{
+ GParamSpec *ospec, *pspec;
+ GValue value = G_VALUE_INIT;
+
+ ospec = g_param_spec_char ("char", "nick", "blurb",
+ 20, 40, 30, G_PARAM_READWRITE);
+
+ pspec = g_param_spec_override ("override", ospec);
+
+ g_assert_cmpstr (g_param_spec_get_name (pspec), ==, "override");
+ g_assert_cmpstr (g_param_spec_get_nick (pspec), ==, "nick");
+ g_assert_cmpstr (g_param_spec_get_blurb (pspec), ==, "blurb");
+
+ g_value_init (&value, G_TYPE_CHAR);
+ g_value_set_char (&value, 30);
+
+ g_assert_true (g_param_value_defaults (pspec, &value));
+
+ g_value_set_char (&value, 0);
+ g_assert_true (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_char (&value), ==, 20);
+
+ g_value_set_char (&value, 20);
+ g_assert_false (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_char (&value), ==, 20);
+
+ g_value_set_char (&value, 40);
+ g_assert_false (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_char (&value), ==, 40);
+
+ g_value_set_char (&value, 60);
+ g_assert_true (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_char (&value), ==, 40);
+
+ g_param_spec_unref (pspec);
+ g_param_spec_unref (ospec);
+}
+
+static void
+test_param_spec_gtype (void)
+{
+ GParamSpec *pspec;
+ GValue value = G_VALUE_INIT;
+
+ pspec = g_param_spec_gtype ("gtype", "nick", "blurb",
+ G_TYPE_PARAM, G_PARAM_READWRITE);
+
+ g_value_init (&value, G_TYPE_GTYPE);
+ g_value_set_gtype (&value, G_TYPE_PARAM);
+
+ g_assert_true (g_param_value_defaults (pspec, &value));
+
+ g_value_set_gtype (&value, G_TYPE_INT);
+ g_assert_true (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_gtype (&value), ==, G_TYPE_PARAM);
+
+ g_value_set_gtype (&value, G_TYPE_PARAM_INT);
+ g_assert_false (g_param_value_validate (pspec, &value));
+ g_assert_cmpint (g_value_get_gtype (&value), ==, G_TYPE_PARAM_INT);
+
+ g_param_spec_unref (pspec);
+}
+
+static void
+test_param_spec_variant (void)
+{
+ GParamSpec *pspec;
+ GValue value = G_VALUE_INIT;
+ GValue value2 = G_VALUE_INIT;
+ GValue value3 = G_VALUE_INIT;
+ GValue value4 = G_VALUE_INIT;
+ GValue value5 = G_VALUE_INIT;
+ gboolean modified;
+
+ pspec = g_param_spec_variant ("variant", "nick", "blurb",
+ G_VARIANT_TYPE ("i"),
+ g_variant_new_int32 (42),
+ G_PARAM_READWRITE);
+
+ g_value_init (&value, G_TYPE_VARIANT);
+ g_value_set_variant (&value, g_variant_new_int32 (42));
+
+ g_value_init (&value2, G_TYPE_VARIANT);
+ g_value_set_variant (&value2, g_variant_new_int32 (43));
+
+ g_value_init (&value3, G_TYPE_VARIANT);
+ g_value_set_variant (&value3, g_variant_new_int16 (42));
+
+ g_value_init (&value4, G_TYPE_VARIANT);
+ g_value_set_variant (&value4, g_variant_new_parsed ("[@u 15, @u 10]"));
+
+ g_value_init (&value5, G_TYPE_VARIANT);
+ g_value_set_variant (&value5, NULL);
+
+ g_assert_true (g_param_value_defaults (pspec, &value));
+ g_assert_false (g_param_value_defaults (pspec, &value2));
+ g_assert_false (g_param_value_defaults (pspec, &value3));
+ g_assert_false (g_param_value_defaults (pspec, &value4));
+ g_assert_false (g_param_value_defaults (pspec, &value5));
+
+ modified = g_param_value_validate (pspec, &value);
+ g_assert_false (modified);
+
+ g_value_reset (&value);
+ g_value_set_variant (&value, g_variant_new_uint32 (41));
+ modified = g_param_value_validate (pspec, &value);
+ g_assert_true (modified);
+ g_assert_cmpint (g_variant_get_int32 (g_value_get_variant (&value)), ==, 42);
+ g_value_unset (&value);
+
+ g_value_unset (&value5);
+ g_value_unset (&value4);
+ g_value_unset (&value3);
+ g_value_unset (&value2);
+
+ g_param_spec_unref (pspec);
+}
+
+/* Test g_param_values_cmp() for #GParamSpecVariant. */
+static void
+test_param_spec_variant_cmp (void)
+{
+ const struct
+ {
+ const GVariantType *pspec_type;
+ const gchar *v1;
+ enum
+ {
+ LESS_THAN = -1,
+ EQUAL = 0,
+ GREATER_THAN = 1,
+ NOT_EQUAL,
+ } expected_result;
+ const gchar *v2;
+ }
+ vectors[] =
+ {
+ { G_VARIANT_TYPE ("i"), "@i 1", LESS_THAN, "@i 2" },
+ { G_VARIANT_TYPE ("i"), "@i 2", EQUAL, "@i 2" },
+ { G_VARIANT_TYPE ("i"), "@i 3", GREATER_THAN, "@i 2" },
+ { G_VARIANT_TYPE ("i"), NULL, LESS_THAN, "@i 2" },
+ { G_VARIANT_TYPE ("i"), NULL, EQUAL, NULL },
+ { G_VARIANT_TYPE ("i"), "@i 1", GREATER_THAN, NULL },
+ { G_VARIANT_TYPE ("i"), "@u 1", LESS_THAN, "@u 2" },
+ { G_VARIANT_TYPE ("i"), "@as ['hi']", NOT_EQUAL, "@u 2" },
+ { G_VARIANT_TYPE ("i"), "@as ['hi']", NOT_EQUAL, "@as ['there']" },
+ { G_VARIANT_TYPE ("i"), "@as ['hi']", EQUAL, "@as ['hi']" },
+ };
+ gsize i;
+
+ for (i = 0; i < G_N_ELEMENTS (vectors); i++)
+ {
+ GParamSpec *pspec;
+ GValue v1 = G_VALUE_INIT;
+ GValue v2 = G_VALUE_INIT;
+ gint cmp;
+
+ pspec = g_param_spec_variant ("variant", "nick", "blurb",
+ vectors[i].pspec_type,
+ NULL,
+ G_PARAM_READWRITE);
+
+ g_value_init (&v1, G_TYPE_VARIANT);
+ g_value_set_variant (&v1,
+ (vectors[i].v1 != NULL) ?
+ g_variant_new_parsed (vectors[i].v1) : NULL);
+
+ g_value_init (&v2, G_TYPE_VARIANT);
+ g_value_set_variant (&v2,
+ (vectors[i].v2 != NULL) ?
+ g_variant_new_parsed (vectors[i].v2) : NULL);
+
+ cmp = g_param_values_cmp (pspec, &v1, &v2);
+
+ switch (vectors[i].expected_result)
+ {
+ case LESS_THAN:
+ case EQUAL:
+ case GREATER_THAN:
+ g_assert_cmpint (cmp, ==, vectors[i].expected_result);
+ break;
+ case NOT_EQUAL:
+ g_assert_cmpint (cmp, !=, 0);
+ break;
+ default:
+ g_assert_not_reached ();
+ }
+
+ g_value_unset (&v2);
+ g_value_unset (&v1);
+ g_param_spec_unref (pspec);
+ }
+}
+
+static void
test_param_value (void)
{
GParamSpec *p, *p2;
@@ -912,6 +1255,12 @@ main (int argc, char *argv[])
g_test_add_func ("/value/transform", test_value_transform);
g_test_add_func ("/param/default", test_param_default);
g_test_add_func ("/param/is-valid-name", test_param_is_valid_name);
+ g_test_add_func ("/paramspec/char", test_param_spec_char);
+ g_test_add_func ("/paramspec/string", test_param_spec_string);
+ g_test_add_func ("/paramspec/override", test_param_spec_override);
+ g_test_add_func ("/paramspec/gtype", test_param_spec_gtype);
+ g_test_add_func ("/paramspec/variant", test_param_spec_variant);
+ g_test_add_func ("/paramspec/variant/cmp", test_param_spec_variant_cmp);
return g_test_run ();
}
diff --git a/gobject/tests/reference.c b/gobject/tests/reference.c
index 04645e14a..c7afc8abd 100644
--- a/gobject/tests/reference.c
+++ b/gobject/tests/reference.c
@@ -558,6 +558,18 @@ test_weak_ref (void)
g_weak_ref_clear (&weak3);
+ /* unset dynamic_weak... */
+ g_weak_ref_set (dynamic_weak, NULL);
+ g_assert_null (g_weak_ref_get (dynamic_weak));
+
+ /* initializing a weak reference to an object that had before works */
+ g_weak_ref_set (dynamic_weak, obj2);
+ tmp = g_weak_ref_get (dynamic_weak);
+ g_assert_true (tmp == obj2);
+ g_assert_cmpint (obj2->ref_count, ==, 2);
+ g_object_unref (tmp);
+ g_assert_cmpint (obj2->ref_count, ==, 1);
+
/* clear and free dynamic_weak... */
g_weak_ref_clear (dynamic_weak);
@@ -566,6 +578,130 @@ test_weak_ref (void)
g_free (dynamic_weak);
}
+G_DECLARE_FINAL_TYPE (WeakReffedObject, weak_reffed_object,
+ WEAK, REFFED_OBJECT, GObject)
+
+struct _WeakReffedObject
+{
+ GObject parent;
+
+ GWeakRef *weak_ref;
+};
+
+G_DEFINE_TYPE (WeakReffedObject, weak_reffed_object, G_TYPE_OBJECT)
+
+static void
+weak_reffed_object_dispose (GObject *object)
+{
+ WeakReffedObject *weak_reffed = WEAK_REFFED_OBJECT (object);
+
+ g_assert_cmpint (object->ref_count, ==, 1);
+
+ g_weak_ref_set (weak_reffed->weak_ref, object);
+
+ G_OBJECT_CLASS (weak_reffed_object_parent_class)->dispose (object);
+
+ g_assert_null (g_weak_ref_get (weak_reffed->weak_ref));
+}
+
+static void
+weak_reffed_object_init (WeakReffedObject *connector)
+{
+}
+
+static void
+weak_reffed_object_class_init (WeakReffedObjectClass *klass)
+{
+ GObjectClass *object_class = G_OBJECT_CLASS (klass);
+
+ object_class->dispose = weak_reffed_object_dispose;
+}
+
+static void
+test_weak_ref_on_dispose (void)
+{
+ WeakReffedObject *obj;
+ GWeakRef weak = { { GUINT_TO_POINTER (0xDEADBEEFU) } };
+
+ g_test_bug ("https://gitlab.gnome.org/GNOME/glib/-/issues/2390");
+ g_test_summary ("Test that a weak ref set during dispose vfunc is cleared");
+
+ g_weak_ref_init (&weak, NULL);
+
+ obj = g_object_new (weak_reffed_object_get_type (), NULL);
+ obj->weak_ref = &weak;
+
+ g_assert_cmpint (G_OBJECT (obj)->ref_count, ==, 1);
+ g_clear_object (&obj);
+
+ g_assert_null (g_weak_ref_get (&weak));
+}
+
+static void
+test_weak_ref_on_run_dispose (void)
+{
+ GObject *obj;
+ GWeakRef weak = { { GUINT_TO_POINTER (0xDEADBEEFU) } };
+
+ g_test_bug ("https://gitlab.gnome.org/GNOME/glib/-/issues/865");
+ g_test_summary ("Test that a weak ref is cleared on g_object_run_dispose()");
+
+ obj = g_object_new (G_TYPE_OBJECT, NULL);
+ g_weak_ref_init (&weak, obj);
+
+ g_assert_true (obj == g_weak_ref_get (&weak));
+ g_object_unref (obj);
+
+ g_object_run_dispose (obj);
+ g_assert_null (g_weak_ref_get (&weak));
+
+ g_clear_object (&obj);
+ g_assert_null (g_weak_ref_get (&weak));
+}
+
+static void
+on_weak_ref_toggle_notify (gpointer data,
+ GObject *object,
+ gboolean is_last_ref)
+{
+ GWeakRef *weak = data;
+
+ if (is_last_ref)
+ g_weak_ref_set (weak, object);
+}
+
+static void
+on_weak_ref_toggle_notify_disposed (gpointer data,
+ GObject *object)
+{
+ g_assert_cmpint (object->ref_count, ==, 1);
+
+ g_object_ref (object);
+ g_object_unref (object);
+}
+
+static void
+test_weak_ref_on_toggle_notify (void)
+{
+ GObject *obj;
+ GWeakRef weak = { { GUINT_TO_POINTER (0xDEADBEEFU) } };
+
+ g_test_bug ("https://gitlab.gnome.org/GNOME/glib/-/issues/2390");
+ g_test_summary ("Test that a weak ref set on toggle notify is cleared");
+
+ g_weak_ref_init (&weak, NULL);
+
+ obj = g_object_new (G_TYPE_OBJECT, NULL);
+ g_object_add_toggle_ref (obj, on_weak_ref_toggle_notify, &weak);
+ g_object_weak_ref (obj, on_weak_ref_toggle_notify_disposed, NULL);
+ g_object_unref (obj);
+
+ g_assert_cmpint (obj->ref_count, ==, 1);
+ g_clear_object (&obj);
+
+ g_assert_null (g_weak_ref_get (&weak));
+}
+
typedef struct
{
gboolean should_be_last;
@@ -629,15 +765,15 @@ test_toggle_ref (void)
g_object_remove_toggle_ref (obj, toggle_notify, &c);
}
-static gboolean destroyed;
-static gint value;
+static gboolean global_destroyed;
+static gint global_value;
static void
data_destroy (gpointer data)
{
- g_assert_cmpint (GPOINTER_TO_INT (data), ==, value);
+ g_assert_cmpint (GPOINTER_TO_INT (data), ==, global_value);
- destroyed = TRUE;
+ global_destroyed = TRUE;
}
static void
@@ -649,39 +785,39 @@ test_object_qdata (void)
obj = g_object_new (G_TYPE_OBJECT, NULL);
- value = 1;
- destroyed = FALSE;
+ global_value = 1;
+ global_destroyed = FALSE;
g_object_set_data_full (obj, "test", GINT_TO_POINTER (1), data_destroy);
v = g_object_get_data (obj, "test");
g_assert_cmpint (GPOINTER_TO_INT (v), ==, 1);
g_object_set_data_full (obj, "test", GINT_TO_POINTER (2), data_destroy);
- g_assert (destroyed);
- value = 2;
- destroyed = FALSE;
+ g_assert (global_destroyed);
+ global_value = 2;
+ global_destroyed = FALSE;
v = g_object_steal_data (obj, "test");
g_assert_cmpint (GPOINTER_TO_INT (v), ==, 2);
- g_assert (!destroyed);
+ g_assert (!global_destroyed);
- value = 1;
- destroyed = FALSE;
+ global_value = 1;
+ global_destroyed = FALSE;
quark = g_quark_from_string ("test");
g_object_set_qdata_full (obj, quark, GINT_TO_POINTER (1), data_destroy);
v = g_object_get_qdata (obj, quark);
g_assert_cmpint (GPOINTER_TO_INT (v), ==, 1);
g_object_set_qdata_full (obj, quark, GINT_TO_POINTER (2), data_destroy);
- g_assert (destroyed);
- value = 2;
- destroyed = FALSE;
+ g_assert (global_destroyed);
+ global_value = 2;
+ global_destroyed = FALSE;
v = g_object_steal_qdata (obj, quark);
g_assert_cmpint (GPOINTER_TO_INT (v), ==, 2);
- g_assert (!destroyed);
+ g_assert (!global_destroyed);
g_object_set_qdata_full (obj, quark, GINT_TO_POINTER (3), data_destroy);
- value = 3;
- destroyed = FALSE;
+ global_value = 3;
+ global_destroyed = FALSE;
g_object_unref (obj);
- g_assert (destroyed);
+ g_assert (global_destroyed);
}
typedef struct {
@@ -826,6 +962,9 @@ main (int argc, char **argv)
g_test_add_func ("/object/weak-pointer/set", test_weak_pointer_set);
g_test_add_func ("/object/weak-pointer/set-function", test_weak_pointer_set_function);
g_test_add_func ("/object/weak-ref", test_weak_ref);
+ g_test_add_func ("/object/weak-ref/on-dispose", test_weak_ref_on_dispose);
+ g_test_add_func ("/object/weak-ref/on-run-dispose", test_weak_ref_on_run_dispose);
+ g_test_add_func ("/object/weak-ref/on-toggle-notify", test_weak_ref_on_toggle_notify);
g_test_add_func ("/object/toggle-ref", test_toggle_ref);
g_test_add_func ("/object/qdata", test_object_qdata);
g_test_add_func ("/object/qdata2", test_object_qdata2);
diff --git a/gobject/tests/signalgroup.c b/gobject/tests/signalgroup.c
new file mode 100644
index 000000000..5d1f17a81
--- /dev/null
+++ b/gobject/tests/signalgroup.c
@@ -0,0 +1,650 @@
+/* GObject - GLib Type, Object, Parameter and Signal Library
+ *
+ * Copyright (C) 2015-2022 Christian Hergert <christian@hergert.me>
+ * Copyright (C) 2015 Garrett Regier <garrettregier@gmail.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ *
+ * SPDX-License-Identifier: LGPL-2.1-or-later
+ */
+
+#include <glib-object.h>
+
+G_DECLARE_FINAL_TYPE (SignalTarget, signal_target, TEST, SIGNAL_TARGET, GObject)
+
+struct _SignalTarget
+{
+ GObject parent_instance;
+};
+
+G_DEFINE_TYPE (SignalTarget, signal_target, G_TYPE_OBJECT)
+
+static G_DEFINE_QUARK (detail, signal_detail);
+
+enum {
+ THE_SIGNAL,
+ NEVER_EMITTED,
+ LAST_SIGNAL
+};
+
+static guint signals[LAST_SIGNAL];
+
+static void
+signal_target_class_init (SignalTargetClass *klass)
+{
+ signals[THE_SIGNAL] =
+ g_signal_new ("the-signal",
+ G_TYPE_FROM_CLASS (klass),
+ G_SIGNAL_RUN_LAST | G_SIGNAL_DETAILED,
+ 0,
+ NULL, NULL, NULL,
+ G_TYPE_NONE,
+ 1,
+ G_TYPE_OBJECT);
+
+ signals[NEVER_EMITTED] =
+ g_signal_new ("never-emitted",
+ G_TYPE_FROM_CLASS (klass),
+ G_SIGNAL_RUN_LAST,
+ 0,
+ NULL, NULL, NULL,
+ G_TYPE_NONE,
+ 1,
+ G_TYPE_OBJECT);
+}
+
+static void
+signal_target_init (SignalTarget *self)
+{
+}
+
+static gint global_signal_calls;
+static gint global_weak_notify_called;
+
+static void
+connect_before_cb (SignalTarget *target,
+ GSignalGroup *group,
+ gint *signal_calls)
+{
+ SignalTarget *readback;
+
+ g_assert_true (TEST_IS_SIGNAL_TARGET (target));
+ g_assert_true (G_IS_SIGNAL_GROUP (group));
+ g_assert_nonnull (signal_calls);
+ g_assert_true (signal_calls == &global_signal_calls);
+
+ readback = g_signal_group_dup_target (group);
+ g_assert_true (readback == target);
+ g_object_unref (readback);
+
+ *signal_calls += 1;
+}
+
+static void
+connect_after_cb (SignalTarget *target,
+ GSignalGroup *group,
+ gint *signal_calls)
+{
+ SignalTarget *readback;
+
+ g_assert_true (TEST_IS_SIGNAL_TARGET (target));
+ g_assert_true (G_IS_SIGNAL_GROUP (group));
+ g_assert_nonnull (signal_calls);
+ g_assert_true (signal_calls == &global_signal_calls);
+
+ readback = g_signal_group_dup_target (group);
+ g_assert_true (readback == target);
+ g_object_unref (readback);
+
+ g_assert_cmpint (*signal_calls, ==, 4);
+ *signal_calls += 1;
+}
+
+static void
+connect_swapped_cb (gint *signal_calls,
+ GSignalGroup *group,
+ SignalTarget *target)
+{
+ SignalTarget *readback;
+
+ g_assert_true (signal_calls != NULL);
+ g_assert_true (signal_calls == &global_signal_calls);
+ g_assert_true (G_IS_SIGNAL_GROUP (group));
+ g_assert_true (TEST_IS_SIGNAL_TARGET (target));
+
+ readback = g_signal_group_dup_target (group);
+ g_assert_true (readback == target);
+ g_object_unref (readback);
+
+ *signal_calls += 1;
+}
+
+static void
+connect_object_cb (SignalTarget *target,
+ GSignalGroup *group,
+ GObject *object)
+{
+ SignalTarget *readback;
+ gint *signal_calls;
+
+ g_assert_true (TEST_IS_SIGNAL_TARGET (target));
+ g_assert_true (G_IS_SIGNAL_GROUP (group));
+ g_assert_true (G_IS_OBJECT (object));
+
+ readback = g_signal_group_dup_target (group);
+ g_assert_true (readback == target);
+ g_object_unref (readback);
+
+ signal_calls = g_object_get_data (object, "signal-calls");
+ g_assert_nonnull (signal_calls);
+ g_assert_true (signal_calls == &global_signal_calls);
+
+ *signal_calls += 1;
+}
+
+static void
+connect_bad_detail_cb (SignalTarget *target,
+ GSignalGroup *group,
+ GObject *object)
+{
+ g_error ("This detailed signal is never emitted!");
+}
+
+static void
+connect_never_emitted_cb (SignalTarget *target,
+ gboolean *weak_notify_called)
+{
+ g_error ("This signal is never emitted!");
+}
+
+static void
+connect_data_notify_cb (gboolean *weak_notify_called,
+ GClosure *closure)
+{
+ g_assert_nonnull (weak_notify_called);
+ g_assert_true (weak_notify_called == &global_weak_notify_called);
+ g_assert_nonnull (closure);
+
+ g_assert_false (*weak_notify_called);
+ *weak_notify_called = TRUE;
+}
+
+static void
+connect_data_weak_notify_cb (gboolean *weak_notify_called,
+ GSignalGroup *group)
+{
+ g_assert_nonnull (weak_notify_called);
+ g_assert_true (weak_notify_called == &global_weak_notify_called);
+ g_assert_true (G_IS_SIGNAL_GROUP (group));
+
+ g_assert_true (*weak_notify_called);
+}
+
+static void
+connect_all_signals (GSignalGroup *group)
+{
+ GObject *object;
+
+ /* Check that these are called in the right order */
+ g_signal_group_connect (group,
+ "the-signal",
+ G_CALLBACK (connect_before_cb),
+ &global_signal_calls);
+ g_signal_group_connect_after (group,
+ "the-signal",
+ G_CALLBACK (connect_after_cb),
+ &global_signal_calls);
+
+ /* Check that this is called with the arguments swapped */
+ g_signal_group_connect_swapped (group,
+ "the-signal",
+ G_CALLBACK (connect_swapped_cb),
+ &global_signal_calls);
+
+ /* Check that this is called with the arguments swapped */
+ object = g_object_new (G_TYPE_OBJECT, NULL);
+ g_object_set_data (object, "signal-calls", &global_signal_calls);
+ g_signal_group_connect_object (group,
+ "the-signal",
+ G_CALLBACK (connect_object_cb),
+ object,
+ 0);
+ g_object_weak_ref (G_OBJECT (group),
+ (GWeakNotify)g_object_unref,
+ object);
+
+ /* Check that a detailed signal is handled correctly */
+ g_signal_group_connect (group,
+ "the-signal::detail",
+ G_CALLBACK (connect_before_cb),
+ &global_signal_calls);
+ g_signal_group_connect (group,
+ "the-signal::bad-detail",
+ G_CALLBACK (connect_bad_detail_cb),
+ NULL);
+
+ /* Check that the notify is called correctly */
+ global_weak_notify_called = FALSE;
+ g_signal_group_connect_data (group,
+ "never-emitted",
+ G_CALLBACK (connect_never_emitted_cb),
+ &global_weak_notify_called,
+ (GClosureNotify)connect_data_notify_cb,
+ 0);
+ g_object_weak_ref (G_OBJECT (group),
+ (GWeakNotify)connect_data_weak_notify_cb,
+ &global_weak_notify_called);
+}
+
+static void
+assert_signals (SignalTarget *target,
+ GSignalGroup *group,
+ gboolean success)
+{
+ g_assert (TEST_IS_SIGNAL_TARGET (target));
+ g_assert (group == NULL || G_IS_SIGNAL_GROUP (group));
+
+ global_signal_calls = 0;
+ g_signal_emit (target, signals[THE_SIGNAL],
+ signal_detail_quark (), group);
+ g_assert_cmpint (global_signal_calls, ==, success ? 5 : 0);
+}
+
+static void
+dummy_handler (void)
+{
+}
+
+static void
+test_signal_group_invalid (void)
+{
+ GObject *invalid_target = g_object_new (G_TYPE_OBJECT, NULL);
+ SignalTarget *target = g_object_new (signal_target_get_type (), NULL);
+ GSignalGroup *group = g_signal_group_new (signal_target_get_type ());
+
+ /* Invalid Target Type */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*g_type_is_a*G_TYPE_OBJECT*");
+ g_signal_group_new (G_TYPE_DATE_TIME);
+ g_test_assert_expected_messages ();
+
+ /* Invalid Target */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*Failed to set GSignalGroup of target type SignalTarget using target * of type GObject*");
+ g_signal_group_set_target (group, invalid_target);
+ g_assert_finalize_object (group);
+ g_test_assert_expected_messages ();
+
+ /* Invalid Signal Name */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*g_signal_parse_name*");
+ group = g_signal_group_new (signal_target_get_type ());
+ g_signal_group_connect (group,
+ "does-not-exist",
+ G_CALLBACK (connect_before_cb),
+ NULL);
+ g_test_assert_expected_messages ();
+ g_assert_finalize_object (group);
+
+ /* Invalid Callback */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*c_handler != NULL*");
+ group = g_signal_group_new (signal_target_get_type ());
+ g_signal_group_connect (group,
+ "the-signal",
+ G_CALLBACK (NULL),
+ NULL);
+ g_test_assert_expected_messages ();
+ g_assert_finalize_object (group);
+
+ /* Connecting after setting target */
+ g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
+ "*Cannot add signals after setting target*");
+ group = g_signal_group_new (signal_target_get_type ());
+ g_signal_group_set_target (group, target);
+ g_signal_group_connect (group,
+ "the-signal",
+ G_CALLBACK (dummy_handler),
+ NULL);
+ g_test_assert_expected_messages ();
+ g_assert_finalize_object (group);
+
+ g_assert_finalize_object (target);
+ g_assert_finalize_object (invalid_target);
+}
+
+static void
+test_signal_group_simple (void)
+{
+ SignalTarget *target;
+ GSignalGroup *group;
+ SignalTarget *readback;
+
+ /* Set the target before connecting the signals */
+ group = g_signal_group_new (signal_target_get_type ());
+ target = g_object_new (signal_target_get_type (), NULL);
+ g_assert_null (g_signal_group_dup_target (group));
+ g_signal_group_set_target (group, target);
+ readback = g_signal_group_dup_target (group);
+ g_assert_true (readback == target);
+ g_object_unref (readback);
+ g_assert_finalize_object (group);
+ assert_signals (target, NULL, FALSE);
+ g_assert_finalize_object (target);
+
+ group = g_signal_group_new (signal_target_get_type ());
+ target = g_object_new (signal_target_get_type (), NULL);
+ connect_all_signals (group);
+ g_signal_group_set_target (group, target);
+ assert_signals (target, group, TRUE);
+ g_assert_finalize_object (target);
+ g_assert_finalize_object (group);
+}
+
+static void
+test_signal_group_changing_target (void)
+{
+ SignalTarget *target1, *target2;
+ GSignalGroup *group = g_signal_group_new (signal_target_get_type ());
+ SignalTarget *readback;
+
+ connect_all_signals (group);
+ g_assert_null (g_signal_group_dup_target (group));
+
+ /* Set the target after connecting the signals */
+ target1 = g_object_new (signal_target_get_type (), NULL);
+ g_signal_group_set_target (group, target1);
+ readback = g_signal_group_dup_target (group);
+ g_assert_true (readback == target1);
+ g_object_unref (readback);
+
+ assert_signals (target1, group, TRUE);
+
+ /* Set the same target */
+ readback = g_signal_group_dup_target (group);
+ g_assert_true (readback == target1);
+ g_object_unref (readback);
+ g_signal_group_set_target (group, target1);
+
+ readback = g_signal_group_dup_target (group);
+ g_assert_true (readback == target1);
+ g_object_unref (readback);
+
+ assert_signals (target1, group, TRUE);
+
+ /* Set a new target when the current target is non-NULL */
+ target2 = g_object_new (signal_target_get_type (), NULL);
+ readback = g_signal_group_dup_target (group);
+ g_assert_true (readback == target1);
+ g_object_unref (readback);
+
+ g_signal_group_set_target (group, target2);
+ readback = g_signal_group_dup_target (group);
+ g_assert_true (readback == target2);
+ g_object_unref (readback);
+
+ assert_signals (target2, group, TRUE);
+
+ g_assert_finalize_object (target2);
+ g_assert_finalize_object (target1);
+ g_assert_finalize_object (group);
+}
+
+static void
+assert_blocking (SignalTarget *target,
+ GSignalGroup *group,
+ gint count)
+{
+ gint i;
+
+ assert_signals (target, group, TRUE);
+
+ /* Assert that multiple blocks are effective */
+ for (i = 0; i < count; ++i)
+ {
+ g_signal_group_block (group);
+ assert_signals (target, group, FALSE);
+ }
+
+ /* Assert that the signal is not emitted after the first unblock */
+ for (i = 0; i < count; ++i)
+ {
+ assert_signals (target, group, FALSE);
+ g_signal_group_unblock (group);
+ }
+
+ assert_signals (target, group, TRUE);
+}
+
+static void
+test_signal_group_blocking (void)
+{
+ SignalTarget *target1, *target2, *readback;
+ GSignalGroup *group = g_signal_group_new (signal_target_get_type ());
+
+ /* Test blocking and unblocking null target */
+ g_signal_group_block (group);
+ g_signal_group_unblock (group);
+
+ connect_all_signals (group);
+ g_assert_null (g_signal_group_dup_target (group));
+
+ target1 = g_object_new (signal_target_get_type (), NULL);
+ g_signal_group_set_target (group, target1);
+ readback = g_signal_group_dup_target (group);
+ g_assert_true (readback == target1);
+ g_object_unref (readback);
+
+ assert_blocking (target1, group, 1);
+ assert_blocking (target1, group, 3);
+ assert_blocking (target1, group, 15);
+
+ /* Assert that blocking transfers across changing the target */
+ g_signal_group_block (group);
+ g_signal_group_block (group);
+
+ /* Set a new target when the current target is non-NULL */
+ target2 = g_object_new (signal_target_get_type (), NULL);
+ readback = g_signal_group_dup_target (group);
+ g_assert_true (readback == target1);
+ g_object_unref (readback);
+ g_signal_group_set_target (group, target2);
+ readback = g_signal_group_dup_target (group);
+ g_assert_true (readback == target2);
+ g_object_unref (readback);
+
+ assert_signals (target2, group, FALSE);
+ g_signal_group_unblock (group);
+ assert_signals (target2, group, FALSE);
+ g_signal_group_unblock (group);
+ assert_signals (target2, group, TRUE);
+
+ g_assert_finalize_object (target2);
+ g_assert_finalize_object (target1);
+ g_assert_finalize_object (group);
+}
+
+static void
+test_signal_group_weak_ref_target (void)
+{
+ SignalTarget *target = g_object_new (signal_target_get_type (), NULL);
+ GSignalGroup *group = g_signal_group_new (signal_target_get_type ());
+ SignalTarget *readback;
+
+ g_assert_null (g_signal_group_dup_target (group));
+ g_signal_group_set_target (group, target);
+ readback = g_signal_group_dup_target (group);
+ g_assert_true (readback == target);
+ g_object_unref (readback);
+
+ g_assert_finalize_object (target);
+ g_assert_null (g_signal_group_dup_target (group));
+ g_assert_finalize_object (group);
+}
+
+static void
+test_signal_group_connect_object (void)
+{
+ GObject *object = g_object_new (G_TYPE_OBJECT, NULL);
+ SignalTarget *target = g_object_new (signal_target_get_type (), NULL);
+ GSignalGroup *group = g_signal_group_new (signal_target_get_type ());
+ SignalTarget *readback;
+
+ /* We already do basic connect_object() tests in connect_signals(),
+ * this is only needed to test the specifics of connect_object()
+ */
+ g_signal_group_connect_object (group,
+ "the-signal",
+ G_CALLBACK (connect_object_cb),
+ object,
+ 0);
+
+ g_assert_null (g_signal_group_dup_target (group));
+ g_signal_group_set_target (group, target);
+ readback = g_signal_group_dup_target (group);
+ g_assert_true (readback == target);
+ g_object_unref (readback);
+
+ g_assert_finalize_object (object);
+
+ /* This would cause a warning if the SignalGroup did not
+ * have a weakref on the object as it would try to connect again
+ */
+ g_signal_group_set_target (group, NULL);
+ g_assert_null (g_signal_group_dup_target (group));
+ g_signal_group_set_target (group, target);
+ readback = g_signal_group_dup_target (group);
+ g_assert_true (readback == target);
+ g_object_unref (readback);
+
+ g_assert_finalize_object (group);
+ g_assert_finalize_object (target);
+}
+
+static void
+test_signal_group_signal_parsing (void)
+{
+ g_test_trap_subprocess ("/GObject/SignalGroup/signal-parsing/subprocess", 0,
+ G_TEST_SUBPROCESS_INHERIT_STDERR);
+ g_test_trap_assert_passed ();
+ g_test_trap_assert_stderr ("");
+}
+
+static void
+test_signal_group_signal_parsing_subprocess (void)
+{
+ GSignalGroup *group;
+
+ /* Check that the class has not been created and with it the
+ * signals registered. This will cause g_signal_parse_name()
+ * to fail unless GSignalGroup calls g_type_class_ref().
+ */
+ g_assert_null (g_type_class_peek (signal_target_get_type ()));
+
+ group = g_signal_group_new (signal_target_get_type ());
+ g_signal_group_connect (group,
+ "the-signal",
+ G_CALLBACK (connect_before_cb),
+ NULL);
+
+ g_assert_finalize_object (group);
+}
+
+static void
+test_signal_group_properties (void)
+{
+ GSignalGroup *group;
+ SignalTarget *target, *other;
+ GType gtype;
+
+ group = g_signal_group_new (signal_target_get_type ());
+ g_object_get (group,
+ "target", &target,
+ "target-type", &gtype,
+ NULL);
+ g_assert_cmpint (gtype, ==, signal_target_get_type ());
+ g_assert_null (target);
+
+ target = g_object_new (signal_target_get_type (), NULL);
+ g_object_set (group, "target", target, NULL);
+ g_object_get (group, "target", &other, NULL);
+ g_assert_true (target == other);
+ g_object_unref (other);
+
+ g_assert_finalize_object (target);
+ g_assert_null (g_signal_group_dup_target (group));
+ g_assert_finalize_object (group);
+}
+
+G_DECLARE_INTERFACE (SignalThing, signal_thing, SIGNAL, THING, GObject)
+
+struct _SignalThingInterface
+{
+ GTypeInterface iface;
+ void (*changed) (SignalThing *thing);
+};
+
+G_DEFINE_INTERFACE (SignalThing, signal_thing, G_TYPE_OBJECT)
+
+static guint signal_thing_changed;
+
+static void
+signal_thing_default_init (SignalThingInterface *iface)
+{
+ signal_thing_changed =
+ g_signal_new ("changed",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SignalThingInterface, changed),
+ NULL, NULL, NULL,
+ G_TYPE_NONE, 0);
+}
+
+G_GNUC_NORETURN static void
+thing_changed_cb (SignalThing *thing,
+ gpointer user_data G_GNUC_UNUSED)
+{
+ g_assert_not_reached ();
+}
+
+static void
+test_signal_group_interface (void)
+{
+ GSignalGroup *group;
+
+ group = g_signal_group_new (signal_thing_get_type ());
+ g_signal_group_connect (group,
+ "changed",
+ G_CALLBACK (thing_changed_cb),
+ NULL);
+ g_assert_finalize_object (group);
+}
+
+gint
+main (gint argc,
+ gchar *argv[])
+{
+ g_test_init (&argc, &argv, NULL);
+ g_test_add_func ("/GObject/SignalGroup/invalid", test_signal_group_invalid);
+ g_test_add_func ("/GObject/SignalGroup/simple", test_signal_group_simple);
+ g_test_add_func ("/GObject/SignalGroup/changing-target", test_signal_group_changing_target);
+ g_test_add_func ("/GObject/SignalGroup/blocking", test_signal_group_blocking);
+ g_test_add_func ("/GObject/SignalGroup/weak-ref-target", test_signal_group_weak_ref_target);
+ g_test_add_func ("/GObject/SignalGroup/connect-object", test_signal_group_connect_object);
+ g_test_add_func ("/GObject/SignalGroup/signal-parsing", test_signal_group_signal_parsing);
+ g_test_add_func ("/GObject/SignalGroup/signal-parsing/subprocess", test_signal_group_signal_parsing_subprocess);
+ g_test_add_func ("/GObject/SignalGroup/properties", test_signal_group_properties);
+ g_test_add_func ("/GObject/SignalGroup/interface", test_signal_group_interface);
+ return g_test_run ();
+}
diff --git a/gobject/tests/threadtests.c b/gobject/tests/threadtests.c
index b6f9e17fa..3b485eb52 100644
--- a/gobject/tests/threadtests.c
+++ b/gobject/tests/threadtests.c
@@ -343,6 +343,170 @@ test_threaded_weak_ref (void)
get_wins, unref_wins);
}
+typedef struct
+{
+ GObject *object;
+ GWeakRef *weak;
+ gint started; /* (atomic) */
+ gint finished; /* (atomic) */
+ gint disposing; /* (atomic) */
+} ThreadedWeakRefData;
+
+static void
+on_weak_ref_disposed (gpointer data,
+ GObject *gobj)
+{
+ ThreadedWeakRefData *thread_data = data;
+
+ /* Wait until the thread has started */
+ while (!g_atomic_int_get (&thread_data->started))
+ continue;
+
+ g_atomic_int_set (&thread_data->disposing, 1);
+
+ /* Wait for the thread to act, so that the object is still valid */
+ while (!g_atomic_int_get (&thread_data->finished))
+ continue;
+
+ g_atomic_int_set (&thread_data->disposing, 0);
+}
+
+static gpointer
+on_other_thread_weak_ref (gpointer user_data)
+{
+ ThreadedWeakRefData *thread_data = user_data;
+ GObject *object = thread_data->object;
+
+ g_atomic_int_set (&thread_data->started, 1);
+
+ /* Ensure we've started disposal */
+ while (!g_atomic_int_get (&thread_data->disposing))
+ continue;
+
+ g_object_ref (object);
+ g_weak_ref_set (thread_data->weak, object);
+ g_object_unref (object);
+
+ g_assert_cmpint (thread_data->disposing, ==, 1);
+ g_atomic_int_set (&thread_data->finished, 1);
+
+ return NULL;
+}
+
+static void
+test_threaded_weak_ref_finalization (void)
+{
+ GObject *obj = g_object_new (G_TYPE_OBJECT, NULL);
+ GWeakRef weak = { { GUINT_TO_POINTER (0xDEADBEEFU) } };
+ ThreadedWeakRefData thread_data = {
+ .object = obj, .weak = &weak, .started = 0, .finished = 0
+ };
+
+ g_test_bug ("https://gitlab.gnome.org/GNOME/glib/-/issues/2390");
+ g_test_summary ("Test that a weak ref added by another thread during dispose "
+ "of a GObject is cleared during finalisation. "
+ "Use on_weak_ref_disposed() to synchronize the other thread "
+ "with the dispose vfunc.");
+
+ g_weak_ref_init (&weak, NULL);
+ g_object_weak_ref (obj, on_weak_ref_disposed, &thread_data);
+
+ g_assert_cmpint (obj->ref_count, ==, 1);
+ g_thread_unref (g_thread_new ("on_other_thread",
+ on_other_thread_weak_ref,
+ &thread_data));
+ g_object_unref (obj);
+
+ /* This is what this test is about: at this point the weak reference
+ * should have been unset (and not point to a dead object either). */
+ g_assert_null (g_weak_ref_get (&weak));
+}
+
+typedef struct
+{
+ GObject *object;
+ int done; /* (atomic) */
+ int toggles; /* (atomic) */
+} ToggleNotifyThreadData;
+
+static gpointer
+on_reffer_thread (gpointer user_data)
+{
+ ToggleNotifyThreadData *thread_data = user_data;
+
+ while (!g_atomic_int_get (&thread_data->done))
+ {
+ g_object_ref (thread_data->object);
+ g_object_unref (thread_data->object);
+ }
+
+ return NULL;
+}
+
+static void
+on_toggle_notify (gpointer data,
+ GObject *object,
+ gboolean is_last_ref)
+{
+ /* Anything could be put here, but we don't care for this test.
+ * Actually having this empty made the bug to happen more frequently (being
+ * timing related).
+ */
+}
+
+static gpointer
+on_toggler_thread (gpointer user_data)
+{
+ ToggleNotifyThreadData *thread_data = user_data;
+
+ while (!g_atomic_int_get (&thread_data->done))
+ {
+ g_object_ref (thread_data->object);
+ g_object_remove_toggle_ref (thread_data->object, on_toggle_notify, thread_data);
+ g_object_add_toggle_ref (thread_data->object, on_toggle_notify, thread_data);
+ g_object_unref (thread_data->object);
+ g_atomic_int_add (&thread_data->toggles, 1);
+ }
+
+ return NULL;
+}
+
+static void
+test_threaded_toggle_notify (void)
+{
+ GObject *object = g_object_new (G_TYPE_OBJECT, NULL);
+ ToggleNotifyThreadData data = { object, FALSE, 0 };
+ GThread *threads[3];
+ gsize i;
+
+ g_test_bug ("https://gitlab.gnome.org/GNOME/glib/issues/2394");
+ g_test_summary ("Test that toggle reference notifications can be changed "
+ "safely from another (the main) thread without causing the "
+ "notifying thread to abort");
+
+ g_object_add_toggle_ref (object, on_toggle_notify, &data);
+ g_object_unref (object);
+
+ g_assert_cmpint (object->ref_count, ==, 1);
+ threads[0] = g_thread_new ("on_reffer_thread", on_reffer_thread, &data);
+ threads[1] = g_thread_new ("on_another_reffer_thread", on_reffer_thread, &data);
+ threads[2] = g_thread_new ("on_main_toggler_thread", on_toggler_thread, &data);
+
+ /* We need to wait here for the threads to run for a bit in order to make the
+ * race to happen, so we wait for an high number of toggle changes to be met
+ * so that we can be consistent on each platform.
+ */
+ while (g_atomic_int_get (&data.toggles) < 1000000)
+ ;
+ g_atomic_int_set (&data.done, TRUE);
+
+ for (i = 0; i < G_N_ELEMENTS (threads); i++)
+ g_thread_join (threads[i]);
+
+ g_assert_cmpint (object->ref_count, ==, 1);
+ g_clear_object (&object);
+}
+
int
main (int argc,
char *argv[])
@@ -352,6 +516,10 @@ main (int argc,
/* g_test_add_func ("/GObject/threaded-class-init", test_threaded_class_init); */
g_test_add_func ("/GObject/threaded-object-init", test_threaded_object_init);
g_test_add_func ("/GObject/threaded-weak-ref", test_threaded_weak_ref);
+ g_test_add_func ("/GObject/threaded-weak-ref/on-finalization",
+ test_threaded_weak_ref_finalization);
+ g_test_add_func ("/GObject/threaded-toggle-notify",
+ test_threaded_toggle_notify);
return g_test_run();
}
diff --git a/gobject/tests/value.c b/gobject/tests/value.c
index 2e7bdb06e..3c7e88137 100644
--- a/gobject/tests/value.c
+++ b/gobject/tests/value.c
@@ -1,5 +1,385 @@
+/* GLIB - Library of useful routines for C programming
+ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, see <http://www.gnu.org/licenses/>.
+ */
+
+/*
+ * Modified by the GLib Team and others 1997-2000. See the AUTHORS
+ * file for a list of people on the GLib Team. See the ChangeLog
+ * files for a list of changes. These files are distributed with
+ * GLib at ftp://ftp.gtk.org/pub/gtk/.
+ */
+
#define GLIB_VERSION_MIN_REQUIRED GLIB_VERSION_2_30
+
+#include <glib.h>
#include <glib-object.h>
+#include "gobject/gvaluecollector.h"
+
+static void
+test_enum_transformation (void)
+{
+ GType type;
+ GValue orig = G_VALUE_INIT;
+ GValue xform = G_VALUE_INIT;
+ GEnumValue values[] = { {0,"0","0"}, {1,"1","1"}};
+
+ type = g_enum_register_static ("TestEnum", values);
+
+ g_value_init (&orig, type);
+ g_value_set_enum (&orig, 1);
+
+ memset (&xform, 0, sizeof (GValue));
+ g_value_init (&xform, G_TYPE_CHAR);
+ g_value_transform (&orig, &xform);
+ g_assert_cmpint (g_value_get_char (&xform), ==, 1);
+ g_assert_cmpint (g_value_get_schar (&xform), ==, 1);
+
+ memset (&xform, 0, sizeof (GValue));
+ g_value_init (&xform, G_TYPE_UCHAR);
+ g_value_transform (&orig, &xform);
+ g_assert_cmpint (g_value_get_uchar (&xform), ==, 1);
+
+ memset (&xform, 0, sizeof (GValue));
+ g_value_init (&xform, G_TYPE_INT);
+ g_value_transform (&orig, &xform);
+ g_assert_cmpint (g_value_get_int (&xform), ==, 1);
+
+ memset (&xform, 0, sizeof (GValue));
+ g_value_init (&xform, G_TYPE_UINT);
+ g_value_transform (&orig, &xform);
+ g_assert_cmpint (g_value_get_uint (&xform), ==, 1);
+
+ memset (&xform, 0, sizeof (GValue));
+ g_value_init (&xform, G_TYPE_LONG);
+ g_value_transform (&orig, &xform);
+ g_assert_cmpint (g_value_get_long (&xform), ==, 1);
+
+ memset (&xform, 0, sizeof (GValue));
+ g_value_init (&xform, G_TYPE_ULONG);
+ g_value_transform (&orig, &xform);
+ g_assert_cmpint (g_value_get_ulong (&xform), ==, 1);
+
+ memset (&xform, 0, sizeof (GValue));
+ g_value_init (&xform, G_TYPE_INT64);
+ g_value_transform (&orig, &xform);
+ g_assert_cmpint (g_value_get_int64 (&xform), ==, 1);
+
+ memset (&xform, 0, sizeof (GValue));
+ g_value_init (&xform, G_TYPE_UINT64);
+ g_value_transform (&orig, &xform);
+ g_assert_cmpint (g_value_get_uint64 (&xform), ==, 1);
+}
+
+
+static void
+test_gtype_value (void)
+{
+ GType type;
+ GValue value = G_VALUE_INIT;
+ GValue copy = G_VALUE_INIT;
+
+ g_value_init (&value, G_TYPE_GTYPE);
+
+ g_value_set_gtype (&value, G_TYPE_BOXED);
+ type = g_value_get_gtype (&value);
+ g_assert_true (type == G_TYPE_BOXED);
+
+ g_value_init (&copy, G_TYPE_GTYPE);
+ g_value_copy (&value, &copy);
+ type = g_value_get_gtype (&copy);
+ g_assert_true (type == G_TYPE_BOXED);
+}
+
+static gchar *
+collect (GValue *value, ...)
+{
+ gchar *error;
+ va_list var_args;
+
+ error = NULL;
+
+ va_start (var_args, value);
+ G_VALUE_COLLECT (value, var_args, 0, &error);
+ va_end (var_args);
+
+ return error;
+}
+
+static gchar *
+lcopy (GValue *value, ...)
+{
+ gchar *error;
+ va_list var_args;
+
+ error = NULL;
+
+ va_start (var_args, value);
+ G_VALUE_LCOPY (value, var_args, 0, &error);
+ va_end (var_args);
+
+ return error;
+}
+
+static void
+test_collection (void)
+{
+ GValue value = G_VALUE_INIT;
+ gchar *error;
+
+ g_value_init (&value, G_TYPE_CHAR);
+ error = collect (&value, 'c');
+ g_assert_null (error);
+ g_assert_cmpint (g_value_get_char (&value), ==, 'c');
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_UCHAR);
+ error = collect (&value, 129);
+ g_assert_null (error);
+ g_assert_cmpint (g_value_get_uchar (&value), ==, 129);
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_BOOLEAN);
+ error = collect (&value, TRUE);
+ g_assert_null (error);
+ g_assert_cmpint (g_value_get_boolean (&value), ==, TRUE);
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_INT);
+ error = collect (&value, G_MAXINT);
+ g_assert_null (error);
+ g_assert_cmpint (g_value_get_int (&value), ==, G_MAXINT);
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_UINT);
+ error = collect (&value, G_MAXUINT);
+ g_assert_null (error);
+ g_assert_cmpuint (g_value_get_uint (&value), ==, G_MAXUINT);
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_LONG);
+ error = collect (&value, G_MAXLONG);
+ g_assert_null (error);
+ g_assert_cmpint (g_value_get_long (&value), ==, G_MAXLONG);
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_ULONG);
+ error = collect (&value, G_MAXULONG);
+ g_assert_null (error);
+ g_assert_cmpuint (g_value_get_ulong (&value), ==, G_MAXULONG);
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_INT64);
+ error = collect (&value, G_MAXINT64);
+ g_assert_null (error);
+ g_assert_cmpint (g_value_get_int64 (&value), ==, G_MAXINT64);
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_UINT64);
+ error = collect (&value, G_MAXUINT64);
+ g_assert_null (error);
+ g_assert_cmpuint (g_value_get_uint64 (&value), ==, G_MAXUINT64);
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_FLOAT);
+ error = collect (&value, G_MAXFLOAT);
+ g_assert_null (error);
+ g_assert_cmpfloat (g_value_get_float (&value), ==, G_MAXFLOAT);
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_DOUBLE);
+ error = collect (&value, G_MAXDOUBLE);
+ g_assert_null (error);
+ g_assert_cmpfloat (g_value_get_double (&value), ==, G_MAXDOUBLE);
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_STRING);
+ error = collect (&value, "string ?");
+ g_assert_null (error);
+ g_assert_cmpstr (g_value_get_string (&value), ==, "string ?");
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_GTYPE);
+ error = collect (&value, G_TYPE_BOXED);
+ g_assert_null (error);
+ g_assert_true (g_value_get_gtype (&value) == G_TYPE_BOXED);
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_VARIANT);
+ error = collect (&value, g_variant_new_uint32 (42));
+ g_assert_null (error);
+ g_assert_true (g_variant_is_of_type (g_value_get_variant (&value),
+ G_VARIANT_TYPE ("u")));
+ g_assert_cmpuint (g_variant_get_uint32 (g_value_get_variant (&value)), ==, 42);
+
+ g_value_unset (&value);
+}
+
+static void
+test_copying (void)
+{
+ GValue value = G_VALUE_INIT;
+ gchar *error;
+
+ {
+ gchar c = 0;
+
+ g_value_init (&value, G_TYPE_CHAR);
+ g_value_set_char (&value, 'c');
+ error = lcopy (&value, &c);
+ g_assert_null (error);
+ g_assert_cmpint (c, ==, 'c');
+ }
+
+ {
+ guchar c = 0;
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_UCHAR);
+ g_value_set_uchar (&value, 129);
+ error = lcopy (&value, &c);
+ g_assert_null (error);
+ g_assert_cmpint (c, ==, 129);
+ }
+
+ {
+ gint c = 0;
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_INT);
+ g_value_set_int (&value, G_MAXINT);
+ error = lcopy (&value, &c);
+ g_assert_null (error);
+ g_assert_cmpint (c, ==, G_MAXINT);
+ }
+
+ {
+ guint c = 0;
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_UINT);
+ g_value_set_uint (&value, G_MAXUINT);
+ error = lcopy (&value, &c);
+ g_assert_null (error);
+ g_assert_cmpuint (c, ==, G_MAXUINT);
+ }
+
+ {
+ glong c = 0;
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_LONG);
+ g_value_set_long (&value, G_MAXLONG);
+ error = lcopy (&value, &c);
+ g_assert_null (error);
+ g_assert (c == G_MAXLONG);
+ }
+
+ {
+ gulong c = 0;
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_ULONG);
+ g_value_set_ulong (&value, G_MAXULONG);
+ error = lcopy (&value, &c);
+ g_assert_null (error);
+ g_assert (c == G_MAXULONG);
+ }
+
+ {
+ gint64 c = 0;
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_INT64);
+ g_value_set_int64 (&value, G_MAXINT64);
+ error = lcopy (&value, &c);
+ g_assert_null (error);
+ g_assert (c == G_MAXINT64);
+ }
+
+ {
+ guint64 c = 0;
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_UINT64);
+ g_value_set_uint64 (&value, G_MAXUINT64);
+ error = lcopy (&value, &c);
+ g_assert_null (error);
+ g_assert (c == G_MAXUINT64);
+ }
+
+ {
+ gfloat c = 0;
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_FLOAT);
+ g_value_set_float (&value, G_MAXFLOAT);
+ error = lcopy (&value, &c);
+ g_assert_null (error);
+ g_assert (c == G_MAXFLOAT);
+ }
+
+ {
+ gdouble c = 0;
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_DOUBLE);
+ g_value_set_double (&value, G_MAXDOUBLE);
+ error = lcopy (&value, &c);
+ g_assert_null (error);
+ g_assert (c == G_MAXDOUBLE);
+ }
+
+ {
+ gchar *c = NULL;
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_STRING);
+ g_value_set_string (&value, "string ?");
+ error = lcopy (&value, &c);
+ g_assert_null (error);
+ g_assert_cmpstr (c, ==, "string ?");
+ g_free (c);
+ }
+
+ {
+ GType c = G_TYPE_NONE;
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_GTYPE);
+ g_value_set_gtype (&value, G_TYPE_BOXED);
+ error = lcopy (&value, &c);
+ g_assert_null (error);
+ g_assert_true (c == G_TYPE_BOXED);
+ }
+
+ {
+ GVariant *c = NULL;
+
+ g_value_unset (&value);
+ g_value_init (&value, G_TYPE_VARIANT);
+ g_value_set_variant (&value, g_variant_new_uint32 (42));
+ error = lcopy (&value, &c);
+ g_assert_null (error);
+ g_assert_nonnull (c);
+ g_assert (g_variant_is_of_type (c, G_VARIANT_TYPE ("u")));
+ g_assert_cmpuint (g_variant_get_uint32 (c), ==, 42);
+ g_variant_unref (c);
+ g_value_unset (&value);
+ }
+}
static void
test_value_basic (void)
@@ -360,8 +740,12 @@ main (int argc, char *argv[])
g_test_init (&argc, &argv, NULL);
g_test_add_func ("/value/basic", test_value_basic);
- g_test_add_func ("/value/string", test_value_string);
g_test_add_func ("/value/array/basic", test_valuearray_basic);
+ g_test_add_func ("/value/collection", test_collection);
+ g_test_add_func ("/value/copying", test_copying);
+ g_test_add_func ("/value/enum-transformation", test_enum_transformation);
+ g_test_add_func ("/value/gtype", test_gtype_value);
+ g_test_add_func ("/value/string", test_value_string);
g_test_add_func ("/value/transform-object", test_value_transform_object);
return g_test_run ();
diff --git a/meson.build b/meson.build
index 87d59ad81..48fdfe864 100644
--- a/meson.build
+++ b/meson.build
@@ -1,10 +1,10 @@
project('glib', 'c', 'cpp',
- version : '2.70.5',
- # NOTE: We keep this pinned at 0.49 because that's what Debian 10 ships
- meson_version : '>= 0.49.2',
+ version : '2.72.3',
+ # NOTE: We keep this pinned at 0.52 because that's what Debian Stable ships
+ meson_version : '>= 0.52.0',
default_options : [
'buildtype=debugoptimized',
- 'warning_level=1',
+ 'warning_level=3',
'c_std=gnu99'
]
)
@@ -24,8 +24,25 @@ if cc.get_id() == 'msvc'
# If a warning is completely useless and spammy, use '/wdXXXX' to suppress it
# If a warning is harmless but hard to fix, use '/woXXXX' so it's shown once
# NOTE: Only add warnings here if you are sure they're spurious
- add_project_arguments('/wd4035', '/wd4715', '/wd4116',
- '/wd4046', '/wd4068', '/wo4090',language : 'c')
+ add_project_arguments(cc.get_supported_arguments([
+ '/wo4057', # 'operator': 'identifier1' differs in indirection to slightly different base types from 'identifier2'
+ '/wd4068', # unknown pragma
+ '/wo4090', # 'operation': different 'modifier' qualifiers
+ '/wd4100', # 'identifier': unreferenced formal parameter
+ '/wd4116', # unnamed type definition in parentheses
+ '/wo4125', # decimal digit terminates octal escape sequence
+ '/wd4127', # conditional expression is constant
+ '/wd4146', # unary minus operator applied to unsigned type, result still unsigned
+ '/wd4152', # nonstandard extension, function/data pointer conversion in expression
+ '/wd4201', # nonstandard extension used: nameless struct/union
+ '/wd4232', # nonstandard extension used: 'identifier': address of dllimport 'dllimport' is not static, identity not guaranteed
+ '/wo4245', # 'conversion_type': conversion from 'type1' to 'type2', signed/unsigned mismatch
+ '/wo4267', # 'variable': conversion from 'size_t' to 'type', possible loss of data
+ '/wd4334', # 'shift_operator': result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?)
+ '/wo4389', # 'operator': signed/unsigned mismatch
+ '/wo4702', # unreachable code
+ '/wd4706' # assignment within conditional expression
+ ]), language : 'c')
# Set the input and exec encoding to utf-8, like is the default with GCC
add_project_arguments(cc.get_supported_arguments(['/utf-8']), language: 'c')
# Disable SAFESEH with MSVC for plugins and libs that use external deps that
@@ -148,8 +165,8 @@ glibconfig_conf.set('LT_CURRENT_MINUS_AGE', soversion)
glib_conf.set('_GNU_SOURCE', 1)
-if host_system == 'windows'
- # Poll doesn't work on devices on Windows
+if host_system in ['windows', 'darwin']
+ # Poll doesn't work on devices on Windows, and macOS's poll() implementation is known to be broken
glib_conf.set('BROKEN_POLL', true)
endif
@@ -200,6 +217,9 @@ endif
glib_hidden_visibility_args = []
if get_option('default_library') != 'static'
if host_system == 'windows' or host_system == 'cygwin'
+ if get_option('default_library') != 'shared'
+ error('On Windows default_library must be "shared" or "static" but not "both"')
+ endif
glib_conf.set('DLL_EXPORT', true)
if cc.get_id() == 'msvc' or cc.get_id() == 'clang-cl'
glib_conf.set('_GLIB_EXTERN', '__declspec(dllexport) extern')
@@ -214,8 +234,10 @@ if get_option('default_library') != 'static'
endif
if get_option('default_library') == 'static'
- glibconfig_conf.set('GLIB_STATIC_COMPILATION', '1')
- glibconfig_conf.set('GOBJECT_STATIC_COMPILATION', '1')
+ glibconfig_conf.set('GLIB_STATIC_COMPILATION', '1')
+ glibconfig_conf.set('GOBJECT_STATIC_COMPILATION', '1')
+ glibconfig_conf.set('G_INTL_STATIC_COMPILATION', '1')
+ glibconfig_conf.set('FFI_STATIC_BUILD', '1')
endif
# Cygwin glib port maintainers made it clear
@@ -275,6 +297,7 @@ add_project_arguments(glib_debug_cflags, language: 'c')
headers = [
'alloca.h',
+ 'afunix.h',
'crt_externs.h',
'dirent.h', # MSC does not come with this by default
'float.h',
@@ -424,31 +447,40 @@ endforeach
# Compiler flags
if cc.get_id() == 'gcc' or cc.get_id() == 'clang'
- warning_c_args = [
+ warning_common_args = [
'-Wduplicated-branches',
'-Wimplicit-fallthrough',
'-Wmisleading-indentation',
- '-Wstrict-prototypes',
'-Wunused',
# Due to maintained deprecated code, we do not want to see unused parameters
'-Wno-unused-parameter',
# Due to pervasive use of things like GPOINTER_TO_UINT(), we do not support
# building with -Wbad-function-cast.
- '-Wno-bad-function-cast',
'-Wno-cast-function-type',
# Due to function casts through (void*) we cannot support -Wpedantic:
# https://wiki.gnome.org/Projects/GLib/CompilerRequirements#Function_pointer_conversions.
'-Wno-pedantic',
# A zero-length format string shouldn't be considered an issue.
'-Wno-format-zero-length',
- '-Werror=declaration-after-statement',
+ # We explicitly require variadic macros
+ '-Wno-variadic-macros',
'-Werror=format=2',
- '-Werror=implicit-function-declaration',
'-Werror=init-self',
'-Werror=missing-include-dirs',
- '-Werror=missing-prototypes',
'-Werror=pointer-arith',
]
+
+ warning_c_args = warning_common_args + [
+ '-Wstrict-prototypes',
+ # Due to pervasive use of things like GPOINTER_TO_UINT(), we do not support
+ # building with -Wbad-function-cast.
+ '-Wno-bad-function-cast',
+ '-Werror=declaration-after-statement',
+ '-Werror=implicit-function-declaration',
+ '-Werror=missing-prototypes',
+ ]
+ warning_cxx_args = warning_common_args
+ warning_objc_args = warning_c_args
warning_c_link_args = [
'-Wl,-z,nodelete',
]
@@ -457,10 +489,13 @@ if cc.get_id() == 'gcc' or cc.get_id() == 'clang'
endif
else
warning_c_args = []
+ warning_cxx_args = []
+ warning_objc_args = []
warning_c_link_args = []
endif
add_project_arguments(cc.get_supported_arguments(warning_c_args), language: 'c')
+add_project_arguments(cxx.get_supported_arguments(warning_cxx_args), language: 'cpp')
# FIXME: We cannot build some of the GResource tests with -z nodelete, which
# means we cannot use that flag in add_project_link_arguments(), and must add
@@ -635,8 +670,19 @@ if host_system == 'android'
endif
-# Check that posix_memalign() is usable; must use header
-if host_system != 'windows' and cc.has_function('posix_memalign', prefix : '#include <stdlib.h>')
+if cc.has_function('memalign', prefix: '#include <stdlib.h>\n#include <malloc.h>')
+ glib_conf.set('HAVE_MEMALIGN', 1)
+endif
+
+if cc.has_function('_aligned_malloc', prefix: '#include <malloc.h>')
+ glib_conf.set('HAVE__ALIGNED_MALLOC', 1)
+endif
+
+if host_system != 'windows' and cc.has_function('aligned_alloc', prefix: '#include <stdlib.h>')
+ glib_conf.set('HAVE_ALIGNED_ALLOC', 1)
+endif
+
+if host_system != 'windows' and cc.has_function('posix_memalign', prefix: '#include <stdlib.h>')
glib_conf.set('HAVE_POSIX_MEMALIGN', 1)
endif
@@ -746,7 +792,6 @@ if host_system == 'linux'
endif
endif
-osx_ldflags = []
glib_have_os_x_9_or_later = false
glib_have_carbon = false
glib_have_cocoa = false
@@ -754,7 +799,7 @@ if host_system == 'darwin'
add_languages('objc')
objcc = meson.get_compiler('objc')
- osx_ldflags += ['-Wl,-framework,CoreFoundation']
+ add_project_arguments(objcc.get_supported_arguments(warning_objc_args), language: 'objc')
# Mac OS X Carbon support
glib_have_carbon = objcc.compiles('''#include <Carbon/Carbon.h>
@@ -763,7 +808,6 @@ if host_system == 'darwin'
if glib_have_carbon
glib_conf.set('HAVE_CARBON', true)
- osx_ldflags += '-Wl,-framework,Carbon'
glib_have_os_x_9_or_later = objcc.compiles('''#include <AvailabilityMacros.h>
#if MAC_OS_X_VERSION_MIN_REQUIRED < 1090
#error Compiling for minimum OS X version before 10.9
@@ -780,13 +824,7 @@ if host_system == 'darwin'
if glib_have_cocoa
glib_conf.set('HAVE_COCOA', true)
- osx_ldflags += ['-Wl,-framework,Foundation', '-Wl,-framework,AppKit']
endif
-
- # FIXME: libgio mix C and objC source files and there is no way to reliably
- # know which language flags it's going to use to link. Add to both languages
- # for now. See https://github.com/mesonbuild/meson/issues/3585.
- add_project_link_arguments(osx_ldflags, language : ['objc', 'c'])
endif
if host_system == 'qnx'
@@ -1671,7 +1709,7 @@ va_list_val_copy_prog = '''
if cc_can_run
rres = cc.run(va_list_val_copy_prog, name : 'va_lists can be copied as values')
- glib_va_val_copy = rres.returncode() == 0
+ glib_va_val_copy = rres.compiled() and rres.returncode() == 0
else
glib_va_val_copy = meson.get_cross_property('va_val_copy', true)
endif
@@ -1848,6 +1886,10 @@ glibconfig_conf.set('G_ATOMIC_LOCK_FREE', have_atomic_lock_free)
# === Threads ===
+if get_option('force_posix_threads')
+ warning('DEPRECATION: Option \'force_posix_threads\' is deprecated and will be removed after GLib 2.72; please file an issue with your use case if you still require it')
+endif
+
# Determination of thread implementation
if host_system == 'windows' and not get_option('force_posix_threads')
thread_dep = []
@@ -1946,7 +1988,7 @@ stack_grows_check_prog = '''
if cc_can_run
rres = cc.run(stack_grows_check_prog, name : 'stack grows check')
- growing_stack = rres.returncode() == 0
+ growing_stack = rres.compiled() and rres.returncode() == 0
else
growing_stack = meson.get_cross_property('growing_stack', false)
endif
@@ -2046,13 +2088,13 @@ endif
# FIXME: glib-gettext.m4 has much more checks to detect broken/uncompatible
# implementations. This could be extended if issues are found in some platforms.
libintl_deps = []
-if cc.has_function('ngettext', args : osx_ldflags)
+if cc.has_function('ngettext')
have_bind_textdomain_codeset = cc.has_function('bind_textdomain_codeset')
else
# First just find the bare library.
libintl = cc.find_library('intl', required : false)
# The bare library probably won't link without help if it's static.
- if libintl.found() and not cc.has_function('ngettext', args : osx_ldflags, dependencies : libintl)
+ if libintl.found() and not cc.has_function('ngettext', dependencies : libintl)
libintl_iconv = cc.find_library('iconv', required : false)
# libintl supports different threading APIs, which may not
# require additional flags, but it defaults to using pthreads if
@@ -2062,10 +2104,10 @@ else
# also defining the macros with the -pthread flag.
libintl_pthread = cc.find_library('pthread', required : false)
# Try linking with just libiconv.
- if libintl_iconv.found() and cc.has_function('ngettext', args : osx_ldflags, dependencies : [libintl, libintl_iconv])
+ if libintl_iconv.found() and cc.has_function('ngettext', dependencies : [libintl, libintl_iconv])
libintl_deps += [libintl_iconv]
# Then also try linking with pthreads.
- elif libintl_iconv.found() and libintl_pthread.found() and cc.has_function('ngettext', args : osx_ldflags, dependencies : [libintl, libintl_iconv, libintl_pthread])
+ elif libintl_iconv.found() and libintl_pthread.found() and cc.has_function('ngettext', dependencies : [libintl, libintl_iconv, libintl_pthread])
libintl_deps += [libintl_iconv, libintl_pthread]
else
libintl = disabler()
@@ -2077,7 +2119,7 @@ else
have_bind_textdomain_codeset = true # proxy-libintl supports it
else
libintl_deps = [libintl] + libintl_deps
- have_bind_textdomain_codeset = cc.has_function('bind_textdomain_codeset', args : osx_ldflags,
+ have_bind_textdomain_codeset = cc.has_function('bind_textdomain_codeset',
dependencies : libintl_deps)
endif
endif
@@ -2281,7 +2323,7 @@ if host_system == 'windows' and cc.get_id() != 'msvc' and cc.get_id() != 'clang-
add_project_arguments(win32_cflags, language : 'c')
# Win32 API libs, used only by libglib and exposed in glib-2.0.pc
- win32_ldflags = ['-lws2_32', '-lole32', '-lwinmm', '-lshlwapi']
+ win32_ldflags = ['-lws2_32', '-lole32', '-lwinmm', '-lshlwapi', '-luuid']
elif host_system == 'cygwin'
win32_ldflags = ['-luser32', '-lkernel32']
endif
diff --git a/po/POTFILES.in b/po/POTFILES.in
index c31517dcf..24daa0813 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -39,6 +39,7 @@ gio/gdbusprivate.c
gio/gdbusproxy.c
gio/gdbusserver.c
gio/gdbus-tool.c
+gio/gdebugcontrollerdbus.c
gio/gdesktopappinfo.c
gio/gdrive.c
gio/gdtlsclientconnection.c
diff --git a/po/bg.po b/po/bg.po
index 393248c00..b53f29660 100644
--- a/po/bg.po
+++ b/po/bg.po
@@ -11,9 +11,9 @@
msgid ""
msgstr ""
"Project-Id-Version: glib master\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2016-02-01 06:19+0200\n"
-"PO-Revision-Date: 2016-01-31 22:54+0200\n"
+"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
+"POT-Creation-Date: 2022-04-08 12:19+0000\n"
+"PO-Revision-Date: 2022-04-09 09:55+0200\n"
"Last-Translator: Alexander Shopov <ash@kambanaria.org>\n"
"Language-Team: Bulgarian <dict@fsa-bg.org>\n"
"Language: bg\n"
@@ -22,128 +22,144 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../gio/gapplication.c:531
-msgid "Enter GApplication service mode (use from D-Bus service files)"
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Задаването на приложение като Ñтандартно не Ñе поддържа"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
msgstr ""
-"Влизане в обÑлужващ режим на GAplication (чрез обÑлужващи файлове на D-Bus)"
+"Задаването на поÑледно ползваното приложение като Ñтандартно не Ñе поддържа"
-#: ../gio/gapplication.c:536
+#: gio/gapplication.c:500
msgid "GApplication options"
-msgstr "ÐаÑтройки на GApplication"
+msgstr "ÐаÑтройки на „GApplication“"
-#: ../gio/gapplication.c:536
+#: gio/gapplication.c:500
msgid "Show GApplication options"
-msgstr "Извеждане на наÑтройките за GApplication"
+msgstr "Извеждане на наÑтройките за „GApplication“"
+
+#: gio/gapplication.c:545
+msgid "Enter GApplication service mode (use from D-Bus service files)"
+msgstr ""
+"Влизане в обÑлужващ режим на „GAplication“ (чрез обÑлужващи файлове на D-Bus)"
+
+#: gio/gapplication.c:557
+msgid "Override the application’s ID"
+msgstr "Предефиниране на идентификатора на приложение"
+
+#: gio/gapplication.c:569
+msgid "Replace the running instance"
+msgstr "ЗамÑна на ÑÑ‚Ð°Ñ€Ñ‚Ð¸Ñ€Ð°Ð½Ð¸Ñ Ð¿Ñ€Ð¾Ñ†ÐµÑ"
-#: ../gio/gapplication-tool.c:45 ../gio/gapplication-tool.c:46
-#: ../gio/gresource-tool.c:488 ../gio/gsettings-tool.c:512
+#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Извеждане на помощта"
-#: ../gio/gapplication-tool.c:47 ../gio/gresource-tool.c:489
-#: ../gio/gresource-tool.c:557
+#: gio/gapplication-tool.c:47 gio/gresource-tool.c:495 gio/gresource-tool.c:563
msgid "[COMMAND]"
msgstr "[КОМÐÐДÐ]"
-#: ../gio/gapplication-tool.c:49
+#: gio/gapplication-tool.c:49 gio/gio-tool.c:228
msgid "Print version"
msgstr "Извеждане на верÑиÑта"
-#: ../gio/gapplication-tool.c:50 ../gio/gsettings-tool.c:518
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Извеждане на верÑиÑта"
-#: ../gio/gapplication-tool.c:52
+#: gio/gapplication-tool.c:53
msgid "List applications"
msgstr "Показване на приложениÑ"
-#: ../gio/gapplication-tool.c:53
+#: gio/gapplication-tool.c:54
msgid "List the installed D-Bus activatable applications (by .desktop files)"
msgstr ""
-"Показване на инÑталираните използваеми Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð·Ð° D-Bus (чрез файлове „."
-"desktop“)"
+"Показване на инÑталираните Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð·Ð° D-Bus, които може да Ñе задейÑтват "
+"(чрез файлове „.desktop“)"
-#: ../gio/gapplication-tool.c:55
+#: gio/gapplication-tool.c:57
msgid "Launch an application"
msgstr "Стартиране на програма"
-#: ../gio/gapplication-tool.c:56
+#: gio/gapplication-tool.c:58
msgid "Launch the application (with optional files to open)"
-msgstr "Стартиране на програма (Ñ/без файлове за отварÑне)"
+msgstr "Стартиране на програма (евентуално Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð²Ðµ за отварÑне)"
-#: ../gio/gapplication-tool.c:57
-msgid "APPID [FILE...]"
+#: gio/gapplication-tool.c:59
+msgid "APPID [FILE…]"
msgstr "ИД_ÐÐ_ПРИЛОЖЕÐИЕ [ФÐЙЛ…]"
-#: ../gio/gapplication-tool.c:59
+#: gio/gapplication-tool.c:61
msgid "Activate an action"
msgstr "Ðктивиране на дейÑтвие"
-#: ../gio/gapplication-tool.c:60
+#: gio/gapplication-tool.c:62
msgid "Invoke an action on the application"
msgstr "Повикване на дейÑтвие за приложението"
-#: ../gio/gapplication-tool.c:61
+#: gio/gapplication-tool.c:63
msgid "APPID ACTION [PARAMETER]"
msgstr "ИД_ÐÐ_ПРИЛОЖЕÐИЕ ДЕЙСТВИЕ [ПÐРÐМЕТЪР]"
-#: ../gio/gapplication-tool.c:63
+#: gio/gapplication-tool.c:65
msgid "List available actions"
msgstr "Показване на дейÑтвиÑта"
-#: ../gio/gapplication-tool.c:64
+#: gio/gapplication-tool.c:66
msgid "List static actions for an application (from .desktop file)"
msgstr ""
"Показване на предварително зададени дейÑÑ‚Ð²Ð¸Ñ Ð·Ð° приложение (от файл „."
"desktop“)"
-#: ../gio/gapplication-tool.c:65 ../gio/gapplication-tool.c:71
+#: gio/gapplication-tool.c:67 gio/gapplication-tool.c:73
msgid "APPID"
msgstr "ИД_ÐÐ_ПРИЛОЖЕÐИЕ"
-#: ../gio/gapplication-tool.c:70 ../gio/gapplication-tool.c:133
-#: ../gio/gdbus-tool.c:90
+#: gio/gapplication-tool.c:72 gio/gapplication-tool.c:135 gio/gdbus-tool.c:106
+#: gio/gio-tool.c:224
msgid "COMMAND"
msgstr "КОМÐÐДÐ"
-#: ../gio/gapplication-tool.c:70
+#: gio/gapplication-tool.c:72
msgid "The command to print detailed help for"
msgstr "Командата за извеждане на подробна помощ за"
-#: ../gio/gapplication-tool.c:71
+#: gio/gapplication-tool.c:73
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr ""
"Идентификатор на приложение във формат D-Bus (например: „org.example.viewer“)"
-#: ../gio/gapplication-tool.c:72 ../gio/glib-compile-resources.c:589
-#: ../gio/glib-compile-resources.c:620 ../gio/gresource-tool.c:495
-#: ../gio/gresource-tool.c:561
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
+#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "ФÐЙЛ"
-#: ../gio/gapplication-tool.c:72
+#: gio/gapplication-tool.c:74
msgid "Optional relative or absolute filenames, or URIs to open"
msgstr "Ðезадължителни отноÑителни или абÑолютни пътища или адреÑи за отварÑне"
-#: ../gio/gapplication-tool.c:73
+#: gio/gapplication-tool.c:75
msgid "ACTION"
msgstr "ДЕЙСТВИЕ"
-#: ../gio/gapplication-tool.c:73
+#: gio/gapplication-tool.c:75
msgid "The action name to invoke"
msgstr "ДейÑтвието, което да Ñе извърши"
-#: ../gio/gapplication-tool.c:74
+#: gio/gapplication-tool.c:76
msgid "PARAMETER"
msgstr "ПÐРÐМЕТЪР"
-#: ../gio/gapplication-tool.c:74
+#: gio/gapplication-tool.c:76
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr ""
-"Ðезадължителен параметър при повикване на дейÑтвието. Във формат за GVariant"
+"Ðезадължителен параметър при извикване на дейÑтвието. Във формат за "
+"„GVariant“"
-#: ../gio/gapplication-tool.c:96 ../gio/gresource-tool.c:526
-#: ../gio/gsettings-tool.c:598
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -152,35 +168,35 @@ msgstr ""
"Ðепозната команда „%s“\n"
"\n"
-#: ../gio/gapplication-tool.c:101
+#: gio/gapplication-tool.c:103
msgid "Usage:\n"
msgstr "Употреба:\n"
-#: ../gio/gapplication-tool.c:114 ../gio/gresource-tool.c:551
-#: ../gio/gsettings-tool.c:632
+#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Ðргументи:\n"
-#: ../gio/gapplication-tool.c:133
-msgid "[ARGS...]"
-msgstr "[ÐРГУМЕÐТИ…]"
+#: gio/gapplication-tool.c:135 gio/gio-tool.c:224
+msgid "[ARGS…]"
+msgstr "[ÐРГУМЕÐТ…]"
-#: ../gio/gapplication-tool.c:134
+#: gio/gapplication-tool.c:136
#, c-format
msgid "Commands:\n"
msgstr "Команди:\n"
#. Translators: do not translate 'help', but please translate 'COMMAND'.
-#: ../gio/gapplication-tool.c:146
+#: gio/gapplication-tool.c:148
#, c-format
msgid ""
-"Use '%s help COMMAND' to get detailed help.\n"
+"Use “%s help COMMAND†to get detailed help.\n"
"\n"
msgstr ""
"Въведете „%s help КОМÐÐДГ за подробна помощ.\n"
"\n"
-#: ../gio/gapplication-tool.c:165
+#: gio/gapplication-tool.c:167
#, c-format
msgid ""
"%s command requires an application id to directly follow\n"
@@ -189,365 +205,365 @@ msgstr ""
"Командата „%s“ изиÑква идентификатор на приложение за директно Ñледене\n"
"\n"
-#: ../gio/gapplication-tool.c:171
+#: gio/gapplication-tool.c:173
#, c-format
-msgid "invalid application id: '%s'\n"
+msgid "invalid application id: “%sâ€\n"
msgstr "неизвеÑтен идентификатор на приложение „%s“\n"
#. Translators: %s is replaced with a command name like 'list-actions'
-#: ../gio/gapplication-tool.c:182
+#: gio/gapplication-tool.c:184
#, c-format
msgid ""
-"'%s' takes no arguments\n"
+"“%s†takes no arguments\n"
"\n"
msgstr ""
"„%s“ не приема аргументи\n"
"\n"
-#: ../gio/gapplication-tool.c:266
+#: gio/gapplication-tool.c:268
#, c-format
msgid "unable to connect to D-Bus: %s\n"
-msgstr "ÐеуÑпешно Ñвързване към D-Bus: %s\n"
+msgstr "неуÑпешно Ñвързване към D-Bus: %s\n"
-#: ../gio/gapplication-tool.c:286
+#: gio/gapplication-tool.c:288
#, c-format
msgid "error sending %s message to application: %s\n"
-msgstr "Грешка при изпращане на Ñъобщение „%s“ до приложение „%s“\n"
+msgstr "грешка при изпращане на Ñъобщение „%s“ до приложение „%s“\n"
-#: ../gio/gapplication-tool.c:317
-#, c-format
+#: gio/gapplication-tool.c:319
msgid "action name must be given after application id\n"
msgstr ""
"името на дейÑтвие Ñ‚Ñ€Ñбва да бъде подадено Ñлед идентификатора на приложение\n"
-#: ../gio/gapplication-tool.c:325
+#: gio/gapplication-tool.c:327
#, c-format
msgid ""
-"invalid action name: '%s'\n"
-"action names must consist of only alphanumerics, '-' and '.'\n"
+"invalid action name: “%sâ€\n"
+"action names must consist of only alphanumerics, “-†and “.â€\n"
msgstr ""
"неправилно име на дейÑтвие: „%s“\n"
"името Ñ‚Ñ€Ñбва да Ñъдържа букви, цифри, „-“ или „.“\n"
-#: ../gio/gapplication-tool.c:344
+#: gio/gapplication-tool.c:346
#, c-format
msgid "error parsing action parameter: %s\n"
-msgstr "Грешка при анализа на параметър: %s\n"
+msgstr "грешка при анализа на параметър: %s\n"
-#: ../gio/gapplication-tool.c:356
-#, c-format
+#: gio/gapplication-tool.c:358
msgid "actions accept a maximum of one parameter\n"
msgstr "дейÑтвиÑта приемат Ñамо по един параметър\n"
-#: ../gio/gapplication-tool.c:411
-#, c-format
+#: gio/gapplication-tool.c:413
msgid "list-actions command takes only the application id"
-msgstr "командата list-actions изиÑква Ñамо идентификатор на приложение"
+msgstr "командата „list-actions“ изиÑква Ñамо идентификатор на приложение"
-#: ../gio/gapplication-tool.c:421
+#: gio/gapplication-tool.c:423
#, c-format
msgid "unable to find desktop file for application %s\n"
-msgstr "Ðе може да Ñе открие файл „.desktop“ за приложението „%s“\n"
+msgstr "не може да Ñе открие файл „.desktop“ за приложението „%s“\n"
-#: ../gio/gapplication-tool.c:466
+#: gio/gapplication-tool.c:468
#, c-format
msgid ""
"unrecognised command: %s\n"
"\n"
msgstr ""
-"Ðепозната команда „%s“\n"
+"непозната команда „%s“\n"
"\n"
-#: ../gio/gbufferedinputstream.c:420 ../gio/gbufferedinputstream.c:498
-#: ../gio/ginputstream.c:179 ../gio/ginputstream.c:379
-#: ../gio/ginputstream.c:617 ../gio/ginputstream.c:1016
-#: ../gio/goutputstream.c:203 ../gio/goutputstream.c:834
-#: ../gio/gpollableinputstream.c:205 ../gio/gpollableoutputstream.c:206
+#: gio/gbufferedinputstream.c:420 gio/gbufferedinputstream.c:498
+#: gio/ginputstream.c:179 gio/ginputstream.c:379 gio/ginputstream.c:648
+#: gio/ginputstream.c:1050 gio/goutputstream.c:223 gio/goutputstream.c:1049
+#: gio/gpollableinputstream.c:205 gio/gpollableoutputstream.c:277
#, c-format
msgid "Too large count value passed to %s"
-msgstr "Подадена е прекалено голÑма ÑтойноÑÑ‚ на %s"
+msgstr "Подадена е прекалено голÑма ÑтойноÑÑ‚ на „%s“"
-#: ../gio/gbufferedinputstream.c:891 ../gio/gbufferedoutputstream.c:575
-#: ../gio/gdataoutputstream.c:562
+#: gio/gbufferedinputstream.c:891 gio/gbufferedoutputstream.c:575
+#: gio/gdataoutputstream.c:562
msgid "Seek not supported on base stream"
msgstr "ТърÑенето не Ñе поддържа от оÑÐ½Ð¾Ð²Ð½Ð¸Ñ Ð¿Ð¾Ñ‚Ð¾Ðº"
-#: ../gio/gbufferedinputstream.c:937
+#: gio/gbufferedinputstream.c:938
msgid "Cannot truncate GBufferedInputStream"
-msgstr "GBufferedInputStream не може да Ñе Ñъкрати"
+msgstr "„GBufferedInputStream“ не може да Ñе Ñъкрати"
-#: ../gio/gbufferedinputstream.c:982 ../gio/ginputstream.c:1205
-#: ../gio/giostream.c:300 ../gio/goutputstream.c:1658
+#: gio/gbufferedinputstream.c:983 gio/ginputstream.c:1239 gio/giostream.c:300
+#: gio/goutputstream.c:2198
msgid "Stream is already closed"
msgstr "Потокът вече е затворен"
-#: ../gio/gbufferedoutputstream.c:612 ../gio/gdataoutputstream.c:592
+#: gio/gbufferedoutputstream.c:612 gio/gdataoutputstream.c:592
msgid "Truncate not supported on base stream"
msgstr "ОÑновниÑÑ‚ поток не може да Ñе Ñъкращава"
-#: ../gio/gcancellable.c:317 ../gio/gdbusconnection.c:1847
-#: ../gio/gdbusprivate.c:1375 ../gio/glocalfile.c:2220
-#: ../gio/gsimpleasyncresult.c:870 ../gio/gsimpleasyncresult.c:896
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
+#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
msgstr "ДейÑтвието е прекратено"
-#: ../gio/gcharsetconverter.c:260
+#: gio/gcharsetconverter.c:260
msgid "Invalid object, not initialized"
msgstr "Ðеправилен обект, не е инициализирано"
-#: ../gio/gcharsetconverter.c:281 ../gio/gcharsetconverter.c:309
+#: gio/gcharsetconverter.c:281 gio/gcharsetconverter.c:309
msgid "Incomplete multibyte sequence in input"
msgstr "Ðепълна байтова поÑледователноÑÑ‚ на входа"
-#: ../gio/gcharsetconverter.c:315 ../gio/gcharsetconverter.c:324
+#: gio/gcharsetconverter.c:315 gio/gcharsetconverter.c:324
msgid "Not enough space in destination"
msgstr "ÐÑма доÑтатъчно мÑÑто в целта"
-#: ../gio/gcharsetconverter.c:342 ../gio/gdatainputstream.c:848
-#: ../gio/gdatainputstream.c:1256 ../glib/gconvert.c:438 ../glib/gconvert.c:845
-#: ../glib/giochannel.c:1556 ../glib/giochannel.c:1598
-#: ../glib/giochannel.c:2442 ../glib/gutf8.c:853 ../glib/gutf8.c:1306
+#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
+#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
+#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Грешна байтова поÑледователноÑÑ‚ на входа за преобразуване"
-#: ../gio/gcharsetconverter.c:347 ../glib/gconvert.c:446 ../glib/gconvert.c:770
-#: ../glib/giochannel.c:1563 ../glib/giochannel.c:2454
+#: gio/gcharsetconverter.c:347 glib/gconvert.c:457 glib/gconvert.c:793
+#: glib/giochannel.c:1580 glib/giochannel.c:2482
#, c-format
msgid "Error during conversion: %s"
msgstr "Грешка по време на преобразуване: %s"
-#: ../gio/gcharsetconverter.c:444 ../gio/gsocket.c:1078
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Ðе Ñе поддържа отменима инициализациÑ"
-#: ../gio/gcharsetconverter.c:454 ../glib/gconvert.c:321
-#: ../glib/giochannel.c:1384
+#: gio/gcharsetconverter.c:456 glib/gconvert.c:322 glib/giochannel.c:1401
#, c-format
-msgid "Conversion from character set '%s' to '%s' is not supported"
+msgid "Conversion from character set “%s†to “%s†is not supported"
msgstr "Преобразуването от набора знаци „%s“ към „%s“ не Ñе поддържа"
-#: ../gio/gcharsetconverter.c:458 ../glib/gconvert.c:325
+#: gio/gcharsetconverter.c:460 glib/gconvert.c:326
#, c-format
-msgid "Could not open converter from '%s' to '%s'"
+msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Ðе може да Ñе отвори конвертор от „%s“ към „%s“"
-#: ../gio/gcontenttype.c:335
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
-msgstr "Вид на %s"
+msgstr "Вид на „%s“"
-#: ../gio/gcontenttype-win32.c:160
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Ðепознат вид"
-#: ../gio/gcontenttype-win32.c:162
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
-msgstr "Вид на файла %s"
+msgstr "Вид на файла „%s“"
+
+#: gio/gcredentials.c:335
+msgid "GCredentials contains invalid data"
+msgstr "„GCredentials“ Ñъдържат неправилни данни"
-#: ../gio/gcredentials.c:312 ../gio/gcredentials.c:571
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
-msgstr "Операционната ÑиÑтема нÑма Ñ€ÐµÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð½Ð° GCredentials"
+msgstr "Операционната ÑиÑтема нÑма Ñ€ÐµÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð½Ð° „GCredentials“"
-#: ../gio/gcredentials.c:467
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
-msgstr "Платформата не поддържа GCredentials"
+msgstr "Платформата не поддържа „GCredentials“"
-#: ../gio/gcredentials.c:513
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr ""
-"РеализациÑта на GCredentials върху тази операционна ÑиÑтема не Ñъдържа "
+"РеализациÑта на „GCredentials“ върху тази операционна ÑиÑтема не Ñъдържа "
"идентификатор на процеÑ"
-#: ../gio/gcredentials.c:565
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
-msgstr "Операционната ÑиÑтема нÑма Ñ€ÐµÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð½Ð° GCredentials"
+msgstr ""
+"ЗамÑната на данни за Ð¸Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ñ Ðµ невъзможна на тази операционна ÑиÑтема"
-#: ../gio/gdatainputstream.c:304
+#: gio/gdatainputstream.c:304
msgid "Unexpected early end-of-stream"
msgstr "Ðеочаквано ранен край на поток"
-#: ../gio/gdbusaddress.c:153 ../gio/gdbusaddress.c:241
-#: ../gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
-msgid "Unsupported key '%s' in address entry '%s'"
+msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Ðеподдържан ключ „%s“ в Ð°Ð´Ñ€ÐµÑ â€ž%s“"
-#: ../gio/gdbusaddress.c:180
+#: gio/gdbusaddress.c:175
+#, c-format
+msgid "Meaningless key/value pair combination in address entry “%sâ€"
+msgstr "БезÑмиÑлена ÐºÐ¾Ð¼Ð±Ð¸Ð½Ð°Ñ†Ð¸Ñ Ð¾Ñ‚ ключ и ÑтойноÑÑ‚ в адреÑа „%s“"
+
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
-"Address '%s' is invalid (need exactly one of path, tmpdir or abstract keys)"
+"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
+"keys)"
msgstr ""
"ÐдреÑÑŠÑ‚ „%s“ е грешен (Ñ‚Ñ€Ñбва да Ñъдържа Ñамо едно от Ñледните: път, "
-"временна Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð¸Ð»Ð¸ абÑтрактни ключове)"
+"директориÑ, временна Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð¸Ð»Ð¸ абÑтрактни ключове)"
-#: ../gio/gdbusaddress.c:193
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
-msgid "Meaningless key/value pair combination in address entry '%s'"
-msgstr "БезÑмиÑлена ÐºÐ¾Ð¼Ð±Ð¸Ð½Ð°Ñ†Ð¸Ñ Ð¾Ñ‚ ключ и ÑтойноÑÑ‚ в адреÑа „%s“"
+msgid "Error in address “%s†— the “%s†attribute is malformed"
+msgstr "Грешка в адреÑа „%s“ — атрибутът „%s“ е неправилен"
-#: ../gio/gdbusaddress.c:256 ../gio/gdbusaddress.c:337
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
-msgid "Error in address '%s' - the port attribute is malformed"
-msgstr "Грешка в адреÑа „%s“ — атрибутът за порт „port“ е неправилен"
+msgid "Unknown or unsupported transport “%s†for address “%sâ€"
+msgstr "Ðепознат или неподдържан транÑпорт „%s“ за Ð°Ð´Ñ€ÐµÑ â€ž%s“"
-#: ../gio/gdbusaddress.c:267 ../gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:465
#, c-format
-msgid "Error in address '%s' - the family attribute is malformed"
-msgstr "Грешка в адреÑа „%s“ — атрибутът за ÑемейÑтво „family“ е неправилен"
+msgid "Address element “%s†does not contain a colon (:)"
+msgstr "Елементът на адреÑа „%s“ не Ñъдържа двоеточие („:“)"
-#: ../gio/gdbusaddress.c:457
+#: gio/gdbusaddress.c:474
#, c-format
-msgid "Address element '%s' does not contain a colon (:)"
-msgstr "Елементът на адреÑа „%s“ не Ñъдържа двоеточие („:“)"
+msgid "Transport name in address element “%s†must not be empty"
+msgstr "Името на транÑпорта в елемента на адреÑа „%s“ не Ñ‚Ñ€Ñбва да е празно"
-#: ../gio/gdbusaddress.c:478
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
-"Key/Value pair %d, '%s', in address element '%s' does not contain an equal "
+"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
"sign"
msgstr ""
"Двойката ключ/ÑтойноÑÑ‚ %d, „%s“ в адреÑÐ½Ð¸Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚ „%s“ не Ñъдържа знак за "
"равенÑтво („=“)"
-#: ../gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
-"Error unescaping key or value in Key/Value pair %d, '%s', in address element "
-"'%s'"
+"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
+msgstr ""
+"Двойката ключ/ÑтойноÑÑ‚ %d, „%s“ в адреÑÐ½Ð¸Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚ „%s“ Ñъдържа празен ключ"
+
+#: gio/gdbusaddress.c:520
+#, c-format
+msgid ""
+"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
+"“%sâ€"
msgstr ""
"Грешка при декодиране на ключа или ÑтойноÑтта в двойката %d, „%s“ в адреÑÐ½Ð¸Ñ "
"елемент „%s“"
-#: ../gio/gdbusaddress.c:570
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
-"Error in address '%s' - the unix transport requires exactly one of the keys "
-"'path' or 'abstract' to be set"
+"Error in address “%s†— the unix transport requires exactly one of the keys "
+"“path†or “abstract†to be set"
msgstr ""
"Грешка в адреÑа „%s“ — транÑпортът „unix“ изиÑква точно един от ключовете "
"„path“ или „abstract“"
-#: ../gio/gdbusaddress.c:606
+#: gio/gdbusaddress.c:623
#, c-format
-msgid "Error in address '%s' - the host attribute is missing or malformed"
+msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr "Грешка в адреÑа „%s“ — атрибутът за хоÑÑ‚ „host“ липÑва или е грешен"
-#: ../gio/gdbusaddress.c:620
+#: gio/gdbusaddress.c:637
#, c-format
-msgid "Error in address '%s' - the port attribute is missing or malformed"
+msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "Грешка в адреÑа „%s“ — атрибутът за порт „port“ липÑва или е грешен"
-#: ../gio/gdbusaddress.c:634
+#: gio/gdbusaddress.c:651
#, c-format
-msgid "Error in address '%s' - the noncefile attribute is missing or malformed"
+msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Грешка в адреÑа „%s“ — атрибутът за момент „noncefile“ липÑва или е грешен"
-#: ../gio/gdbusaddress.c:655
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Грешка при автоматично Ñтартиране: "
-#: ../gio/gdbusaddress.c:663
-#, c-format
-msgid "Unknown or unsupported transport '%s' for address '%s'"
-msgstr "Ðепознат или неподдържан транÑпорт „%s“ за Ð°Ð´Ñ€ÐµÑ â€ž%s“"
-
-#: ../gio/gdbusaddress.c:699
+#: gio/gdbusaddress.c:725
#, c-format
-msgid "Error opening nonce file '%s': %s"
+msgid "Error opening nonce file “%sâ€: %s"
msgstr "Грешка при отварÑне на моментен файл „%s“: %s"
-#: ../gio/gdbusaddress.c:717
+#: gio/gdbusaddress.c:744
#, c-format
-msgid "Error reading from nonce file '%s': %s"
+msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Грешка при четене на моментен файл „%s“: %s"
-#: ../gio/gdbusaddress.c:726
+#: gio/gdbusaddress.c:753
#, c-format
-msgid "Error reading from nonce file '%s', expected 16 bytes, got %d"
+msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"Грешка при четене на моментен файл „%s“, очакват Ñе 16 байта, а Ñа получени "
"%d"
-#: ../gio/gdbusaddress.c:744
+#: gio/gdbusaddress.c:771
#, c-format
-msgid "Error writing contents of nonce file '%s' to stream:"
+msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Грешка при Ð·Ð°Ð¿Ð¸Ñ Ð½Ð° Ñъдържанието на моментен файл „%s“ в поток:"
-#: ../gio/gdbusaddress.c:950
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "ДадениÑÑ‚ Ð°Ð´Ñ€ÐµÑ Ðµ празен"
-#: ../gio/gdbusaddress.c:1063
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
msgstr ""
"Създаването на шина за обмен на ÑÑŠÐ¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð½Ðµ е възможно при изрично зададен "
-"идентификатор на потребител (setuid)"
+"„AT_SECURE“"
-#: ../gio/gdbusaddress.c:1070
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr ""
"Създаването на шина за обмен на ÑÑŠÐ¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð½Ðµ е възможно без идентификатор на "
"машина: "
-#: ../gio/gdbusaddress.c:1112
+#: gio/gdbusaddress.c:1113
#, c-format
-msgid "Error spawning command line '%s': "
-msgstr "Грешка при изпълнÑване на външна команда „%s“: "
+msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
+msgstr "D-Bus не може да Ñе Ñтартира автоматично без „$DISPLAY“ от X11"
-#: ../gio/gdbusaddress.c:1329
+#: gio/gdbusaddress.c:1155
#, c-format
-msgid "(Type any character to close this window)\n"
-msgstr "(Въведете произволен знак, за да затворите този прозорец)\n"
-
-#: ../gio/gdbusaddress.c:1460
-#, c-format
-msgid "Session dbus not running, and autolaunch failed"
-msgstr ""
-"Шината на ÑеÑиÑта D-Bus не е Ñтартирана. Ðвтоматичното Ñ Ñтартиране бе Ñъщо "
-"неуÑпешно"
+msgid "Error spawning command line “%sâ€: "
+msgstr "Грешка при изпълнÑване на външна команда „%s“: "
-#: ../gio/gdbusaddress.c:1471
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"ÐдреÑÑŠÑ‚ на шината на ÑеÑиÑта не може да Ñе определи (липÑва Ñ€ÐµÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð·Ð° "
"тази операционна ÑиÑтема)"
-#: ../gio/gdbusaddress.c:1606 ../gio/gdbusconnection.c:7128
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
-"- unknown value '%s'"
+"— unknown value “%sâ€"
msgstr ""
"ÐдреÑÑŠÑ‚ на шината не може да Ñе определи от променливата на обкръжението "
-"DBUS_STARTER_BUS_TYPE — непозната ÑтойноÑÑ‚ „%s“"
+"„DBUS_STARTER_BUS_TYPE“ — непозната ÑтойноÑÑ‚ „%s“"
-#: ../gio/gdbusaddress.c:1615 ../gio/gdbusconnection.c:7137
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
msgstr ""
"ÐдреÑÑŠÑ‚ на шината не може да Ñе определи, защото променливата "
-"DBUS_STARTER_BUS_TYPE липÑва в обкръжението"
+"„DBUS_STARTER_BUS_TYPE“ липÑва в обкръжението"
-#: ../gio/gdbusaddress.c:1625
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Ðепознат вид шина %d"
-#: ../gio/gdbusauth.c:293
+#: gio/gdbusauth.c:294
msgid "Unexpected lack of content trying to read a line"
msgstr "Ðеочаквана липÑа на Ñъдържание при опит за четене на ред"
-#: ../gio/gdbusauth.c:337
+#: gio/gdbusauth.c:338
msgid "Unexpected lack of content trying to (safely) read a line"
msgstr "Ðеочаквана липÑа на Ñъдържание при опит за (безопаÑно) четене на ред"
-#: ../gio/gdbusauth.c:508
+#: gio/gdbusauth.c:482
#, c-format
msgid ""
"Exhausted all available authentication mechanisms (tried: %s) (available: %s)"
@@ -555,253 +571,279 @@ msgstr ""
"Изчерпване на наличните механизми за Ð¸Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ñ (пробвани: %s) (налични: "
"%s)"
-#: ../gio/gdbusauth.c:1170
+#: gio/gdbusauth.c:1171
+msgid "User IDs must be the same for peer and server"
+msgstr ""
+"Идентификаторите за потребител от Ñървъра и отÑрещната Ñтрана Ñ‚Ñ€Ñбва да Ñа "
+"еднакви"
+
+#: gio/gdbusauth.c:1183
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
-msgstr "ПрекъÑване чрез GDBusAuthObserver::authorize-authenticated-peer"
+msgstr "ПрекъÑване чрез „GDBusAuthObserver::authorize-authenticated-peer“"
-#: ../gio/gdbusauthmechanismsha1.c:261
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
-msgid "Error when getting information for directory '%s': %s"
+msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Грешка при получаване на Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð·Ð° папка „%s“: %s"
-#: ../gio/gdbusauthmechanismsha1.c:273
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
-"Permissions on directory '%s' are malformed. Expected mode 0700, got 0%o"
+"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
msgstr ""
"Правата за доÑтъп до папката „%s“ Ñа повредени. Очакван режим 0700, получен "
"0%o"
-#: ../gio/gdbusauthmechanismsha1.c:294
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
-msgid "Error creating directory '%s': %s"
+msgid "Error creating directory “%sâ€: %s"
msgstr "Грешка при Ñъздаване на папка „%s“: %s"
-#: ../gio/gdbusauthmechanismsha1.c:377
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
+msgid "Operation not supported"
+msgstr "ДейÑтвието не Ñе поддържа"
+
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
-msgid "Error opening keyring '%s' for reading: "
+msgid "Error opening keyring “%s†for reading: "
msgstr "Грешка при отварÑне на ÐºÐ»ÑŽÑ‡Ð¾Ð´ÑŠÑ€Ð¶Ð°Ñ‚ÐµÐ»Ñ â€ž%s“ за четене: "
-#: ../gio/gdbusauthmechanismsha1.c:401 ../gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
-msgid "Line %d of the keyring at '%s' with content '%s' is malformed"
+msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "Ред %d на ÐºÐ»ÑŽÑ‡Ð¾Ð´ÑŠÑ€Ð¶Ð°Ñ‚ÐµÐ»Ñ â€ž%s“, Ñъдържащ „%s“, е повреден"
-#: ../gio/gdbusauthmechanismsha1.c:415 ../gio/gdbusauthmechanismsha1.c:728
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
-"First token of line %d of the keyring at '%s' with content '%s' is malformed"
+"First token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
"Първата лекÑема на ред %d на ÐºÐ»ÑŽÑ‡Ð¾Ð´ÑŠÑ€Ð¶Ð°Ñ‚ÐµÐ»Ñ â€ž%s“, Ñъдържащ „%s“, е повреден"
-#: ../gio/gdbusauthmechanismsha1.c:430 ../gio/gdbusauthmechanismsha1.c:742
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
-"Second token of line %d of the keyring at '%s' with content '%s' is malformed"
+"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
"Втората лекÑема на ред %d на ÐºÐ»ÑŽÑ‡Ð¾Ð´ÑŠÑ€Ð¶Ð°Ñ‚ÐµÐ»Ñ â€ž%s“, Ñъдържащ „%s“, е повредена"
-#: ../gio/gdbusauthmechanismsha1.c:454
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
-msgid "Didn't find cookie with id %d in the keyring at '%s'"
+msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Ðе е намерена биÑквитка Ñ Ð¸Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ð¸ÐºÐ°Ñ‚Ð¾Ñ€ %d в ÐºÐ»ÑŽÑ‡Ð¾Ð´ÑŠÑ€Ð¶Ð°Ñ‚ÐµÐ»Ñ Ð² „%s“"
-#: ../gio/gdbusauthmechanismsha1.c:532
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
-msgid "Error deleting stale lock file '%s': %s"
-msgstr "Грешка при изтриване на оÑÑ‚Ð°Ñ€ÐµÐ»Ð¸Ñ Ñ„Ð°Ð¹Ð» за ÑÐ¸Ð½Ñ…Ñ€Ð¾Ð½Ð¸Ð·Ð°Ñ†Ð¸Ñ â€ž%s“: %s"
+msgid "Error creating lock file “%sâ€: %s"
+msgstr "Грешка при Ñъздаване на файла за ÑÐ¸Ð½Ñ…Ñ€Ð¾Ð½Ð¸Ð·Ð°Ñ†Ð¸Ñ â€ž%s“: %s"
-#: ../gio/gdbusauthmechanismsha1.c:564
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
-msgid "Error creating lock file '%s': %s"
-msgstr "Грешка при Ñъздаване на файла за ÑÐ¸Ð½Ñ…Ñ€Ð¾Ð½Ð¸Ð·Ð°Ñ†Ð¸Ñ â€ž%s“: %s"
+msgid "Error deleting stale lock file “%sâ€: %s"
+msgstr "Грешка при изтриване на оÑÑ‚Ð°Ñ€ÐµÐ»Ð¸Ñ Ñ„Ð°Ð¹Ð» за ÑÐ¸Ð½Ñ…Ñ€Ð¾Ð½Ð¸Ð·Ð°Ñ†Ð¸Ñ â€ž%s“: %s"
-#: ../gio/gdbusauthmechanismsha1.c:594
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
-msgid "Error closing (unlinked) lock file '%s': %s"
-msgstr "Грешка при затварÑне на Ð¸Ð·Ñ‚Ñ€Ð¸Ñ‚Ð¸Ñ Ñ„Ð°Ð¹Ð» за ÑÐ¸Ð½Ñ…Ñ€Ð¾Ð½Ð¸Ð·Ð°Ñ†Ð¸Ñ â€ž%s“: %s"
+msgid "Error closing (unlinked) lock file “%sâ€: %s"
+msgstr ""
+"Грешка при затварÑне на възможно Ð¸Ð·Ñ‚Ñ€Ð¸Ñ‚Ð¸Ñ Ñ„Ð°Ð¹Ð» за ÑÐ¸Ð½Ñ…Ñ€Ð¾Ð½Ð¸Ð·Ð°Ñ†Ð¸Ñ â€ž%s“: %s"
-#: ../gio/gdbusauthmechanismsha1.c:604
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
-msgid "Error unlinking lock file '%s': %s"
+msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Грешка при изтриване на файла за ÑÐ¸Ð½Ñ…Ñ€Ð¾Ð½Ð¸Ð·Ð°Ñ†Ð¸Ñ â€ž%s“: %s"
-#: ../gio/gdbusauthmechanismsha1.c:681
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
-msgid "Error opening keyring '%s' for writing: "
+msgid "Error opening keyring “%s†for writing: "
msgstr "Грешка при отварÑне на ÐºÐ»ÑŽÑ‡Ð¾Ð´ÑŠÑ€Ð¶Ð°Ñ‚ÐµÐ»Ñ â€ž%s“ за запиÑ: "
-#: ../gio/gdbusauthmechanismsha1.c:878
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
-msgid "(Additionally, releasing the lock for '%s' also failed: %s) "
+msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Допълнително, отключването на „%s“ бе Ñъщо неуÑпешно: %s) "
-#: ../gio/gdbusconnection.c:612 ../gio/gdbusconnection.c:2373
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "Връзката прекъÑна"
-#: ../gio/gdbusconnection.c:1877
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "Времето за изчакване е проÑрочено"
-#: ../gio/gdbusconnection.c:2495
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr "Ðеподдържани флагове при Ñъздаване на изходÑща връзка"
-#: ../gio/gdbusconnection.c:4105 ../gio/gdbusconnection.c:4452
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
-"No such interface 'org.freedesktop.DBus.Properties' on object at path %s"
-msgstr "Обектът в %s нÑма Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ â€žorg.freedesktop.DBus.Properties“"
+"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
+msgstr "Обектът в „%s“ нÑма Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ â€žorg.freedesktop.DBus.Properties“"
-#: ../gio/gdbusconnection.c:4247
+#: gio/gdbusconnection.c:4398
#, c-format
-msgid "No such property '%s'"
+msgid "No such property “%sâ€"
msgstr "ЛипÑва ÑвойÑтво „%s“"
-#: ../gio/gdbusconnection.c:4259
+#: gio/gdbusconnection.c:4410
#, c-format
-msgid "Property '%s' is not readable"
+msgid "Property “%s†is not readable"
msgstr "СвойÑтвото „%s“ не поддържа четене"
-#: ../gio/gdbusconnection.c:4270
+#: gio/gdbusconnection.c:4421
#, c-format
-msgid "Property '%s' is not writable"
+msgid "Property “%s†is not writable"
msgstr "СвойÑтвото „%s“ не поддържа запиÑ"
-#: ../gio/gdbusconnection.c:4290
+#: gio/gdbusconnection.c:4441
#, c-format
-msgid "Error setting property '%s': Expected type '%s' but got '%s'"
+msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
-"Грешка при промÑна на ÑвойÑтвото „%s“: Очакван е вид „%s“, а е получен „%s“"
+"Грешка при задаване на ÑвойÑтвото „%s“: Очакван е вид „%s“, а е получен „%s“"
-#: ../gio/gdbusconnection.c:4395 ../gio/gdbusconnection.c:6568
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
-msgid "No such interface '%s'"
+msgid "No such interface “%sâ€"
msgstr "ЛипÑва Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ â€ž%s“"
-#: ../gio/gdbusconnection.c:4603
-msgid "No such interface"
-msgstr "ЛипÑва такъв интерфейÑ"
-
-#: ../gio/gdbusconnection.c:4821 ../gio/gdbusconnection.c:7077
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
-msgid "No such interface '%s' on object at path %s"
-msgstr "ЛипÑва Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ â€ž%s“ към обекта в %s"
+msgid "No such interface “%s†on object at path %s"
+msgstr "ЛипÑва Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ â€ž%s“ към обекта в „%s“"
-#: ../gio/gdbusconnection.c:4919
+#: gio/gdbusconnection.c:5084
#, c-format
-msgid "No such method '%s'"
+msgid "No such method “%sâ€"
msgstr "ЛипÑва метод „%s“"
-#: ../gio/gdbusconnection.c:4950
+#: gio/gdbusconnection.c:5115
#, c-format
-msgid "Type of message, '%s', does not match expected type '%s'"
+msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Видът на Ñъобщението („%s“) не Ñъвпада Ñ Ð¾Ñ‡Ð°ÐºÐ²Ð°Ð½Ð¸Ñ („%s“)"
-#: ../gio/gdbusconnection.c:5148
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
-msgstr "Вече е наличен обект за интерфейÑа %s в %s"
+msgstr "Вече е наличен обект за интерфейÑа „%s“ в „%s“"
-#: ../gio/gdbusconnection.c:5374
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "СвойÑтвото „%s.%s“ не може да бъде получено"
-#: ../gio/gdbusconnection.c:5430
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "СвойÑтвото „%s.%s“ не може да бъде зададено"
-#: ../gio/gdbusconnection.c:5606
+#: gio/gdbusconnection.c:5780
#, c-format
-msgid "Method '%s' returned type '%s', but expected '%s'"
-msgstr "Методът „%s“ върна тип „%s“, а Ñе очаква „%s“"
+msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
+msgstr "Методът „%s“ върна вид „%s“, а Ñе очаква „%s“"
-#: ../gio/gdbusconnection.c:6679
+#: gio/gdbusconnection.c:6856
#, c-format
-msgid "Method '%s' on interface '%s' with signature '%s' does not exist"
+msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "Ðе ÑъщеÑтвува метод „%s“ на интерфейÑа „%s“ ÑÑŠÑ Ñигнатура „%s“"
-#: ../gio/gdbusconnection.c:6800
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
-msgstr "Вече има поддърво за %s"
+msgstr "Вече е изнеÑено поддърво за „%s“"
-#: ../gio/gdbusmessage.c:1244
+#: gio/gdbusconnection.c:7266
+#, c-format
+msgid "Object does not exist at path “%sâ€"
+msgstr "Обектът липÑва в Ð¿ÑŠÑ‚Ñ â€ž%s“"
+
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
-msgstr "видът е INVALID"
+msgstr "видът е „INVALID“"
-#: ../gio/gdbusmessage.c:1255
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr ""
-"Съобщение METHOD_CALL: в заглавната чаÑÑ‚ липÑват полета PATH или MEMBER"
+"Съобщение „METHOD_CALL“: в заглавната чаÑÑ‚ липÑват полета „PATH“ или „MEMBER“"
-#: ../gio/gdbusmessage.c:1266
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
-msgstr "Съобщение METHOD_RETURN: в заглавната чаÑÑ‚ липÑва поле REPLY_SERIAL"
+msgstr ""
+"Съобщение „METHOD_RETURN“: в заглавната чаÑÑ‚ липÑва поле „REPLY_SERIAL“"
-#: ../gio/gdbusmessage.c:1278
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr ""
-"Съобщение ERROR: в заглавната чаÑÑ‚ липÑват полета REPLY_SERIAL или ERROR_NAME"
+"Съобщение „ERROR“: в заглавната чаÑÑ‚ липÑват полета „REPLY_SERIAL“ или "
+"„ERROR_NAME“"
-#: ../gio/gdbusmessage.c:1291
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr ""
-"Съобщение SIGNAL: в заглавната чаÑÑ‚ липÑват полета PATH, INTERFACE или MEMBER"
+"Съобщение „SIGNAL“: в заглавната чаÑÑ‚ липÑват полета „PATH“, „INTERFACE“ или "
+"„MEMBER“"
-#: ../gio/gdbusmessage.c:1299
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
msgstr ""
-"Съобщение SIGNAL: Полето PATH в заглавната чаÑÑ‚ използва запазената ÑтойноÑÑ‚ "
-"„/org/freedesktop/DBus/Local“"
+"Съобщение „SIGNAL“: Полето „PATH“ в заглавната чаÑÑ‚ използва запазената "
+"ÑтойноÑÑ‚ „/org/freedesktop/DBus/Local“"
-#: ../gio/gdbusmessage.c:1307
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
msgstr ""
-"Съобщение SIGNAL: Полето INTERFACE в заглавната чаÑÑ‚ използва запазената "
+"Съобщение „SIGNAL“: Полето „INTERFACE“ в заглавната чаÑÑ‚ използва запазената "
"ÑтойноÑÑ‚ „org.freedesktop.DBus.Local“"
-#: ../gio/gdbusmessage.c:1355 ../gio/gdbusmessage.c:1415
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "При опит за четене на %lu байт бÑха получени %lu"
msgstr[1] "При опит за четене на %lu байта бÑха получени %lu"
-#: ../gio/gdbusmessage.c:1369
+#: gio/gdbusmessage.c:1426
#, c-format
-msgid "Expected NUL byte after the string '%s' but found byte %d"
+msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "След низа „%s“ Ñе очаква байт NUL, а не %d"
-#: ../gio/gdbusmessage.c:1388
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
-"(length of string is %d). The valid UTF-8 string up until that point was '%s'"
+"(length of string is %d). The valid UTF-8 string up until that point was “%sâ€"
msgstr ""
"Очаква Ñе низ, кодиран в UTF-8, а Ñа получени неправилни байтове при "
"отмеÑтване %d (дължината на низа е %d). ДекодираниÑÑ‚ от UTF-8 низ до тази "
"Ð¿Ð¾Ð·Ð¸Ñ†Ð¸Ñ Ðµ „%s“"
-#: ../gio/gdbusmessage.c:1587
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
+msgid "Value nested too deeply"
+msgstr "Прекалено дълбоко вложена ÑтойноÑÑ‚"
+
+#: gio/gdbusmessage.c:1677
#, c-format
-msgid "Parsed value '%s' is not a valid D-Bus object path"
-msgstr "Запазената ÑтойноÑÑ‚ „%s“ не е допуÑтим път до обект в D-Bus"
+msgid "Parsed value “%s†is not a valid D-Bus object path"
+msgstr "Ðнализираната ÑтойноÑÑ‚ „%s“ не е допуÑтим път до обект в D-Bus"
-#: ../gio/gdbusmessage.c:1609
+#: gio/gdbusmessage.c:1701
#, c-format
-msgid "Parsed value '%s' is not a valid D-Bus signature"
-msgstr "Прочетената ÑтойноÑÑ‚ „%s“ не е допуÑтима Ñигнатура в D-Bus"
+msgid "Parsed value “%s†is not a valid D-Bus signature"
+msgstr "Ðнализираната ÑтойноÑÑ‚ „%s“ не е допуÑтима Ñигнатура в D-Bus"
-#: ../gio/gdbusmessage.c:1656
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -812,54 +854,63 @@ msgstr[0] ""
msgstr[1] ""
"Срещнат е маÑив Ñ Ð´ÑŠÐ»Ð¶Ð¸Ð½Ð° %u байта. МакÑималната дължина е 2²ⶠ(64 MiB)"
-#: ../gio/gdbusmessage.c:1676
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
-"Encountered array of type 'a%c', expected to have a length a multiple of %u "
+"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
"bytes, but found to be %u bytes in length"
msgstr ""
-"Получен бе маÑив тип „a%c“. Очакваше Ñе да има дължина делима на %u байта, "
-"но Ñ‚Ñ Ð±ÐµÑˆÐµ %u байта"
+"Получен бе маÑив от вид „a%c“. Очакваше Ñе да има дължина делима на %u "
+"байта, но Ñ‚Ñ Ð±Ðµ %u байта"
+
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
+msgid "Empty structures (tuples) are not allowed in D-Bus"
+msgstr "Празни Ñтруктури (n-орки) не Ñа позволени в D-Bus"
-#: ../gio/gdbusmessage.c:1843
+#: gio/gdbusmessage.c:1980
#, c-format
-msgid "Parsed value '%s' for variant is not a valid D-Bus signature"
-msgstr "Прочетената вариантна ÑтойноÑÑ‚ „%s“ не е допуÑтима Ñигнатура в D-Bus"
+msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
+msgstr "Ðнализираната вариантна ÑтойноÑÑ‚ „%s“ не е допуÑтима Ñигнатура в D-Bus"
-#: ../gio/gdbusmessage.c:1867
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
-"Error deserializing GVariant with type string '%s' from the D-Bus wire format"
+"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
msgstr ""
-"Грешка при разчитане на GVariant от вид „%s“ от Ð¼Ð°ÑˆÐ¸Ð½Ð½Ð¸Ñ Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚ на D-Bus"
+"Грешка при деÑериализиране на „GVariant“ от вид „%s“ от Ð¼Ð°ÑˆÐ¸Ð½Ð½Ð¸Ñ Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚ на D-"
+"Bus"
-#: ../gio/gdbusmessage.c:2051
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
-"Invalid endianness value. Expected 0x6c ('l') or 0x42 ('B') but found value "
+"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
"0x%02x"
msgstr ""
"ÐедопуÑтима ÑтойноÑÑ‚ на индикатора за подреждане на байтовете в думи. Очаква "
"Ñе или 0x6c („l“), или 0x42 („B“), а е открита ÑтойноÑÑ‚ 0x%02x"
-#: ../gio/gdbusmessage.c:2064
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "ÐедопуÑтима главна верÑÐ¸Ñ Ð½Ð° протокола. Очаква Ñе 1, а е открита %d"
-#: ../gio/gdbusmessage.c:2120
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
+msgid "Signature header found but is not of type signature"
+msgstr "Заглавната чаÑÑ‚ ÑÑŠÑ Ñигнатура е намерена, на Ñ‚Ñ Ð½Ðµ е за вид"
+
+#: gio/gdbusmessage.c:2295
#, c-format
-msgid "Signature header with signature '%s' found but message body is empty"
+msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"Открита е заглавна чаÑÑ‚ ÑÑŠÑ Ñигнатура „%s“, обаче Ñ‚Ñлото на Ñъобщението е "
"празно"
-#: ../gio/gdbusmessage.c:2134
+#: gio/gdbusmessage.c:2310
#, c-format
-msgid "Parsed value '%s' is not a valid D-Bus signature (for body)"
+msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "Разчетената ÑтойноÑÑ‚ „%s“ не е допуÑтима Ñигнатура в D-Bus (за Ñ‚Ñло)"
-#: ../gio/gdbusmessage.c:2164
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -867,112 +918,127 @@ msgstr[0] "Ð’ заглавната чаÑÑ‚ на Ñъобщението нÑма
msgstr[1] ""
"Ð’ заглавната чаÑÑ‚ на Ñъобщението нÑма Ñигнатура, а Ñ‚Ñлото е %u байта"
-#: ../gio/gdbusmessage.c:2174
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "ÐеуÑпешно декодиране на Ñъобщение: "
-#: ../gio/gdbusmessage.c:2515
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
-"Error serializing GVariant with type string '%s' to the D-Bus wire format"
+"Error serializing GVariant with type string “%s†to the D-Bus wire format"
msgstr ""
-"Грешка при Ñериализиране на GVariant от вид „%s“ в Ð¼Ð°ÑˆÐ¸Ð½Ð½Ð¸Ñ Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚ на D-Bus"
+"Грешка при Ñериализиране на „GVariant“ от вид „%s“ в Ð¼Ð°ÑˆÐ¸Ð½Ð½Ð¸Ñ Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚ на D-Bus"
-#: ../gio/gdbusmessage.c:2652
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
-"Message has %d file descriptors but the header field indicates %d file "
-"descriptors"
+"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr ""
-"Съобщението има %d файлови деÑкриптора, а в заглавната чаÑÑ‚ Ñа обÑвени %d"
+"БроÑÑ‚ файлови деÑкриптори в Ñъобщението (%d) е различно от Ð±Ñ€Ð¾Ñ Ð² заглавното "
+"поле (%d)"
-#: ../gio/gdbusmessage.c:2660
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
-msgstr "ÐеуÑпешна ÑÐµÑ€Ð¸Ð°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð½Ð° Ñъобщението:"
+msgstr "ÐеуÑпешна ÑÐµÑ€Ð¸Ð°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð½Ð° Ñъобщението: "
-#: ../gio/gdbusmessage.c:2704
+#: gio/gdbusmessage.c:2896
#, c-format
-msgid "Message body has signature '%s' but there is no signature header"
+msgid "Message body has signature “%s†but there is no signature header"
msgstr ""
-"ТÑлото на Ñъобщението има Ñигнатура „%s“, но нÑма заглавна чаÑÑ‚ ÑÑŠÑ Ñигнатури"
+"ТÑлото на Ñъобщението има Ñигнатура „%s“, но нÑма заглавна чаÑÑ‚ за Ñигнатура"
-#: ../gio/gdbusmessage.c:2714
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
-"Message body has type signature '%s' but signature in the header field is "
-"'%s'"
+"Message body has type signature “%s†but signature in the header field is "
+"“%sâ€"
msgstr ""
-"ТÑлото на Ñъобщението има Ñигнатура за тип „%s“, но полето в заглавната чаÑÑ‚ "
+"ТÑлото на Ñъобщението има Ñигнатура за вид „%s“, но полето в заглавната чаÑÑ‚ "
"за Ñигнатури е „%s“"
-#: ../gio/gdbusmessage.c:2730
+#: gio/gdbusmessage.c:2922
#, c-format
-msgid "Message body is empty but signature in the header field is '(%s)'"
+msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr ""
"ТÑлото на Ñъобщението е празно, а Ñигнатурата в полето на заглавната чаÑÑ‚ е "
"„(%s)“"
-#: ../gio/gdbusmessage.c:3283
+#: gio/gdbusmessage.c:3477
#, c-format
-msgid "Error return with body of type '%s'"
+msgid "Error return with body of type “%sâ€"
msgstr "Връщане на грешка Ñ Ñ‚Ñло от вид „%s“"
-#: ../gio/gdbusmessage.c:3291
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Връщане на грешка Ñ Ð¿Ñ€Ð°Ð·Ð½Ð¾ Ñ‚Ñло на Ñъобщението"
-#: ../gio/gdbusprivate.c:2036
+#: gio/gdbusprivate.c:2185
+#, c-format
+msgid "(Type any character to close this window)\n"
+msgstr "(Въведете произволен знак, за да затворите този прозорец)\n"
+
+#: gio/gdbusprivate.c:2371
+#, c-format
+msgid "Session dbus not running, and autolaunch failed"
+msgstr ""
+"Шината на ÑеÑиÑта D-Bus не е Ñтартирана. Ðвтоматичното Ñ Ñтартиране бе Ñъщо "
+"неуÑпешно"
+
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "ÐеуÑпешно определÑне на Ñ…Ð°Ñ€Ð´ÑƒÐµÑ€Ð½Ð¸Ñ Ð¿Ñ€Ð¾Ñ„Ð¸Ð»: %s"
-#: ../gio/gdbusprivate.c:2081
-msgid "Unable to load /var/lib/dbus/machine-id or /etc/machine-id: "
-msgstr "ÐеуÑпешно зареждане на /var/lib/dbus/machine-id или /etc/machine-id: "
+#. Translators: Both placeholders are file paths
+#: gio/gdbusprivate.c:2445
+#, c-format
+msgid "Unable to load %s or %s: "
+msgstr "ÐеуÑпешно зареждане на „%s“ или „%s“: "
-#: ../gio/gdbusproxy.c:1610
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
-msgstr "Грешка при извикване на StartServiceByName за %s:"
+msgstr "Грешка при извикване на „StartServiceByName“ за %s:"
-#: ../gio/gdbusproxy.c:1633
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
-msgstr "Ðеочакван отговор „%d“ от метода StartServicebyName(„%s“)"
+msgstr "Ðеочакван отговор „%d“ от метода „StartServicebyName(\"%s\")“"
-#: ../gio/gdbusproxy.c:2709 ../gio/gdbusproxy.c:2843
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
+#, c-format
msgid ""
-"Cannot invoke method; proxy is for a well-known name without an owner and "
-"proxy was constructed with the G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START flag"
+"Cannot invoke method; proxy is for the well-known name %s without an owner, "
+"and proxy was constructed with the G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START flag"
msgstr ""
-"Ðе може да Ñе направи обръщение към метода. ПоÑредникът е за предварително "
-"дефинирано име без ÑобÑтвеник, а е Ñъздаден Ñ Ñ„Ð»Ð°Ð³Ð° "
-"G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START"
+"Ðе може да Ñе направи обръщение към метода. ПоÑредникът е за извеÑтно име "
+"без ÑобÑтвеник „%s“, а е Ñъздаден Ñ Ñ„Ð»Ð°Ð³Ð° "
+"„G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START“"
-#: ../gio/gdbusserver.c:708
-msgid "Abstract name space not supported"
+#: gio/gdbusserver.c:767
+msgid "Abstract namespace not supported"
msgstr "Ðе Ñе поддържа абÑтрактно проÑтранÑтво за имена"
-#: ../gio/gdbusserver.c:795
+#: gio/gdbusserver.c:860
msgid "Cannot specify nonce file when creating a server"
msgstr "Ðе може да Ñе задава моментен файл при Ñъздаване на Ñървър"
-#: ../gio/gdbusserver.c:873
+#: gio/gdbusserver.c:942
#, c-format
-msgid "Error writing nonce file at '%s': %s"
+msgid "Error writing nonce file at “%sâ€: %s"
msgstr "Грешка при Ð·Ð°Ð¿Ð¸Ñ Ð² моментен файл „%s“: %s"
-#: ../gio/gdbusserver.c:1044
+#: gio/gdbusserver.c:1117
#, c-format
-msgid "The string '%s' is not a valid D-Bus GUID"
-msgstr "Ðизът „%s“ не е допуÑтим глобален идентификатор в D-Bus"
+msgid "The string “%s†is not a valid D-Bus GUID"
+msgstr "Ðизът „%s“ не е допуÑтим глобален идентификатор (GIUD) в D-Bus"
-#: ../gio/gdbusserver.c:1084
+#: gio/gdbusserver.c:1157
#, c-format
-msgid "Cannot listen on unsupported transport '%s'"
+msgid "Cannot listen on unsupported transport “%sâ€"
msgstr "Ðевъзможно е да Ñе чака за връзки по неподдържан транÑпорт „%s“"
-#: ../gio/gdbus-tool.c:95
+#: gio/gdbus-tool.c:111
#, c-format
msgid ""
"Commands:\n"
@@ -981,548 +1047,597 @@ msgid ""
" monitor Monitor a remote object\n"
" call Invoke a method on a remote object\n"
" emit Emit a signal\n"
+" wait Wait for a bus name to appear\n"
"\n"
-"Use \"%s COMMAND --help\" to get help on each command.\n"
+"Use “%s COMMAND --help†to get help on each command.\n"
msgstr ""
"Команди:\n"
-" help Показва този текÑÑ‚\n"
+" help Извеждане на този текÑÑ‚\n"
" introspect Ðнализ на отдалечен обект\n"
" monitor Ðаблюдение на отдалечен обект\n"
" call Обръщане към метод на отдалечен обект\n"
" emit Издаване на Ñигнал\n"
+" wait Изчакване да Ñе поÑви името\n"
"\n"
"Използвайте „%s КОМÐÐДР--help“ за допълнителна Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð·Ð° вÑÑка "
"команда.\n"
-#: ../gio/gdbus-tool.c:164 ../gio/gdbus-tool.c:226 ../gio/gdbus-tool.c:298
-#: ../gio/gdbus-tool.c:322 ../gio/gdbus-tool.c:711 ../gio/gdbus-tool.c:1043
-#: ../gio/gdbus-tool.c:1477
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Грешка: %s\n"
-#: ../gio/gdbus-tool.c:175 ../gio/gdbus-tool.c:239 ../gio/gdbus-tool.c:1493
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Грешка при анализа на XML Ñ Ð°Ð½Ð°Ð»Ð¸Ñ‚Ð¸Ñ‡Ð½Ð° информациÑ: %s\n"
-#: ../gio/gdbus-tool.c:208
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Грешка: „%s“ не е вÑрно име\n"
-#: ../gio/gdbus-tool.c:356
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
+#, c-format
+msgid "Error: %s is not a valid object path\n"
+msgstr "Грешка: „%s“ не е допуÑтим път до обект\n"
+
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Свързване към ÑиÑтемната шина"
-#: ../gio/gdbus-tool.c:357
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
-msgstr "Свързване към шината на ÑеÑиÑта"
+msgstr "Свързване към ÑеÑийната шина"
-#: ../gio/gdbus-tool.c:358
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Свързване към даден Ð°Ð´Ñ€ÐµÑ Ð½Ð° D-Bus"
-#: ../gio/gdbus-tool.c:368
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Варианти за връзка:"
-#: ../gio/gdbus-tool.c:369
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Опции, указващи точката за връзка"
-#: ../gio/gdbus-tool.c:391
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Ðе е указана точка за връзка"
-#: ../gio/gdbus-tool.c:401
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Указани Ñа множеÑтво точки за връзка"
-#: ../gio/gdbus-tool.c:471
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
-"Warning: According to introspection data, interface '%s' does not exist\n"
+"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr "Предупреждение: Според анализа интерфейÑÑŠÑ‚ „%s“ не ÑъщеÑтвува\n"
-#: ../gio/gdbus-tool.c:480
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
-"Warning: According to introspection data, method '%s' does not exist on "
-"interface '%s'\n"
+"Warning: According to introspection data, method “%s†does not exist on "
+"interface “%sâ€\n"
msgstr ""
"Предупреждение: Според анализа методът „%s“ не Ñе предлага от интерфейÑа "
"„%s“\n"
-#: ../gio/gdbus-tool.c:542
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Ðезадължителен получател на Ñигнала (уникално име)"
-#: ../gio/gdbus-tool.c:543
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Път до обекта, към който да Ñе излъчи Ñигнал"
-#: ../gio/gdbus-tool.c:544
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Име на Ñигнал и интерфейÑ"
-#: ../gio/gdbus-tool.c:576
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Издаване на Ñигнал."
-#: ../gio/gdbus-tool.c:610 ../gio/gdbus-tool.c:842 ../gio/gdbus-tool.c:1583
-#: ../gio/gdbus-tool.c:1818
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Грешка при Ñвързване: %s\n"
-#: ../gio/gdbus-tool.c:622
+#: gio/gdbus-tool.c:704
#, c-format
-msgid "Error: object path not specified.\n"
-msgstr "Грешка: не е указан път до обект\n"
+msgid "Error: %s is not a valid unique bus name.\n"
+msgstr "Грешка: „%s“ не е вÑрно, уникално име на шина\n"
-#: ../gio/gdbus-tool.c:627 ../gio/gdbus-tool.c:909 ../gio/gdbus-tool.c:1648
-#: ../gio/gdbus-tool.c:1884
-#, c-format
-msgid "Error: %s is not a valid object path\n"
-msgstr "Грешка: „%s“ не е допуÑтим път до обект\n"
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
+msgid "Error: Object path is not specified\n"
+msgstr "Грешка: Ðе е указан път до обект\n"
-#: ../gio/gdbus-tool.c:633
-#, c-format
-msgid "Error: signal not specified.\n"
-msgstr "Грешка: не е указан Ñигнал\n"
+#: gio/gdbus-tool.c:766
+msgid "Error: Signal name is not specified\n"
+msgstr "Грешка: Ðе е указано име на Ñигнал\n"
-#: ../gio/gdbus-tool.c:640
+#: gio/gdbus-tool.c:780
#, c-format
-msgid "Error: signal must be the fully-qualified name.\n"
-msgstr "Грешка: Ñигналът Ñ‚Ñ€Ñбва да е указан Ñ ÐºÐ²Ð°Ð»Ð¸Ñ„Ð¸Ñ†Ð¸Ñ€Ð°Ð½Ð¾ име\n"
+msgid "Error: Signal name “%s†is invalid\n"
+msgstr "Грешка: „%s“ не е допуÑтимо име на Ñигнал\n"
-#: ../gio/gdbus-tool.c:648
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
-msgstr "Грешка: „%s“ не е вÑрно име на интерфейÑ\n"
+msgstr "Грешка: „%s“ не е допуÑтимо име на интерфейÑ\n"
-#: ../gio/gdbus-tool.c:654
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
-msgstr "Грешка: „%s“ не е вÑрно име на член\n"
-
-#: ../gio/gdbus-tool.c:660
-#, c-format
-msgid "Error: %s is not a valid unique bus name.\n"
-msgstr "Грешка: „%s“ не е вÑрно, уникално име на шина\n"
+msgstr "Грешка: „%s“ не е допуÑтимо име на член\n"
#. Use the original non-"parse-me-harder" error
-#: ../gio/gdbus-tool.c:687 ../gio/gdbus-tool.c:1011
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Грешка при анализ на параметър %d: %s\n"
-#: ../gio/gdbus-tool.c:718
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
-msgstr "Грешка при завършване на предаването на данните на връзка: %s\n"
+msgstr ""
+"Грешка при изчиÑтване на буферите при предаването на данните на връзка: %s\n"
-#: ../gio/gdbus-tool.c:745
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Целево име, към чийто метод да Ñе направи обръщение"
-#: ../gio/gdbus-tool.c:746
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Път до обект, към чийто метод да Ñе направи обръщение"
-#: ../gio/gdbus-tool.c:747
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Име на метод и интерфейÑ"
-#: ../gio/gdbus-tool.c:748
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Време за изчакване в Ñекунди"
-#: ../gio/gdbus-tool.c:787
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "ПозволÑване на интерактивно упълномощаване"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Обръщение към метод на отдалечен обект"
-#: ../gio/gdbus-tool.c:862 ../gio/gdbus-tool.c:1602 ../gio/gdbus-tool.c:1837
-#, c-format
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Грешка: не е указана цел\n"
-#: ../gio/gdbus-tool.c:874 ../gio/gdbus-tool.c:1619 ../gio/gdbus-tool.c:1849
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
-msgstr "Грешка: „%s“ не е вÑрно име на шина\n"
-
-#: ../gio/gdbus-tool.c:889 ../gio/gdbus-tool.c:1628
-#, c-format
-msgid "Error: Object path is not specified\n"
-msgstr "Грешка: Ðе е указан път до обект\n"
+msgstr "Грешка: „%s“ е неправилно име на шина\n"
-#: ../gio/gdbus-tool.c:924
-#, c-format
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Грешка: Ðе е указано име на метод\n"
-#: ../gio/gdbus-tool.c:935
+#: gio/gdbus-tool.c:1090
#, c-format
-msgid "Error: Method name '%s' is invalid\n"
-msgstr "Грешка: „%s“ не е допуÑтимо име на метод\n"
+msgid "Error: Method name “%s†is invalid\n"
+msgstr "Грешка: „%s“ е неправилно име на метод\n"
-#: ../gio/gdbus-tool.c:1003
+#: gio/gdbus-tool.c:1168
#, c-format
-msgid "Error parsing parameter %d of type '%s': %s\n"
+msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Грешка при анализ на параметър %d от вид „%s“: %s\n"
-#: ../gio/gdbus-tool.c:1440
+#: gio/gdbus-tool.c:1194
+#, c-format
+msgid "Error adding handle %d: %s\n"
+msgstr "Грешка при добавÑне на Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð·Ð° обработка %d: %s\n"
+
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Име на целта за анализ"
-#: ../gio/gdbus-tool.c:1441
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Път до обекта за анализ"
-#: ../gio/gdbus-tool.c:1442
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Извеждане на XML"
-#: ../gio/gdbus-tool.c:1443
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Ðнализ на наÑледниците"
-#: ../gio/gdbus-tool.c:1444
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Извеждане Ñамо на ÑвойÑтвата"
-#: ../gio/gdbus-tool.c:1535
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Ðнализ на отдалечен обект."
-#: ../gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Име на целта за наблюдение"
-#: ../gio/gdbus-tool.c:1741
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Път до обекта за наблюдение"
-#: ../gio/gdbus-tool.c:1770
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Ðаблюдение на отдалечен обект."
-#: ../gio/gdesktopappinfo.c:1993 ../gio/gdesktopappinfo.c:4502
+#: gio/gdbus-tool.c:2078
+msgid "Error: can’t monitor a non-message-bus connection\n"
+msgstr "ГРЕШКÐ: може да Ñе наблюдават Ñамо връзки към шината за ÑъобщениÑ\n"
+
+#: gio/gdbus-tool.c:2202
+msgid "Service to activate before waiting for the other one (well-known name)"
+msgstr ""
+"УÑлуга за задейÑтване преди изчакване на другата (Ñ‚Ñ€Ñбва да е извеÑтно име)"
+
+#: gio/gdbus-tool.c:2205
+msgid ""
+"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
+"(default)"
+msgstr ""
+"Време за изчакване в Ñекунди преди изход Ñ Ð³Ñ€ÐµÑˆÐºÐ°. Стандартно е 0 за "
+"изчакване без ограничение"
+
+#: gio/gdbus-tool.c:2253
+msgid "[OPTION…] BUS-NAME"
+msgstr "[ОПЦИЯ…] ИМЕ_ПО_ШИÐÐ"
+
+#: gio/gdbus-tool.c:2254
+msgid "Wait for a bus name to appear."
+msgstr "Изчакване за поÑвата на името по шината."
+
+#: gio/gdbus-tool.c:2330
+msgid "Error: A service to activate for must be specified.\n"
+msgstr "Грешка: не е указана уÑлуга за задейÑтване.\n"
+
+#: gio/gdbus-tool.c:2335
+msgid "Error: A service to wait for must be specified.\n"
+msgstr "Грешка: не е указана уÑлуга за изчакване.\n"
+
+#: gio/gdbus-tool.c:2340
+msgid "Error: Too many arguments.\n"
+msgstr "Грешка: Твърде много аргументи.\n"
+
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
+#, c-format
+msgid "Error: %s is not a valid well-known bus name.\n"
+msgstr "Грешка: „%s“ не е извеÑтно име на шина.\n"
+
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "ÐÑма права за ÑмÑната на наÑтройки за изчиÑтване на грешки"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Без име"
-#: ../gio/gdesktopappinfo.c:2402
-msgid "Desktop file didn't specify Exec field"
-msgstr "Във файла „.desktop“ липÑва поле за изпълнение"
+#: gio/gdesktopappinfo.c:2588
+msgid "Desktop file didn’t specify Exec field"
+msgstr "Във файла „.desktop“ липÑва поле за изпълнение (Exec)"
-#: ../gio/gdesktopappinfo.c:2687
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Ðе може да Ñе открие терминал за приложението"
-#: ../gio/gdesktopappinfo.c:3099
+#: gio/gdesktopappinfo.c:3625
#, c-format
-msgid "Can't create user application configuration folder %s: %s"
+msgid "Can’t create user application configuration folder %s: %s"
msgstr "Ðе може да Ñе Ñъздаде папката Ñ Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ñките наÑтройки %s: %s"
-#: ../gio/gdesktopappinfo.c:3103
+#: gio/gdesktopappinfo.c:3629
#, c-format
-msgid "Can't create user MIME configuration folder %s: %s"
+msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Ðе може да Ñе Ñъздаде папката Ñ Ð½Ð°Ñтройките за MIME %s: %s"
-#: ../gio/gdesktopappinfo.c:3343 ../gio/gdesktopappinfo.c:3367
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "Ð’ информациÑта за програма липÑва идентификатор"
-#: ../gio/gdesktopappinfo.c:3600
+#: gio/gdesktopappinfo.c:4131
#, c-format
-msgid "Can't create user desktop file %s"
-msgstr "Ðе може да Ñе Ñъздаде файл „.desktop“ — „%s“"
+msgid "Can’t create user desktop file %s"
+msgstr "Ðе може да Ñе Ñъздаде файл „.desktop“: „%s“"
-#: ../gio/gdesktopappinfo.c:3734
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "ПотребителÑка Ð´ÐµÑ„Ð¸Ð½Ð¸Ñ†Ð¸Ñ Ð·Ð° %s"
-#: ../gio/gdrive.c:392
-msgid "drive doesn't implement eject"
+#: gio/gdrive.c:417
+msgid "drive doesn’t implement eject"
msgstr "уÑтройÑтвото не поддържа изваждане"
#. Translators: This is an error
#. * message for drive objects that
#. * don't implement any of eject or eject_with_operation.
-#: ../gio/gdrive.c:470
-msgid "drive doesn't implement eject or eject_with_operation"
+#: gio/gdrive.c:495
+msgid "drive doesn’t implement eject or eject_with_operation"
msgstr "уÑтройÑтвото не поддържа нито изваждане, нито изваждане Ñ Ð´ÐµÐ¹Ñтвие"
-#: ../gio/gdrive.c:546
-msgid "drive doesn't implement polling for media"
+#: gio/gdrive.c:571
+msgid "drive doesn’t implement polling for media"
msgstr "уÑтройÑтвото не поддържа Ñледене за ноÑител"
-#: ../gio/gdrive.c:751
-msgid "drive doesn't implement start"
+#: gio/gdrive.c:778
+msgid "drive doesn’t implement start"
msgstr "уÑтройÑтвото не поддържа Ñтартиране"
-#: ../gio/gdrive.c:853
-msgid "drive doesn't implement stop"
+#: gio/gdrive.c:880
+msgid "drive doesn’t implement stop"
msgstr "уÑтройÑтвото не поддържа Ñпиране"
-#: ../gio/gdummytlsbackend.c:195 ../gio/gdummytlsbackend.c:317
-#: ../gio/gdummytlsbackend.c:509
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
+msgid "TLS backend does not implement TLS binding retrieval"
+msgstr "Поддръжката на TLS е без изтеглÑне на Ñвързването по TLS"
+
+#: gio/gdummytlsbackend.c:195 gio/gdummytlsbackend.c:321
+#: gio/gdummytlsbackend.c:513
msgid "TLS support is not available"
msgstr "ЛипÑва поддръжка на TLS"
-#: ../gio/gdummytlsbackend.c:419
+#: gio/gdummytlsbackend.c:423
msgid "DTLS support is not available"
msgstr "ЛипÑва поддръжка на DTLS"
-#: ../gio/gemblem.c:323
+#: gio/gemblem.c:323
#, c-format
-msgid "Can't handle version %d of GEmblem encoding"
-msgstr "ВерÑÐ¸Ñ %d на кодирането GEmblem не Ñе поддържа"
+msgid "Can’t handle version %d of GEmblem encoding"
+msgstr "ВерÑÐ¸Ñ %d на кодирането „GEmblem“ не Ñе поддържа"
-#: ../gio/gemblem.c:333
+#: gio/gemblem.c:333
#, c-format
msgid "Malformed number of tokens (%d) in GEmblem encoding"
-msgstr "Ðеправилен брой лекÑеми (%d) в кодирането GEmblem"
+msgstr "Ðеправилен брой лекÑеми (%d) в кодирането „GEmblem“"
-#: ../gio/gemblemedicon.c:362
+#: gio/gemblemedicon.c:362
#, c-format
-msgid "Can't handle version %d of GEmblemedIcon encoding"
-msgstr "ВерÑÐ¸Ñ %d на кодирането GEmblemedIcon не Ñе поддържа"
+msgid "Can’t handle version %d of GEmblemedIcon encoding"
+msgstr "ВерÑÐ¸Ñ %d на кодирането „GEmblemedIcon“ не Ñе поддържа"
-#: ../gio/gemblemedicon.c:372
+#: gio/gemblemedicon.c:372
#, c-format
msgid "Malformed number of tokens (%d) in GEmblemedIcon encoding"
-msgstr "Ðеправилен брой лекÑеми (%d) в кодирането GEmblemedIcon"
+msgstr "Ðеправилен брой лекÑеми (%d) в кодирането „GEmblemedIcon“"
-#: ../gio/gemblemedicon.c:395
+#: gio/gemblemedicon.c:395
msgid "Expected a GEmblem for GEmblemedIcon"
-msgstr "Очакваше Ñе GEmblem за GEmblemedIcon"
-
-#: ../gio/gfile.c:969 ../gio/gfile.c:1207 ../gio/gfile.c:1345
-#: ../gio/gfile.c:1583 ../gio/gfile.c:1638 ../gio/gfile.c:1696
-#: ../gio/gfile.c:1780 ../gio/gfile.c:1837 ../gio/gfile.c:1901
-#: ../gio/gfile.c:1956 ../gio/gfile.c:3604 ../gio/gfile.c:3659
-#: ../gio/gfile.c:3894 ../gio/gfile.c:3936 ../gio/gfile.c:4404
-#: ../gio/gfile.c:4815 ../gio/gfile.c:4900 ../gio/gfile.c:4990
-#: ../gio/gfile.c:5087 ../gio/gfile.c:5174 ../gio/gfile.c:5275
-#: ../gio/gfile.c:7796 ../gio/gfile.c:7886 ../gio/gfile.c:7970
-#: ../gio/win32/gwinhttpfile.c:437
-msgid "Operation not supported"
-msgstr "ДейÑтвието не Ñе поддържа"
+msgstr "Очакваше Ñе „GEmblem“ за „GEmblemedIcon“"
#. Translators: This is an error message when
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#. Translators: This is an error message when trying to
-#. * find the enclosing (user visible) mount of a file, but
-#. * none exists.
-#. Translators: This is an error message when trying to find
-#. * the enclosing (user visible) mount of a file, but none
-#. * exists.
-#: ../gio/gfile.c:1468 ../gio/glocalfile.c:1134 ../gio/glocalfile.c:1145
-#: ../gio/glocalfile.c:1158
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "СъдържащиÑÑ‚ монтиран обект не ÑъщеÑтвува"
-#: ../gio/gfile.c:2515 ../gio/glocalfile.c:2376
-msgid "Can't copy over directory"
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
+msgid "Can’t copy over directory"
msgstr "Ðе може да Ñе копира върху папка"
-#: ../gio/gfile.c:2575
-msgid "Can't copy directory over directory"
+#: gio/gfile.c:2686
+msgid "Can’t copy directory over directory"
msgstr "Папка не може да Ñе копира върху папка"
-#: ../gio/gfile.c:2583 ../gio/glocalfile.c:2385
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "ЦелевиÑÑ‚ файл ÑъщеÑтвува"
-#: ../gio/gfile.c:2602
-msgid "Can't recursively copy directory"
+#: gio/gfile.c:2713
+msgid "Can’t recursively copy directory"
msgstr "Папката не може да Ñе копира рекурÑивно"
-#: ../gio/gfile.c:2884
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Ðе Ñе поддържа прилепване (splice)"
-#: ../gio/gfile.c:2888
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Грешка при прилепване (splice) на файл: %s"
-#: ../gio/gfile.c:3019
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr ""
-"Копирането между различни монтирани дÑлове чрез reflink/clone не Ñе поддържа"
+"Копирането между различни монтирани дÑлове чрез „reflink“/„clone“ не Ñе "
+"поддържа"
-#: ../gio/gfile.c:3023
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr ""
-"Копирането чрез reflink/clone не Ñе поддържа или е извършено неправилно"
+"Копирането чрез „reflink“/„clone“ не Ñе поддържа или е извършено неправилно"
-#: ../gio/gfile.c:3028
-msgid "Copy (reflink/clone) is not supported or didn't work"
-msgstr "Копирането чрез reflink/clone не Ñе поддържа или не проработи"
+#: gio/gfile.c:3179
+msgid "Copy (reflink/clone) is not supported or didn’t work"
+msgstr "Копирането чрез „reflink“/„clone“ не Ñе поддържа или не проработи"
-#: ../gio/gfile.c:3091
-msgid "Can't copy special file"
+#: gio/gfile.c:3244
+msgid "Can’t copy special file"
msgstr "Ðе може да Ñе копира Ñпециален файл"
-#: ../gio/gfile.c:3884
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Зададена е неправилна ÑтойноÑÑ‚ на Ñимволна връзка"
-#: ../gio/gfile.c:4045
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
+msgid "Symbolic links not supported"
+msgstr "Символни връзки не Ñе поддържат"
+
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Ðе Ñе поддържа кошче"
-#: ../gio/gfile.c:4157
+#: gio/gfile.c:4428
#, c-format
-msgid "File names cannot contain '%c'"
-msgstr "Файловите имена не могат да Ñъдържат „%c“"
+msgid "File names cannot contain “%câ€"
+msgstr "Файловите имена не може да Ñъдържат „%c“"
-#: ../gio/gfile.c:6586 ../gio/gvolume.c:363
-msgid "volume doesn't implement mount"
+#: gio/gfile.c:7028 gio/gvolume.c:364
+msgid "volume doesn’t implement mount"
msgstr "томът не поддържа монтиране"
-#: ../gio/gfile.c:6695
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Ðе е региÑтрирано приложение за обработка на този вид файлове"
-#: ../gio/gfileenumerator.c:212
+#: gio/gfileenumerator.c:212
msgid "Enumerator is closed"
msgstr "БроÑчът е затворен"
-#: ../gio/gfileenumerator.c:219 ../gio/gfileenumerator.c:278
-#: ../gio/gfileenumerator.c:377 ../gio/gfileenumerator.c:476
+#: gio/gfileenumerator.c:219 gio/gfileenumerator.c:278
+#: gio/gfileenumerator.c:377 gio/gfileenumerator.c:476
msgid "File enumerator has outstanding operation"
msgstr "ФайловиÑÑ‚ броÑч вÑе още не е привършил"
-#: ../gio/gfileenumerator.c:368 ../gio/gfileenumerator.c:467
+#: gio/gfileenumerator.c:368 gio/gfileenumerator.c:467
msgid "File enumerator is already closed"
msgstr "ФайловиÑÑ‚ броÑч вече е затворен"
-#: ../gio/gfileicon.c:236
+#: gio/gfileicon.c:250
#, c-format
-msgid "Can't handle version %d of GFileIcon encoding"
-msgstr "ВерÑÐ¸Ñ %d на кодирането GFileIcon не Ñе поддържа"
+msgid "Can’t handle version %d of GFileIcon encoding"
+msgstr "ВерÑÐ¸Ñ %d на кодирането „GFileIcon“ не Ñе поддържа"
-#: ../gio/gfileicon.c:246
+#: gio/gfileicon.c:260
msgid "Malformed input data for GFileIcon"
-msgstr "Ðеправилни входни данни за GFileIcon"
+msgstr "Ðеправилни входни данни за „GFileIcon“"
-#: ../gio/gfileinputstream.c:149 ../gio/gfileinputstream.c:394
-#: ../gio/gfileiostream.c:167 ../gio/gfileoutputstream.c:164
-#: ../gio/gfileoutputstream.c:497
-msgid "Stream doesn't support query_info"
-msgstr "Потокът не поддържа запитване за Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ (query_info)"
+#: gio/gfileinputstream.c:149 gio/gfileinputstream.c:394
+#: gio/gfileiostream.c:167 gio/gfileoutputstream.c:164
+#: gio/gfileoutputstream.c:497
+msgid "Stream doesn’t support query_info"
+msgstr "Потокът не поддържа запитване за Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ („query_info“)"
-#: ../gio/gfileinputstream.c:325 ../gio/gfileiostream.c:379
-#: ../gio/gfileoutputstream.c:371
+#: gio/gfileinputstream.c:325 gio/gfileiostream.c:379
+#: gio/gfileoutputstream.c:371
msgid "Seek not supported on stream"
msgstr "ТърÑенето не Ñе поддържа от потока"
-#: ../gio/gfileinputstream.c:369
+#: gio/gfileinputstream.c:369
msgid "Truncate not allowed on input stream"
msgstr "ВходниÑÑ‚ поток не може да Ñе Ñъкращава"
-#: ../gio/gfileiostream.c:455 ../gio/gfileoutputstream.c:447
+#: gio/gfileiostream.c:455 gio/gfileoutputstream.c:447
msgid "Truncate not supported on stream"
msgstr "Потокът не може да Ñе Ñъкращава"
-#: ../gio/ghttpproxy.c:136
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
+#: glib/gconvert.c:1825
+msgid "Invalid hostname"
+msgstr "Ðеправилно име на хоÑÑ‚"
+
+#: gio/ghttpproxy.c:143
msgid "Bad HTTP proxy reply"
msgstr "Ðеправилен отговор от Ñървъра-поÑредник по HTTP"
-#: ../gio/ghttpproxy.c:152
+#: gio/ghttpproxy.c:159
msgid "HTTP proxy connection not allowed"
msgstr "Ðе е позволена връзка към Ñървъра-поÑредник по HTTP"
-#: ../gio/ghttpproxy.c:157
+#: gio/ghttpproxy.c:164
msgid "HTTP proxy authentication failed"
msgstr "ÐеуÑпешна Ð¸Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ñ Ð¿Ñ€ÐµÐ´ Ñървъра-поÑредник по HTTP"
-#: ../gio/ghttpproxy.c:160
+#: gio/ghttpproxy.c:167
msgid "HTTP proxy authentication required"
msgstr "ИзиÑква Ñе Ð¸Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ñ Ð¿Ñ€ÐµÐ´ Ñървъра-поÑредник по HTTP"
-#: ../gio/ghttpproxy.c:164
+#: gio/ghttpproxy.c:171
#, c-format
msgid "HTTP proxy connection failed: %i"
msgstr "ÐеуÑпешна връзка към Ñървъра-поÑредник по HTTP: %i"
-#: ../gio/ghttpproxy.c:260
+#: gio/ghttpproxy.c:266
+msgid "HTTP proxy response too big"
+msgstr "Отговорът от Ñървъра-поÑредник по HTTP е прекалено дълъг"
+
+#: gio/ghttpproxy.c:283
msgid "HTTP proxy server closed connection unexpectedly."
msgstr "Сървърът-поÑредник по HTTP неочаквано прекрати връзката"
-#: ../gio/gicon.c:290
+#: gio/gicon.c:298
#, c-format
msgid "Wrong number of tokens (%d)"
msgstr "Ðеправилен брой лекÑеми (%d)"
-#: ../gio/gicon.c:310
+#: gio/gicon.c:318
#, c-format
msgid "No type for class name %s"
-msgstr "ЛипÑва тип за името на ÐºÐ»Ð°Ñ %s"
+msgstr "ЛипÑва вид за името на ÐºÐ»Ð°Ñ â€ž%s“"
-#: ../gio/gicon.c:320
+#: gio/gicon.c:328
#, c-format
msgid "Type %s does not implement the GIcon interface"
-msgstr "Типът „%s“ не поддържа интерфейÑа GIcon"
+msgstr "Видът „%s“ не поддържа интерфейÑа „GIcon“"
-#: ../gio/gicon.c:331
+#: gio/gicon.c:339
#, c-format
msgid "Type %s is not classed"
-msgstr "Типът „%s“ не е клаÑов"
+msgstr "Видът „%s“ не е клаÑ"
-#: ../gio/gicon.c:345
+#: gio/gicon.c:353
#, c-format
msgid "Malformed version number: %s"
msgstr "Ðеправилен номер на верÑиÑ: %s"
-#: ../gio/gicon.c:359
+#: gio/gicon.c:367
#, c-format
msgid "Type %s does not implement from_tokens() on the GIcon interface"
-msgstr "Типът „%s“ не поддържа from_tokens() от интерфейÑа GIcon"
+msgstr "Видът „%s“ не поддържа „from_tokens()“ от интерфейÑа „GIcon“"
-#: ../gio/gicon.c:461
-msgid "Can't handle the supplied version of the icon encoding"
+#: gio/gicon.c:469
+msgid "Can’t handle the supplied version of the icon encoding"
msgstr "Подадената верÑÐ¸Ñ Ð½Ð° кодирането на икони не Ñе поддържа"
-#: ../gio/ginetaddressmask.c:182
+#: gio/ginetaddressmask.c:182
msgid "No address specified"
msgstr "Ðе е указан адреÑ"
-#: ../gio/ginetaddressmask.c:190
+#: gio/ginetaddressmask.c:190
#, c-format
msgid "Length %u is too long for address"
msgstr "Дължината на адреÑа %u е прекалено голÑма"
-#: ../gio/ginetaddressmask.c:223
+#: gio/ginetaddressmask.c:223
msgid "Address has bits set beyond prefix length"
msgstr "Ð’ адреÑа Ñа зададени битове Ñлед префикÑа му"
-#: ../gio/ginetaddressmask.c:300
+#: gio/ginetaddressmask.c:300
#, c-format
-msgid "Could not parse '%s' as IP address mask"
+msgid "Could not parse “%s†as IP address mask"
msgstr "„%s“ не е маÑка за адреÑи на IP"
-#: ../gio/ginetsocketaddress.c:203 ../gio/ginetsocketaddress.c:220
-#: ../gio/gnativesocketaddress.c:106 ../gio/gunixsocketaddress.c:216
+#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "ÐÑма доÑтатъчно мÑÑто за адреÑа на гнездо"
-#: ../gio/ginetsocketaddress.c:235
+#: gio/ginetsocketaddress.c:235
msgid "Unsupported socket address"
msgstr "Ðеподдържан Ð°Ð´Ñ€ÐµÑ Ð½Ð° гнездо"
-#: ../gio/ginputstream.c:188
-msgid "Input stream doesn't implement read"
+#: gio/ginputstream.c:188
+msgid "Input stream doesn’t implement read"
msgstr "ВходниÑÑ‚ поток не поддържа четене"
#. Translators: This is an error you get if there is already an
@@ -1531,106 +1646,915 @@ msgstr "ВходниÑÑ‚ поток не поддържа четене"
#. Translators: This is an error you get if there is
#. * already an operation running against this stream when
#. * you try to start one
-#: ../gio/ginputstream.c:1215 ../gio/giostream.c:310
-#: ../gio/goutputstream.c:1668
+#: gio/ginputstream.c:1249 gio/giostream.c:310 gio/goutputstream.c:2208
msgid "Stream has outstanding operation"
msgstr "ДейÑтвиÑта върху потока не Ñа привършили"
-#: ../gio/glib-compile-resources.c:142 ../gio/glib-compile-schemas.c:1491
+#: gio/gio-tool.c:160
+msgid "Copy with file"
+msgstr "Копиране ÑÑŠÑ Ñ„Ð°Ð¹Ð»Ð°"
+
+#: gio/gio-tool.c:164
+msgid "Keep with file when moved"
+msgstr "Да Ñе меÑти заедно Ñ Ñ„Ð°Ð¹Ð»Ð°"
+
+#: gio/gio-tool.c:205
+msgid "“version†takes no arguments"
+msgstr "„version“ не приема аргументи"
+
+#: gio/gio-tool.c:207 gio/gio-tool.c:223 glib/goption.c:869
+msgid "Usage:"
+msgstr "Употреба:"
+
+#: gio/gio-tool.c:210
+msgid "Print version information and exit."
+msgstr "Извеждане на верÑиÑта и изход."
+
+#: gio/gio-tool.c:226
+msgid "Commands:"
+msgstr "Команди:"
+
+#: gio/gio-tool.c:229
+msgid "Concatenate files to standard output"
+msgstr "ОбединÑване на Ñъдържанието на файловете на ÑÑ‚Ð°Ð½Ð´Ð°Ñ€Ñ‚Ð½Ð¸Ñ Ð¸Ð·Ñ…Ð¾Ð´"
+
+#: gio/gio-tool.c:230
+msgid "Copy one or more files"
+msgstr "Копиране на един или повече файлове"
+
+#: gio/gio-tool.c:231
+msgid "Show information about locations"
+msgstr "Извеждане на Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð·Ð° меÑтоположениÑта"
+
+#: gio/gio-tool.c:232
+msgid "Launch an application from a desktop file"
+msgstr "Стартиране на приложение чрез файл „.desktop“"
+
+#: gio/gio-tool.c:233
+msgid "List the contents of locations"
+msgstr "Извеждане на Ñъдържанието на меÑтоположениÑта"
+
+#: gio/gio-tool.c:234
+msgid "Get or set the handler for a mimetype"
+msgstr ""
+"Получаване или задаване на програмата за обработка на определен вид по MIME"
+
+#: gio/gio-tool.c:235
+msgid "Create directories"
+msgstr "Създаване на папки"
+
+#: gio/gio-tool.c:236
+msgid "Monitor files and directories for changes"
+msgstr "Ðаблюдаване на файлове и директории за промени"
+
+#: gio/gio-tool.c:237
+msgid "Mount or unmount the locations"
+msgstr "Монтиране/демонтиране на меÑтоположение"
+
+#: gio/gio-tool.c:238
+msgid "Move one or more files"
+msgstr "ПремеÑтване на един или повече файлове"
+
+#: gio/gio-tool.c:239
+msgid "Open files with the default application"
+msgstr "ОтварÑне на файлове ÑÑŠÑ Ñтандартната програма"
+
+#: gio/gio-tool.c:240
+msgid "Rename a file"
+msgstr "Преименуване на файл"
+
+#: gio/gio-tool.c:241
+msgid "Delete one or more files"
+msgstr "Изтриване на един или повече файлове"
+
+#: gio/gio-tool.c:242
+msgid "Read from standard input and save"
+msgstr "Изчитане от ÑÑ‚Ð°Ð½Ð´Ð°Ñ€Ñ‚Ð½Ð¸Ñ Ð²Ñ…Ð¾Ð´ и запазване"
+
+#: gio/gio-tool.c:243
+msgid "Set a file attribute"
+msgstr "Задаване на файлов атрибут"
+
+#: gio/gio-tool.c:244
+msgid "Move files or directories to the trash"
+msgstr "ПремеÑтване на файлове или папки в кошчето"
+
+#: gio/gio-tool.c:245
+msgid "Lists the contents of locations in a tree"
+msgstr "Извеждане на Ñъдържанието на меÑтоположение в дървовиден изглед"
+
+#: gio/gio-tool.c:247
+#, c-format
+msgid "Use %s to get detailed help.\n"
+msgstr "Въведете %s за подробна помощ.\n"
+
+#: gio/gio-tool-cat.c:87
+msgid "Error writing to stdout"
+msgstr "Грешка при извеждане към ÑÑ‚Ð°Ð½Ð´Ð°Ñ€Ñ‚Ð½Ð¸Ñ Ð¸Ð·Ñ…Ð¾Ð´"
+
+#. Translators: commandline placeholder
+#: gio/gio-tool-cat.c:133 gio/gio-tool-info.c:340 gio/gio-tool-list.c:172
+#: gio/gio-tool-mkdir.c:48 gio/gio-tool-monitor.c:37 gio/gio-tool-monitor.c:39
+#: gio/gio-tool-monitor.c:41 gio/gio-tool-monitor.c:43
+#: gio/gio-tool-monitor.c:204 gio/gio-tool-mount.c:1199 gio/gio-tool-open.c:70
+#: gio/gio-tool-remove.c:48 gio/gio-tool-rename.c:45 gio/gio-tool-set.c:89
+#: gio/gio-tool-trash.c:220 gio/gio-tool-tree.c:239
+msgid "LOCATION"
+msgstr "МЕСТОПОЛОЖЕÐИЕ"
+
+#: gio/gio-tool-cat.c:138
+msgid "Concatenate files and print to standard output."
+msgstr ""
+"ОбединÑване на Ñъдържанието на файловете и извеждане на ÑÑ‚Ð°Ð½Ð´Ð°Ñ€Ñ‚Ð½Ð¸Ñ Ð¸Ð·Ñ…Ð¾Ð´."
+
+#: gio/gio-tool-cat.c:140
+msgid ""
+"gio cat works just like the traditional cat utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location."
+msgstr ""
+"„gio cat“ е аналог на „cat“, но Ñе ползват меÑÑ‚Ð¾Ð¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¿Ð¾ GIO, а не "
+"локални\n"
+"файлове. Така може да ползвате „smb://server/resource/file.txt“, например."
+
+#: gio/gio-tool-cat.c:162 gio/gio-tool-info.c:371 gio/gio-tool-mkdir.c:76
+#: gio/gio-tool-monitor.c:229 gio/gio-tool-mount.c:1250 gio/gio-tool-open.c:96
+#: gio/gio-tool-remove.c:72 gio/gio-tool-trash.c:303
+msgid "No locations given"
+msgstr "Ðе Ñа дадени меÑтоположениÑ"
+
+#: gio/gio-tool-copy.c:43 gio/gio-tool-move.c:38
+msgid "No target directory"
+msgstr "Ðе е зададена целева папка"
+
+#: gio/gio-tool-copy.c:44 gio/gio-tool-move.c:39
+msgid "Show progress"
+msgstr "Извеждане на прогреÑа"
+
+#: gio/gio-tool-copy.c:45 gio/gio-tool-move.c:40
+msgid "Prompt before overwrite"
+msgstr "Питане преди презапиÑ"
+
+#: gio/gio-tool-copy.c:46
+msgid "Preserve all attributes"
+msgstr "Запазване на вÑички атрибути"
+
+#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:41 gio/gio-tool-save.c:49
+msgid "Backup existing destination files"
+msgstr "Резервно копие на ÑъщеÑтвуващи целеви файлове"
+
+#: gio/gio-tool-copy.c:48
+msgid "Never follow symbolic links"
+msgstr "Без проÑледÑване на Ñимволни връзки"
+
+#: gio/gio-tool-copy.c:49
+msgid "Use default permissions for the destination"
+msgstr "Стандартни права за целта"
+
+#: gio/gio-tool-copy.c:74 gio/gio-tool-move.c:67
+#, c-format
+msgid "Transferred %s out of %s (%s/s)"
+msgstr "Прехвърлени Ñа %s от общо %s (%s/s)"
+
+#. Translators: commandline placeholder
+#: gio/gio-tool-copy.c:100 gio/gio-tool-move.c:94
+msgid "SOURCE"
+msgstr "ИЗТОЧÐИК"
+
+#. Translators: commandline placeholder
+#: gio/gio-tool-copy.c:100 gio/gio-tool-move.c:94 gio/gio-tool-save.c:160
+msgid "DESTINATION"
+msgstr "ЦЕЛ"
+
+#: gio/gio-tool-copy.c:105
+msgid "Copy one or more files from SOURCE to DESTINATION."
+msgstr "Копиране на един или повече файлове от ИЗТОЧÐИКа към ЦЕЛта."
+
+#: gio/gio-tool-copy.c:107
+msgid ""
+"gio copy is similar to the traditional cp utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location."
+msgstr ""
+"„gio copy“ е аналог на „cp“, но Ñе ползват меÑÑ‚Ð¾Ð¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¿Ð¾ GIO, а не "
+"локални\n"
+"файлове. Така може да ползвате „smb://server/resource/file.txt“, например."
+
+#: gio/gio-tool-copy.c:149
+#, c-format
+msgid "Destination %s is not a directory"
+msgstr "Целта „%s“ не е папка"
+
+#: gio/gio-tool-copy.c:196 gio/gio-tool-move.c:186
+#, c-format
+msgid "%s: overwrite “%s� "
+msgstr "%s: да Ñе презапише ли „%s“? "
+
+#: gio/gio-tool-info.c:37
+msgid "List writable attributes"
+msgstr "СпиÑък на атрибутите, които може да Ñе запишат"
+
+#: gio/gio-tool-info.c:38
+msgid "Get file system info"
+msgstr "Получаване на Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð·Ð° файловата ÑиÑтема"
+
+#: gio/gio-tool-info.c:39 gio/gio-tool-list.c:36
+msgid "The attributes to get"
+msgstr "Ðтрибути за получаване"
+
+#: gio/gio-tool-info.c:39 gio/gio-tool-list.c:36
+msgid "ATTRIBUTES"
+msgstr "ÐТРИБУТИ"
+
+#: gio/gio-tool-info.c:40 gio/gio-tool-list.c:39 gio/gio-tool-set.c:34
+msgid "Don’t follow symbolic links"
+msgstr "Без проÑледÑване на Ñимволни връзки"
+
+#: gio/gio-tool-info.c:78
+msgid "attributes:\n"
+msgstr "атрибути:\n"
+
+#. Translators: This is a noun and represents and attribute of a file
+#: gio/gio-tool-info.c:134
+#, c-format
+msgid "display name: %s\n"
+msgstr "име за показване: %s\n"
+
+#. Translators: This is a noun and represents and attribute of a file
+#: gio/gio-tool-info.c:139
+#, c-format
+msgid "edit name: %s\n"
+msgstr "име за редактиране: %s\n"
+
+#: gio/gio-tool-info.c:145
+#, c-format
+msgid "name: %s\n"
+msgstr "име: %s\n"
+
+#: gio/gio-tool-info.c:152
+#, c-format
+msgid "type: %s\n"
+msgstr "вид: %s\n"
+
+#: gio/gio-tool-info.c:158
+msgid "size: "
+msgstr "размер: "
+
+#: gio/gio-tool-info.c:163
+msgid "hidden\n"
+msgstr "Ñкрит\n"
+
+#: gio/gio-tool-info.c:166
+#, c-format
+msgid "uri: %s\n"
+msgstr "адреÑ: %s\n"
+
+#: gio/gio-tool-info.c:172
+#, c-format
+msgid "local path: %s\n"
+msgstr "локален път: %s\n"
+
+#: gio/gio-tool-info.c:205
+#, c-format
+msgid "unix mount: %s%s %s %s %s\n"
+msgstr "монтирано по unix: %s%s %s %s %s\n"
+
+#: gio/gio-tool-info.c:286
+msgid "Settable attributes:\n"
+msgstr "Ðтрибути за задаване:\n"
+
+#: gio/gio-tool-info.c:310
+msgid "Writable attribute namespaces:\n"
+msgstr "ПроÑтранÑтва от имена на атрибути за запиÑ:\n"
+
+#: gio/gio-tool-info.c:345
+msgid "Show information about locations."
+msgstr "Извеждане на Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð·Ð° меÑтоположениÑта."
+
+#: gio/gio-tool-info.c:347
+msgid ""
+"gio info is similar to the traditional ls utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location. File attributes can\n"
+"be specified with their GIO name, e.g. standard::icon, or just by\n"
+"namespace, e.g. unix, or by “*â€, which matches all attributes"
+msgstr ""
+"„gio info“ е аналог на „ls“, но Ñе ползват меÑÑ‚Ð¾Ð¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¿Ð¾ GIO, а не "
+"локални\n"
+"файлове. Така може да ползвате „smb://server/resource/file.txt“, например.\n"
+"Файловите атрибути Ñъщо Ñе указват Ñ Ð¸Ð¼ÐµÑ‚Ð¾ им по GIO, напр: „standard::"
+"icon“,\n"
+"проÑто чрез името на проÑтранÑтвото от имена „unix“ или „*“, което "
+"ÑъответÑтва\n"
+"на вÑички атрибути"
+
+#. Translators: commandline placeholder
+#: gio/gio-tool-launch.c:54
+msgid "DESKTOP-FILE [FILE-ARG …]"
+msgstr "ФÐЙЛ_DESKTOP [ÐРГУМЕÐТ_ФÐЙЛ …]"
+
+#: gio/gio-tool-launch.c:57
+msgid ""
+"Launch an application from a desktop file, passing optional filename "
+"arguments to it."
+msgstr ""
+"Стартиране на приложение от файл „desktop“ като може да Ñе добавÑÑ‚ аргументи-"
+"имена на файлове."
+
+#: gio/gio-tool-launch.c:77
+msgid "No desktop file given"
+msgstr "Ðе е указан файл „desktop“"
+
+#: gio/gio-tool-launch.c:85
+msgid "The launch command is not currently supported on this platform"
+msgstr "Командата за Ñтартиране не Ñе поддържа на тази платформа"
+
+#: gio/gio-tool-launch.c:98
+#, c-format
+msgid "Unable to load ‘%s‘: %s"
+msgstr "Ðе може да Ñе зареди „%s“: %s"
+
+#: gio/gio-tool-launch.c:107
+#, c-format
+msgid "Unable to load application information for ‘%s‘"
+msgstr "Ðе може да Ñе зареди информациÑта за приложението „%s“"
+
+#: gio/gio-tool-launch.c:119
+#, c-format
+msgid "Unable to launch application ‘%s’: %s"
+msgstr "Ðе може да Ñе Ñтартира приложението „%s“: %s"
+
+#: gio/gio-tool-list.c:37 gio/gio-tool-tree.c:32
+msgid "Show hidden files"
+msgstr "Показване на Ñкритите файлове"
+
+#: gio/gio-tool-list.c:38
+msgid "Use a long listing format"
+msgstr "Подробен формат на извеждане"
+
+#: gio/gio-tool-list.c:40
+msgid "Print display names"
+msgstr "Отпечатване на имената за показване"
+
+#: gio/gio-tool-list.c:41
+msgid "Print full URIs"
+msgstr "Отпечатване на целите адреÑи"
+
+#: gio/gio-tool-list.c:177
+msgid "List the contents of the locations."
+msgstr "ИзброÑване на Ñъдържанието на меÑтоположениÑта."
+
+#: gio/gio-tool-list.c:179
+msgid ""
+"gio list is similar to the traditional ls utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location. File attributes can\n"
+"be specified with their GIO name, e.g. standard::icon"
+msgstr ""
+"gio list is similar to the traditional ls utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location. File attributes can\n"
+"be specified with their GIO name, e.g. standard::icon<\n"
+"\n"
+"„gio list“ е аналог на „ls“, но Ñе ползват меÑÑ‚Ð¾Ð¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¿Ð¾ GIO, а не\n"
+"локални файлове. Така може да ползвате „smb://server/resource/file.txt“,\n"
+"например. Файловите атрибути Ñъщо Ñе указват Ñ Ð¸Ð¼ÐµÑ‚Ð¾ им по GIO, напр:\n"
+"„standard::icon“"
+
+#. Translators: commandline placeholder
+#: gio/gio-tool-mime.c:71
+msgid "MIMETYPE"
+msgstr "ВИД_MIME"
+
+#: gio/gio-tool-mime.c:71
+msgid "HANDLER"
+msgstr "ОБРÐБОТВÐЩÐ_ПРОГРÐÐœÐ"
+
+#: gio/gio-tool-mime.c:76
+msgid "Get or set the handler for a mimetype."
+msgstr "Получаване или задаване на ОБРÐБОТВÐЩÐта_ПРОГРÐМРза даден ВИД_MIME."
+
+#: gio/gio-tool-mime.c:78
+msgid ""
+"If no handler is given, lists registered and recommended applications\n"
+"for the mimetype. If a handler is given, it is set as the default\n"
+"handler for the mimetype."
+msgstr ""
+"Ðко не е указано обработващо приложение, Ñе извеждат региÑтрирани и "
+"препоръчани\n"
+"програми за този вид MIME. Ðко е указана такова, то Ñе задава като "
+"Ñтандартното\n"
+"за обработка на този вид MIME."
+
+#: gio/gio-tool-mime.c:100
+msgid "Must specify a single mimetype, and maybe a handler"
+msgstr "ТрÑбва да укажете точно един вид MIME и макÑимум едно приложение"
+
+#: gio/gio-tool-mime.c:116
+#, c-format
+msgid "No default applications for “%sâ€\n"
+msgstr "ÐÑма Ñтандартно приложение за „%s“\n"
+
+#: gio/gio-tool-mime.c:122
+#, c-format
+msgid "Default application for “%sâ€: %s\n"
+msgstr "Стандартно приложение за „%s“: %s\n"
+
+#: gio/gio-tool-mime.c:127
+msgid "Registered applications:\n"
+msgstr "РегиÑтрирани приложениÑ:\n"
+
+#: gio/gio-tool-mime.c:129
+msgid "No registered applications\n"
+msgstr "ÐÑма региÑтрирани приложениÑ:\n"
+
+#: gio/gio-tool-mime.c:140
+msgid "Recommended applications:\n"
+msgstr "Препоръчани приложениÑ:\n"
+
+#: gio/gio-tool-mime.c:142
+msgid "No recommended applications\n"
+msgstr "ÐÑма препоръчани приложениÑ:\n"
+
+#: gio/gio-tool-mime.c:162
+#, c-format
+msgid "Failed to load info for handler “%sâ€"
+msgstr "ÐеуÑпешно зареждане на Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð·Ð° функциÑта за обработка „%s“"
+
+#: gio/gio-tool-mime.c:168
+#, c-format
+msgid "Failed to set “%s†as the default handler for “%sâ€: %s\n"
+msgstr ""
+"„%s“ не може да Ñе зададе като Ñтандартното приложение за обработка на „%s“: "
+"%s\n"
+
+#: gio/gio-tool-mkdir.c:31
+msgid "Create parent directories"
+msgstr "Създаване на родителÑките папки"
+
+#: gio/gio-tool-mkdir.c:52
+msgid "Create directories."
+msgstr "Създаване на папки."
+
+#: gio/gio-tool-mkdir.c:54
+msgid ""
+"gio mkdir is similar to the traditional mkdir utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/mydir as location."
+msgstr ""
+"„gio mkdir“ е аналог на „mkdir“, но Ñе ползват меÑÑ‚Ð¾Ð¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¿Ð¾ GIO, а не\n"
+"локални файлове. Така може да ползвате „smb://server/resource/file.txt“,\n"
+"например."
+
+#: gio/gio-tool-monitor.c:37
+msgid "Monitor a directory (default: depends on type)"
+msgstr "Следене на Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ (Ñтандартно: завиÑи от вида)"
+
+#: gio/gio-tool-monitor.c:39
+msgid "Monitor a file (default: depends on type)"
+msgstr "Следене на файл (Ñтандартно: завиÑи от вида)"
+
+#: gio/gio-tool-monitor.c:41
+msgid "Monitor a file directly (notices changes made via hardlinks)"
+msgstr "Директно Ñледене на файл (отбелÑзват Ñе промени през твърди връзки)"
+
+#: gio/gio-tool-monitor.c:43
+msgid "Monitors a file directly, but doesn’t report changes"
+msgstr "Директно Ñледене на файл без докладване на промени"
+
+#: gio/gio-tool-monitor.c:45
+msgid "Report moves and renames as simple deleted/created events"
+msgstr ""
+"Докладване на премеÑтваниÑта/преименуваниÑта като проÑти ÑÑŠÐ±Ð¸Ñ‚Ð¸Ñ Ð·Ð° "
+"изтриване и Ñъздаване наново"
+
+#: gio/gio-tool-monitor.c:47
+msgid "Watch for mount events"
+msgstr "Следене за ÑÑŠÐ±Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾ монтиране"
+
+#: gio/gio-tool-monitor.c:209
+msgid "Monitor files or directories for changes."
+msgstr "Следене на файлове или директории за промени."
+
+#: gio/gio-tool-mount.c:63
+msgid "Mount as mountable"
+msgstr "Монтиране като подлежащо за монтиране"
+
+#: gio/gio-tool-mount.c:64
+msgid "Mount volume with device file, or other identifier"
+msgstr "Монтиране на том чрез файла му за уÑтройÑтво или друг идентификатор"
+
+#: gio/gio-tool-mount.c:64
+msgid "ID"
+msgstr "ИДЕÐТИФИКÐТОР"
+
+#: gio/gio-tool-mount.c:65
+msgid "Unmount"
+msgstr "Демонтиране"
+
+#: gio/gio-tool-mount.c:66
+msgid "Eject"
+msgstr "Изваждане"
+
+#: gio/gio-tool-mount.c:67
+msgid "Stop drive with device file"
+msgstr "Спиране на уÑтройÑтвото, отговарÑщо на файла за уÑтройÑтво"
+
+#: gio/gio-tool-mount.c:67
+msgid "DEVICE"
+msgstr "УСТРОЙСТВО"
+
+#: gio/gio-tool-mount.c:68
+msgid "Unmount all mounts with the given scheme"
+msgstr "Демонтиране на вÑичко монтирано Ñ Ñ‚ÐµÐºÑƒÑ‰Ð°Ñ‚Ð° Ñхема"
+
+#: gio/gio-tool-mount.c:68
+msgid "SCHEME"
+msgstr "СХЕМÐ"
+
+#: gio/gio-tool-mount.c:69
+msgid "Ignore outstanding file operations when unmounting or ejecting"
+msgstr "При демонтиране или изваждане предÑтоÑщите операции да Ñе преÑкочат"
+
+#: gio/gio-tool-mount.c:70
+msgid "Use an anonymous user when authenticating"
+msgstr "Ð˜Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ñ ÐºÐ°Ñ‚Ð¾ анонимен потребител"
+
+#. Translator: List here is a verb as in 'List all mounts'
+#: gio/gio-tool-mount.c:72
+msgid "List"
+msgstr "ИзброÑване"
+
+#: gio/gio-tool-mount.c:73
+msgid "Monitor events"
+msgstr "Ðаблюдаване на ÑъбитиÑта"
+
+#: gio/gio-tool-mount.c:74
+msgid "Show extra information"
+msgstr "Показване на допълнителна информациÑ"
+
+#: gio/gio-tool-mount.c:75
+msgid "The numeric PIM when unlocking a VeraCrypt volume"
+msgstr ""
+"Личен мултипликатор на итерациите (PIM) при дешифрирането на том на VeraCrypt"
+
+#: gio/gio-tool-mount.c:75
+msgid "PIM"
+msgstr "PIM"
+
+#: gio/gio-tool-mount.c:76
+msgid "Mount a TCRYPT hidden volume"
+msgstr "Монтиране на том Ñкрит Ñ TCRYPT"
+
+#: gio/gio-tool-mount.c:77
+msgid "Mount a TCRYPT system volume"
+msgstr "Монтиране на ÑиÑтемен том Ñ TCRYPT"
+
+#: gio/gio-tool-mount.c:265 gio/gio-tool-mount.c:297
+msgid "Anonymous access denied"
+msgstr "ÐнонимниÑÑ‚ доÑтъп е отказан"
+
+#: gio/gio-tool-mount.c:522
+msgid "No drive for device file"
+msgstr "ÐÑма уÑтройÑтво към файла за уÑтройÑтво"
+
+#: gio/gio-tool-mount.c:1014
+msgid "No volume for given ID"
+msgstr "ÐÑма том Ñ Ñ‚Ð°ÐºÑŠÐ² идентификатор"
+
+#: gio/gio-tool-mount.c:1203
+msgid "Mount or unmount the locations."
+msgstr "Монтиране или демонтиране на меÑтоположениÑта."
+
+#: gio/gio-tool-move.c:42
+msgid "Don’t use copy and delete fallback"
+msgstr "Без Ñ€ÐµÐ·ÐµÑ€Ð²Ð½Ð¸Ñ Ð²Ð°Ñ€Ð¸Ð°Ð½Ñ‚ Ñ ÐºÐ¾Ð¿Ð¸Ñ€Ð°Ð½Ðµ и поÑледващо изтриване"
+
+#: gio/gio-tool-move.c:99
+msgid "Move one or more files from SOURCE to DEST."
+msgstr "ПремеÑтване на един или повече файлове от ИЗТОЧÐИКа към ЦЕЛта."
+
+#: gio/gio-tool-move.c:101
+msgid ""
+"gio move is similar to the traditional mv utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location"
+msgstr ""
+"„gio move“ е аналог на „mv“, но Ñе ползват меÑÑ‚Ð¾Ð¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¿Ð¾ GIO, а не "
+"локални\n"
+"файлове. Така може да ползвате „smb://server/resource/file.txt“, например"
+
+#: gio/gio-tool-move.c:143
+#, c-format
+msgid "Target %s is not a directory"
+msgstr "Целта „%s“ не е папка"
+
+#: gio/gio-tool-open.c:75
+msgid ""
+"Open files with the default application that\n"
+"is registered to handle files of this type."
+msgstr ""
+"ОтварÑне на файлове ÑÑŠÑ Ñтандартното приложение, което\n"
+"е региÑтрирано да обработва файлове от този вид."
+
+#: gio/gio-tool-remove.c:31 gio/gio-tool-trash.c:33
+msgid "Ignore nonexistent files, never prompt"
+msgstr "ПреÑкачане на неÑъщеÑтвуващите файлове без предупреждаване"
+
+#: gio/gio-tool-remove.c:52
+msgid "Delete the given files."
+msgstr "Изтриване на изброените файлове."
+
+#: gio/gio-tool-rename.c:45
+msgid "NAME"
+msgstr "ИМЕ"
+
+#: gio/gio-tool-rename.c:50
+msgid "Rename a file."
+msgstr "Преименуване на файл."
+
+#: gio/gio-tool-rename.c:70
+msgid "Missing argument"
+msgstr "ЛипÑва аргумент"
+
+#: gio/gio-tool-rename.c:76 gio/gio-tool-save.c:190 gio/gio-tool-set.c:137
+msgid "Too many arguments"
+msgstr "Прекалено много аргументи"
+
+#: gio/gio-tool-rename.c:95
+#, c-format
+msgid "Rename successful. New uri: %s\n"
+msgstr "УÑпешно преименуване. ÐовиÑÑ‚ Ð°Ð´Ñ€ÐµÑ Ðµ: %s\n"
+
+#: gio/gio-tool-save.c:50
+msgid "Only create if not existing"
+msgstr "Създаване, ако не ÑъщеÑтвува"
+
+#: gio/gio-tool-save.c:51
+msgid "Append to end of file"
+msgstr "ДобавÑне към ÐºÑ€Ð°Ñ Ð½Ð° файла"
+
+#: gio/gio-tool-save.c:52
+msgid "When creating, restrict access to the current user"
+msgstr "При Ñъздаване ограничаване на права до такива за Ñ‚ÐµÐºÑƒÑ‰Ð¸Ñ Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»"
+
+#: gio/gio-tool-save.c:53
+msgid "When replacing, replace as if the destination did not exist"
+msgstr "При замеÑтване да Ñе замеÑтва вÑе едно целта не ÑъщеÑтвува"
+
+#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#: gio/gio-tool-save.c:55
+msgid "Print new etag at end"
+msgstr "Отпечатване на нов ETAG в краÑ"
+
+#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#: gio/gio-tool-save.c:57
+msgid "The etag of the file being overwritten"
+msgstr "Етикетът ETAG на файла, който Ñе презапиÑва"
+
+#: gio/gio-tool-save.c:57
+msgid "ETAG"
+msgstr "ETAG"
+
+#: gio/gio-tool-save.c:113
+msgid "Error reading from standard input"
+msgstr "Грешка при четене от ÑÑ‚Ð°Ð½Ð´Ð°Ñ€Ñ‚Ð½Ð¸Ñ Ð²Ñ…Ð¾Ð´"
+
+#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#: gio/gio-tool-save.c:139
+msgid "Etag not available\n"
+msgstr "ЛипÑва ETAG\n"
+
+#: gio/gio-tool-save.c:163
+msgid "Read from standard input and save to DEST."
+msgstr "Четене от ÑÑ‚Ð°Ð½Ð´Ð°Ñ€Ñ‚Ð½Ð¸Ñ Ð²Ñ…Ð¾Ð´ и Ð·Ð°Ð¿Ð¸Ñ Ð² ЦЕЛта."
+
+#: gio/gio-tool-save.c:183
+msgid "No destination given"
+msgstr "Ðе е зададена цел"
+
+#: gio/gio-tool-set.c:33
+msgid "Type of the attribute"
+msgstr "Вид атрибут"
+
+#: gio/gio-tool-set.c:33
+msgid "TYPE"
+msgstr "ВИД"
+
+#: gio/gio-tool-set.c:89
+msgid "ATTRIBUTE"
+msgstr "ÐТРИБУТ"
+
+#: gio/gio-tool-set.c:89
+msgid "VALUE"
+msgstr "СТОЙÐОСТ"
+
+#: gio/gio-tool-set.c:93
+msgid "Set a file attribute of LOCATION."
+msgstr "Задаване на файлов атрибут МЕСТОПОЛОЖЕÐИЕ."
+
+#: gio/gio-tool-set.c:113
+msgid "Location not specified"
+msgstr "МеÑтоположението не е указано"
+
+#: gio/gio-tool-set.c:120
+msgid "Attribute not specified"
+msgstr "Ðтрибутът не е указан"
+
+#: gio/gio-tool-set.c:130
+msgid "Value not specified"
+msgstr "СтойноÑтта не е указана"
+
+#: gio/gio-tool-set.c:180
+#, c-format
+msgid "Invalid attribute type “%sâ€"
+msgstr "Ðеправилен вид на атрибут „%s“"
+
+#: gio/gio-tool-trash.c:34
+msgid "Empty the trash"
+msgstr "ИзчиÑтване на кошчето"
+
+#: gio/gio-tool-trash.c:35
+msgid "List files in the trash with their original locations"
+msgstr ""
+"СпиÑък на файловете в кошчето заедно Ñ Ð¿ÑŠÑ€Ð²Ð¾Ð½Ð°Ñ‡Ð°Ð»Ð½Ð¾Ñ‚Ð¾ им меÑтоположение"
+
+#: gio/gio-tool-trash.c:36
+msgid ""
+"Restore a file from trash to its original location (possibly recreating the "
+"directory)"
+msgstr ""
+"ВъзÑтановÑване на файл от кошчето в първоначалното му меÑтоположение (това "
+"може да доведе до възÑтановÑване на папка)"
+
+#: gio/gio-tool-trash.c:106
+msgid "Unable to find original path"
+msgstr "ПървоначалниÑÑ‚ път не може да бъде открит"
+
+#: gio/gio-tool-trash.c:123
+msgid "Unable to recreate original location: "
+msgstr "Първоначалното меÑтоположение не може да Ñе възÑтанови: "
+
+#: gio/gio-tool-trash.c:136
+msgid "Unable to move file to its original location: "
+msgstr "Този файл не може да Ñе премеÑти на първоначалното Ñи меÑтоположение: "
+
+#: gio/gio-tool-trash.c:225
+msgid "Move/Restore files or directories to the trash."
+msgstr "ПремеÑтване/възÑтановÑване на файлове или директории от кошчето."
+
+#: gio/gio-tool-trash.c:227
+msgid ""
+"Note: for --restore switch, if the original location of the trashed file \n"
+"already exists, it will not be overwritten unless --force is set."
+msgstr ""
+"Бележка: ако на оригиналното меÑтоположение ÑъответÑтващо обекта поÑочен "
+"към\n"
+"опциÑта „--restore“ ÑъщеÑтвува, то нÑма да бъде презапиÑано, оÑвен ако не е\n"
+"дадена и опциÑта „--force“."
+
+#: gio/gio-tool-trash.c:258
+msgid "Location given doesn't start with trash:///"
+msgstr "МеÑтоположението не започва Ñ â€žtrash:///“"
+
+#: gio/gio-tool-tree.c:33
+msgid "Follow symbolic links, mounts and shortcuts"
+msgstr ""
+"ПроÑледÑване на Ñимволните връзки, монтираните уÑтройÑтва и уÑкорителите"
+
+#: gio/gio-tool-tree.c:244
+msgid "List contents of directories in a tree-like format."
+msgstr "Извеждане на Ñъдържанието на директориите в дървовиден вариант."
+
+#: gio/glib-compile-resources.c:140 gio/glib-compile-schemas.c:1514
#, c-format
msgid "Element <%s> not allowed inside <%s>"
msgstr "Елементът <%s> не е позволен в <%s>"
-#: ../gio/glib-compile-resources.c:146
+#: gio/glib-compile-resources.c:144
#, c-format
msgid "Element <%s> not allowed at toplevel"
msgstr "Елементът <%s> не е позволен на най-горно ниво"
-#: ../gio/glib-compile-resources.c:236
+#: gio/glib-compile-resources.c:234
#, c-format
msgid "File %s appears multiple times in the resource"
msgstr "Файлът „%s“ приÑÑŠÑтва многократно в реÑурÑа"
-#: ../gio/glib-compile-resources.c:249
+#: gio/glib-compile-resources.c:245
#, c-format
-msgid "Failed to locate '%s' in any source directory"
+msgid "Failed to locate “%s†in any source directory"
msgstr "„%s“ липÑва във вÑички папки за реÑурÑи"
-#: ../gio/glib-compile-resources.c:260
+#: gio/glib-compile-resources.c:256
#, c-format
-msgid "Failed to locate '%s' in current directory"
+msgid "Failed to locate “%s†in current directory"
msgstr "„%s“ липÑва в текущата папка"
-#: ../gio/glib-compile-resources.c:288
+#: gio/glib-compile-resources.c:290
#, c-format
-msgid "Unknown processing option \"%s\""
+msgid "Unknown processing option “%sâ€"
msgstr "Ðепозната Ð¾Ð¿Ñ†Ð¸Ñ Ð·Ð° обработка „%s“"
-#: ../gio/glib-compile-resources.c:306 ../gio/glib-compile-resources.c:352
+#. Translators: the first %s is a gresource XML attribute,
+#. * the second %s is an environment variable, and the third
+#. * %s is a command line tool
+#.
+#: gio/glib-compile-resources.c:310 gio/glib-compile-resources.c:367
+#: gio/glib-compile-resources.c:424
#, c-format
-msgid "Failed to create temp file: %s"
-msgstr "ÐеуÑпешно Ñъздаване на временен файл: %s"
+msgid "%s preprocessing requested, but %s is not set, and %s is not in PATH"
+msgstr ""
+"ЗаÑвена е предварителна обработка Ñ â€ž%s“, но „%s“ не е зададен, а и „%s“ не "
+"е в „PATH“"
-#: ../gio/glib-compile-resources.c:380
+#: gio/glib-compile-resources.c:457
#, c-format
msgid "Error reading file %s: %s"
msgstr "Грешка при четене на файл „%s“: %s"
-#: ../gio/glib-compile-resources.c:400
+#: gio/glib-compile-resources.c:477
#, c-format
msgid "Error compressing file %s"
msgstr "Грешка при компреÑиране на файл: %s"
-#: ../gio/glib-compile-resources.c:464 ../gio/glib-compile-schemas.c:1603
+#: gio/glib-compile-resources.c:541
#, c-format
msgid "text may not appear inside <%s>"
msgstr "в <%s> не е позволен текÑÑ‚"
-#: ../gio/glib-compile-resources.c:589
-msgid "name of the output file"
-msgstr "име на Ð¸Ð·Ñ…Ð¾Ð´Ð½Ð¸Ñ Ñ„Ð°Ð¹Ð»"
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
+msgid "Show program version and exit"
+msgstr "Извеждане на верÑиÑта на програмата и изход"
+
+#: gio/glib-compile-resources.c:820
+msgid "Name of the output file"
+msgstr "Име на Ð¸Ð·Ñ…Ð¾Ð´Ð½Ð¸Ñ Ñ„Ð°Ð¹Ð»"
-#: ../gio/glib-compile-resources.c:590
+#: gio/glib-compile-resources.c:821
msgid ""
-"The directories where files are to be read from (default to current "
+"The directories to load files referenced in FILE from (default: current "
"directory)"
-msgstr "Папката откъдето да Ñе четат файловете (Ñтандартно е текущата)"
+msgstr ""
+"Папката откъдето да Ñе заредÑÑ‚ файловете, указани във ФÐЙЛа (Ñтандартно е "
+"текущата)"
-#: ../gio/glib-compile-resources.c:590 ../gio/glib-compile-schemas.c:2036
-#: ../gio/glib-compile-schemas.c:2065
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "ПÐПКÐ"
-#: ../gio/glib-compile-resources.c:591
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr "Формат на изхода Ñпоред разширението на Ð¸Ð·Ñ…Ð¾Ð´Ð½Ð¸Ñ Ñ„Ð°Ð¹Ð»"
-#: ../gio/glib-compile-resources.c:592
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Заглавни чаÑти"
-#: ../gio/glib-compile-resources.c:593
-msgid "Generate sourcecode used to link in the resource file into your code"
-msgstr "Генериране на Ð¸Ð·Ñ…Ð¾Ð´Ð½Ð¸Ñ ÐºÐ¾Ð´ за Ñвързване на реÑурÑа в кода"
+#: gio/glib-compile-resources.c:824
+msgid "Generate source code used to link in the resource file into your code"
+msgstr "Генериране на Ð¸Ð·Ñ…Ð¾Ð´Ð½Ð¸Ñ ÐºÐ¾Ð´ за Ñвързване на реÑурÑÐ½Ð¸Ñ Ñ„Ð°Ð¹Ð» в кода ви"
-#: ../gio/glib-compile-resources.c:594
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "СпиÑък ÑÑŠÑ Ð·Ð°Ð²Ð¸ÑимоÑтите"
-#: ../gio/glib-compile-resources.c:595
-msgid "Don't automatically create and register resource"
+#: gio/glib-compile-resources.c:826
+msgid "Name of the dependency file to generate"
+msgstr "Име на файл ÑÑŠÑ Ð·Ð°Ð²Ð¸ÑимоÑти, който да Ñе генерира"
+
+#: gio/glib-compile-resources.c:827
+msgid "Include phony targets in the generated dependency file"
+msgstr "Включване на изкуÑтвените цели в генерираните файлове ÑÑŠÑ Ð·Ð°Ð²Ð¸ÑимоÑти"
+
+#: gio/glib-compile-resources.c:828
+msgid "Don’t automatically create and register resource"
msgstr "Без автоматично генериране и региÑтриране на реÑурÑи"
-#: ../gio/glib-compile-resources.c:596
-msgid "Don't export functions; declare them G_GNUC_INTERNAL"
-msgstr "Ðе изнаÑÑйте функции. Декларирайте ги G_GNUC_INTERNAL"
+#: gio/glib-compile-resources.c:829
+msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
+msgstr "Ðе изнаÑÑйте функции. Декларирайте ги Ñ â€žG_GNUC_INTERNAL“"
-#: ../gio/glib-compile-resources.c:597
+#: gio/glib-compile-resources.c:830
+msgid ""
+"Don’t embed resource data in the C file; assume it's linked externally "
+"instead"
+msgstr ""
+"Без вграждане на реÑурÑните данни във файла на C — приемане, че е Ñвързан"
+
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "Идентификатор на C за Ð³ÐµÐ½ÐµÑ€Ð¸Ñ€Ð°Ð½Ð¸Ñ Ð¸Ð·Ñ…Ð¾Ð´ÐµÐ½ код"
-#: ../gio/glib-compile-resources.c:623
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr ""
+"Целеви компилатор на C (Ñтандартно: Ñъдържанието на променливата на Ñредата "
+"„CC“)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -1640,59 +2564,211 @@ msgstr ""
"Файловете за указване на реÑурÑи Ñ‚Ñ€Ñбва да завършват на „.gresource.xml“,\n"
"а реÑурÑниÑÑ‚ файл — на „.gresource“."
-#: ../gio/glib-compile-resources.c:639
-#, c-format
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "ИзиÑква Ñе точно едно име на файл\n"
-#: ../gio/glib-compile-schemas.c:784
-msgid "empty names are not permitted"
-msgstr "не Ñе позволÑват празни имена"
+#: gio/glib-compile-schemas.c:92
+#, c-format
+msgid "nick must be a minimum of 2 characters"
+msgstr "пÑевдонимът Ñ‚Ñ€Ñбва да е поне 2 знака"
+
+#: gio/glib-compile-schemas.c:103
+#, c-format
+msgid "Invalid numeric value"
+msgstr "Ðеправилна чиÑлова ÑтойноÑÑ‚"
+
+#: gio/glib-compile-schemas.c:111
+#, c-format
+msgid "<value nick='%s'/> already specified"
+msgstr "вече е указано <value nick='%s'/>"
+
+#: gio/glib-compile-schemas.c:119
+#, c-format
+msgid "value='%s' already specified"
+msgstr "value='%s' вече е указано"
+
+#: gio/glib-compile-schemas.c:133
+#, c-format
+msgid "flags values must have at most 1 bit set"
+msgstr "ÑтойноÑтта за флаговете Ñ‚Ñ€Ñбва да има поне един зададен бит"
+
+#: gio/glib-compile-schemas.c:158
+#, c-format
+msgid "<%s> must contain at least one <value>"
+msgstr "<%s> Ñ‚Ñ€Ñбва да Ñъдържа поне един възел <value>"
+
+#: gio/glib-compile-schemas.c:314
+#, c-format
+msgid "<%s> is not contained in the specified range"
+msgstr "<%s> липÑва в ÑƒÐºÐ°Ð·Ð°Ð½Ð¸Ñ Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½"
+
+#: gio/glib-compile-schemas.c:326
+#, c-format
+msgid "<%s> is not a valid member of the specified enumerated type"
+msgstr "<%s> не е правилен член на ÑƒÐºÐ°Ð·Ð°Ð½Ð¸Ñ Ð¸Ð·Ð±Ñ€Ð¾Ð¸Ð¼ вид"
+
+#: gio/glib-compile-schemas.c:332
+#, c-format
+msgid "<%s> contains string not in the specified flags type"
+msgstr "<%s> Ñъдържа низ, който не е в ÑƒÐºÐ°Ð·Ð°Ð½Ð¸Ñ Ð²Ð¸Ð´ за флагове"
+
+#: gio/glib-compile-schemas.c:338
+#, c-format
+msgid "<%s> contains a string not in <choices>"
+msgstr "<%s> Ñъдържа низ, който липÑва в <choices>"
+
+#: gio/glib-compile-schemas.c:372
+msgid "<range/> already specified for this key"
+msgstr "<range/> вече е указано за ключа"
+
+#: gio/glib-compile-schemas.c:390
+#, c-format
+msgid "<range> not allowed for keys of type “%sâ€"
+msgstr "<range> не Ñе позволÑва за ключове от вида „%s“"
+
+#: gio/glib-compile-schemas.c:407
+#, c-format
+msgid "<range> specified minimum is greater than maximum"
+msgstr "указаниÑÑ‚ минимум за <range> е по-голÑм от макÑимума"
+
+#: gio/glib-compile-schemas.c:432
+#, c-format
+msgid "unsupported l10n category: %s"
+msgstr "неподдържана ÐºÐ°Ñ‚ÐµÐ³Ð¾Ñ€Ð¸Ñ Ð·Ð° локализиране: %s"
+
+#: gio/glib-compile-schemas.c:440
+msgid "l10n requested, but no gettext domain given"
+msgstr "изиÑкано е локализиране, но липÑва облаÑÑ‚ на „gettext“"
+
+#: gio/glib-compile-schemas.c:452
+msgid "translation context given for value without l10n enabled"
+msgstr "даден е преводачеÑки контекÑÑ‚ за ÑтойноÑÑ‚ без локализиране"
+
+#: gio/glib-compile-schemas.c:474
+#, c-format
+msgid "Failed to parse <default> value of type “%sâ€: "
+msgstr "ÐеуÑпешен анализ на ÑтойноÑтта за <default> от вида „%s“: "
+
+#: gio/glib-compile-schemas.c:491
+msgid ""
+"<choices> cannot be specified for keys tagged as having an enumerated type"
+msgstr ""
+"<choices> не може да Ñе указва за ключове, които Ñа отбелÑзани, че Ñа от "
+"изброим вид"
+
+#: gio/glib-compile-schemas.c:500
+msgid "<choices> already specified for this key"
+msgstr "<choices> вече е указано за този ключ"
+
+#: gio/glib-compile-schemas.c:512
+#, c-format
+msgid "<choices> not allowed for keys of type “%sâ€"
+msgstr "<choices> не е позволен за ключове от вид „%s“"
+
+#: gio/glib-compile-schemas.c:528
+#, c-format
+msgid "<choice value='%s'/> already given"
+msgstr "<choice value='%s'/> вече е указано за този ключ"
+
+#: gio/glib-compile-schemas.c:543
+#, c-format
+msgid "<choices> must contain at least one <choice>"
+msgstr "<choices> Ñ‚Ñ€Ñбва да Ñъдържа поне един <choice>"
+
+#: gio/glib-compile-schemas.c:557
+msgid "<aliases> already specified for this key"
+msgstr "<aliases> вече е указано за този ключ"
+
+#: gio/glib-compile-schemas.c:561
+msgid ""
+"<aliases> can only be specified for keys with enumerated or flags types or "
+"after <choices>"
+msgstr ""
+"<aliases> може да Ñе указва Ñамо за ключове от изброим или флагов вид или "
+"Ñлед <choices>"
+
+#: gio/glib-compile-schemas.c:580
+#, c-format
+msgid ""
+"<alias value='%s'/> given when “%s†is already a member of the enumerated "
+"type"
+msgstr ""
+"<alias value='%s'/> е указано, но „%s“ вече е е член на е Ð¸Ð·Ð±Ñ€Ð¾Ð¸Ð¼Ð¸Ñ Ð²Ð¸Ð´"
+
+#: gio/glib-compile-schemas.c:586
+#, c-format
+msgid "<alias value='%s'/> given when <choice value='%s'/> was already given"
+msgstr "<alias value='%s'/> е указано, но <choice value='%s'/> вече е зададен"
+
+#: gio/glib-compile-schemas.c:594
+#, c-format
+msgid "<alias value='%s'/> already specified"
+msgstr "<alias value='%s'/> вече е указано за този ключ"
+
+#: gio/glib-compile-schemas.c:604
+#, c-format
+msgid "alias target “%s†is not in enumerated type"
+msgstr "целта на пÑевдоним „%s“ не е изброим вид"
+
+#: gio/glib-compile-schemas.c:605
+#, c-format
+msgid "alias target “%s†is not in <choices>"
+msgstr "целта на пÑевдоним „%s“ не е в <choices>"
+
+#: gio/glib-compile-schemas.c:620
+#, c-format
+msgid "<aliases> must contain at least one <alias>"
+msgstr "<aliases> Ñ‚Ñ€Ñбва да Ñъдържа поне един <alias>"
+
+#: gio/glib-compile-schemas.c:797
+msgid "Empty names are not permitted"
+msgstr "Празни имена не Ñа позволени"
-#: ../gio/glib-compile-schemas.c:794
+#: gio/glib-compile-schemas.c:807
#, c-format
-msgid "invalid name '%s': names must begin with a lowercase letter"
-msgstr "неправилно име „%s“: имената Ñ‚Ñ€Ñбва да започват Ñ Ð¼Ð°Ð»ÐºÐ° буква"
+msgid "Invalid name “%sâ€: names must begin with a lowercase letter"
+msgstr "Ðеправилно име „%s“: имената Ñ‚Ñ€Ñбва да започват Ñ Ð¼Ð°Ð»ÐºÐ° буква"
-#: ../gio/glib-compile-schemas.c:806
+#: gio/glib-compile-schemas.c:819
#, c-format
msgid ""
-"invalid name '%s': invalid character '%c'; only lowercase letters, numbers "
-"and hyphen ('-') are permitted."
+"Invalid name “%sâ€: invalid character “%câ€; only lowercase letters, numbers "
+"and hyphen (“-â€) are permitted"
msgstr ""
-"неправилно име „%s“: неправилен знак „%c“ — позволени Ñа Ñамо малки букви, "
-"цифри и тире („-“)."
+"Ðеправилно име „%s“: неправилен знак „%c“ — позволени Ñа Ñамо малки букви, "
+"цифри и тире („-“)"
-#: ../gio/glib-compile-schemas.c:815
+#: gio/glib-compile-schemas.c:828
#, c-format
-msgid "invalid name '%s': two successive hyphens ('--') are not permitted."
-msgstr "неправилно име „%s“: не Ñа позволени две поÑледователни тирета („--“)."
+msgid "Invalid name “%sâ€: two successive hyphens (“--â€) are not permitted"
+msgstr "Ðеправилно име „%s“: не Ñа позволени две поÑледователни тирета („--“)"
-#: ../gio/glib-compile-schemas.c:824
+#: gio/glib-compile-schemas.c:837
#, c-format
-msgid "invalid name '%s': the last character may not be a hyphen ('-')."
-msgstr "неправилно име „%s“: поÑледниÑÑ‚ знак не може да е тире („-“)."
+msgid "Invalid name “%sâ€: the last character may not be a hyphen (“-â€)"
+msgstr "Ðеправилно име „%s“: поÑледниÑÑ‚ знак не може да е тире („-“)"
-#: ../gio/glib-compile-schemas.c:832
+#: gio/glib-compile-schemas.c:845
#, c-format
-msgid "invalid name '%s': maximum length is 1024"
-msgstr "неправилно име „%s“: макÑималната дължина е 1024"
+msgid "Invalid name “%sâ€: maximum length is 1024"
+msgstr "Ðеправилно име „%s“: макÑималната дължина е 1024"
-#: ../gio/glib-compile-schemas.c:901
+#: gio/glib-compile-schemas.c:917
#, c-format
msgid "<child name='%s'> already specified"
msgstr "<child name='%s'> вече е указано"
-#: ../gio/glib-compile-schemas.c:927
-msgid "cannot add keys to a 'list-of' schema"
-msgstr "към Ñхема „list-of“ не могат да Ñе добавÑÑ‚ ключове"
+#: gio/glib-compile-schemas.c:943
+msgid "Cannot add keys to a “list-of†schema"
+msgstr "Към Ñхема „list-of“ не може да Ñе добавÑÑ‚ ключове"
-#: ../gio/glib-compile-schemas.c:938
+#: gio/glib-compile-schemas.c:954
#, c-format
msgid "<key name='%s'> already specified"
msgstr "<key name='%s'> вече е указано"
-#: ../gio/glib-compile-schemas.c:956
+#: gio/glib-compile-schemas.c:972
#, c-format
msgid ""
"<key name='%s'> shadows <key name='%s'> in <schema id='%s'>; use <override> "
@@ -1701,524 +2777,640 @@ msgstr ""
"<key name='%s'> заÑенчва <key name='%s'> в <schema id='%s'>. Използвайте "
"<override>, за да промените ÑтойноÑтта"
-#: ../gio/glib-compile-schemas.c:967
+#: gio/glib-compile-schemas.c:983
#, c-format
msgid ""
-"exactly one of 'type', 'enum' or 'flags' must be specified as an attribute "
+"Exactly one of “typeâ€, “enum†or “flags†must be specified as an attribute "
"to <key>"
msgstr ""
-"като атрибут на <key> Ñ‚Ñ€Ñбва да приÑÑŠÑтва точно едно от „type“, „enum“ или "
+"Като атрибут на <key> Ñ‚Ñ€Ñбва да приÑÑŠÑтва точно едно от „type“, „enum“ или "
"„flags“"
-#: ../gio/glib-compile-schemas.c:986
+#: gio/glib-compile-schemas.c:1002
#, c-format
msgid "<%s id='%s'> not (yet) defined."
msgstr "<%s id='%s'> не е дефинирано (вÑе още)."
-#: ../gio/glib-compile-schemas.c:1001
+#: gio/glib-compile-schemas.c:1017
#, c-format
-msgid "invalid GVariant type string '%s'"
-msgstr "неправилен низ за вид на GVariant: „%s“"
+msgid "Invalid GVariant type string “%sâ€"
+msgstr "Ðеправилен низ за вид на „GVariant“: „%s“"
-#: ../gio/glib-compile-schemas.c:1031
-msgid "<override> given but schema isn't extending anything"
-msgstr "използвано е <override>, но Ñхемата не разширÑва нищо"
+#: gio/glib-compile-schemas.c:1047
+msgid "<override> given but schema isn’t extending anything"
+msgstr "Използвано е <override>, но Ñхемата не разширÑва нищо"
-#: ../gio/glib-compile-schemas.c:1044
+#: gio/glib-compile-schemas.c:1060
#, c-format
-msgid "no <key name='%s'> to override"
-msgstr "липÑва <key name='%s'> за предефиниране"
+msgid "No <key name='%s'> to override"
+msgstr "ЛипÑва <key name='%s'> за предефиниране"
-#: ../gio/glib-compile-schemas.c:1052
+#: gio/glib-compile-schemas.c:1068
#, c-format
msgid "<override name='%s'> already specified"
-msgstr "вече е указано <override name='%s'>"
+msgstr "Вече е указано <override name='%s'>"
-#: ../gio/glib-compile-schemas.c:1125
+#: gio/glib-compile-schemas.c:1141
#, c-format
msgid "<schema id='%s'> already specified"
-msgstr "вече е указано <schema id='%s'>"
+msgstr "Вече е указано <schema id='%s'>"
-#: ../gio/glib-compile-schemas.c:1137
+#: gio/glib-compile-schemas.c:1153
#, c-format
-msgid "<schema id='%s'> extends not yet existing schema '%s'"
+msgid "<schema id='%s'> extends not yet existing schema “%sâ€"
msgstr "<schema id='%s'> Ð´Ð¾Ð±Ð°Ð²Ñ ÐºÑŠÐ¼ Ñхема „%s“, коÑто още не ÑъщеÑтвува"
-#: ../gio/glib-compile-schemas.c:1153
+#: gio/glib-compile-schemas.c:1169
#, c-format
-msgid "<schema id='%s'> is list of not yet existing schema '%s'"
+msgid "<schema id='%s'> is list of not yet existing schema “%sâ€"
msgstr "<schema id='%s'> е ÑпиÑък на Ñхема „%s“, коÑто още не ÑъщеÑтвува"
-#: ../gio/glib-compile-schemas.c:1161
+#: gio/glib-compile-schemas.c:1177
#, c-format
-msgid "Can not be a list of a schema with a path"
+msgid "Cannot be a list of a schema with a path"
msgstr "Ðе може да е ÑпиÑък от Ñхема Ñ Ð¿ÑŠÑ‚"
-#: ../gio/glib-compile-schemas.c:1171
+#: gio/glib-compile-schemas.c:1187
#, c-format
-msgid "Can not extend a schema with a path"
+msgid "Cannot extend a schema with a path"
msgstr "Схема не може да Ñе разширÑва Ñ Ð¿ÑŠÑ‚"
-#: ../gio/glib-compile-schemas.c:1181
+#: gio/glib-compile-schemas.c:1197
#, c-format
msgid ""
"<schema id='%s'> is a list, extending <schema id='%s'> which is not a list"
msgstr ""
"<schema id='%s'> е ÑпиÑък, разширÑващ <schema id='%s'>, коÑто не е ÑпиÑък"
-#: ../gio/glib-compile-schemas.c:1191
+#: gio/glib-compile-schemas.c:1207
#, c-format
msgid ""
-"<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but '%s' "
-"does not extend '%s'"
+"<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but “%s†"
+"does not extend “%sâ€"
msgstr ""
"<schema id='%s' list-of='%s'> разширÑва <schema id='%s' list-of='%s'>, но "
"„%s“ не разширÑва „%s“"
-#: ../gio/glib-compile-schemas.c:1208
+#: gio/glib-compile-schemas.c:1224
#, c-format
-msgid "a path, if given, must begin and end with a slash"
-msgstr "вÑеки път Ñ‚Ñ€Ñбва да започва и да завършва Ñ Ð½Ð°ÐºÐ»Ð¾Ð½ÐµÐ½Ð° черта („/“)"
+msgid "A path, if given, must begin and end with a slash"
+msgstr "Ð’Ñеки път Ñ‚Ñ€Ñбва да започва и да завършва Ñ Ð½Ð°ÐºÐ»Ð¾Ð½ÐµÐ½Ð° черта („/“)"
-#: ../gio/glib-compile-schemas.c:1215
+#: gio/glib-compile-schemas.c:1231
#, c-format
-msgid "the path of a list must end with ':/'"
-msgstr "пътÑÑ‚ на ÑпиÑък Ñ‚Ñ€Ñбва да завършва Ñ â€ž:/“"
+msgid "The path of a list must end with “:/â€"
+msgstr "ПътÑÑ‚ на ÑпиÑък Ñ‚Ñ€Ñбва да завършва Ñ â€ž:/“"
-#: ../gio/glib-compile-schemas.c:1247
+#: gio/glib-compile-schemas.c:1240
+#, c-format
+msgid ""
+"Warning: Schema “%s†has path “%sâ€. Paths starting with “/apps/â€, “/"
+"desktop/†or “/system/†are deprecated."
+msgstr ""
+"ПРЕДУПРЕЖДЕÐИЕ: Ñхемата „%s“ Ñъдържа Ð¿ÑŠÑ‚Ñ â€ž%s“. Пътищата, които започват Ñ â€ž/"
+"apps/“, „/desktop/“ или „/system/“ Ñа оÑтарели."
+
+#: gio/glib-compile-schemas.c:1270
#, c-format
msgid "<%s id='%s'> already specified"
msgstr "вече е указано <%s id='%s'>"
-#: ../gio/glib-compile-schemas.c:1397 ../gio/glib-compile-schemas.c:1413
+#: gio/glib-compile-schemas.c:1420 gio/glib-compile-schemas.c:1436
#, c-format
msgid "Only one <%s> element allowed inside <%s>"
msgstr "Само един елемент <%s> е позволен в <%s>"
-#: ../gio/glib-compile-schemas.c:1495
+#: gio/glib-compile-schemas.c:1518
#, c-format
msgid "Element <%s> not allowed at the top level"
msgstr "Елементът <%s> не е позволен на най-горно ниво"
+#: gio/glib-compile-schemas.c:1536
+msgid "Element <default> is required in <key>"
+msgstr "Задължително е в <key> да има елемент <default>"
+
+#: gio/glib-compile-schemas.c:1626
+#, c-format
+msgid "Text may not appear inside <%s>"
+msgstr "Ð’ <%s> не е позволен текÑÑ‚"
+
+#: gio/glib-compile-schemas.c:1694
+#, c-format
+msgid "Warning: undefined reference to <schema id='%s'/>"
+msgstr "ПРЕДУПРЕЖДЕÐИЕ: недефиниран указател към <schema id='%s'/>"
+
#. Translators: Do not translate "--strict".
-#: ../gio/glib-compile-schemas.c:1794 ../gio/glib-compile-schemas.c:1865
-#: ../gio/glib-compile-schemas.c:1941
+#: gio/glib-compile-schemas.c:1833 gio/glib-compile-schemas.c:1912
+msgid "--strict was specified; exiting."
+msgstr "Указано е „--strict“, изход."
+
+#: gio/glib-compile-schemas.c:1845
+msgid "This entire file has been ignored."
+msgstr "ЦелиÑÑ‚ файл е пренебрегнат."
+
+#: gio/glib-compile-schemas.c:1908
+msgid "Ignoring this file."
+msgstr "Пренебрегване на файла."
+
+#: gio/glib-compile-schemas.c:1963
#, c-format
-msgid "--strict was specified; exiting.\n"
-msgstr "Указано е „--strict“, изход.\n"
+msgid ""
+"No such key “%s†in schema “%s†as specified in override file “%sâ€; ignoring "
+"override for this key."
+msgstr ""
+"ЛипÑва ключ „%s“ в Ñхемата „%s“, указан във файла за предефиниране „%s“. "
+"Това предифиниране Ñе преÑкача."
-#: ../gio/glib-compile-schemas.c:1802
+#: gio/glib-compile-schemas.c:1971
#, c-format
-msgid "This entire file has been ignored.\n"
-msgstr "ЦелиÑÑ‚ файл е пренебрегнат.\n"
+msgid ""
+"No such key “%s†in schema “%s†as specified in override file “%s†and --"
+"strict was specified; exiting."
+msgstr ""
+"ЛипÑва ключ „%s“ в Ñхемата „%s“, указан във файла за предефиниране „%s“, "
+"зададена е и опциÑта „--strict“, затова програмата приключва."
-#: ../gio/glib-compile-schemas.c:1861
+#: gio/glib-compile-schemas.c:1993
#, c-format
-msgid "Ignoring this file.\n"
-msgstr "Пренебрегване на файла.\n"
+msgid ""
+"Cannot provide per-desktop overrides for localized key “%s†in schema "
+"“%s†(override file “%sâ€); ignoring override for this key."
+msgstr ""
+"Ðе може да Ñе предоÑтави предефиниране за вÑÑка работна Ñреда за "
+"Ð»Ð¾ÐºÐ°Ð»Ð¸Ð·Ð¸Ñ€Ð°Ð½Ð¸Ñ ÐºÐ»ÑŽÑ‡ „%s“ в Ñхемата „%s“ (файлът Ñ Ð¿Ñ€ÐµÐ´ÐµÑ„Ð¸Ð½Ð¸Ñ€Ð°Ð½Ð° ÑтойноÑÑ‚ е "
+"„%s“). Това предифиниране Ñе преÑкача."
-#: ../gio/glib-compile-schemas.c:1901
+#: gio/glib-compile-schemas.c:2002
#, c-format
-msgid "No such key '%s' in schema '%s' as specified in override file '%s'"
+msgid ""
+"Cannot provide per-desktop overrides for localized key “%s†in schema "
+"“%s†(override file “%sâ€) and --strict was specified; exiting."
msgstr ""
-"ЛипÑва ключ „%s“ в Ñхемата „%s“, указан във файла за предефиниране „%s“"
+"Ðе може да Ñе предоÑтави предефиниране за вÑÑка работна Ñреда за "
+"Ð»Ð¾ÐºÐ°Ð»Ð¸Ð·Ð¸Ñ€Ð°Ð½Ð¸Ñ ÐºÐ»ÑŽÑ‡ „%s“ в Ñхемата „%s“ (файлът Ñ Ð¿Ñ€ÐµÐ´ÐµÑ„Ð¸Ð½Ð¸Ñ€Ð°Ð½Ð° ÑтойноÑÑ‚ е "
+"„%s“), зададена е и опциÑта „--strict“, затова програмата приключва."
-#: ../gio/glib-compile-schemas.c:1907 ../gio/glib-compile-schemas.c:1965
-#: ../gio/glib-compile-schemas.c:1993
+#: gio/glib-compile-schemas.c:2026
#, c-format
-msgid "; ignoring override for this key.\n"
-msgstr "пренебрегване на предефинирането на ключа.\n"
+msgid ""
+"Error parsing key “%s†in schema “%s†as specified in override file “%sâ€: "
+"%s. Ignoring override for this key."
+msgstr ""
+"Грешка при анализиране на ключа „%s“ от Ñхемата „%s“, указан във файла за "
+"предефиниране „%s“ — %s. Това предифиниране Ñе преÑкача."
-#: ../gio/glib-compile-schemas.c:1911 ../gio/glib-compile-schemas.c:1969
-#: ../gio/glib-compile-schemas.c:1997
+#: gio/glib-compile-schemas.c:2038
#, c-format
-msgid " and --strict was specified; exiting.\n"
-msgstr "и е указано „--strict“, излизане.\n"
+msgid ""
+"Error parsing key “%s†in schema “%s†as specified in override file “%sâ€: "
+"%s. --strict was specified; exiting."
+msgstr ""
+"Грешка при анализиране на ключа „%s“ от Ñхемата „%s“, указан във файла за "
+"предефиниране „%s“ — %s, зададена е и опциÑта „--strict“, затова програмата "
+"приключва."
-#: ../gio/glib-compile-schemas.c:1927
+#: gio/glib-compile-schemas.c:2065
#, c-format
msgid ""
-"error parsing key '%s' in schema '%s' as specified in override file '%s': %s."
+"Override for key “%s†in schema “%s†in override file “%s†is outside the "
+"range given in the schema; ignoring override for this key."
msgstr ""
-"грешка при анализиране на ключа „%s“ от Ñхемата „%s“, указан във файла за "
-"предефиниране „%s“ — %s."
+"Предефинирането на ключа „%s“ в Ñхемата „%s“ във файла за предефиниране „%s“ "
+"е извън обÑега, даден в Ñхемата. Това предифиниране Ñе преÑкача."
-#: ../gio/glib-compile-schemas.c:1937
+#: gio/glib-compile-schemas.c:2075
#, c-format
-msgid "Ignoring override for this key.\n"
-msgstr "Пренебрегване на предефинирането на ключа.\n"
+msgid ""
+"Override for key “%s†in schema “%s†in override file “%s†is outside the "
+"range given in the schema and --strict was specified; exiting."
+msgstr ""
+"Предефинирането на ключа „%s“ в Ñхемата „%s“ във файла за предефиниране „%s“ "
+"е извън обÑега, даден в Ñхемата, зададена е и опциÑта „--strict“, затова "
+"програмата приключва."
-#: ../gio/glib-compile-schemas.c:1955
+#: gio/glib-compile-schemas.c:2101
#, c-format
msgid ""
-"override for key '%s' in schema '%s' in override file '%s' is outside the "
-"range given in the schema"
+"Override for key “%s†in schema “%s†in override file “%s†is not in the "
+"list of valid choices; ignoring override for this key."
msgstr ""
-"предефинирането на ключа „%s“ в Ñхемата „%s“ във файла за предефиниране „%s“ "
-"е извън обÑега, даден в Ñхемата"
+"Предефинирането на ключа „%s“ в Ñхемата „%s“ във файла за предефиниране „%s“ "
+"не е в ÑпиÑъка Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»ÐµÐ½Ð¸ ÑтойноÑти. Това предифиниране Ñе преÑкача."
-#: ../gio/glib-compile-schemas.c:1983
+#: gio/glib-compile-schemas.c:2111
#, c-format
msgid ""
-"override for key '%s' in schema '%s' in override file '%s' is not in the "
-"list of valid choices"
+"Override for key “%s†in schema “%s†in override file “%s†is not in the "
+"list of valid choices and --strict was specified; exiting."
msgstr ""
-"предефинирането на ключа „%s“ в Ñхемата „%s“ във файла за предефиниране „%s“ "
-"не е в ÑпиÑъка Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»ÐµÐ½Ð¸ ÑтойноÑти"
+"Предефинирането на ключа „%s“ в Ñхемата „%s“ във файла за предефиниране „%s“ "
+"не е в ÑпиÑъка Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»ÐµÐ½Ð¸ ÑтойноÑти, зададена е и опциÑта „--strict“, "
+"затова програмата приключва."
-#: ../gio/glib-compile-schemas.c:2036
-msgid "where to store the gschemas.compiled file"
-msgstr "мÑÑто за ÑъхранÑване на файла gschemas.compiled"
+#: gio/glib-compile-schemas.c:2173
+msgid "Where to store the gschemas.compiled file"
+msgstr "ÐœÑÑто за ÑъхранÑване на файла „gschemas.compiled“"
-#: ../gio/glib-compile-schemas.c:2037
+#: gio/glib-compile-schemas.c:2174
msgid "Abort on any errors in schemas"
msgstr "ПрекъÑване на работа при вÑÑкакви грешки в Ñхемите"
-#: ../gio/glib-compile-schemas.c:2038
+#: gio/glib-compile-schemas.c:2175
msgid "Do not write the gschema.compiled file"
-msgstr "Без Ð·Ð°Ð¿Ð¸Ñ Ð½Ð° файл gschema.compiled"
+msgstr "Без Ð·Ð°Ð¿Ð¸Ñ Ð½Ð° файл „gschema.compiled“"
-#: ../gio/glib-compile-schemas.c:2039
+#: gio/glib-compile-schemas.c:2176
msgid "Do not enforce key name restrictions"
msgstr "Без налагане на ограничениÑта за имена на ключове"
-#: ../gio/glib-compile-schemas.c:2068
+#: gio/glib-compile-schemas.c:2205
msgid ""
"Compile all GSettings schema files into a schema cache.\n"
"Schema files are required to have the extension .gschema.xml,\n"
"and the cache file is called gschemas.compiled."
msgstr ""
-"Компилиране на вÑички файлове ÑÑŠÑ Ñхеми за GSettings в кеш.\n"
-"Файловете ÑÑŠÑ Ñхемите Ñ‚Ñ€Ñбва да завършват на .gschema.xml,\n"
-"а файлът Ñ ÐºÐµÑˆÐ° Ñе нарича gschemas.compiled."
-
-#: ../gio/glib-compile-schemas.c:2084
-#, c-format
-msgid "You should give exactly one directory name\n"
-msgstr "ИзиÑква Ñе точно едно име на папка\n"
+"Компилиране на вÑички файлове ÑÑŠÑ Ñхеми за „GSettings“ в кеш.\n"
+"Файловете ÑÑŠÑ Ñхемите Ñ‚Ñ€Ñбва да завършват на „.gschema.xml“,\n"
+"а файлът Ñ ÐºÐµÑˆÐ° Ñе нарича „gschemas.compiled“."
-#: ../gio/glib-compile-schemas.c:2123
-#, c-format
-msgid "No schema files found: "
-msgstr "Ðе Ñа открити файлове ÑÑŠÑ Ñхеми: "
+#: gio/glib-compile-schemas.c:2226
+msgid "You should give exactly one directory name"
+msgstr "ИзиÑква Ñе точно едно име на папка"
-#: ../gio/glib-compile-schemas.c:2126
-#, c-format
-msgid "doing nothing.\n"
-msgstr "без обработка.\n"
+#: gio/glib-compile-schemas.c:2269
+msgid "No schema files found: doing nothing."
+msgstr "Ðе Ñа открити файлове ÑÑŠÑ Ñхеми: нищо нÑма да Ñе прави."
-#: ../gio/glib-compile-schemas.c:2129
-#, c-format
-msgid "removed existing output file.\n"
-msgstr "ÑъщеÑтвуващиÑÑ‚ резултатен файл е премахнат.\n"
+#: gio/glib-compile-schemas.c:2271
+msgid "No schema files found: removed existing output file."
+msgstr ""
+"Ðе Ñа открити файлове ÑÑŠÑ Ñхеми: ÑъщеÑтвуващиÑÑ‚ резултатен файл е премахнат."
-#: ../gio/glocalfile.c:635 ../gio/win32/gwinhttpfile.c:420
+#: gio/glocalfile.c:549 gio/win32/gwinhttpfile.c:436
#, c-format
msgid "Invalid filename %s"
msgstr "Ðеправилно име на файл: %s"
-#: ../gio/glocalfile.c:1012
+#: gio/glocalfile.c:982
+#, c-format
+msgid "Error getting filesystem info for %s: %s"
+msgstr "Грешка при получаване на Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð·Ð° файловата ÑиÑтема за „%s“: %s"
+
+#. Translators: This is an error message when trying to find
+#. * the enclosing (user visible) mount of a file, but none
+#. * exists.
+#.
+#: gio/glocalfile.c:1123
#, c-format
-msgid "Error getting filesystem info: %s"
-msgstr "Грешка при получаване на Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð·Ð° файловата ÑиÑтема: %s"
+msgid "Containing mount for file %s not found"
+msgstr "СъдържащиÑÑ‚ монтиран обект за файла „%s“ не ÑъщеÑтвува"
-#: ../gio/glocalfile.c:1180
-msgid "Can't rename root directory"
+#: gio/glocalfile.c:1146
+msgid "Can’t rename root directory"
msgstr "Кореновата папка не може да Ñе преименува"
-#: ../gio/glocalfile.c:1200 ../gio/glocalfile.c:1226
+#: gio/glocalfile.c:1164 gio/glocalfile.c:1187
#, c-format
-msgid "Error renaming file: %s"
-msgstr "Грешка при преименуване на файл: %s"
+msgid "Error renaming file %s: %s"
+msgstr "Грешка при преименуване на файла „%s“: %s"
-#: ../gio/glocalfile.c:1209
-msgid "Can't rename file, filename already exists"
+#: gio/glocalfile.c:1171
+msgid "Can’t rename file, filename already exists"
msgstr "Файлът не може да Ñе преименува — ÑъщеÑтвува друг файл Ñ Ñ‚Ð°ÐºÐ¾Ð²Ð° име"
-#: ../gio/glocalfile.c:1222 ../gio/glocalfile.c:2249 ../gio/glocalfile.c:2278
-#: ../gio/glocalfile.c:2438 ../gio/glocalfileoutputstream.c:549
+#: gio/glocalfile.c:1184 gio/glocalfile.c:2380 gio/glocalfile.c:2408
+#: gio/glocalfile.c:2547 gio/glocalfileoutputstream.c:656
msgid "Invalid filename"
msgstr "Ðеправилно име на файл"
-#: ../gio/glocalfile.c:1389 ../gio/glocalfile.c:1413
-msgid "Can't open directory"
-msgstr "Папката не може да бъде отворена"
-
-#: ../gio/glocalfile.c:1397
+#: gio/glocalfile.c:1352 gio/glocalfile.c:1363
#, c-format
-msgid "Error opening file: %s"
-msgstr "Грешка при отварÑне на файл: %s"
+msgid "Error opening file %s: %s"
+msgstr "Грешка при отварÑне на файла „%s“: %s"
-#: ../gio/glocalfile.c:1538
+#: gio/glocalfile.c:1488
#, c-format
-msgid "Error removing file: %s"
-msgstr "Грешка при изтриване на файл: %s"
+msgid "Error removing file %s: %s"
+msgstr "Грешка при изтриване на файла „%s“: %s"
-#: ../gio/glocalfile.c:1922
+#: gio/glocalfile.c:1982 gio/glocalfile.c:1993 gio/glocalfile.c:2020
#, c-format
-msgid "Error trashing file: %s"
-msgstr "Грешка при премеÑтване на файл в кошчето: %s"
+msgid "Error trashing file %s: %s"
+msgstr "Грешка при премеÑтване на файл в кошчето „%s“: %s"
-#: ../gio/glocalfile.c:1945
+#: gio/glocalfile.c:2040
#, c-format
-msgid "Unable to create trash dir %s: %s"
+msgid "Unable to create trash directory %s: %s"
msgstr "ÐеуÑпешно Ñъздаване на папката за кошче „%s“: %s"
-#: ../gio/glocalfile.c:1966
-msgid "Unable to find toplevel directory for trash"
-msgstr "Ðе може да Ñе открие най-горната папка за кошче"
+#: gio/glocalfile.c:2061
+#, c-format
+msgid "Unable to find toplevel directory to trash %s"
+msgstr ""
+"Ðе може да Ñе открие най-горната папка за премеÑтване в кошчето на „%s“"
+
+#: gio/glocalfile.c:2069
+#, c-format
+msgid "Trashing on system internal mounts is not supported"
+msgstr ""
+"ПремеÑтване в кошчето на монтираните вътрешни ÑиÑтемни томове не Ñе поддържа"
-#: ../gio/glocalfile.c:2045 ../gio/glocalfile.c:2065
-msgid "Unable to find or create trash directory"
-msgstr "Ðе може да Ñе Ñъздаде папката за кошче"
+#: gio/glocalfile.c:2155 gio/glocalfile.c:2183
+#, c-format
+msgid "Unable to find or create trash directory %s to trash %s"
+msgstr "Ðе може да Ñе Ñъздаде папката за кошче „%s“ за изхвърлÑнето на „%s“"
-#: ../gio/glocalfile.c:2099
+#: gio/glocalfile.c:2229
#, c-format
-msgid "Unable to create trashing info file: %s"
-msgstr "ÐеуÑпешно Ñъздаване на файл Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð·Ð° кошчето: %s"
+msgid "Unable to create trashing info file for %s: %s"
+msgstr "ÐеуÑпешно Ñъздаване на файл Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð·Ð° кошчето за „%s“: %s"
-#: ../gio/glocalfile.c:2157 ../gio/glocalfile.c:2162 ../gio/glocalfile.c:2219
-#: ../gio/glocalfile.c:2226
+#: gio/glocalfile.c:2291
#, c-format
-msgid "Unable to trash file: %s"
-msgstr "ÐеуÑпешно премеÑтване на файл в кошчето: %s"
+msgid "Unable to trash file %s across filesystem boundaries"
+msgstr "ÐеуÑпешно премеÑтване на файл в кошче на друга файлова ÑиÑтема: %s"
-#: ../gio/glocalfile.c:2227 ../glib/gregex.c:281
-msgid "internal error"
-msgstr "вътрешна грешка"
+#: gio/glocalfile.c:2295 gio/glocalfile.c:2351
+#, c-format
+msgid "Unable to trash file %s: %s"
+msgstr "ÐеуÑпешно премеÑтване на файл в кошчето „%s“: %s"
-#: ../gio/glocalfile.c:2253
+#: gio/glocalfile.c:2357
#, c-format
-msgid "Error creating directory: %s"
-msgstr "Грешка при Ñъздаване на папка: %s"
+msgid "Unable to trash file %s"
+msgstr "ÐеуÑпешно премеÑтване на файл в кошчето „%s“"
-#: ../gio/glocalfile.c:2282
+#: gio/glocalfile.c:2383
+#, c-format
+msgid "Error creating directory %s: %s"
+msgstr "Грешка при Ñъздаване на папка „%s“: %s"
+
+#: gio/glocalfile.c:2412
#, c-format
msgid "Filesystem does not support symbolic links"
msgstr "Файловата ÑиÑтема не поддържа Ñимволни връзки"
-#: ../gio/glocalfile.c:2286
+#: gio/glocalfile.c:2415
#, c-format
-msgid "Error making symbolic link: %s"
-msgstr "Грешка при Ñъздаване на Ñимволна връзка: %s"
+msgid "Error making symbolic link %s: %s"
+msgstr "Грешка при Ñъздаване на Ñимволна връзка „%s“: %s"
-#: ../gio/glocalfile.c:2348 ../gio/glocalfile.c:2442
+#: gio/glocalfile.c:2458 gio/glocalfile.c:2493 gio/glocalfile.c:2550
#, c-format
-msgid "Error moving file: %s"
-msgstr "Грешка при премеÑтване на файл: %s"
+msgid "Error moving file %s: %s"
+msgstr "Грешка при премеÑтване на файл „%s“: %s"
-#: ../gio/glocalfile.c:2371
-msgid "Can't move directory over directory"
+#: gio/glocalfile.c:2481
+msgid "Can’t move directory over directory"
msgstr "Папка не може да бъде премеÑтена върху папка"
-#: ../gio/glocalfile.c:2398 ../gio/glocalfileoutputstream.c:925
-#: ../gio/glocalfileoutputstream.c:939 ../gio/glocalfileoutputstream.c:954
-#: ../gio/glocalfileoutputstream.c:970 ../gio/glocalfileoutputstream.c:984
+#: gio/glocalfile.c:2507 gio/glocalfileoutputstream.c:1108
+#: gio/glocalfileoutputstream.c:1122 gio/glocalfileoutputstream.c:1137
+#: gio/glocalfileoutputstream.c:1154 gio/glocalfileoutputstream.c:1168
msgid "Backup file creation failed"
msgstr "ÐеуÑпешно Ñъздаване на резервен файл"
-#: ../gio/glocalfile.c:2417
+#: gio/glocalfile.c:2526
#, c-format
msgid "Error removing target file: %s"
msgstr "Грешка при премахване на Ñ†ÐµÐ»ÐµÐ²Ð¸Ñ Ñ„Ð°Ð¹Ð»: %s"
-#: ../gio/glocalfile.c:2431
+#: gio/glocalfile.c:2540
msgid "Move between mounts not supported"
msgstr "Ðе Ñе поддържа меÑтене между монтирани меÑтоположениÑ"
-#: ../gio/glocalfile.c:2623
+#: gio/glocalfile.c:2714
#, c-format
msgid "Could not determine the disk usage of %s: %s"
msgstr "Ðе може да Ñе определи заетото мÑÑто на %s: %s"
-#: ../gio/glocalfileinfo.c:721
+#: gio/glocalfileinfo.c:767
msgid "Attribute value must be non-NULL"
msgstr "СтойноÑтта на атрибут не Ñ‚Ñ€Ñбва да е NULL"
-#: ../gio/glocalfileinfo.c:728
+#: gio/glocalfileinfo.c:774
msgid "Invalid attribute type (string expected)"
msgstr "Ðеправилен вид на атрибут (очакваше Ñе низ)"
-#: ../gio/glocalfileinfo.c:735
+#: gio/glocalfileinfo.c:781
msgid "Invalid extended attribute name"
msgstr "Ðеправилно име на допълнителен атрибут"
-#: ../gio/glocalfileinfo.c:775
+#: gio/glocalfileinfo.c:821
#, c-format
-msgid "Error setting extended attribute '%s': %s"
-msgstr "Грешка при задаване на допълнителен атрибут „%s“: %s"
+msgid "Error setting extended attribute “%sâ€: %s"
+msgstr "Грешка при задаване на разширен атрибут „%s“: %s"
-#: ../gio/glocalfileinfo.c:1575
+#: gio/glocalfileinfo.c:1709 gio/win32/gwinhttpfile.c:191
msgid " (invalid encoding)"
msgstr " (неправилно кодиране)"
-#: ../gio/glocalfileinfo.c:1766 ../gio/glocalfileoutputstream.c:803
+#: gio/glocalfileinfo.c:1868 gio/glocalfileoutputstream.c:943
+#: gio/glocalfileoutputstream.c:995
#, c-format
-msgid "Error when getting information for file '%s': %s"
+msgid "Error when getting information for file “%sâ€: %s"
msgstr "Грешка при получаване на Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð·Ð° файла „%s“: %s"
-#: ../gio/glocalfileinfo.c:2017
+#: gio/glocalfileinfo.c:2134
#, c-format
msgid "Error when getting information for file descriptor: %s"
msgstr "Грешка при получаване на Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð·Ð° Ñ„Ð°Ð¹Ð»Ð¾Ð²Ð¸Ñ Ð´ÐµÑкриптор: %s"
-#: ../gio/glocalfileinfo.c:2062
+#: gio/glocalfileinfo.c:2179
msgid "Invalid attribute type (uint32 expected)"
msgstr "Ðеправилен вид на атрибут (очакваше Ñе uint32)"
-#: ../gio/glocalfileinfo.c:2080
+#: gio/glocalfileinfo.c:2197
msgid "Invalid attribute type (uint64 expected)"
msgstr "Ðеправилен вид на атрибут (очакваше Ñе uint64)"
-#: ../gio/glocalfileinfo.c:2099 ../gio/glocalfileinfo.c:2118
+#: gio/glocalfileinfo.c:2216 gio/glocalfileinfo.c:2235
msgid "Invalid attribute type (byte string expected)"
msgstr "Ðеправилен вид на атрибут (очакваше Ñе низ от байтове)"
-#: ../gio/glocalfileinfo.c:2153
+#: gio/glocalfileinfo.c:2282
msgid "Cannot set permissions on symlinks"
msgstr "Грешка при задаване на правата за доÑтъп на Ñимволната връзка"
-#: ../gio/glocalfileinfo.c:2169
+#: gio/glocalfileinfo.c:2298
#, c-format
msgid "Error setting permissions: %s"
msgstr "Грешка при задаване на правата за доÑтъп: %s"
-#: ../gio/glocalfileinfo.c:2220
+#: gio/glocalfileinfo.c:2349
#, c-format
msgid "Error setting owner: %s"
msgstr "Грешка при задаване на ÑобÑтвеник: %s"
-#: ../gio/glocalfileinfo.c:2243
+#: gio/glocalfileinfo.c:2372
msgid "symlink must be non-NULL"
msgstr "Ñимволната връзка Ñ‚Ñ€Ñбва да не е NULL"
-#: ../gio/glocalfileinfo.c:2253 ../gio/glocalfileinfo.c:2272
-#: ../gio/glocalfileinfo.c:2283
+#: gio/glocalfileinfo.c:2382 gio/glocalfileinfo.c:2401
+#: gio/glocalfileinfo.c:2412
#, c-format
msgid "Error setting symlink: %s"
msgstr "Грешка при задаване на Ñимволна връзка: %s"
-#: ../gio/glocalfileinfo.c:2262
+#: gio/glocalfileinfo.c:2391
msgid "Error setting symlink: file is not a symlink"
msgstr "Грешка при задаване на Ñимволна връзка: файлът не е такава"
-#: ../gio/glocalfileinfo.c:2388
+#: gio/glocalfileinfo.c:2463
+#, c-format
+msgid "Extra nanoseconds %d for UNIX timestamp %lld are negative"
+msgstr ""
+"Допълнителните наноÑекунди %d за времевото клеймо по UNIX %lld Ñа отрицателни"
+
+#: gio/glocalfileinfo.c:2472
+#, c-format
+msgid "Extra nanoseconds %d for UNIX timestamp %lld reach 1 second"
+msgstr ""
+"Допълнителните наноÑекунди %d за времевото клеймо по UNIX %lld Ñтигат 1 "
+"Ñекунда"
+
+#: gio/glocalfileinfo.c:2482
+#, c-format
+msgid "UNIX timestamp %lld does not fit into 64 bits"
+msgstr "Времевото клеймо по UNIX %lld не Ñе помеÑтва в 64 бита"
+
+#: gio/glocalfileinfo.c:2493
+#, c-format
+msgid "UNIX timestamp %lld is outside of the range supported by Windows"
+msgstr "Времевото клеймо по UNIX %lld е извън диапазона, поддържан в Windows"
+
+#: gio/glocalfileinfo.c:2570
+#, c-format
+msgid "File name “%s†cannot be converted to UTF-16"
+msgstr "Името на файла „%s“ не може да Ñе преобразува в UTF-16"
+
+#: gio/glocalfileinfo.c:2589
+#, c-format
+msgid "File “%s†cannot be opened: Windows Error %lu"
+msgstr "Файлът „%s“ не може да бъде отворен — грешка от Windows: %lu"
+
+#: gio/glocalfileinfo.c:2602
+#, c-format
+msgid "Error setting modification or access time for file “%sâ€: %lu"
+msgstr ""
+"Грешка при задаване на времето на промÑна или доÑтъп на файла „%s“: %lu"
+
+#: gio/glocalfileinfo.c:2703
#, c-format
msgid "Error setting modification or access time: %s"
msgstr "Грешка при задаване на времето на промÑна или доÑтъп: %s"
-#: ../gio/glocalfileinfo.c:2411
+#: gio/glocalfileinfo.c:2726
msgid "SELinux context must be non-NULL"
msgstr "КонтекÑÑ‚ÑŠÑ‚ на SELinux Ñ‚Ñ€Ñбва да не е NULL"
-#: ../gio/glocalfileinfo.c:2426
+#: gio/glocalfileinfo.c:2733
+msgid "SELinux is not enabled on this system"
+msgstr "SELinux не е включен на тази ÑиÑтема"
+
+#: gio/glocalfileinfo.c:2743
#, c-format
msgid "Error setting SELinux context: %s"
msgstr "Грешка при задаване на контекÑта на SELinux: %s"
-#: ../gio/glocalfileinfo.c:2433
-msgid "SELinux is not enabled on this system"
-msgstr "SELinux не е включен на тази ÑиÑтема"
-
-#: ../gio/glocalfileinfo.c:2525
+#: gio/glocalfileinfo.c:2836
#, c-format
msgid "Setting attribute %s not supported"
msgstr "Ðе Ñе поддържа задаването на атрибута %s"
-#: ../gio/glocalfileinputstream.c:168 ../gio/glocalfileoutputstream.c:694
+#: gio/glocalfileinputstream.c:163 gio/glocalfileoutputstream.c:801
#, c-format
msgid "Error reading from file: %s"
msgstr "Грешка при четене от файл: %s"
-#: ../gio/glocalfileinputstream.c:199 ../gio/glocalfileinputstream.c:211
-#: ../gio/glocalfileinputstream.c:225 ../gio/glocalfileinputstream.c:333
-#: ../gio/glocalfileoutputstream.c:456 ../gio/glocalfileoutputstream.c:1002
-#, c-format
-msgid "Error seeking in file: %s"
-msgstr "Грешка при Ñ‚ÑŠÑ€Ñене във файл: %s"
-
-#: ../gio/glocalfileinputstream.c:255 ../gio/glocalfileoutputstream.c:246
-#: ../gio/glocalfileoutputstream.c:340
+#: gio/glocalfileinputstream.c:194 gio/glocalfileoutputstream.c:353
+#: gio/glocalfileoutputstream.c:447
#, c-format
msgid "Error closing file: %s"
msgstr "Грешка при затварÑне на файл: %s"
-#: ../gio/glocalfilemonitor.c:840
+#: gio/glocalfileinputstream.c:272 gio/glocalfileoutputstream.c:563
+#: gio/glocalfileoutputstream.c:1186
+#, c-format
+msgid "Error seeking in file: %s"
+msgstr "Грешка при Ñ‚ÑŠÑ€Ñене във файл: %s"
+
+#: gio/glocalfilemonitor.c:866
msgid "Unable to find default local file monitor type"
msgstr ""
"Стандартната функционалноÑÑ‚ за наблюдение на локални файлове не може да бъде "
"открита"
-#: ../gio/glocalfileoutputstream.c:194 ../gio/glocalfileoutputstream.c:226
-#: ../gio/glocalfileoutputstream.c:715
+#: gio/glocalfileoutputstream.c:220 gio/glocalfileoutputstream.c:298
+#: gio/glocalfileoutputstream.c:334 gio/glocalfileoutputstream.c:822
#, c-format
msgid "Error writing to file: %s"
msgstr "Грешка при Ð·Ð°Ð¿Ð¸Ñ Ð²ÑŠÐ² файл: %s"
-#: ../gio/glocalfileoutputstream.c:273
+#: gio/glocalfileoutputstream.c:380
#, c-format
msgid "Error removing old backup link: %s"
msgstr "Грешка при премахване на Ñтара, резервна връзка: %s"
-#: ../gio/glocalfileoutputstream.c:287 ../gio/glocalfileoutputstream.c:300
+#: gio/glocalfileoutputstream.c:394 gio/glocalfileoutputstream.c:407
#, c-format
msgid "Error creating backup copy: %s"
msgstr "Грешка при Ñъздаване на резервно копие: %s"
-#: ../gio/glocalfileoutputstream.c:318
+#: gio/glocalfileoutputstream.c:425
#, c-format
msgid "Error renaming temporary file: %s"
msgstr "Грешка при преименуване на временен файл: %s"
-#: ../gio/glocalfileoutputstream.c:502 ../gio/glocalfileoutputstream.c:1053
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "Грешка при Ñъкращаване на файл: %s"
-#: ../gio/glocalfileoutputstream.c:555 ../gio/glocalfileoutputstream.c:785
-#: ../gio/glocalfileoutputstream.c:1034 ../gio/gsubprocess.c:360
+#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
-msgid "Error opening file '%s': %s"
+msgid "Error opening file “%sâ€: %s"
msgstr "Грешка при отварÑне на файла „%s“: %s"
-#: ../gio/glocalfileoutputstream.c:816
+#: gio/glocalfileoutputstream.c:957
msgid "Target file is a directory"
msgstr "ЦелевиÑÑ‚ файл е папка"
-#: ../gio/glocalfileoutputstream.c:821
+#: gio/glocalfileoutputstream.c:971
msgid "Target file is not a regular file"
msgstr "ЦелевиÑÑ‚ файл не е обикновен файл"
-#: ../gio/glocalfileoutputstream.c:833
+#: gio/glocalfileoutputstream.c:1013
msgid "The file was externally modified"
msgstr "Файлът бе променен от външно приложение"
-#: ../gio/glocalfileoutputstream.c:1018
+#: gio/glocalfileoutputstream.c:1202
#, c-format
msgid "Error removing old file: %s"
msgstr "Грешка при изтриване на Ñтар файл: %s"
-#: ../gio/gmemoryinputstream.c:471 ../gio/gmemoryoutputstream.c:771
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
-msgstr "Зададен е неправилен GSeekType"
+msgstr "Зададен е неправилен „GSeekType“"
-#: ../gio/gmemoryinputstream.c:481
+#: gio/gmemoryinputstream.c:484
msgid "Invalid seek request"
msgstr "Ðеправилна заÑвка за Ñ‚ÑŠÑ€Ñене"
-#: ../gio/gmemoryinputstream.c:505
+#: gio/gmemoryinputstream.c:508
msgid "Cannot truncate GMemoryInputStream"
-msgstr "GMemoryInputStream не може да Ñе Ñъкрати"
+msgstr "„GMemoryInputStream“ не може да Ñе Ñъкрати"
-#: ../gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "ИзходÑщиÑÑ‚ поток в паметта не може да бъде преоразмерен"
-#: ../gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "ÐеуÑпешно преоразмерÑване на изходÑÑ‰Ð¸Ñ Ð¿Ð¾Ñ‚Ð¾Ðº в паметта"
-#: ../gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -2226,138 +3418,161 @@ msgstr ""
"КоличеÑтвото памет, необходимо за обработката на запиÑа, е по-голÑмо от "
"наличното адреÑно проÑтранÑтво."
-#: ../gio/gmemoryoutputstream.c:781
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "ЗаÑвеното Ñ‚ÑŠÑ€Ñене е преди началото на потока"
-#: ../gio/gmemoryoutputstream.c:796
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "ЗаÑвеното Ñ‚ÑŠÑ€Ñене е Ñлед ÐºÑ€Ð°Ñ Ð½Ð° потока"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement unmount.
-#: ../gio/gmount.c:393
-msgid "mount doesn't implement \"unmount\""
+#: gio/gmount.c:399
+msgid "mount doesn’t implement “unmountâ€"
msgstr "монтираниÑÑ‚ обект не поддържа демонтиране"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement eject.
-#: ../gio/gmount.c:469
-msgid "mount doesn't implement \"eject\""
+#: gio/gmount.c:475
+msgid "mount doesn’t implement “ejectâ€"
msgstr "монтираниÑÑ‚ обект не поддържа изваждане"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement any of unmount or unmount_with_operation.
-#: ../gio/gmount.c:547
-msgid "mount doesn't implement \"unmount\" or \"unmount_with_operation\""
+#: gio/gmount.c:553
+msgid "mount doesn’t implement “unmount†or “unmount_with_operationâ€"
msgstr ""
"монтираниÑÑ‚ обект не поддържа нито демонтиране, нито демонтиране Ñ Ð´ÐµÐ¹Ñтвие"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement any of eject or eject_with_operation.
-#: ../gio/gmount.c:632
-msgid "mount doesn't implement \"eject\" or \"eject_with_operation\""
+#: gio/gmount.c:638
+msgid "mount doesn’t implement “eject†or “eject_with_operationâ€"
msgstr ""
"монтираниÑÑ‚ обект не поддържа нито изваждане, нито изваждане Ñ Ð´ÐµÐ¹Ñтвие"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement remount.
-#: ../gio/gmount.c:720
-msgid "mount doesn't implement \"remount\""
+#: gio/gmount.c:726
+msgid "mount doesn’t implement “remountâ€"
msgstr "монтираниÑÑ‚ обект не поддържа повторно монтиране"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement content type guessing.
-#: ../gio/gmount.c:802
-msgid "mount doesn't implement content type guessing"
+#: gio/gmount.c:808
+msgid "mount doesn’t implement content type guessing"
msgstr "монтираниÑÑ‚ обект не поддържа откриване на вида"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement content type guessing.
-#: ../gio/gmount.c:889
-msgid "mount doesn't implement synchronous content type guessing"
+#: gio/gmount.c:895
+msgid "mount doesn’t implement synchronous content type guessing"
msgstr "монтираниÑÑ‚ обект не поддържа Ñинхронно откриване на вида"
-#: ../gio/gnetworkaddress.c:378
+#: gio/gnetworkaddress.c:415
#, c-format
-msgid "Hostname '%s' contains '[' but not ']'"
+msgid "Hostname “%s†contains “[†but not “]â€"
msgstr "Името на хоÑта „%s“ Ñъдържа „[“, но липÑва „]“"
-#: ../gio/gnetworkmonitorbase.c:206 ../gio/gnetworkmonitorbase.c:309
+#: gio/gnetworkmonitorbase.c:219 gio/gnetworkmonitorbase.c:323
msgid "Network unreachable"
msgstr "Мрежата е недоÑтъпна"
-#: ../gio/gnetworkmonitorbase.c:244 ../gio/gnetworkmonitorbase.c:274
+#: gio/gnetworkmonitorbase.c:257 gio/gnetworkmonitorbase.c:287
msgid "Host unreachable"
msgstr "ХоÑÑ‚ÑŠÑ‚ е недоÑтъпен"
-#: ../gio/gnetworkmonitornetlink.c:96 ../gio/gnetworkmonitornetlink.c:108
-#: ../gio/gnetworkmonitornetlink.c:127
+#: gio/gnetworkmonitornetlink.c:99 gio/gnetworkmonitornetlink.c:111
+#: gio/gnetworkmonitornetlink.c:130
#, c-format
msgid "Could not create network monitor: %s"
msgstr "СъÑтоÑнието на мрежата не може да бъде наблюдавано: %s"
-#: ../gio/gnetworkmonitornetlink.c:117
+#: gio/gnetworkmonitornetlink.c:120
msgid "Could not create network monitor: "
msgstr "СъÑтоÑнието на мрежата не може да бъде наблюдавано: "
-#: ../gio/gnetworkmonitornetlink.c:175
+#: gio/gnetworkmonitornetlink.c:183
msgid "Could not get network status: "
msgstr "СъÑтоÑнието на мрежата не може да бъде получено: "
-#: ../gio/gnetworkmonitornm.c:326
+#: gio/gnetworkmonitornm.c:311
+#, c-format
+msgid "NetworkManager not running"
+msgstr "„NetworkManager“ не работи"
+
+#: gio/gnetworkmonitornm.c:322
#, c-format
msgid "NetworkManager version too old"
msgstr "Прекалено Ñтара верÑÐ¸Ñ Ð½Ð° „NetworkManager“"
-#: ../gio/goutputstream.c:212 ../gio/goutputstream.c:560
-msgid "Output stream doesn't implement write"
+#: gio/goutputstream.c:232 gio/goutputstream.c:775
+msgid "Output stream doesn’t implement write"
msgstr "ИзходниÑÑ‚ поток не поддържа запиÑ"
-#: ../gio/goutputstream.c:521 ../gio/goutputstream.c:1222
+#: gio/goutputstream.c:472 gio/goutputstream.c:1533
+#, c-format
+msgid "Sum of vectors passed to %s too large"
+msgstr "Сумата на векторите подадена на „%s“ е прекалено голÑма"
+
+#: gio/goutputstream.c:736 gio/goutputstream.c:1761
msgid "Source stream is already closed"
msgstr "ИзходниÑÑ‚ поток вече е затворен"
-#: ../gio/gresolver.c:330 ../gio/gthreadedresolver.c:116
-#: ../gio/gthreadedresolver.c:126
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
-msgid "Error resolving '%s': %s"
+msgid "Error resolving “%sâ€: %s"
msgstr "Грешка при откриване по Ð°Ð´Ñ€ÐµÑ Ð½Ð° „%s“: %s"
-#: ../gio/gresource.c:304 ../gio/gresource.c:555 ../gio/gresource.c:572
-#: ../gio/gresource.c:693 ../gio/gresource.c:762 ../gio/gresource.c:823
-#: ../gio/gresource.c:903 ../gio/gresourcefile.c:453 ../gio/gresourcefile.c:576
-#: ../gio/gresourcefile.c:713
+#. Translators: The placeholder is for a function name.
+#: gio/gresolver.c:470 gio/gresolver.c:630
+#, c-format
+msgid "%s not implemented"
+msgstr "нÑма Ñ€ÐµÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð½Ð° „%s“"
+
+#: gio/gresolver.c:999 gio/gresolver.c:1051
+msgid "Invalid domain"
+msgstr "Ðеправилен домейн"
+
+#: gio/gresource.c:681 gio/gresource.c:943 gio/gresource.c:983
+#: gio/gresource.c:1107 gio/gresource.c:1179 gio/gresource.c:1253
+#: gio/gresource.c:1334 gio/gresourcefile.c:476 gio/gresourcefile.c:599
+#: gio/gresourcefile.c:736
#, c-format
-msgid "The resource at '%s' does not exist"
-msgstr "РеÑурÑÑŠÑ‚ „%s“ липÑва"
+msgid "The resource at “%s†does not exist"
+msgstr "РеÑурÑÑŠÑ‚ при „%s“ не ÑъщеÑтвува"
-#: ../gio/gresource.c:469
+#: gio/gresource.c:848
#, c-format
-msgid "The resource at '%s' failed to decompress"
-msgstr "РеÑурÑÑŠÑ‚ „%s“ не може да Ñе декомпреÑира"
+msgid "The resource at “%s†failed to decompress"
+msgstr "РеÑурÑÑŠÑ‚ при „%s“ не може да Ñе декомпреÑира"
-#: ../gio/gresourcefile.c:709
+#: gio/gresourcefile.c:732
#, c-format
-msgid "The resource at '%s' is not a directory"
-msgstr "РеÑурÑÑŠÑ‚ „%s“ не е папка"
+msgid "The resource at “%s†is not a directory"
+msgstr "РеÑурÑÑŠÑ‚ при „%s“ не е папка"
-#: ../gio/gresourcefile.c:917
-msgid "Input stream doesn't implement seek"
+#: gio/gresourcefile.c:940
+msgid "Input stream doesn’t implement seek"
msgstr "ВходниÑÑ‚ поток не поддържа Ñ‚ÑŠÑ€Ñене"
-#: ../gio/gresource-tool.c:494
+#: gio/gresource-tool.c:500
msgid "List sections containing resources in an elf FILE"
msgstr "ИзброÑване на разделите Ñ Ñ€ÐµÑурÑи във ФÐЙЛа във формат elf"
-#: ../gio/gresource-tool.c:500
+#: gio/gresource-tool.c:506
msgid ""
"List resources\n"
"If SECTION is given, only list resources in this section\n"
@@ -2367,16 +3582,15 @@ msgstr ""
"Ðко е даден РÐЗДЕЛ, Ñе изброÑват Ñамо реÑурÑите в него\n"
"Ðко е даден ПЪТ, Ñе изброÑват Ñамо Ñъвпадащите реÑурÑи"
-#: ../gio/gresource-tool.c:503 ../gio/gresource-tool.c:513
+#: gio/gresource-tool.c:509 gio/gresource-tool.c:519
msgid "FILE [PATH]"
msgstr "ФÐЙЛ [ПЪТ]"
-#: ../gio/gresource-tool.c:504 ../gio/gresource-tool.c:514
-#: ../gio/gresource-tool.c:521
+#: gio/gresource-tool.c:510 gio/gresource-tool.c:520 gio/gresource-tool.c:527
msgid "SECTION"
msgstr "РÐЗДЕЛ"
-#: ../gio/gresource-tool.c:509
+#: gio/gresource-tool.c:515
msgid ""
"List resources with details\n"
"If SECTION is given, only list resources in this section\n"
@@ -2388,18 +3602,18 @@ msgstr ""
"Ðко е даден ПЪТ, Ñе изброÑват Ñамо Ñъвпадащите реÑурÑи\n"
"ПодробноÑтите включват раздел, размер и компреÑиÑ"
-#: ../gio/gresource-tool.c:519
+#: gio/gresource-tool.c:525
msgid "Extract a resource file to stdout"
msgstr "Разархивиране на реÑÑƒÑ€Ñ ÐºÑŠÐ¼ ÑÑ‚Ð°Ð½Ð´Ð°Ñ€Ñ‚Ð½Ð¸Ñ Ð¸Ð·Ñ…Ð¾Ð´"
-#: ../gio/gresource-tool.c:520
+#: gio/gresource-tool.c:526
msgid "FILE PATH"
msgstr "ПЪТ ДО ФÐЙЛ"
-#: ../gio/gresource-tool.c:534
+#: gio/gresource-tool.c:540
msgid ""
"Usage:\n"
-" gresource [--section SECTION] COMMAND [ARGS...]\n"
+" gresource [--section SECTION] COMMAND [ARGS…]\n"
"\n"
"Commands:\n"
" help Show this information\n"
@@ -2408,11 +3622,11 @@ msgid ""
" details List resources with details\n"
" extract Extract a resource\n"
"\n"
-"Use 'gresource help COMMAND' to get detailed help.\n"
+"Use “gresource help COMMAND†to get detailed help.\n"
"\n"
msgstr ""
"Употреба:\n"
-" gresource [--section РÐЗДЕЛ] КОМÐÐДР[ÐРГУМЕÐТИ…]\n"
+" gresource [--section РÐЗДЕЛ] КОМÐÐДР[ÐРГУМЕÐТ…]\n"
"\n"
"Команда:\n"
" help Тази информациÑ\n"
@@ -2421,10 +3635,10 @@ msgstr ""
" details Подробен ÑпиÑък Ñ Ñ€ÐµÑурÑи\n"
" extract Разархивиране на реÑурÑ\n"
"\n"
-"За подробна Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ñтартирайте „gresource help КОМÐÐДГ\n"
+"За подробна Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¸Ð·Ð¿ÑŠÐ»Ð½ÐµÑ‚Ðµ „gresource help КОМÐÐДГ\n"
"\n"
-#: ../gio/gresource-tool.c:548
+#: gio/gresource-tool.c:554
#, c-format
msgid ""
"Usage:\n"
@@ -2439,19 +3653,19 @@ msgstr ""
"%s\n"
"\n"
-#: ../gio/gresource-tool.c:555
+#: gio/gresource-tool.c:561
msgid " SECTION An (optional) elf section name\n"
msgstr " РÐЗДЕЛ (Ðезадължително) име на раздел в elf\n"
-#: ../gio/gresource-tool.c:559 ../gio/gsettings-tool.c:639
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " КОМÐÐДРПомощ за командата или обща помощ, ако не е указано име\n"
-#: ../gio/gresource-tool.c:565
+#: gio/gresource-tool.c:571
msgid " FILE An elf file (a binary or a shared library)\n"
msgstr " ФÐЙЛ Файл във формат elf (изпълним или Ñподелена библиотека)\n"
-#: ../gio/gresource-tool.c:568
+#: gio/gresource-tool.c:574
msgid ""
" FILE An elf file (a binary or a shared library)\n"
" or a compiled resource file\n"
@@ -2459,90 +3673,82 @@ msgstr ""
" ФÐЙЛ Файл във формат elf (изпълним или Ñподелена библиотека)\n"
" или компилиран файл Ñ Ñ€ÐµÑурÑи\n"
-#: ../gio/gresource-tool.c:572
+#: gio/gresource-tool.c:578
msgid "[PATH]"
msgstr "[ПЪТ]"
-#: ../gio/gresource-tool.c:574
+#: gio/gresource-tool.c:580
msgid " PATH An (optional) resource path (may be partial)\n"
msgstr " ПЪТ (Ðезадължителен) (непълен) път до реÑурÑ\n"
-#: ../gio/gresource-tool.c:575
+#: gio/gresource-tool.c:581
msgid "PATH"
msgstr "ПЪТ"
-#: ../gio/gresource-tool.c:577
+#: gio/gresource-tool.c:583
msgid " PATH A resource path\n"
msgstr " ПЪТ Път до реÑурÑ\n"
-#: ../gio/gsettings-tool.c:51 ../gio/gsettings-tool.c:72
-#: ../gio/gsettings-tool.c:824
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
-msgid "No such schema '%s'\n"
+msgid "No such schema “%sâ€\n"
msgstr "ЛипÑва Ñхема „%s“\n"
-#: ../gio/gsettings-tool.c:57
+#: gio/gsettings-tool.c:55
#, c-format
-msgid "Schema '%s' is not relocatable (path must not be specified)\n"
+msgid "Schema “%s†is not relocatable (path must not be specified)\n"
msgstr "Схемата „%s“ не може да Ñе меÑти (не Ñ‚Ñ€Ñбва да указвате път)\n"
-#: ../gio/gsettings-tool.c:78
+#: gio/gsettings-tool.c:76
#, c-format
-msgid "Schema '%s' is relocatable (path must be specified)\n"
+msgid "Schema “%s†is relocatable (path must be specified)\n"
msgstr "Схемата „%s“ може да Ñе меÑти (Ñ‚Ñ€Ñбва да укажете път)\n"
-#: ../gio/gsettings-tool.c:92
-#, c-format
+#: gio/gsettings-tool.c:90
msgid "Empty path given.\n"
msgstr "Даден е празен път.\n"
-#: ../gio/gsettings-tool.c:98
-#, c-format
+#: gio/gsettings-tool.c:96
msgid "Path must begin with a slash (/)\n"
msgstr "ПътÑÑ‚ Ñ‚Ñ€Ñбва да започва Ñ Ð½Ð°ÐºÐ»Ð¾Ð½ÐµÐ½Ð° черта („/“)\n"
-#: ../gio/gsettings-tool.c:104
-#, c-format
+#: gio/gsettings-tool.c:102
msgid "Path must end with a slash (/)\n"
msgstr "ПътÑÑ‚ Ñ‚Ñ€Ñбва да завършва Ñ Ð½Ð°ÐºÐ»Ð¾Ð½ÐµÐ½Ð° черта („/“)\n"
-#: ../gio/gsettings-tool.c:110
-#, c-format
+#: gio/gsettings-tool.c:108
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "ПътÑÑ‚ не Ñ‚Ñ€Ñбва да Ñъдържа две поÑледователни наклонени черти („//“)\n"
-#: ../gio/gsettings-tool.c:481
-#, c-format
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "СтойноÑтта е извън интервала на допуÑтимите ÑтойноÑти\n"
-#: ../gio/gsettings-tool.c:488
-#, c-format
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "Ключът не поддържа запиÑ\n"
-#: ../gio/gsettings-tool.c:524
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Извеждане на инÑталираните Ñхеми (които не Ñе меÑÑ‚ÑÑ‚)"
-#: ../gio/gsettings-tool.c:530
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
-msgstr "Извеждане на инÑталираните Ñхеми, които могат да Ñе меÑÑ‚ÑÑ‚"
+msgstr "Извеждане на инÑталираните Ñхеми, които може да Ñе меÑÑ‚ÑÑ‚"
-#: ../gio/gsettings-tool.c:536
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Извеждане на ключовете в СХЕМÐта"
-#: ../gio/gsettings-tool.c:537 ../gio/gsettings-tool.c:543
-#: ../gio/gsettings-tool.c:580
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "СХЕМÐ[:ПЪТ]"
-#: ../gio/gsettings-tool.c:542
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Извеждане на наÑледниците на СХЕМÐта"
-#: ../gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -2550,44 +3756,48 @@ msgstr ""
"РекурÑивно извеждане на ключовете и ÑтойноÑтите им.\n"
"Ðко липÑва СХЕМÐ, Ñе извеждат вÑички ключове\n"
-#: ../gio/gsettings-tool.c:550
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[СХЕМÐ[:ПЪТ]]"
-#: ../gio/gsettings-tool.c:555
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Получаване на ÑтойноÑтта на КЛЮЧ"
-#: ../gio/gsettings-tool.c:556 ../gio/gsettings-tool.c:562
-#: ../gio/gsettings-tool.c:574 ../gio/gsettings-tool.c:586
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "СХЕМÐ[:ПЪТ] КЛЮЧ"
-#: ../gio/gsettings-tool.c:561
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Запитване за интервала от допуÑтими ÑтойноÑти за КЛЮЧа"
-#: ../gio/gsettings-tool.c:567
+#: gio/gsettings-tool.c:639
+msgid "Query the description for KEY"
+msgstr "Запитване на опиÑанието за КЛЮЧа"
+
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Задаване на СТОЙÐОСТта на КЛЮЧ"
-#: ../gio/gsettings-tool.c:568
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "СХЕМÐ[:ПЪТ] КЛЮЧ СТОЙÐОСТ"
-#: ../gio/gsettings-tool.c:573
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Връщане на Ñтандартната ÑтойноÑÑ‚ на КЛЮЧ"
-#: ../gio/gsettings-tool.c:579
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Връщане на Ñтандартната ÑтойноÑÑ‚ на вÑички ключове в СХЕМÐта"
-#: ../gio/gsettings-tool.c:585
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Проверка дали ÑтойноÑтта на КЛЮЧ може да Ñе променÑ"
-#: ../gio/gsettings-tool.c:591
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -2597,15 +3807,15 @@ msgstr ""
"Ðко не е указан определен КЛЮЧ, Ñе ÑледÑÑ‚ вÑички във СХЕМÐта.\n"
"Ðаблюдението Ñе Ñпира Ñ â€ž^C“.\n"
-#: ../gio/gsettings-tool.c:594
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "СХЕМÐ[:ПЪТ] [КЛЮЧ]"
-#: ../gio/gsettings-tool.c:606
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
-" gsettings [--schemadir SCHEMADIR] COMMAND [ARGS...]\n"
+" gsettings [--schemadir SCHEMADIR] COMMAND [ARGS…]\n"
"\n"
"Commands:\n"
" help Show this information\n"
@@ -2615,6 +3825,7 @@ msgid ""
" list-children List children of a schema\n"
" list-recursively List keys and values, recursively\n"
" range Queries the range of a key\n"
+" describe Queries the description of a key\n"
" get Get the value of a key\n"
" set Set the value of a key\n"
" reset Reset the value of a key\n"
@@ -2622,21 +3833,22 @@ msgid ""
" writable Check if a key is writable\n"
" monitor Watch for changes\n"
"\n"
-"Use 'gsettings help COMMAND' to get detailed help.\n"
+"Use “gsettings help COMMAND†to get detailed help.\n"
"\n"
msgstr ""
"Употреба:\n"
+" gsettings --version\n"
" gsettings [--schemadir ПÐПКÐ_ÐÐ_СХЕМÐ] КОМÐÐДР[ÐРГУМЕÐТИ…]\n"
"\n"
"Команди:\n"
" help Показване на този текÑÑ‚\n"
" list-schemas Извеждане на инÑталираните Ñхеми\n"
-" list-relocatable-schemas Извеждане на Ñхемите, които могат да Ñе меÑÑ‚ÑÑ‚\n"
+" list-relocatable-schemas Извеждане на Ñхемите, които може да Ñе меÑÑ‚ÑÑ‚\n"
" list-keys Извеждане на ключовете в Ñхема\n"
" list-children Извеждане на наÑледниците на Ñхема\n"
" list-recursively РекурÑивно извеждане на ключовете и ÑтойноÑтите "
"им\n"
-" range Какъв е интервала от допуÑтими ÑтойноÑти за "
+" range Какъв е интервалът от допуÑтими ÑтойноÑти за "
"ключ\n"
" get Получаване на ÑтойноÑтта на даден ключ\n"
" set ПромÑна на ÑтойноÑтта на даден ключ\n"
@@ -2649,7 +3861,7 @@ msgstr ""
"Използвайте „gsettings help КОМÐÐДГ за допълнителна информациÑ.\n"
"\n"
-#: ../gio/gsettings-tool.c:629
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -2664,258 +3876,294 @@ msgstr ""
"%s\n"
"\n"
-#: ../gio/gsettings-tool.c:635
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " ПÐПКÐ_ÐÐ_СХЕМРПапка, в коÑто да Ñе Ñ‚ÑŠÑ€ÑÑÑ‚ допълнителни Ñхеми\n"
-#: ../gio/gsettings-tool.c:643
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
msgstr ""
"Ðргументи:\n"
" СХЕМРИмето на Ñхемата\n"
-" ПЪТ Път (за Ñхеми, които могат да Ñе меÑÑ‚ÑÑ‚)\n"
+" ПЪТ Път (за Ñхеми, които може да Ñе меÑÑ‚ÑÑ‚)\n"
-#: ../gio/gsettings-tool.c:648
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " КЛЮЧ Ключ в Ñхемата (незадължителен)\n"
-#: ../gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " КЛЮЧ Ключ в Ñхемата\n"
-#: ../gio/gsettings-tool.c:656
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " СТОЙÐОСТ СтойноÑÑ‚, коÑто да бъде зададена\n"
-#: ../gio/gsettings-tool.c:712
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
-msgstr "Схеми от „%s“ не могат да Ñе заредÑÑ‚: %s\n"
+msgstr "Схеми от „%s“ не може да Ñе заредÑÑ‚: %s\n"
-#: ../gio/gsettings-tool.c:782
-#, c-format
+#: gio/gsettings-tool.c:802
+msgid "No schemas installed\n"
+msgstr "Ðе Ñа открити Ñхеми\n"
+
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Подадено е празно име за Ñхема\n"
-#: ../gio/gsettings-tool.c:837
+#: gio/gsettings-tool.c:936
#, c-format
-msgid "No such key '%s'\n"
+msgid "No such key “%sâ€\n"
msgstr "ЛипÑва ключ „%s“\n"
-#: ../gio/gsocket.c:364
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Ðеправилно гнездо, не е инициализирано"
-#: ../gio/gsocket.c:371
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Ðеправилно гнездо, неуÑпешна Ð¸Ð½Ð¸Ñ†Ð¸Ð°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð¿Ð¾Ð½ÐµÐ¶Ðµ: %s"
-#: ../gio/gsocket.c:379
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Гнездото вече е затворено"
-#: ../gio/gsocket.c:394 ../gio/gsocket.c:2751 ../gio/gsocket.c:3896
-#: ../gio/gsocket.c:3951
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "ПроÑрочено време за отговор при входни-изходна Ð¾Ð¿ÐµÑ€Ð°Ñ†Ð¸Ñ Ñ Ð³Ð½ÐµÐ·Ð´Ð¾Ñ‚Ð¾"
-#: ../gio/gsocket.c:526
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
-msgstr "Ñъздаване на GSocket от файлов деÑкриптор: %s"
+msgstr "Ñъздаване на „GSocket“ от файлов деÑкриптор: %s"
-#: ../gio/gsocket.c:554 ../gio/gsocket.c:608 ../gio/gsocket.c:615
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "ÐеуÑпешно Ñъздаване на гнездо: %s"
-#: ../gio/gsocket.c:608
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Указан е непознат вид верÑÐ¸Ñ Ð½Ð° протокол"
-#: ../gio/gsocket.c:615
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Указан е непознат протокол"
-#: ../gio/gsocket.c:1104
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr ""
"Ðе може да Ñе използват операции за дейтаграми върху гнезда, които не Ñа за "
"дейтаграми."
-#: ../gio/gsocket.c:1121
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Ðе може да Ñе използват операции за дейтаграми върху гнезда без зададено "
"макÑимално време за операциÑта."
-#: ../gio/gsocket.c:1925
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "локалниÑÑ‚ Ð°Ð´Ñ€ÐµÑ Ð½Ðµ може да бъде получен :%s"
-#: ../gio/gsocket.c:1968
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "отдалечениÑÑ‚ Ð°Ð´Ñ€ÐµÑ Ð½Ðµ може да бъде получен :%s"
-#: ../gio/gsocket.c:2034
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "не може да Ñе Ñлуша: %s"
-#: ../gio/gsocket.c:2133
+#: gio/gsocket.c:2213
#, c-format
-msgid "Error binding to address: %s"
-msgstr "Грешка при Ñвързване към адреÑ: %s"
+msgid "Error binding to address %s: %s"
+msgstr "Грешка при Ñвързване към Ð°Ð´Ñ€ÐµÑ %s: %s"
-#: ../gio/gsocket.c:2248 ../gio/gsocket.c:2285
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Грешка при включване към група за разпръÑкване: %s"
-#: ../gio/gsocket.c:2249 ../gio/gsocket.c:2286
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Грешка при напуÑкане на група за разпръÑкване: %s"
-#: ../gio/gsocket.c:2250
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "ЛипÑва поддръжка за наÑочено разпръÑкване"
-#: ../gio/gsocket.c:2470
+#: gio/gsocket.c:2538
+msgid "Unsupported socket family"
+msgstr "Ðеподдържана Ñ„Ð°Ð¼Ð¸Ð»Ð¸Ñ Ð³Ð½ÐµÐ·Ð´Ð¾"
+
+#: gio/gsocket.c:2563
+msgid "source-specific not an IPv4 address"
+msgstr "наÑочено разпръÑкване не към Ð°Ð´Ñ€ÐµÑ Ð¿Ð¾ IPv4"
+
+#: gio/gsocket.c:2587
+#, c-format
+msgid "Interface name too long"
+msgstr "Името на интерфейÑа е твърде дълго"
+
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
+#, c-format
+msgid "Interface not found: %s"
+msgstr "ИнтерфейÑÑŠÑ‚ липÑва: %s"
+
+#: gio/gsocket.c:2626
+msgid "No support for IPv4 source-specific multicast"
+msgstr "ЛипÑва поддръжка за наÑочено разпръÑкване по IPv4"
+
+#: gio/gsocket.c:2684
+msgid "No support for IPv6 source-specific multicast"
+msgstr "ЛипÑва поддръжка за наÑочено разпръÑкване по IPv6"
+
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Грешка при приемане на връзка: %s"
-#: ../gio/gsocket.c:2593
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Ð’ момента Ñе оÑъщеÑтвÑва връзка"
-#: ../gio/gsocket.c:2644
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "ÐеуÑпешно получаване на текущата грешка: "
-#: ../gio/gsocket.c:2816
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Грешка при получаване на данни: %s"
-#: ../gio/gsocket.c:3013
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Грешка при изпращане на данни: %s"
-#: ../gio/gsocket.c:3200
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "ÐеуÑпешно изключване на гнездо: %s"
-#: ../gio/gsocket.c:3281
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Грешка при затварÑне на гнездо: %s"
-#: ../gio/gsocket.c:3889
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Изчакване за ÑÑŠÑтоÑние на гнездо: %s"
-#: ../gio/gsocket.c:4361 ../gio/gsocket.c:4441 ../gio/gsocket.c:4619
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
+#, c-format
+msgid "Unable to send message: %s"
+msgstr "ÐеуÑпешно изпращане на Ñъобщение: %s"
+
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
+msgid "Message vectors too large"
+msgstr "Векторите на Ñъобщението Ñа прекалено дълги"
+
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Грешка при изпращане на Ñъобщение: %s"
-#: ../gio/gsocket.c:4385
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
-msgstr "GSocketControlMessage не Ñе поддържа под Windows"
+msgstr "„GSocketControlMessage“ не Ñе поддържа под Windows"
-#: ../gio/gsocket.c:4840 ../gio/gsocket.c:4913 ../gio/gsocket.c:5140
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Грешка при изпращане на Ñъобщение: %s"
-#: ../gio/gsocket.c:5412
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "ÐеуÑпешно изчитане на правата на гнездо: %s"
-#: ../gio/gsocket.c:5421
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
-msgstr "g_socket_get_credentials не е реализирана на тази операционна ÑиÑтема"
+msgstr ""
+"„g_socket_get_credentials“ не е реализирана на тази операционна ÑиÑтема"
-#: ../gio/gsocketclient.c:176
+#: gio/gsocketclient.c:191
#, c-format
msgid "Could not connect to proxy server %s: "
msgstr "ÐеуÑпешно Ñвързване към Ñървъра-поÑредник %s: "
-#: ../gio/gsocketclient.c:190
+#: gio/gsocketclient.c:205
#, c-format
msgid "Could not connect to %s: "
msgstr "ÐеуÑпешно Ñвързване към „%s“: "
-#: ../gio/gsocketclient.c:192
+#: gio/gsocketclient.c:207
msgid "Could not connect: "
msgstr "ÐеуÑпешно Ñвързване: "
-#: ../gio/gsocketclient.c:1027 ../gio/gsocketclient.c:1599
-msgid "Unknown error on connect"
-msgstr "Ðепозната грешка при Ñвързване"
-
-#: ../gio/gsocketclient.c:1081 ../gio/gsocketclient.c:1535
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "Ðе Ñе поддържа поÑредничеÑтво на връзки извън TCP."
-#: ../gio/gsocketclient.c:1110 ../gio/gsocketclient.c:1561
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
-msgid "Proxy protocol '%s' is not supported."
+msgid "Proxy protocol “%s†is not supported."
msgstr "Протоколът за поÑредничеÑтво „%s“ не Ñе поддържа."
-#: ../gio/gsocketlistener.c:218
+#: gio/gsocketlistener.c:230
msgid "Listener is already closed"
msgstr "ФункциÑта за Ñлушане вече е затворена"
-#: ../gio/gsocketlistener.c:264
+#: gio/gsocketlistener.c:276
msgid "Added socket is closed"
msgstr "Добавеното гнездо е затворено"
-#: ../gio/gsocks4aproxy.c:118
+#: gio/gsocks4aproxy.c:118
#, c-format
-msgid "SOCKSv4 does not support IPv6 address '%s'"
+msgid "SOCKSv4 does not support IPv6 address “%sâ€"
msgstr "SOCKSv4 не поддържа адреÑа IPv6 „%s“"
-#: ../gio/gsocks4aproxy.c:136
+#: gio/gsocks4aproxy.c:136
msgid "Username is too long for SOCKSv4 protocol"
msgstr "ПотребителÑкото име е твърде дълго за протокола SOCKSv4"
-#: ../gio/gsocks4aproxy.c:153
+#: gio/gsocks4aproxy.c:153
#, c-format
-msgid "Hostname '%s' is too long for SOCKSv4 protocol"
+msgid "Hostname “%s†is too long for SOCKSv4 protocol"
msgstr "Името на хоÑта „%s“ е твърде дълго за протокола SOCKSv4"
-#: ../gio/gsocks4aproxy.c:179
+#: gio/gsocks4aproxy.c:179
msgid "The server is not a SOCKSv4 proxy server."
-msgstr "Този Ñървър не предоÑÑ‚Ð°Ð²Ñ Ð¿Ð¾ÑредничеÑтво чрез SOCKSv4."
+msgstr "Този Ñървър не е поÑредник чрез SOCKSv4."
-#: ../gio/gsocks4aproxy.c:186
+#: gio/gsocks4aproxy.c:186
msgid "Connection through SOCKSv4 server was rejected"
msgstr "Връзката през Ñървъра SOCKSv4 беше отхвърлена"
-#: ../gio/gsocks5proxy.c:153 ../gio/gsocks5proxy.c:324
-#: ../gio/gsocks5proxy.c:334
+#: gio/gsocks5proxy.c:153 gio/gsocks5proxy.c:338 gio/gsocks5proxy.c:348
msgid "The server is not a SOCKSv5 proxy server."
-msgstr "Този Ñървър не предоÑÑ‚Ð°Ð²Ñ Ð¿Ð¾ÑредничеÑтво чрез SOCKSv5."
+msgstr "Този Ñървър не поÑредничи чрез SOCKSv5."
-#: ../gio/gsocks5proxy.c:167
+#: gio/gsocks5proxy.c:167 gio/gsocks5proxy.c:184
msgid "The SOCKSv5 proxy requires authentication."
msgstr "ПоÑредникът чрез SOCKSv5 изиÑква идентификациÑ."
-#: ../gio/gsocks5proxy.c:177
+#: gio/gsocks5proxy.c:191
msgid ""
"The SOCKSv5 proxy requires an authentication method that is not supported by "
"GLib."
@@ -2923,108 +4171,147 @@ msgstr ""
"ПоÑредникът чрез SOCKSv5 изиÑква механизъм за идентификациÑ, който не Ñе "
"поддържа от GLib."
-#: ../gio/gsocks5proxy.c:206
+#: gio/gsocks5proxy.c:220
msgid "Username or password is too long for SOCKSv5 protocol."
msgstr "ПотребителÑкото име или паролата Ñа твърде дълги за протокола SOCKSv5."
-#: ../gio/gsocks5proxy.c:236
+#: gio/gsocks5proxy.c:250
msgid "SOCKSv5 authentication failed due to wrong username or password."
msgstr ""
"Идентифицирането за SOCKSv4 не уÑÐ¿Ñ Ð¿Ð¾Ñ€Ð°Ð´Ð¸ грешно потребителÑко име или "
"парола."
-#: ../gio/gsocks5proxy.c:286
+#: gio/gsocks5proxy.c:300
#, c-format
-msgid "Hostname '%s' is too long for SOCKSv5 protocol"
-msgstr "Името на хоÑта „%s“ е твърде дълго за протокола SOCKSv5."
+msgid "Hostname “%s†is too long for SOCKSv5 protocol"
+msgstr "Името на хоÑта „%s“ е твърде дълго за протокола SOCKSv5"
-#: ../gio/gsocks5proxy.c:348
+#: gio/gsocks5proxy.c:362
msgid "The SOCKSv5 proxy server uses unknown address type."
-msgstr "Сървърът поÑредник за SOCKSv5 използва непознат вид адреÑ."
+msgstr "Сървърът-поÑредник за SOCKSv5 използва непознат вид адреÑ."
-#: ../gio/gsocks5proxy.c:355
+#: gio/gsocks5proxy.c:369
msgid "Internal SOCKSv5 proxy server error."
-msgstr "Вътрешна грешка на Ñървъра поÑредник за SOCKSv5."
+msgstr "Вътрешна грешка на Ñървъра-поÑредник за SOCKSv5."
-#: ../gio/gsocks5proxy.c:361
+#: gio/gsocks5proxy.c:375
msgid "SOCKSv5 connection not allowed by ruleset."
msgstr "Правилата не позволÑват Ñвързването по SOCKSv5."
-#: ../gio/gsocks5proxy.c:368
+#: gio/gsocks5proxy.c:382
msgid "Host unreachable through SOCKSv5 server."
msgstr "ХоÑÑ‚ÑŠÑ‚ не е доÑтъпен през Ñървъра за SOCKSv5."
-#: ../gio/gsocks5proxy.c:374
+#: gio/gsocks5proxy.c:388
msgid "Network unreachable through SOCKSv5 proxy."
-msgstr "Мрежата не е доÑтъпна през Ñървъра поÑредник за SOCKSv5."
+msgstr "Мрежата не е доÑтъпна през Ñървъра-поÑредник за SOCKSv5."
-#: ../gio/gsocks5proxy.c:380
+#: gio/gsocks5proxy.c:394
msgid "Connection refused through SOCKSv5 proxy."
-msgstr "Връзката Ñървъра поÑредник за SOCKSv5 е отказана."
+msgstr "Връзката през поÑредник за SOCKSv5 е отказана."
-#: ../gio/gsocks5proxy.c:386
-msgid "SOCKSv5 proxy does not support 'connect' command."
-msgstr "Сървърът поÑредник за SOCKSv5 не поддържа командата „connect“."
+#: gio/gsocks5proxy.c:400
+msgid "SOCKSv5 proxy does not support “connect†command."
+msgstr "Сървърът-поÑредник за SOCKSv5 не поддържа командата „connect“."
-#: ../gio/gsocks5proxy.c:392
+#: gio/gsocks5proxy.c:406
msgid "SOCKSv5 proxy does not support provided address type."
-msgstr "Сървърът поÑредник за SOCKSv5 не поддържа предоÑÑ‚Ð°Ð²ÐµÐ½Ð¸Ñ Ð²Ð¸Ð´ адреÑ."
+msgstr "Сървърът-поÑредник за SOCKSv5 не поддържа предоÑÑ‚Ð°Ð²ÐµÐ½Ð¸Ñ Ð²Ð¸Ð´ адреÑ."
-#: ../gio/gsocks5proxy.c:398
+#: gio/gsocks5proxy.c:412
msgid "Unknown SOCKSv5 proxy error."
-msgstr "ÐеизвеÑтна грешка ÑÑŠÑ Ñървъра поÑредник за SOCKSv5."
+msgstr "ÐеизвеÑтна грешка ÑÑŠÑ Ñървъра-поÑредник за SOCKSv5."
+
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
+#, c-format
+msgid "Failed to create pipe for communicating with child process (%s)"
+msgstr "ÐеуÑпешно Ñъздаване на канал за ÐºÐ¾Ð¼ÑƒÐ½Ð¸ÐºÐ°Ñ†Ð¸Ñ Ñ Ð´ÑŠÑ‰ÐµÑ€ÐµÐ½ Ð¿Ñ€Ð¾Ñ†ÐµÑ (%s)"
-#: ../gio/gthemedicon.c:518
+#: gio/gtestdbus.c:619
#, c-format
-msgid "Can't handle version %d of GThemedIcon encoding"
-msgstr "ВерÑÐ¸Ñ %d на кодирането GThemedIcon не Ñе поддържа"
+msgid "Pipes are not supported in this platform"
+msgstr "Тази платформа не поддържа програмни канали"
-#: ../gio/gthreadedresolver.c:118
+#: gio/gthemedicon.c:595
+#, c-format
+msgid "Can’t handle version %d of GThemedIcon encoding"
+msgstr "ВерÑÐ¸Ñ %d на кодирането „GThemedIcon“ не Ñе поддържа"
+
+#: gio/gthreadedresolver.c:152
msgid "No valid addresses were found"
msgstr "Ðе бÑха намерени валидни адреÑи"
-#: ../gio/gthreadedresolver.c:211
+#: gio/gthreadedresolver.c:337
#, c-format
-msgid "Error reverse-resolving '%s': %s"
+msgid "Error reverse-resolving “%sâ€: %s"
msgstr "Грешка при обратно откриване по Ð°Ð´Ñ€ÐµÑ Ð½Ð° „%s“: %s"
-#: ../gio/gthreadedresolver.c:546 ../gio/gthreadedresolver.c:626
-#: ../gio/gthreadedresolver.c:724 ../gio/gthreadedresolver.c:774
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr "Грешка при анализ на Ð·Ð°Ð¿Ð¸Ñ Ð¾Ñ‚ DNS — „%s“: неправилен пакет от DNS"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
-msgid "No DNS record of the requested type for '%s'"
+msgid "No DNS record of the requested type for “%sâ€"
msgstr "ÐÑма Ð·Ð°Ð¿Ð¸Ñ Ð² DNS от ÑƒÐºÐ°Ð·Ð°Ð½Ð¸Ñ Ð²Ð¸Ð´ за „%s“"
-#: ../gio/gthreadedresolver.c:551 ../gio/gthreadedresolver.c:729
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
-msgid "Temporarily unable to resolve '%s'"
+msgid "Temporarily unable to resolve “%sâ€"
msgstr "Временно е невъзможно „%s“ да бъде открит по адреÑ"
-#: ../gio/gthreadedresolver.c:556 ../gio/gthreadedresolver.c:734
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
-msgid "Error resolving '%s'"
-msgstr "Грешка при откриване по Ð°Ð´Ñ€ÐµÑ Ð½Ð° %s"
+msgid "Error resolving “%sâ€"
+msgstr "Грешка при откриване по Ð°Ð´Ñ€ÐµÑ Ð½Ð° „%s“"
-#: ../gio/gtlscertificate.c:250
-msgid "Cannot decrypt PEM-encoded private key"
-msgstr "ЧаÑтниÑÑ‚ ключ, шифриран Ñ PEM, не може да бъде дешифриран"
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Ðеправилен пакет от DNS"
-#: ../gio/gtlscertificate.c:255
+#: gio/gthreadedresolver.c:886
+#, c-format
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "ÐеуÑпешен анализ на отговор от DNS за „%s“: "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "ЛипÑва чаÑтен ключ, шифриран Ñ PEM"
-#: ../gio/gtlscertificate.c:265
+#: gio/gtlscertificate.c:488
+msgid "Cannot decrypt PEM-encoded private key"
+msgstr "ЧаÑтниÑÑ‚ ключ, шифриран Ñ PEM, не може да бъде дешифриран"
+
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "ЧаÑтниÑÑ‚ ключ, шифриран Ñ PEM, не може да бъде анализиран"
-#: ../gio/gtlscertificate.c:290
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "ЛипÑва Ñертификат, шифриран Ñ PEM"
-#: ../gio/gtlscertificate.c:299
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Сертификатът, шифриран Ñ PEM, не може да бъде анализиран"
-#: ../gio/gtlspassword.c:111
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "РеализациÑта на TLS не поддържа PKCS #12"
+
+#: gio/gtlscertificate.c:1013
+msgid "This GTlsBackend does not support creating PKCS #11 certificates"
+msgstr ""
+"Тази Ñ€ÐµÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð½Ð° „GTlsBackend“ не поддържа Ñъздаване на Ñертификати PKCS "
+"#11"
+
+#: gio/gtlspassword.c:111
msgid ""
"This is the last chance to enter the password correctly before your access "
"is locked out."
@@ -3032,905 +4319,1118 @@ msgstr ""
"Това е поÑледниÑÑ‚ ви ÑˆÐ°Ð½Ñ Ð´Ð° въведете правилна парола, преди машината да Ñе "
"заключи."
-#: ../gio/gtlspassword.c:113
+#. Translators: This is not the 'This is the last chance' string. It is
+#. * displayed when more than one attempt is allowed.
+#: gio/gtlspassword.c:115
msgid ""
-"Several password entered have been incorrect, and your access will be locked "
-"out after further failures."
+"Several passwords entered have been incorrect, and your access will be "
+"locked out after further failures."
msgstr ""
"ÐÑколко пъти Ñте въвели неправилна парола. Ðко отново Ñгрешите, машината ще "
"Ñе заключи за доÑтъп."
-#: ../gio/gtlspassword.c:115
+#: gio/gtlspassword.c:117
msgid "The password entered is incorrect."
msgstr "Въведената парола е неправилна."
-#: ../gio/gunixconnection.c:166 ../gio/gunixconnection.c:561
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "Изпращането на файлов деÑкриптор не Ñе поддържа"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "Очакваше Ñе 1 контролно Ñъобщение, а беше получено %d"
msgstr[1] "Очакваше Ñе 1 контролно Ñъобщение, а бÑха получени %d"
-#: ../gio/gunixconnection.c:182 ../gio/gunixconnection.c:573
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Ðеочакван вид на помощните данни"
-#: ../gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "Очакваше Ñе един файлов деÑкриптор, а беше получен %d\n"
msgstr[1] "Очакваше Ñе един файлов деÑкриптор, а бÑха получени %d\n"
-#: ../gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Получен е неправилен файлов деÑкриптор"
-#: ../gio/gunixconnection.c:355
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "Получаването на файлов деÑкриптор не Ñе поддържа"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Грешка при изпращане на ÑамоличноÑÑ‚: "
-#: ../gio/gunixconnection.c:503
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
-msgstr "Грешка при проверка дали SO_PASSCRED е позволено за гнездото: %s"
+msgstr "Грешка при проверка дали „SO_PASSCRED“ е позволено за гнездото: %s"
-#: ../gio/gunixconnection.c:518
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
-msgstr "Грешка при разрешаване на SO_PASSCRED: %s"
+msgstr "Грешка при разрешаване на „SO_PASSCRED“: %s"
-#: ../gio/gunixconnection.c:547
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Очаква Ñе един байт за получаване на ÑамоличноÑÑ‚, но Ñа прочетени 0 байта."
-#: ../gio/gunixconnection.c:587
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Ðе Ñе очакваше контролно Ñъобщение, а бÑха получени %d"
-#: ../gio/gunixconnection.c:611
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
-msgstr "Грешка при забранÑване на SO_PASSCRED: %s"
+msgstr "Грешка при забранÑване на „SO_PASSCRED“: %s"
-#: ../gio/gunixinputstream.c:369 ../gio/gunixinputstream.c:390
+#: gio/gunixinputstream.c:357 gio/gunixinputstream.c:378
#, c-format
msgid "Error reading from file descriptor: %s"
msgstr "Грешка при четене от Ñ„Ð°Ð¹Ð»Ð¾Ð²Ð¸Ñ Ð´ÐµÑкриптор: %s"
-#: ../gio/gunixinputstream.c:423 ../gio/gunixoutputstream.c:409
+#: gio/gunixinputstream.c:411 gio/gunixoutputstream.c:520
+#: gio/gwin32inputstream.c:217 gio/gwin32outputstream.c:204
#, c-format
msgid "Error closing file descriptor: %s"
msgstr "Грешка при затварÑне на Ñ„Ð°Ð¹Ð»Ð¾Ð²Ð¸Ñ Ð´ÐµÑкриптор: %s"
-#: ../gio/gunixmounts.c:2099 ../gio/gunixmounts.c:2152
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Коренова папка на файловата ÑиÑтема"
-#: ../gio/gunixoutputstream.c:355 ../gio/gunixoutputstream.c:376
+#: gio/gunixoutputstream.c:357 gio/gunixoutputstream.c:377
+#: gio/gunixoutputstream.c:464 gio/gunixoutputstream.c:484
+#: gio/gunixoutputstream.c:630
#, c-format
msgid "Error writing to file descriptor: %s"
msgstr "Грешка при Ð·Ð°Ð¿Ð¸Ñ Ð²ÑŠÐ² Ñ„Ð°Ð¹Ð»Ð¾Ð²Ð¸Ñ Ð´ÐµÑкриптор: %s"
-#: ../gio/gunixsocketaddress.c:239
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "Тази ÑиÑтема не поддържа абÑтрактни адреÑи на гнезда за домейни в Unix"
-#: ../gio/gvolume.c:437
-msgid "volume doesn't implement eject"
+#: gio/gvolume.c:438
+msgid "volume doesn’t implement eject"
msgstr "томът не поддържа изваждане"
#. Translators: This is an error
#. * message for volume objects that
#. * don't implement any of eject or eject_with_operation.
-#: ../gio/gvolume.c:514
-msgid "volume doesn't implement eject or eject_with_operation"
+#: gio/gvolume.c:515
+msgid "volume doesn’t implement eject or eject_with_operation"
msgstr "томът не поддържа нито изваждане, нито изваждане Ñ Ð´ÐµÐ¹Ñтвие"
-#: ../gio/gwin32inputstream.c:343
+#: gio/gwin32inputstream.c:185
#, c-format
msgid "Error reading from handle: %s"
msgstr "Грешка при четене от манипулатор: %s"
-#: ../gio/gwin32inputstream.c:387 ../gio/gwin32outputstream.c:374
+#: gio/gwin32inputstream.c:232 gio/gwin32outputstream.c:219
#, c-format
msgid "Error closing handle: %s"
msgstr "Грешка при затварÑне на манипулатор: %s"
-#: ../gio/gwin32outputstream.c:330
+#: gio/gwin32outputstream.c:172
#, c-format
msgid "Error writing to handle: %s"
msgstr "Грешка при Ð·Ð°Ð¿Ð¸Ñ Ð² манипулатор: %s"
-#: ../gio/gzlibcompressor.c:394 ../gio/gzlibdecompressor.c:347
+#: gio/gzlibcompressor.c:394 gio/gzlibdecompressor.c:347
msgid "Not enough memory"
msgstr "недоÑтатъчно памет"
-#: ../gio/gzlibcompressor.c:401 ../gio/gzlibdecompressor.c:354
+#: gio/gzlibcompressor.c:401 gio/gzlibdecompressor.c:354
#, c-format
msgid "Internal error: %s"
msgstr "Вътрешна грешка: %s"
-#: ../gio/gzlibcompressor.c:414 ../gio/gzlibdecompressor.c:368
+#: gio/gzlibcompressor.c:414 gio/gzlibdecompressor.c:368
msgid "Need more input"
msgstr "Ðеобходими Ñа още данни от входа"
-#: ../gio/gzlibdecompressor.c:340
+#: gio/gzlibdecompressor.c:340
msgid "Invalid compressed data"
msgstr "Ðеправилни, компреÑирани данни"
-#: ../gio/tests/gdbus-daemon.c:18
+#: gio/tests/gdbus-daemon.c:18
msgid "Address to listen on"
msgstr "ÐдреÑ, на който да Ñе Ñлуша"
-#: ../gio/tests/gdbus-daemon.c:19
+#: gio/tests/gdbus-daemon.c:19
msgid "Ignored, for compat with GTestDbus"
-msgstr "СтойноÑтта нÑма значение, проÑто оÑигурÑва ÑъвмеÑтимоÑÑ‚ Ñ GTestDbus"
+msgstr "СтойноÑтта нÑма значение, проÑто оÑигурÑва ÑъвмеÑтимоÑÑ‚ Ñ â€žGTestDbus“"
-#: ../gio/tests/gdbus-daemon.c:20
+#: gio/tests/gdbus-daemon.c:20
msgid "Print address"
msgstr "Извеждане на адреÑа"
-#: ../gio/tests/gdbus-daemon.c:21
+#: gio/tests/gdbus-daemon.c:21
msgid "Print address in shell mode"
msgstr "Извеждане на адреÑа в режим за обвивката"
-#: ../gio/tests/gdbus-daemon.c:28
+#: gio/tests/gdbus-daemon.c:28
msgid "Run a dbus service"
-msgstr "Стартиране на ÑеÑийна шина dbus"
+msgstr "Стартиране на ÑеÑийна шина D-Bus"
-#: ../gio/tests/gdbus-daemon.c:42
-#, c-format
+#: gio/tests/gdbus-daemon.c:42
msgid "Wrong args\n"
msgstr "Ðеправилни аргументи\n"
-#: ../glib/gbookmarkfile.c:755
+#: glib/gbookmarkfile.c:777
#, c-format
-msgid "Unexpected attribute '%s' for element '%s'"
+msgid "Unexpected attribute “%s†for element “%sâ€"
msgstr "Ðеочакван атрибут „%s“ на елемента „%s“"
-#: ../glib/gbookmarkfile.c:766 ../glib/gbookmarkfile.c:837
-#: ../glib/gbookmarkfile.c:847 ../glib/gbookmarkfile.c:954
+#: glib/gbookmarkfile.c:788 glib/gbookmarkfile.c:868 glib/gbookmarkfile.c:878
+#: glib/gbookmarkfile.c:991
#, c-format
-msgid "Attribute '%s' of element '%s' not found"
+msgid "Attribute “%s†of element “%s†not found"
msgstr "Ðтрибутът „%s“ на елемента „%s“ не е открит"
-#: ../glib/gbookmarkfile.c:1124 ../glib/gbookmarkfile.c:1189
-#: ../glib/gbookmarkfile.c:1253 ../glib/gbookmarkfile.c:1263
+#: glib/gbookmarkfile.c:1200 glib/gbookmarkfile.c:1265
+#: glib/gbookmarkfile.c:1329 glib/gbookmarkfile.c:1339
#, c-format
-msgid "Unexpected tag '%s', tag '%s' expected"
+msgid "Unexpected tag “%sâ€, tag “%s†expected"
msgstr "Ðеочакван етикет „%s“, очакваше Ñе „%s“"
-#: ../glib/gbookmarkfile.c:1149 ../glib/gbookmarkfile.c:1163
-#: ../glib/gbookmarkfile.c:1231
+#: glib/gbookmarkfile.c:1225 glib/gbookmarkfile.c:1239
+#: glib/gbookmarkfile.c:1307 glib/gbookmarkfile.c:1353
#, c-format
-msgid "Unexpected tag '%s' inside '%s'"
+msgid "Unexpected tag “%s†inside “%sâ€"
msgstr "Ðеочакван етикет „%s“ вътре в „%s“"
-#: ../glib/gbookmarkfile.c:1756
+#: glib/gbookmarkfile.c:1633
+#, c-format
+msgid "Invalid date/time ‘%s’ in bookmark file"
+msgstr "Ðеправилна дата или време „%s“ във файла Ñ Ð¾Ñ‚Ð¼ÐµÑ‚ÐºÐ¸"
+
+#: glib/gbookmarkfile.c:1836
msgid "No valid bookmark file found in data dirs"
msgstr "Ðе може да Ñе открие валиден файл Ñ Ð¾Ñ‚Ð¼ÐµÑ‚ÐºÐ¸ в папките Ñ Ð´Ð°Ð½Ð½Ð¸"
-#: ../glib/gbookmarkfile.c:1957
+#: glib/gbookmarkfile.c:2037
#, c-format
-msgid "A bookmark for URI '%s' already exists"
+msgid "A bookmark for URI “%s†already exists"
msgstr "Вече ÑъщеÑтвува отметка за адреÑа „%s“"
-#: ../glib/gbookmarkfile.c:2003 ../glib/gbookmarkfile.c:2161
-#: ../glib/gbookmarkfile.c:2246 ../glib/gbookmarkfile.c:2326
-#: ../glib/gbookmarkfile.c:2411 ../glib/gbookmarkfile.c:2494
-#: ../glib/gbookmarkfile.c:2572 ../glib/gbookmarkfile.c:2651
-#: ../glib/gbookmarkfile.c:2693 ../glib/gbookmarkfile.c:2790
-#: ../glib/gbookmarkfile.c:2910 ../glib/gbookmarkfile.c:3100
-#: ../glib/gbookmarkfile.c:3176 ../glib/gbookmarkfile.c:3344
-#: ../glib/gbookmarkfile.c:3433 ../glib/gbookmarkfile.c:3522
-#: ../glib/gbookmarkfile.c:3638
-#, c-format
-msgid "No bookmark found for URI '%s'"
+#: glib/gbookmarkfile.c:2086 glib/gbookmarkfile.c:2244
+#: glib/gbookmarkfile.c:2329 glib/gbookmarkfile.c:2409
+#: glib/gbookmarkfile.c:2494 glib/gbookmarkfile.c:2628
+#: glib/gbookmarkfile.c:2761 glib/gbookmarkfile.c:2896
+#: glib/gbookmarkfile.c:2938 glib/gbookmarkfile.c:3035
+#: glib/gbookmarkfile.c:3156 glib/gbookmarkfile.c:3350
+#: glib/gbookmarkfile.c:3491 glib/gbookmarkfile.c:3710
+#: glib/gbookmarkfile.c:3799 glib/gbookmarkfile.c:3888
+#: glib/gbookmarkfile.c:4007
+#, c-format
+msgid "No bookmark found for URI “%sâ€"
msgstr "Ðе е открита отметка за адреÑа „%s“"
-#: ../glib/gbookmarkfile.c:2335
+#: glib/gbookmarkfile.c:2418
#, c-format
-msgid "No MIME type defined in the bookmark for URI '%s'"
+msgid "No MIME type defined in the bookmark for URI “%sâ€"
msgstr "Ðе е указан видът MIME в отметката за адреÑа „%s“"
-#: ../glib/gbookmarkfile.c:2420
+#: glib/gbookmarkfile.c:2503
#, c-format
-msgid "No private flag has been defined in bookmark for URI '%s'"
+msgid "No private flag has been defined in bookmark for URI “%sâ€"
msgstr "Ðе е зададен флаг за лични данни в отметката за адреÑа „%s“"
-#: ../glib/gbookmarkfile.c:2799
+#: glib/gbookmarkfile.c:3044
#, c-format
-msgid "No groups set in bookmark for URI '%s'"
+msgid "No groups set in bookmark for URI “%sâ€"
msgstr "Ðе Ñа зададени групи в отметката за адреÑа „%s“"
-#: ../glib/gbookmarkfile.c:3197 ../glib/gbookmarkfile.c:3354
+#: glib/gbookmarkfile.c:3512 glib/gbookmarkfile.c:3720
#, c-format
-msgid "No application with name '%s' registered a bookmark for '%s'"
+msgid "No application with name “%s†registered a bookmark for “%sâ€"
msgstr "ÐÐ¸ÐºÐ¾Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð° „%s“ не е региÑтрирала отметка за „%s“"
-#: ../glib/gbookmarkfile.c:3377
+#: glib/gbookmarkfile.c:3743
#, c-format
-msgid "Failed to expand exec line '%s' with URI '%s'"
-msgstr "ÐеуÑпешно допиÑване на реда за изпълнение „%s“ Ñ Ð°Ð´Ñ€ÐµÑа „%s“"
+msgid "Failed to expand exec line “%s†with URI “%sâ€"
+msgstr "ÐеуÑпешно допиÑване за изпълнение на реда „%s“ Ñ Ð°Ð´Ñ€ÐµÑа „%s“"
+
+#: glib/gconvert.c:468
+msgid "Unrepresentable character in conversion input"
+msgstr "Ðеправилна поÑледователноÑÑ‚ на входа"
-#: ../glib/gconvert.c:477 ../glib/gutf8.c:849 ../glib/gutf8.c:1061
-#: ../glib/gutf8.c:1198 ../glib/gutf8.c:1302
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Ðепълна знакова поÑледователноÑÑ‚ в ÐºÑ€Ð°Ñ Ð½Ð° входните данни"
-#: ../glib/gconvert.c:742
+#: glib/gconvert.c:764
#, c-format
-msgid "Cannot convert fallback '%s' to codeset '%s'"
+msgid "Cannot convert fallback “%s†to codeset “%sâ€"
msgstr ""
"ЗамеÑтващиÑÑ‚ знак „%s“ не може да бъде преобразуван към знак от набора „%s“"
-#: ../glib/gconvert.c:1567
+#: glib/gconvert.c:936
+msgid "Embedded NUL byte in conversion input"
+msgstr "Ðа входа за преобразуване има байт NUL"
+
+#: glib/gconvert.c:957
+msgid "Embedded NUL byte in conversion output"
+msgstr "Ðа изхода от преобразуване има байт NUL"
+
+#: glib/gconvert.c:1688
#, c-format
-msgid "The URI '%s' is not an absolute URI using the \"file\" scheme"
+msgid "The URI “%s†is not an absolute URI using the “file†scheme"
msgstr ""
"ÐдреÑÑŠÑ‚ „%s“ не е абÑолютен при използване на Ñхемата „file“ (файлова "
"ÑиÑтема)"
-#: ../glib/gconvert.c:1577
+#: glib/gconvert.c:1698
#, c-format
-msgid "The local file URI '%s' may not include a '#'"
+msgid "The local file URI “%s†may not include a “#â€"
msgstr "ÐдреÑÑŠÑ‚ „%s“ на локален файл не може да включва „#“"
-#: ../glib/gconvert.c:1594
+#: glib/gconvert.c:1715
#, c-format
-msgid "The URI '%s' is invalid"
+msgid "The URI “%s†is invalid"
msgstr "ÐдреÑÑŠÑ‚ „%s“ е неправилен"
-#: ../glib/gconvert.c:1606
+#: glib/gconvert.c:1727
#, c-format
-msgid "The hostname of the URI '%s' is invalid"
+msgid "The hostname of the URI “%s†is invalid"
msgstr "Името на хоÑта в адреÑа „%s“ е неправилно"
-#: ../glib/gconvert.c:1622
+#: glib/gconvert.c:1743
#, c-format
-msgid "The URI '%s' contains invalidly escaped characters"
+msgid "The URI “%s†contains invalidly escaped characters"
msgstr "ÐдреÑÑŠÑ‚ „%s“ Ñъдържа грешни екраниращи поÑледователноÑти"
-#: ../glib/gconvert.c:1717
+#: glib/gconvert.c:1815
#, c-format
-msgid "The pathname '%s' is not an absolute path"
+msgid "The pathname “%s†is not an absolute path"
msgstr "ПътÑÑ‚ „%s“ не е абÑолютен"
-#: ../glib/gconvert.c:1727
-msgid "Invalid hostname"
-msgstr "Ðеправилно име на хоÑÑ‚"
-
-#. Translators: 'before midday' indicator
-#: ../glib/gdatetime.c:201
-msgctxt "GDateTime"
-msgid "AM"
-msgstr "пр. об."
-
-#. Translators: 'after midday' indicator
-#: ../glib/gdatetime.c:203
-msgctxt "GDateTime"
-msgid "PM"
-msgstr "Ñл. об."
-
#. Translators: this is the preferred format for expressing the date and the time
-#: ../glib/gdatetime.c:206
+#: glib/gdatetime.c:226
msgctxt "GDateTime"
msgid "%a %b %e %H:%M:%S %Y"
-msgstr "%d.%m.%Y (%a) %H:%M:%S"
+msgstr "%d.%m.%Y, %a, %H:%M:%S"
#. Translators: this is the preferred format for expressing the date
-#: ../glib/gdatetime.c:209
+#: glib/gdatetime.c:229
msgctxt "GDateTime"
msgid "%m/%d/%y"
msgstr "%d.%m.%Y"
#. Translators: this is the preferred format for expressing the time
-#: ../glib/gdatetime.c:212
+#: glib/gdatetime.c:232
msgctxt "GDateTime"
msgid "%H:%M:%S"
msgstr "%H:%M:%S"
#. Translators: this is the preferred format for expressing 12 hour time
-#: ../glib/gdatetime.c:215
+#: glib/gdatetime.c:235
msgctxt "GDateTime"
msgid "%I:%M:%S %p"
msgstr "%l:%M:%S %p"
-#: ../glib/gdatetime.c:228
+#. Translators: Some languages (Baltic, Slavic, Greek, and some more)
+#. * need different grammatical forms of month names depending on whether
+#. * they are standalone or in a complete date context, with the day
+#. * number. Some other languages may prefer starting with uppercase when
+#. * they are standalone and with lowercase when they are in a complete
+#. * date context. Here are full month names in a form appropriate when
+#. * they are used standalone. If your system is Linux with the glibc
+#. * version 2.27 (released Feb 1, 2018) or newer or if it is from the BSD
+#. * family (which includes OS X) then you can refer to the date command
+#. * line utility and see what the command `date +%OB' produces. Also in
+#. * the latest Linux the command `locale alt_mon' in your native locale
+#. * produces a complete list of month names almost ready to copy and
+#. * paste here. Note that in most of the languages (western European,
+#. * non-European) there is no difference between the standalone and
+#. * complete date form.
+#.
+#: glib/gdatetime.c:274
msgctxt "full month name"
msgid "January"
msgstr "Ñнуари"
-#: ../glib/gdatetime.c:230
+#: glib/gdatetime.c:276
msgctxt "full month name"
msgid "February"
msgstr "февруари"
-#: ../glib/gdatetime.c:232
+#: glib/gdatetime.c:278
msgctxt "full month name"
msgid "March"
msgstr "март"
-#: ../glib/gdatetime.c:234
+#: glib/gdatetime.c:280
msgctxt "full month name"
msgid "April"
msgstr "април"
-#: ../glib/gdatetime.c:236
+#: glib/gdatetime.c:282
msgctxt "full month name"
msgid "May"
msgstr "май"
-#: ../glib/gdatetime.c:238
+#: glib/gdatetime.c:284
msgctxt "full month name"
msgid "June"
msgstr "юни"
-#: ../glib/gdatetime.c:240
+#: glib/gdatetime.c:286
msgctxt "full month name"
msgid "July"
msgstr "юли"
-#: ../glib/gdatetime.c:242
+#: glib/gdatetime.c:288
msgctxt "full month name"
msgid "August"
msgstr "авгуÑÑ‚"
-#: ../glib/gdatetime.c:244
+#: glib/gdatetime.c:290
msgctxt "full month name"
msgid "September"
msgstr "Ñептември"
-#: ../glib/gdatetime.c:246
+#: glib/gdatetime.c:292
msgctxt "full month name"
msgid "October"
msgstr "октомври"
-#: ../glib/gdatetime.c:248
+#: glib/gdatetime.c:294
msgctxt "full month name"
msgid "November"
msgstr "ноември"
-#: ../glib/gdatetime.c:250
+#: glib/gdatetime.c:296
msgctxt "full month name"
msgid "December"
msgstr "декември"
-#: ../glib/gdatetime.c:265
+#. Translators: Some languages need different grammatical forms of
+#. * month names depending on whether they are standalone or in a complete
+#. * date context, with the day number. Some may prefer starting with
+#. * uppercase when they are standalone and with lowercase when they are
+#. * in a full date context. However, as these names are abbreviated
+#. * the grammatical difference is visible probably only in Belarusian
+#. * and Russian. In other languages there is no difference between
+#. * the standalone and complete date form when they are abbreviated.
+#. * If your system is Linux with the glibc version 2.27 (released
+#. * Feb 1, 2018) or newer then you can refer to the date command line
+#. * utility and see what the command `date +%Ob' produces. Also in
+#. * the latest Linux the command `locale ab_alt_mon' in your native
+#. * locale produces a complete list of month names almost ready to copy
+#. * and paste here. Note that this feature is not yet supported by any
+#. * other platform. Here are abbreviated month names in a form
+#. * appropriate when they are used standalone.
+#.
+#: glib/gdatetime.c:328
msgctxt "abbreviated month name"
msgid "Jan"
msgstr "Ñну"
-#: ../glib/gdatetime.c:267
+#: glib/gdatetime.c:330
msgctxt "abbreviated month name"
msgid "Feb"
msgstr "фев"
-#: ../glib/gdatetime.c:269
+#: glib/gdatetime.c:332
msgctxt "abbreviated month name"
msgid "Mar"
msgstr "мар"
-#: ../glib/gdatetime.c:271
+#: glib/gdatetime.c:334
msgctxt "abbreviated month name"
msgid "Apr"
msgstr "апр"
-#: ../glib/gdatetime.c:273
+#: glib/gdatetime.c:336
msgctxt "abbreviated month name"
msgid "May"
msgstr "май"
-#: ../glib/gdatetime.c:275
+#: glib/gdatetime.c:338
msgctxt "abbreviated month name"
msgid "Jun"
msgstr "юни"
-#: ../glib/gdatetime.c:277
+#: glib/gdatetime.c:340
msgctxt "abbreviated month name"
msgid "Jul"
msgstr "юли"
-#: ../glib/gdatetime.c:279
+#: glib/gdatetime.c:342
msgctxt "abbreviated month name"
msgid "Aug"
msgstr "авг"
-#: ../glib/gdatetime.c:281
+#: glib/gdatetime.c:344
msgctxt "abbreviated month name"
msgid "Sep"
msgstr "Ñеп"
-#: ../glib/gdatetime.c:283
+#: glib/gdatetime.c:346
msgctxt "abbreviated month name"
msgid "Oct"
msgstr "окт"
-#: ../glib/gdatetime.c:285
+#: glib/gdatetime.c:348
msgctxt "abbreviated month name"
msgid "Nov"
msgstr "ное"
-#: ../glib/gdatetime.c:287
+#: glib/gdatetime.c:350
msgctxt "abbreviated month name"
msgid "Dec"
msgstr "дек"
-#: ../glib/gdatetime.c:302
+#: glib/gdatetime.c:365
msgctxt "full weekday name"
msgid "Monday"
msgstr "понеделник"
-#: ../glib/gdatetime.c:304
+#: glib/gdatetime.c:367
msgctxt "full weekday name"
msgid "Tuesday"
msgstr "вторник"
-#: ../glib/gdatetime.c:306
+#: glib/gdatetime.c:369
msgctxt "full weekday name"
msgid "Wednesday"
msgstr "ÑÑ€Ñда"
-#: ../glib/gdatetime.c:308
+#: glib/gdatetime.c:371
msgctxt "full weekday name"
msgid "Thursday"
msgstr "четвъртък"
-#: ../glib/gdatetime.c:310
+#: glib/gdatetime.c:373
msgctxt "full weekday name"
msgid "Friday"
msgstr "петък"
-#: ../glib/gdatetime.c:312
+#: glib/gdatetime.c:375
msgctxt "full weekday name"
msgid "Saturday"
msgstr "Ñъбота"
-#: ../glib/gdatetime.c:314
+#: glib/gdatetime.c:377
msgctxt "full weekday name"
msgid "Sunday"
msgstr "неделÑ"
-#: ../glib/gdatetime.c:329
+#: glib/gdatetime.c:392
msgctxt "abbreviated weekday name"
msgid "Mon"
msgstr "пн"
-#: ../glib/gdatetime.c:331
+#: glib/gdatetime.c:394
msgctxt "abbreviated weekday name"
msgid "Tue"
msgstr "вт"
-#: ../glib/gdatetime.c:333
+#: glib/gdatetime.c:396
msgctxt "abbreviated weekday name"
msgid "Wed"
msgstr "ÑÑ€"
-#: ../glib/gdatetime.c:335
+#: glib/gdatetime.c:398
msgctxt "abbreviated weekday name"
msgid "Thu"
msgstr "чт"
-#: ../glib/gdatetime.c:337
+#: glib/gdatetime.c:400
msgctxt "abbreviated weekday name"
msgid "Fri"
msgstr "пт"
-#: ../glib/gdatetime.c:339
+#: glib/gdatetime.c:402
msgctxt "abbreviated weekday name"
msgid "Sat"
msgstr "Ñб"
-#: ../glib/gdatetime.c:341
+#: glib/gdatetime.c:404
msgctxt "abbreviated weekday name"
msgid "Sun"
msgstr "нд"
-#: ../glib/gdir.c:155
+#. Translators: Some languages need different grammatical forms of
+#. * month names depending on whether they are standalone or in a full
+#. * date context, with the day number. Some may prefer starting with
+#. * uppercase when they are standalone and with lowercase when they are
+#. * in a full date context. Here are full month names in a form
+#. * appropriate when they are used in a full date context, with the
+#. * day number. If your system is Linux with the glibc version 2.27
+#. * (released Feb 1, 2018) or newer or if it is from the BSD family
+#. * (which includes OS X) then you can refer to the date command line
+#. * utility and see what the command `date +%B' produces. Also in
+#. * the latest Linux the command `locale mon' in your native locale
+#. * produces a complete list of month names almost ready to copy and
+#. * paste here. In older Linux systems due to a bug the result is
+#. * incorrect in some languages. Note that in most of the languages
+#. * (western European, non-European) there is no difference between the
+#. * standalone and complete date form.
+#.
+#: glib/gdatetime.c:468
+msgctxt "full month name with day"
+msgid "January"
+msgstr "Ñнуари"
+
+#: glib/gdatetime.c:470
+msgctxt "full month name with day"
+msgid "February"
+msgstr "февруари"
+
+#: glib/gdatetime.c:472
+msgctxt "full month name with day"
+msgid "March"
+msgstr "март"
+
+#: glib/gdatetime.c:474
+msgctxt "full month name with day"
+msgid "April"
+msgstr "април"
+
+#: glib/gdatetime.c:476
+msgctxt "full month name with day"
+msgid "May"
+msgstr "май"
+
+#: glib/gdatetime.c:478
+msgctxt "full month name with day"
+msgid "June"
+msgstr "юни"
+
+#: glib/gdatetime.c:480
+msgctxt "full month name with day"
+msgid "July"
+msgstr "юли"
+
+#: glib/gdatetime.c:482
+msgctxt "full month name with day"
+msgid "August"
+msgstr "авгуÑÑ‚"
+
+#: glib/gdatetime.c:484
+msgctxt "full month name with day"
+msgid "September"
+msgstr "Ñептември"
+
+#: glib/gdatetime.c:486
+msgctxt "full month name with day"
+msgid "October"
+msgstr "октомври"
+
+#: glib/gdatetime.c:488
+msgctxt "full month name with day"
+msgid "November"
+msgstr "ноември"
+
+#: glib/gdatetime.c:490
+msgctxt "full month name with day"
+msgid "December"
+msgstr "декември"
+
+#. Translators: Some languages need different grammatical forms of
+#. * month names depending on whether they are standalone or in a full
+#. * date context, with the day number. Some may prefer starting with
+#. * uppercase when they are standalone and with lowercase when they are
+#. * in a full date context. Here are abbreviated month names in a form
+#. * appropriate when they are used in a full date context, with the
+#. * day number. However, as these names are abbreviated the grammatical
+#. * difference is visible probably only in Belarusian and Russian.
+#. * In other languages there is no difference between the standalone
+#. * and complete date form when they are abbreviated. If your system
+#. * is Linux with the glibc version 2.27 (released Feb 1, 2018) or newer
+#. * then you can refer to the date command line utility and see what the
+#. * command `date +%b' produces. Also in the latest Linux the command
+#. * `locale abmon' in your native locale produces a complete list of
+#. * month names almost ready to copy and paste here. In other systems
+#. * due to a bug the result is incorrect in some languages.
+#.
+#: glib/gdatetime.c:555
+msgctxt "abbreviated month name with day"
+msgid "Jan"
+msgstr "Ñну"
+
+#: glib/gdatetime.c:557
+msgctxt "abbreviated month name with day"
+msgid "Feb"
+msgstr "фев"
+
+#: glib/gdatetime.c:559
+msgctxt "abbreviated month name with day"
+msgid "Mar"
+msgstr "мар"
+
+#: glib/gdatetime.c:561
+msgctxt "abbreviated month name with day"
+msgid "Apr"
+msgstr "апр"
+
+#: glib/gdatetime.c:563
+msgctxt "abbreviated month name with day"
+msgid "May"
+msgstr "май"
+
+#: glib/gdatetime.c:565
+msgctxt "abbreviated month name with day"
+msgid "Jun"
+msgstr "юни"
+
+#: glib/gdatetime.c:567
+msgctxt "abbreviated month name with day"
+msgid "Jul"
+msgstr "юли"
+
+#: glib/gdatetime.c:569
+msgctxt "abbreviated month name with day"
+msgid "Aug"
+msgstr "авг"
+
+#: glib/gdatetime.c:571
+msgctxt "abbreviated month name with day"
+msgid "Sep"
+msgstr "Ñеп"
+
+#: glib/gdatetime.c:573
+msgctxt "abbreviated month name with day"
+msgid "Oct"
+msgstr "окт"
+
+#: glib/gdatetime.c:575
+msgctxt "abbreviated month name with day"
+msgid "Nov"
+msgstr "ное"
+
+#: glib/gdatetime.c:577
+msgctxt "abbreviated month name with day"
+msgid "Dec"
+msgstr "дек"
+
+#. Translators: 'before midday' indicator
+#: glib/gdatetime.c:594
+msgctxt "GDateTime"
+msgid "AM"
+msgstr "пр.об."
+
+#. Translators: 'after midday' indicator
+#: glib/gdatetime.c:597
+msgctxt "GDateTime"
+msgid "PM"
+msgstr "Ñл.об."
+
+#: glib/gdir.c:156
#, c-format
-msgid "Error opening directory '%s': %s"
+msgid "Error opening directory “%sâ€: %s"
msgstr "Грешка при отварÑне на папка „%s“: %s"
-#: ../glib/gfileutils.c:700 ../glib/gfileutils.c:792
+#: glib/gfileutils.c:733 glib/gfileutils.c:825
#, c-format
-msgid "Could not allocate %lu byte to read file \"%s\""
-msgid_plural "Could not allocate %lu bytes to read file \"%s\""
+msgid "Could not allocate %lu byte to read file “%sâ€"
+msgid_plural "Could not allocate %lu bytes to read file “%sâ€"
msgstr[0] "ÐеуÑпешно заделÑне на %lu байт за четене на файла „%s“"
msgstr[1] "ÐеуÑпешно заделÑне на %lu байта за четене на файла „%s“"
-#: ../glib/gfileutils.c:717
+#: glib/gfileutils.c:750
#, c-format
-msgid "Error reading file '%s': %s"
+msgid "Error reading file “%sâ€: %s"
msgstr "Грешка при четене на файл „%s“: %s"
-#: ../glib/gfileutils.c:753
+#: glib/gfileutils.c:786
#, c-format
-msgid "File \"%s\" is too large"
+msgid "File “%s†is too large"
msgstr "Файлът „%s“ е прекалено голÑм"
-#: ../glib/gfileutils.c:817
+#: glib/gfileutils.c:850
#, c-format
-msgid "Failed to read from file '%s': %s"
+msgid "Failed to read from file “%sâ€: %s"
msgstr "ÐеуÑпешно четене от файл „%s“: %s"
-#: ../glib/gfileutils.c:865 ../glib/gfileutils.c:937
+#: glib/gfileutils.c:900 glib/gfileutils.c:975 glib/gfileutils.c:1447
#, c-format
-msgid "Failed to open file '%s': %s"
+msgid "Failed to open file “%sâ€: %s"
msgstr "ÐеуÑпешно отварÑне на файл „%s“: %s"
-#: ../glib/gfileutils.c:877
+#: glib/gfileutils.c:913
#, c-format
-msgid "Failed to get attributes of file '%s': fstat() failed: %s"
+msgid "Failed to get attributes of file “%sâ€: fstat() failed: %s"
msgstr ""
"ÐеуÑпешно получаване на атрибутите на файл „%s“: неуÑпешно изпълнение на "
-"fstat(): %s"
+"„fstat()“: %s"
-#: ../glib/gfileutils.c:907
+#: glib/gfileutils.c:944
#, c-format
-msgid "Failed to open file '%s': fdopen() failed: %s"
-msgstr "ÐеуÑпешно отварÑне на файл „%s“: неуÑпешно изпълнение на fdopen(): %s"
+msgid "Failed to open file “%sâ€: fdopen() failed: %s"
+msgstr ""
+"ÐеуÑпешно отварÑне на файл „%s“: неуÑпешно изпълнение на „fdopen()“: %s"
-#: ../glib/gfileutils.c:1006
+#: glib/gfileutils.c:1045
#, c-format
-msgid "Failed to rename file '%s' to '%s': g_rename() failed: %s"
+msgid "Failed to rename file “%s†to “%sâ€: g_rename() failed: %s"
msgstr ""
"ÐеуÑпешно преименуване на файл „%s“ на „%s“: неуÑпешно изпълнение на "
-"g_rename(): %s"
+"„g_rename()“: %s"
-#: ../glib/gfileutils.c:1041 ../glib/gfileutils.c:1540
+#: glib/gfileutils.c:1154
#, c-format
-msgid "Failed to create file '%s': %s"
-msgstr "ÐеуÑпешно Ñъздаване на файл „%s“: %s"
+msgid "Failed to write file “%sâ€: write() failed: %s"
+msgstr "ÐеуÑпешен Ð·Ð°Ð¿Ð¸Ñ Ð½Ð° файл „%s“: неуÑпешно изпълнение на „write()“: %s"
-#: ../glib/gfileutils.c:1068
+#: glib/gfileutils.c:1175
#, c-format
-msgid "Failed to write file '%s': write() failed: %s"
-msgstr "ÐеуÑпешен Ð·Ð°Ð¿Ð¸Ñ Ð½Ð° файл „%s“: неуÑпешно изпълнение на write(): %s"
+msgid "Failed to write file “%sâ€: fsync() failed: %s"
+msgstr "ÐеуÑпешен Ð·Ð°Ð¿Ð¸Ñ Ð½Ð° файл „%s“: неуÑпешно изпълнение на „fsync()“: %s"
-#: ../glib/gfileutils.c:1111
+#: glib/gfileutils.c:1336 glib/gfileutils.c:1751
#, c-format
-msgid "Failed to write file '%s': fsync() failed: %s"
-msgstr "ÐеуÑпешен Ð·Ð°Ð¿Ð¸Ñ Ð½Ð° файл „%s“: неуÑпешно изпълнение на fsync(): %s"
+msgid "Failed to create file “%sâ€: %s"
+msgstr "ÐеуÑпешно Ñъздаване на файл „%s“: %s"
-#: ../glib/gfileutils.c:1235
+#: glib/gfileutils.c:1381
#, c-format
-msgid "Existing file '%s' could not be removed: g_unlink() failed: %s"
+msgid "Existing file “%s†could not be removed: g_unlink() failed: %s"
msgstr ""
"ÐеуÑпешно изтриване на ÑъщеÑÑ‚Ð²ÑƒÐ²Ð°Ñ‰Ð¸Ñ Ñ„Ð°Ð¹Ð» „%s“: неуÑпешно изпълнение на "
-"g_unlink(): %s"
+"„g_unlink()“: %s"
-#: ../glib/gfileutils.c:1506
+#: glib/gfileutils.c:1716
#, c-format
-msgid "Template '%s' invalid, should not contain a '%s'"
+msgid "Template “%s†invalid, should not contain a “%sâ€"
msgstr "Шаблонът „%s“ е неправилен, не Ñ‚Ñ€Ñбва да Ñъдържа „%s“"
-#: ../glib/gfileutils.c:1519
+#: glib/gfileutils.c:1729
#, c-format
-msgid "Template '%s' doesn't contain XXXXXX"
+msgid "Template “%s†doesn’t contain XXXXXX"
msgstr "Шаблонът „%s“ не Ñъдържа „XXXXXX“"
-#: ../glib/gfileutils.c:2038
+#: glib/gfileutils.c:2289 glib/gfileutils.c:2318
#, c-format
-msgid "Failed to read the symbolic link '%s': %s"
+msgid "Failed to read the symbolic link “%sâ€: %s"
msgstr "ÐеуÑпешно четене на Ñимволната връзка „%s“: %s"
-#: ../glib/gfileutils.c:2057
-msgid "Symbolic links not supported"
-msgstr "Символни връзки не Ñе поддържат"
-
-#: ../glib/giochannel.c:1388
+#: glib/giochannel.c:1405
#, c-format
-msgid "Could not open converter from '%s' to '%s': %s"
+msgid "Could not open converter from “%s†to “%sâ€: %s"
msgstr "Ðе може да Ñе отвори конвертор от „%s“ към „%s“: %s"
-#: ../glib/giochannel.c:1733
-msgid "Can't do a raw read in g_io_channel_read_line_string"
-msgstr "Ðе може да Ñе чете от g_io_channel_read_line_string"
+#: glib/giochannel.c:1758
+msgid "Can’t do a raw read in g_io_channel_read_line_string"
+msgstr "Ðе може да Ñе чете от „g_io_channel_read_line_string“"
-#: ../glib/giochannel.c:1780 ../glib/giochannel.c:2038
-#: ../glib/giochannel.c:2125
+#: glib/giochannel.c:1805 glib/giochannel.c:2063 glib/giochannel.c:2150
msgid "Leftover unconverted data in read buffer"
msgstr "Ð’ буфера за четене оÑтанаха непреобразувани данни"
-#: ../glib/giochannel.c:1861 ../glib/giochannel.c:1938
+#: glib/giochannel.c:1886 glib/giochannel.c:1963
msgid "Channel terminates in a partial character"
msgstr "Каналът прекъÑна на непълен знак"
-#: ../glib/giochannel.c:1924
-msgid "Can't do a raw read in g_io_channel_read_to_end"
-msgstr "Ðе може да Ñе чете от g_io_channel_read_to_end"
+#: glib/giochannel.c:1949
+msgid "Can’t do a raw read in g_io_channel_read_to_end"
+msgstr "Ðе може да Ñе чете от „g_io_channel_read_to_end“"
-#: ../glib/gkeyfile.c:737
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "Ðе може да Ñе открие валиден файл Ñ ÐºÐ»ÑŽÑ‡Ð¾Ð²Ðµ в папките Ñ Ð´Ð°Ð½Ð½Ð¸"
-#: ../glib/gkeyfile.c:773
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Ðе е обикновен файл"
-#: ../glib/gkeyfile.c:1173
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
-"Key file contains line '%s' which is not a key-value pair, group, or comment"
+"Key file contains line “%s†which is not a key-value pair, group, or comment"
msgstr ""
"КлючовиÑÑ‚ файл Ñъдържа реда „%s“, който не е нито двойка ключ-ÑтойноÑÑ‚, нито "
"група, нито коментар"
-#: ../glib/gkeyfile.c:1230
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
-msgstr "Ðеправилно име на група: %s"
+msgstr "Ðеправилно име на група: „%s“"
-#: ../glib/gkeyfile.c:1252
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "КлючовиÑÑ‚ файл не започва Ñ Ð³Ñ€ÑƒÐ¿Ð°"
-#: ../glib/gkeyfile.c:1278
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Ðеправилно име на ключ: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Ðеправилно име на ключ: „%.*s“"
-#: ../glib/gkeyfile.c:1305
+#: glib/gkeyfile.c:1422
#, c-format
-msgid "Key file contains unsupported encoding '%s'"
+msgid "Key file contains unsupported encoding “%sâ€"
msgstr "КлючовиÑÑ‚ файл Ñъдържа неподдържаното кодиране „%s“"
-#: ../glib/gkeyfile.c:1548 ../glib/gkeyfile.c:1721 ../glib/gkeyfile.c:3099
-#: ../glib/gkeyfile.c:3162 ../glib/gkeyfile.c:3292 ../glib/gkeyfile.c:3422
-#: ../glib/gkeyfile.c:3566 ../glib/gkeyfile.c:3795 ../glib/gkeyfile.c:3862
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
-msgid "Key file does not have group '%s'"
+msgid "Key file does not have group “%sâ€"
msgstr "КлючовиÑÑ‚ файл не Ñъдържа групата „%s“"
-#: ../glib/gkeyfile.c:1676
+#: glib/gkeyfile.c:1805
#, c-format
-msgid "Key file does not have key '%s' in group '%s'"
+msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "КлючовиÑÑ‚ файл не Ñъдържа ключа „%s“ в групата „%s“"
-#: ../glib/gkeyfile.c:1838 ../glib/gkeyfile.c:1954
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
-msgid "Key file contains key '%s' with value '%s' which is not UTF-8"
+msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "КлючовиÑÑ‚ файл Ñъдържа ключ „%s“ ÑÑŠÑ ÑтойноÑÑ‚ „%s“, коÑто не е в UTF-8"
-#: ../glib/gkeyfile.c:1858 ../glib/gkeyfile.c:1974 ../glib/gkeyfile.c:2343
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
-"Key file contains key '%s' which has a value that cannot be interpreted."
+"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr ""
"КлючовиÑÑ‚ файл Ñъдържа ключа „%s“, чиÑто ÑтойноÑÑ‚ не може да бъде "
"анализирана."
-#: ../glib/gkeyfile.c:2560 ../glib/gkeyfile.c:2928
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
-"Key file contains key '%s' in group '%s' which has a value that cannot be "
+"Key file contains key “%s†in group “%s†which has a value that cannot be "
"interpreted."
msgstr ""
"КлючовиÑÑ‚ файл Ñъдържа ключа „%s“ в групата „%s“, чиÑто ÑтойноÑÑ‚ не може да "
"бъде анализирана."
-#: ../glib/gkeyfile.c:2638 ../glib/gkeyfile.c:2715
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
-msgid "Key '%s' in group '%s' has value '%s' where %s was expected"
-msgstr "Ключът „%s“ в групата „%s“ има ÑтойноÑÑ‚ „%s“, а Ñе очакваше „%s“."
+msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
+msgstr "Ключът „%s“ в групата „%s“ има ÑтойноÑÑ‚ „%s“, а Ñе очакваше „%s“"
-#: ../glib/gkeyfile.c:4102
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "КлючовиÑÑ‚ файл Ñъдържа екранираща поÑледователноÑÑ‚ в край на ред"
-#: ../glib/gkeyfile.c:4124
+#: glib/gkeyfile.c:4346
#, c-format
-msgid "Key file contains invalid escape sequence '%s'"
+msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "КлючовиÑÑ‚ файл Ñъдържа грешна екранираща поÑледователноÑÑ‚ — „%s“"
-#: ../glib/gkeyfile.c:4266
+#: glib/gkeyfile.c:4491
#, c-format
-msgid "Value '%s' cannot be interpreted as a number."
+msgid "Value “%s†cannot be interpreted as a number."
msgstr "СтойноÑтта „%s“ не може да Ñе интерпретира като чиÑло."
-#: ../glib/gkeyfile.c:4280
+#: glib/gkeyfile.c:4505
#, c-format
-msgid "Integer value '%s' out of range"
+msgid "Integer value “%s†out of range"
msgstr "ЦелочиÑлената ÑтойноÑÑ‚ „%s“ е извън интервала на допуÑтими ÑтойноÑти"
-#: ../glib/gkeyfile.c:4313
+#: glib/gkeyfile.c:4538
#, c-format
-msgid "Value '%s' cannot be interpreted as a float number."
+msgid "Value “%s†cannot be interpreted as a float number."
msgstr ""
"СтойноÑтта „%s“ не може да Ñе интерпретира като чиÑло Ñ Ð¿Ð»Ð°Ð²Ð°Ñ‰Ð° запетаÑ."
-#: ../glib/gkeyfile.c:4350
+#: glib/gkeyfile.c:4577
#, c-format
-msgid "Value '%s' cannot be interpreted as a boolean."
+msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "СтойноÑтта „%s“ не може да Ñе интерпретира като булева."
-#: ../glib/gmappedfile.c:129
+#: glib/gmappedfile.c:129
#, c-format
-msgid "Failed to get attributes of file '%s%s%s%s': fstat() failed: %s"
+msgid "Failed to get attributes of file “%s%s%s%sâ€: fstat() failed: %s"
msgstr ""
"ÐеуÑпешно получаване на атрибутите на файла „%s%s%s%s“: неуÑпешно изпълнение "
-"на fstat(): %s"
+"на „fstat()“: %s"
-#: ../glib/gmappedfile.c:195
+#: glib/gmappedfile.c:195
#, c-format
msgid "Failed to map %s%s%s%s: mmap() failed: %s"
msgstr ""
"ÐеуÑпешно отварÑне на файл в паметта „%s%s%s%s“: неуÑпешно изпълнение на "
-"mmap(): %s"
+"„mmap()“: %s"
-#: ../glib/gmappedfile.c:261
+#: glib/gmappedfile.c:262
#, c-format
-msgid "Failed to open file '%s': open() failed: %s"
-msgstr "ÐеуÑпешно отварÑне на файл „%s“: неуÑпешно изпълнение на open(): %s"
+msgid "Failed to open file “%sâ€: open() failed: %s"
+msgstr "ÐеуÑпешно отварÑне на файл „%s“: неуÑпешно изпълнение на „open()“: %s"
-#: ../glib/gmarkup.c:398 ../glib/gmarkup.c:440
+#: glib/gmarkup.c:398 glib/gmarkup.c:440
#, c-format
msgid "Error on line %d char %d: "
msgstr "Грешка на ред %d, знак %d: "
-#: ../glib/gmarkup.c:462 ../glib/gmarkup.c:545
+#: glib/gmarkup.c:462 glib/gmarkup.c:545
#, c-format
-msgid "Invalid UTF-8 encoded text in name - not valid '%s'"
+msgid "Invalid UTF-8 encoded text in name — not valid “%sâ€"
msgstr "Ðеправилно кодиран текÑÑ‚ в UTF-8 — „%s“ е грешен"
-#: ../glib/gmarkup.c:473
+#: glib/gmarkup.c:473
#, c-format
-msgid "'%s' is not a valid name"
+msgid "“%s†is not a valid name"
msgstr "„%s“ е неправилно име"
-#: ../glib/gmarkup.c:489
+#: glib/gmarkup.c:489
#, c-format
-msgid "'%s' is not a valid name: '%c'"
+msgid "“%s†is not a valid name: “%câ€"
msgstr "„%s“ е неправилно име: „%c“"
-#: ../glib/gmarkup.c:599
+#: glib/gmarkup.c:613
#, c-format
msgid "Error on line %d: %s"
msgstr "Грешка на ред %d: %s"
-#: ../glib/gmarkup.c:676
+#: glib/gmarkup.c:690
#, c-format
msgid ""
-"Failed to parse '%-.*s', which should have been a digit inside a character "
-"reference (&#234; for example) - perhaps the digit is too large"
+"Failed to parse “%-.*sâ€, which should have been a digit inside a character "
+"reference (&#234; for example) — perhaps the digit is too large"
msgstr ""
"Грешка при анализ на „%-.*s“, което Ñ‚Ñ€Ñбва да е чиÑло в указател на знак "
"(напр. „&#234;“). ВероÑтно чиÑлото е твърде голÑмо"
-#: ../glib/gmarkup.c:688
+#: glib/gmarkup.c:702
msgid ""
"Character reference did not end with a semicolon; most likely you used an "
-"ampersand character without intending to start an entity - escape ampersand "
+"ampersand character without intending to start an entity — escape ampersand "
"as &amp;"
msgstr ""
"УказателÑÑ‚ на знак не завършва Ñ â€ž;“. Ðай-вероÑтно Ñте използвали „&“, без "
"той да е начало на замеÑтваща поÑледователноÑÑ‚. ПредÑтавете го чрез „&amp;“"
-#: ../glib/gmarkup.c:714
+#: glib/gmarkup.c:728
#, c-format
-msgid "Character reference '%-.*s' does not encode a permitted character"
+msgid "Character reference “%-.*s†does not encode a permitted character"
msgstr "УказателÑÑ‚ на знак „%-.*s“ не предÑÑ‚Ð°Ð²Ñ Ñ€Ð°Ð·Ñ€ÐµÑˆÐµÐ½ знак при декодиране"
-#: ../glib/gmarkup.c:752
+#: glib/gmarkup.c:766
msgid ""
-"Empty entity '&;' seen; valid entities are: &amp; &quot; &lt; &gt; &apos;"
+"Empty entity “&;†seen; valid entities are: &amp; &quot; &lt; &gt; &apos;"
msgstr ""
"Ðамерена е празна замеÑтваща поÑледователноÑÑ‚: „&;“. Валидни "
"поÑледователноÑти Ñа: „&amp;“, „&quot;“, „&lt;“, „&gt;“, „&apos;“"
-#: ../glib/gmarkup.c:760
+#: glib/gmarkup.c:774
#, c-format
-msgid "Entity name '%-.*s' is not known"
+msgid "Entity name “%-.*s†is not known"
msgstr "Името на замеÑтващата поÑледователноÑÑ‚ „%-.*s“ е неизвеÑтно"
-#: ../glib/gmarkup.c:765
+#: glib/gmarkup.c:779
msgid ""
"Entity did not end with a semicolon; most likely you used an ampersand "
-"character without intending to start an entity - escape ampersand as &amp;"
+"character without intending to start an entity — escape ampersand as &amp;"
msgstr ""
"ЗамеÑтващата поÑледователноÑÑ‚ не завършва Ñ â€ž;“. Ðай-вероÑтно Ñте използвали "
"„&“, без той да е начало на замеÑтваща поÑледователноÑÑ‚. ПредÑтавете го чрез "
"„&amp;“"
-#: ../glib/gmarkup.c:1171
+#: glib/gmarkup.c:1193
msgid "Document must begin with an element (e.g. <book>)"
msgstr "Документът Ñ‚Ñ€Ñбва да започва Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚ (напр. <book>)"
-#: ../glib/gmarkup.c:1211
+#: glib/gmarkup.c:1233
#, c-format
msgid ""
-"'%s' is not a valid character following a '<' character; it may not begin an "
+"“%s†is not a valid character following a “<†character; it may not begin an "
"element name"
msgstr ""
"„%s“ е неправилен знак Ñлед „<“. Името на елемент не може да започне Ñ Ð½ÐµÐ³Ð¾"
-#: ../glib/gmarkup.c:1253
+#: glib/gmarkup.c:1276
#, c-format
msgid ""
-"Odd character '%s', expected a '>' character to end the empty-element tag "
-"'%s'"
+"Odd character “%sâ€, expected a “>†character to end the empty-element tag "
+"“%sâ€"
msgstr ""
"ÐеподходÑщ знак „%s“, очаква Ñе етикетът на Ð¿Ñ€Ð°Ð·Ð½Ð¸Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚ „%s“ да завърши "
"Ñ â€ž>“"
-#: ../glib/gmarkup.c:1334
+#: glib/gmarkup.c:1346
+#, c-format
+msgid "Too many attributes in element “%sâ€"
+msgstr "Прекалено много атрибути в елемента „%s“"
+
+#: glib/gmarkup.c:1366
#, c-format
msgid ""
-"Odd character '%s', expected a '=' after attribute name '%s' of element '%s'"
+"Odd character “%sâ€, expected a “=†after attribute name “%s†of element “%sâ€"
msgstr ""
"ÐеподходÑщ знак „%s“, очаква Ñе „=“ Ñлед името на атрибут „%s“ на елемент "
"„%s“"
-#: ../glib/gmarkup.c:1375
+#: glib/gmarkup.c:1408
#, c-format
msgid ""
-"Odd character '%s', expected a '>' or '/' character to end the start tag of "
-"element '%s', or optionally an attribute; perhaps you used an invalid "
+"Odd character “%sâ€, expected a “>†or “/†character to end the start tag of "
+"element “%sâ€, or optionally an attribute; perhaps you used an invalid "
"character in an attribute name"
msgstr ""
"ÐеподходÑщ знак „%s“, очаква Ñе или отварÑщиÑÑ‚ етикет на елемента „%s“ да "
"завърши ÑÑŠÑ Ð·Ð½Ð°Ðº „>“ или „/“, или евентуално да продължи Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚. Ðай-"
"вероÑтно използвате неправилен знак в името на атрибут"
-#: ../glib/gmarkup.c:1419
+#: glib/gmarkup.c:1453
#, c-format
msgid ""
-"Odd character '%s', expected an open quote mark after the equals sign when "
-"giving value for attribute '%s' of element '%s'"
+"Odd character “%sâ€, expected an open quote mark after the equals sign when "
+"giving value for attribute “%s†of element “%sâ€"
msgstr ""
-"ÐеподходÑщ знак „%s“, очаква Ñе знакът „\"“ Ñлед знака за равенÑтво, когато "
-"Ñе приÑвоÑва ÑтойноÑÑ‚ на атрибута „%s“ на елемент „%s“"
+"ÐеподходÑщ знак „%s“, очаква Ñе знак „\"“ или „'“ Ñлед знака за равенÑтво, "
+"когато Ñе приÑвоÑва ÑтойноÑÑ‚ на атрибута „%s“ на елемент „%s“"
-#: ../glib/gmarkup.c:1552
+#: glib/gmarkup.c:1587
#, c-format
msgid ""
-"'%s' is not a valid character following the characters '</'; '%s' may not "
+"“%s†is not a valid character following the characters “</â€; “%s†may not "
"begin an element name"
msgstr ""
"„%s“ е неправилен знак Ñлед „</“. Името на елемент не може да започва Ñ â€ž%s“"
-#: ../glib/gmarkup.c:1588
+#: glib/gmarkup.c:1625
#, c-format
msgid ""
-"'%s' is not a valid character following the close element name '%s'; the "
-"allowed character is '>'"
+"“%s†is not a valid character following the close element name “%sâ€; the "
+"allowed character is “>â€"
msgstr ""
"„%s“ е неправилен знак при завършването на затварÑщ етикет Ñ Ð¸Ð¼Ðµ „%s“. "
"Позволен е знакът „>“"
-#: ../glib/gmarkup.c:1599
+#: glib/gmarkup.c:1637
#, c-format
-msgid "Element '%s' was closed, no element is currently open"
+msgid "Element “%s†was closed, no element is currently open"
msgstr "Елементът „%s“ е затворен, нÑма текущо отворен елемент"
-#: ../glib/gmarkup.c:1608
+#: glib/gmarkup.c:1646
#, c-format
-msgid "Element '%s' was closed, but the currently open element is '%s'"
+msgid "Element “%s†was closed, but the currently open element is “%sâ€"
msgstr "Елементът „%s“ е затворен, но текущо е отворен елемент „%s“"
-#: ../glib/gmarkup.c:1761
+#: glib/gmarkup.c:1799
msgid "Document was empty or contained only whitespace"
msgstr "Документът е празен или Ñъдържа Ñамо празни знаци"
-#: ../glib/gmarkup.c:1775
-msgid "Document ended unexpectedly just after an open angle bracket '<'"
+#: glib/gmarkup.c:1813
+msgid "Document ended unexpectedly just after an open angle bracket “<â€"
msgstr ""
"Документът завършва неочаквано веднага Ñлед отварÑща Ñчупена Ñкоба — „<“"
-#: ../glib/gmarkup.c:1783 ../glib/gmarkup.c:1828
+#: glib/gmarkup.c:1821 glib/gmarkup.c:1866
#, c-format
msgid ""
-"Document ended unexpectedly with elements still open - '%s' was the last "
+"Document ended unexpectedly with elements still open — “%s†was the last "
"element opened"
msgstr ""
"Документът завършва неочаквано — има отворени елементи. ПоÑледно отворен е "
"„%s“"
-#: ../glib/gmarkup.c:1791
+#: glib/gmarkup.c:1829
#, c-format
msgid ""
"Document ended unexpectedly, expected to see a close angle bracket ending "
@@ -3939,336 +5439,342 @@ msgstr ""
"Документът завършва неочаквано, очаква Ñе затварÑща Ñчупена Ñкоба да завърши "
"етикета <%s/>"
-#: ../glib/gmarkup.c:1797
+#: glib/gmarkup.c:1835
msgid "Document ended unexpectedly inside an element name"
msgstr "Документът завършва неочаквано в името на елемент"
-#: ../glib/gmarkup.c:1803
+#: glib/gmarkup.c:1841
msgid "Document ended unexpectedly inside an attribute name"
msgstr "Документът завършва неочаквано в името на атрибут"
-#: ../glib/gmarkup.c:1808
+#: glib/gmarkup.c:1846
msgid "Document ended unexpectedly inside an element-opening tag."
msgstr "Документът завършва неочаквано в отварÑщ етикет на елемент "
-#: ../glib/gmarkup.c:1814
+#: glib/gmarkup.c:1852
msgid ""
"Document ended unexpectedly after the equals sign following an attribute "
"name; no attribute value"
msgstr ""
-"Документът завършва неочаквано Ñлед знака за равенÑтво Ñледващ името на "
+"Документът завършва неочаквано Ñлед знака за равенÑтво Ñлед името на "
"атрибута. Ðтрибутът нÑма ÑтойноÑÑ‚"
-#: ../glib/gmarkup.c:1821
+#: glib/gmarkup.c:1859
msgid "Document ended unexpectedly while inside an attribute value"
msgstr "Документът завършва неочаквано вътре в ÑтойноÑтта на атрибут"
-#: ../glib/gmarkup.c:1837
+#: glib/gmarkup.c:1876
#, c-format
-msgid "Document ended unexpectedly inside the close tag for element '%s'"
+msgid "Document ended unexpectedly inside the close tag for element “%sâ€"
msgstr "Документът завършва неочаквано в затварÑÑ‰Ð¸Ñ ÐµÑ‚Ð¸ÐºÐµÑ‚ на елемент „%s“"
-#: ../glib/gmarkup.c:1843
+#: glib/gmarkup.c:1880
+msgid ""
+"Document ended unexpectedly inside the close tag for an unopened element"
+msgstr ""
+"Документът завършва неочаквано в затварÑÑ‰Ð¸Ñ ÐµÑ‚Ð¸ÐºÐµÑ‚ на неотворен елемент"
+
+#: glib/gmarkup.c:1886
msgid "Document ended unexpectedly inside a comment or processing instruction"
msgstr "Документът завършва неочаквано в коментар или инÑÑ‚Ñ€ÑƒÐºÑ†Ð¸Ñ Ð·Ð° обработка"
-#: ../glib/goption.c:857
-msgid "Usage:"
-msgstr "Употреба:"
-
-#: ../glib/goption.c:861
-msgid "[OPTION...]"
+#: glib/goption.c:873
+msgid "[OPTION…]"
msgstr "[ОПЦИЯ…]"
-#: ../glib/goption.c:977
+#: glib/goption.c:989
msgid "Help Options:"
msgstr "ÐаÑтройки на помощта:"
-#: ../glib/goption.c:978
+#: glib/goption.c:990
msgid "Show help options"
msgstr "Показване на наÑтройките на помощта"
-#: ../glib/goption.c:984
+#: glib/goption.c:996
msgid "Show all help options"
msgstr "Показване на вÑички наÑтройки на помощта"
-#: ../glib/goption.c:1047
+#: glib/goption.c:1059
msgid "Application Options:"
msgstr "ÐаÑтройки на приложението:"
-#: ../glib/goption.c:1049
+#: glib/goption.c:1061
msgid "Options:"
msgstr "ÐаÑтройки:"
-#: ../glib/goption.c:1113 ../glib/goption.c:1183
+#: glib/goption.c:1125 glib/goption.c:1195
#, c-format
-msgid "Cannot parse integer value '%s' for %s"
+msgid "Cannot parse integer value “%s†for %s"
msgstr "Ðе може да Ñе анализира целочиÑлената ÑтойноÑÑ‚ „%s“ за %s"
-#: ../glib/goption.c:1123 ../glib/goption.c:1191
+#: glib/goption.c:1135 glib/goption.c:1203
#, c-format
-msgid "Integer value '%s' for %s out of range"
+msgid "Integer value “%s†for %s out of range"
msgstr ""
"ЦелочиÑлената ÑтойноÑÑ‚ „%s“ за %s е извън интервала на допуÑтимите ÑтойноÑти"
-#: ../glib/goption.c:1148
+#: glib/goption.c:1160
#, c-format
-msgid "Cannot parse double value '%s' for %s"
+msgid "Cannot parse double value “%s†for %s"
msgstr ""
"Ðе може да Ñе анализира ÑтойноÑтта Ñ Ð¿Ð¾Ð²Ð¸ÑˆÐµÐ½Ð° точноÑÑ‚ double „%s“ за %s"
-#: ../glib/goption.c:1156
+#: glib/goption.c:1168
#, c-format
-msgid "Double value '%s' for %s out of range"
+msgid "Double value “%s†for %s out of range"
msgstr ""
"СтойноÑтта Ñ Ð¿Ð¾Ð²Ð¸ÑˆÐµÐ½Ð° точноÑÑ‚ — double „%s“ за %s е извън интервала на "
"допуÑтимите ÑтойноÑти"
-#: ../glib/goption.c:1442 ../glib/goption.c:1521
+#: glib/goption.c:1460 glib/goption.c:1539
#, c-format
msgid "Error parsing option %s"
-msgstr "Грешка при анализа на опциÑта: %s"
+msgstr "Грешка при анализа на опциÑта „%s“"
-#: ../glib/goption.c:1552 ../glib/goption.c:1665
+#: glib/goption.c:1561 glib/goption.c:1674
#, c-format
msgid "Missing argument for %s"
-msgstr "ЛипÑва аргумент за %s"
+msgstr "ЛипÑва аргумент за „%s“"
-#: ../glib/goption.c:2126
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
-msgstr "Ðепозната Ð¾Ð¿Ñ†Ð¸Ñ %s"
+msgstr "Ðепозната Ð¾Ð¿Ñ†Ð¸Ñ â€ž%s“"
-#: ../glib/gregex.c:258
+#: glib/gregex.c:255
msgid "corrupted object"
msgstr "повреден обект"
-#: ../glib/gregex.c:260
+#: glib/gregex.c:257
msgid "internal error or corrupted object"
msgstr "вътрешна грешка или повреден обект"
-#: ../glib/gregex.c:262
+#: glib/gregex.c:259
msgid "out of memory"
msgstr "недоÑтатъчно памет"
-#: ../glib/gregex.c:267
+#: glib/gregex.c:264
msgid "backtracking limit reached"
msgstr "доÑтигната е границата на обратното връщане"
-#: ../glib/gregex.c:279 ../glib/gregex.c:287
+#: glib/gregex.c:276 glib/gregex.c:284
msgid "the pattern contains items not supported for partial matching"
msgstr ""
"шаблонът Ñъдържа елементи, които не Ñе поддържат при чаÑтично Ñъвпадение"
-#: ../glib/gregex.c:289
+#: glib/gregex.c:278
+msgid "internal error"
+msgstr "вътрешна грешка"
+
+#: glib/gregex.c:286
msgid "back references as conditions are not supported for partial matching"
msgstr ""
"обратните указатели не Ñе поддържат като уÑловие при чаÑтично Ñъвпадение"
-#: ../glib/gregex.c:298
+#: glib/gregex.c:295
msgid "recursion limit reached"
msgstr "прекалено дълбока рекурÑиÑ"
-#: ../glib/gregex.c:300
+#: glib/gregex.c:297
msgid "invalid combination of newline flags"
msgstr "неправилна ÐºÐ¾Ð¼Ð±Ð¸Ð½Ð°Ñ†Ð¸Ñ Ð¾Ñ‚ флагове за нов ред"
-#: ../glib/gregex.c:302
+#: glib/gregex.c:299
msgid "bad offset"
msgstr "неправилно отмеÑтване"
-#: ../glib/gregex.c:304
+#: glib/gregex.c:301
msgid "short utf8"
msgstr "прекалено ÐºÑŠÑ UTF-8"
-#: ../glib/gregex.c:306
+#: glib/gregex.c:303
msgid "recursion loop"
msgstr "зациклÑне при рекурÑиÑ"
-#: ../glib/gregex.c:310
+#: glib/gregex.c:307
msgid "unknown error"
msgstr "непозната грешка"
-#: ../glib/gregex.c:330
+#: glib/gregex.c:327
msgid "\\ at end of pattern"
msgstr "„\\“ в ÐºÑ€Ð°Ñ Ð½Ð° шаблон"
-#: ../glib/gregex.c:333
+#: glib/gregex.c:330
msgid "\\c at end of pattern"
msgstr "„\\c“ в ÐºÑ€Ð°Ñ Ð½Ð° шаблон"
-#: ../glib/gregex.c:336
+#: glib/gregex.c:333
msgid "unrecognized character following \\"
msgstr "Ñлед „\\“ Ñледва непознат знак"
-#: ../glib/gregex.c:339
+#: glib/gregex.c:336
msgid "numbers out of order in {} quantifier"
msgstr "чиÑлата не Ñа в правилен ред в определението за брой Ñ â€ž{}“"
-#: ../glib/gregex.c:342
+#: glib/gregex.c:339
msgid "number too big in {} quantifier"
msgstr "прекалено голÑмо чиÑло в определението за брой Ñ â€ž{}“"
-#: ../glib/gregex.c:345
+#: glib/gregex.c:342
msgid "missing terminating ] for character class"
msgstr "липÑва завършващ знак „]“ за ÐºÐ»Ð°Ñ Ð¾Ñ‚ знаци"
-#: ../glib/gregex.c:348
+#: glib/gregex.c:345
msgid "invalid escape sequence in character class"
msgstr "грешна екранираща поÑледователноÑÑ‚ в клаÑа от знаци"
-#: ../glib/gregex.c:351
+#: glib/gregex.c:348
msgid "range out of order in character class"
msgstr "знаците Ñа в неправилен ред в клаÑа от знаци"
-#: ../glib/gregex.c:354
+#: glib/gregex.c:351
msgid "nothing to repeat"
msgstr "нÑма какво да Ñе повтори"
-#: ../glib/gregex.c:358
+#: glib/gregex.c:355
msgid "unexpected repeat"
msgstr "неочаквано повторение"
-#: ../glib/gregex.c:361
+#: glib/gregex.c:358
msgid "unrecognized character after (? or (?-"
msgstr "непознат знак Ñлед „(?“ или „(?-“"
-#: ../glib/gregex.c:364
+#: glib/gregex.c:361
msgid "POSIX named classes are supported only within a class"
msgstr "именованите клаÑове от POSIX Ñе поддържат Ñамо в клаÑ"
-#: ../glib/gregex.c:367
+#: glib/gregex.c:364
msgid "missing terminating )"
msgstr "липÑва завършваща „)“"
-#: ../glib/gregex.c:370
+#: glib/gregex.c:367
msgid "reference to non-existent subpattern"
msgstr "указател към неÑъщеÑтвуващ подшаблон"
-#: ../glib/gregex.c:373
+#: glib/gregex.c:370
msgid "missing ) after comment"
msgstr "липÑва „)“ Ñлед коментар"
-#: ../glib/gregex.c:376
+#: glib/gregex.c:373
msgid "regular expression is too large"
msgstr "регулÑрниÑÑ‚ израз е прекалено голÑм"
-#: ../glib/gregex.c:379
+#: glib/gregex.c:376
msgid "failed to get memory"
msgstr "неуÑпешно получаване на памет"
-#: ../glib/gregex.c:383
+#: glib/gregex.c:380
msgid ") without opening ("
msgstr "„)“ без отварÑща „(“"
-#: ../glib/gregex.c:387
+#: glib/gregex.c:384
msgid "code overflow"
msgstr "препълване на кода"
-#: ../glib/gregex.c:391
+#: glib/gregex.c:388
msgid "unrecognized character after (?<"
msgstr "непознат знак Ñлед „(?<“"
-#: ../glib/gregex.c:394
+#: glib/gregex.c:391
msgid "lookbehind assertion is not fixed length"
msgstr "предположението за преглед назад не е Ñ Ð¿Ð¾ÑтоÑнна дължина"
-#: ../glib/gregex.c:397
+#: glib/gregex.c:394
msgid "malformed number or name after (?("
msgstr "неправилен номер или име Ñлед „(?(“"
-#: ../glib/gregex.c:400
+#: glib/gregex.c:397
msgid "conditional group contains more than two branches"
msgstr "уÑловната група Ñъдържа повече от две разклонениÑ"
-#: ../glib/gregex.c:403
+#: glib/gregex.c:400
msgid "assertion expected after (?("
msgstr "очаква Ñе предположение Ñлед „(?(“"
#. translators: '(?R' and '(?[+-]digits' are both meant as (groups of)
#. * sequences here, '(?-54' would be an example for the second group.
#.
-#: ../glib/gregex.c:410
+#: glib/gregex.c:407
msgid "(?R or (?[+-]digits must be followed by )"
msgstr "„(?R“ или „(?[+-]цифри“ Ñ‚Ñ€Ñбва да Ñе Ñледват от „)“"
-#: ../glib/gregex.c:413
+#: glib/gregex.c:410
msgid "unknown POSIX class name"
msgstr "непознато име на ÐºÐ»Ð°Ñ Ð¿Ð¾ POSIX"
-#: ../glib/gregex.c:416
+#: glib/gregex.c:413
msgid "POSIX collating elements are not supported"
msgstr "не Ñе поддържат елементи на POSIX за подредба"
-#: ../glib/gregex.c:419
+#: glib/gregex.c:416
msgid "character value in \\x{...} sequence is too large"
msgstr "знаковата ÑтойноÑÑ‚ в поÑледователноÑтта „\\x{…}“ е прекалено голÑма"
-#: ../glib/gregex.c:422
+#: glib/gregex.c:419
msgid "invalid condition (?(0)"
msgstr "неправилно уÑловие „(?(0)“"
-#: ../glib/gregex.c:425
+#: glib/gregex.c:422
msgid "\\C not allowed in lookbehind assertion"
msgstr "предположението за преглед назад не може да Ñъдържа „\\C“"
-#: ../glib/gregex.c:432
+#: glib/gregex.c:429
msgid "escapes \\L, \\l, \\N{name}, \\U, and \\u are not supported"
msgstr "екранираниÑта „\\L“, „\\l“, „\\N{name}“, „\\U“ и „\\u“ не Ñе поддържат"
-#: ../glib/gregex.c:435
+#: glib/gregex.c:432
msgid "recursive call could loop indefinitely"
msgstr "рекурÑивно извикване може да доведе до безкраен цикъл"
-#: ../glib/gregex.c:439
+#: glib/gregex.c:436
msgid "unrecognized character after (?P"
msgstr "непознат знак Ñлед „(?P“"
-#: ../glib/gregex.c:442
+#: glib/gregex.c:439
msgid "missing terminator in subpattern name"
msgstr "липÑва краен знак в име на подшаблон"
-#: ../glib/gregex.c:445
+#: glib/gregex.c:442
msgid "two named subpatterns have the same name"
msgstr "два именовани подшаблона Ñа Ñ ÐµÐ´Ð½Ð°ÐºÐ²Ð¾ име"
-#: ../glib/gregex.c:448
+#: glib/gregex.c:445
msgid "malformed \\P or \\p sequence"
msgstr "неправилни поÑледователноÑти „\\P“ или „\\p“"
-#: ../glib/gregex.c:451
+#: glib/gregex.c:448
msgid "unknown property name after \\P or \\p"
msgstr "непознато име на ÑвойÑтво Ñлед „\\P“ или „\\p“"
-#: ../glib/gregex.c:454
+#: glib/gregex.c:451
msgid "subpattern name is too long (maximum 32 characters)"
msgstr "името на подшаблон е прекалено дълго (макÑимално е 32 знака)"
-#: ../glib/gregex.c:457
+#: glib/gregex.c:454
msgid "too many named subpatterns (maximum 10,000)"
msgstr "прекалено много именовани подшаблони (макÑимумът е 10 000)"
-#: ../glib/gregex.c:460
+#: glib/gregex.c:457
msgid "octal value is greater than \\377"
msgstr "оÑмичната ÑтойноÑÑ‚ е по-голÑма от „\\377“"
-#: ../glib/gregex.c:464
+#: glib/gregex.c:461
msgid "overran compiling workspace"
msgstr "надхвърлено е работното проÑтранÑтво за компилациÑ"
-#: ../glib/gregex.c:468
+#: glib/gregex.c:465
msgid "previously-checked referenced subpattern not found"
msgstr "не е открит указан предварително проверен подшаблон"
-#: ../glib/gregex.c:471
+#: glib/gregex.c:468
msgid "DEFINE group contains more than one branch"
-msgstr "групата DEFINE Ñъдържа повече от едно разклонение"
+msgstr "група „DEFINE“ Ñъдържа повече от едно разклонение"
-#: ../glib/gregex.c:474
+#: glib/gregex.c:471
msgid "inconsistent NEWLINE options"
msgstr "неÑъвмеÑтими опции за нов ред"
-#: ../glib/gregex.c:477
+#: glib/gregex.c:474
msgid ""
"\\g is not followed by a braced, angle-bracketed, or quoted name or number, "
"or by a plain number"
@@ -4276,482 +5782,599 @@ msgstr ""
"„\\g“ не е поÑледвано от име, чиÑло във фигурни или квадратни Ñкоби, "
"цитирано име или обикновено чиÑло"
-#: ../glib/gregex.c:481
+#: glib/gregex.c:478
msgid "a numbered reference must not be zero"
msgstr "номерираниÑÑ‚ указател не Ñ‚Ñ€Ñбва да е „0“"
-#: ../glib/gregex.c:484
+#: glib/gregex.c:481
msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
msgstr "„(*ACCEPT)“, „(*FAIL)“ и „(*COMMIT)“ не приемат аргументи"
-#: ../glib/gregex.c:487
+#: glib/gregex.c:484
msgid "(*VERB) not recognized"
msgstr "неразпознат „(*ГЛÐГОЛ)“"
-#: ../glib/gregex.c:490
+#: glib/gregex.c:487
msgid "number is too big"
msgstr "чиÑлото е прекалено голÑмо"
-#: ../glib/gregex.c:493
+#: glib/gregex.c:490
msgid "missing subpattern name after (?&"
msgstr "липÑва име на подшаблон Ñлед „(?&“"
-#: ../glib/gregex.c:496
+#: glib/gregex.c:493
msgid "digit expected after (?+"
msgstr "очаква Ñе цифра Ñлед „(?+“"
-#: ../glib/gregex.c:499
+#: glib/gregex.c:496
msgid "] is an invalid data character in JavaScript compatibility mode"
msgstr "„]“ е неправилен знак за данни в режима ÑъвмеÑтим Ñ JavaScript"
-#: ../glib/gregex.c:502
+#: glib/gregex.c:499
msgid "different names for subpatterns of the same number are not allowed"
msgstr "не Ñа позволени различни имена за подшаблони Ñ ÐµÐ´Ð½Ð°ÐºÑŠÐ² номер"
-#: ../glib/gregex.c:505
+#: glib/gregex.c:502
msgid "(*MARK) must have an argument"
msgstr "„(*MARK)“ изиÑква аргумент"
-#: ../glib/gregex.c:508
+#: glib/gregex.c:505
msgid "\\c must be followed by an ASCII character"
msgstr "„\\c“ Ñ‚Ñ€Ñбва да Ñе Ñледва от знак от ASCII"
-#: ../glib/gregex.c:511
+#: glib/gregex.c:508
msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
msgstr ""
"„\\k“ не е поÑледвано от име във фигурни или квадратни Ñкоби или от цитирано "
"име"
-#: ../glib/gregex.c:514
+#: glib/gregex.c:511
msgid "\\N is not supported in a class"
msgstr "„\\N“ не Ñе поддържа в клаÑ"
-#: ../glib/gregex.c:517
+#: glib/gregex.c:514
msgid "too many forward references"
-msgstr "прекалено много прави указатели"
+msgstr "прекалено много указатели напред"
-#: ../glib/gregex.c:520
+#: glib/gregex.c:517
msgid "name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)"
msgstr ""
"името е прекалено дълго за „(*MARK)“, „(*PRUNE)“, „(*SKIP)“ и „(*THEN)“"
-#: ../glib/gregex.c:523
+#: glib/gregex.c:520
msgid "character value in \\u.... sequence is too large"
msgstr "знаковата ÑтойноÑÑ‚ в поÑледователноÑтта „\\u…“ е прекалено голÑма"
-#: ../glib/gregex.c:746 ../glib/gregex.c:1973
+#: glib/gregex.c:743 glib/gregex.c:1988
#, c-format
msgid "Error while matching regular expression %s: %s"
-msgstr "Грешка %2$s при напаÑването на регулÑÑ€Ð½Ð¸Ñ Ð¸Ð·Ñ€Ð°Ð· — %1$s"
+msgstr "Грешка при напаÑването на регулÑÑ€Ð½Ð¸Ñ Ð¸Ð·Ñ€Ð°Ð· „%s“: %s"
-#: ../glib/gregex.c:1317
+#: glib/gregex.c:1321
msgid "PCRE library is compiled without UTF8 support"
msgstr "Библиотеката PCRE е компилирана без поддръжка на UTF-8"
-#: ../glib/gregex.c:1321
+#: glib/gregex.c:1325
msgid "PCRE library is compiled without UTF8 properties support"
msgstr "Библиотеката PCRE е компилирана без поддръжка на наÑтройки в UTF-8"
-#: ../glib/gregex.c:1329
+#: glib/gregex.c:1333
msgid "PCRE library is compiled with incompatible options"
msgstr "Библиотеката PCRE е компилирана Ñ Ð½ÐµÑъвмеÑтими опции"
-#: ../glib/gregex.c:1358
+#: glib/gregex.c:1362
#, c-format
msgid "Error while optimizing regular expression %s: %s"
msgstr "Грешка при оптимизирането на регулÑÑ€Ð½Ð¸Ñ Ð¸Ð·Ñ€Ð°Ð· %s: %s"
-#: ../glib/gregex.c:1438
+#: glib/gregex.c:1442
#, c-format
msgid "Error while compiling regular expression %s at char %d: %s"
msgstr "Грешка при компилирането на регулÑÑ€Ð½Ð¸Ñ Ð¸Ð·Ñ€Ð°Ð· %s, знак %d: %s"
-#: ../glib/gregex.c:2409
-msgid "hexadecimal digit or '}' expected"
+#: glib/gregex.c:2427
+msgid "hexadecimal digit or “}†expected"
msgstr "очаква Ñе шеÑтнадеÑетично чиÑло или „}“"
-#: ../glib/gregex.c:2425
+#: glib/gregex.c:2443
msgid "hexadecimal digit expected"
msgstr "очаква Ñе шеÑтнадеÑетично чиÑло"
-#: ../glib/gregex.c:2465
-msgid "missing '<' in symbolic reference"
+#: glib/gregex.c:2483
+msgid "missing “<†in symbolic reference"
msgstr "в ÑÐ¸Ð¼Ð²Ð¾Ð»Ð½Ð¸Ñ ÑƒÐºÐ°Ð·Ð°Ñ‚ÐµÐ» липÑва „<“"
-#: ../glib/gregex.c:2474
+#: glib/gregex.c:2492
msgid "unfinished symbolic reference"
msgstr "незавършен Ñимволен указател"
-#: ../glib/gregex.c:2481
+#: glib/gregex.c:2499
msgid "zero-length symbolic reference"
msgstr "Ñимволен указател Ñ Ð½ÑƒÐ»ÐµÐ²Ð° дължина"
-#: ../glib/gregex.c:2492
+#: glib/gregex.c:2510
msgid "digit expected"
msgstr "очаква Ñе цифра"
-#: ../glib/gregex.c:2510
+#: glib/gregex.c:2528
msgid "illegal symbolic reference"
msgstr "неправилен Ñимволен указател"
-#: ../glib/gregex.c:2572
-msgid "stray final '\\'"
+#: glib/gregex.c:2591
+msgid "stray final “\\â€"
msgstr "в ÐºÑ€Ð°Ñ Ð¸Ð¼Ð° един знак „\\“ в повече"
-#: ../glib/gregex.c:2576
+#: glib/gregex.c:2595
msgid "unknown escape sequence"
msgstr "непозната екранираща поÑледователноÑÑ‚"
-#: ../glib/gregex.c:2586
+#: glib/gregex.c:2605
#, c-format
-msgid "Error while parsing replacement text \"%s\" at char %lu: %s"
-msgstr "Грешка при анализа на текÑта за замÑна „%s“, знак %lu: %s"
+msgid "Error while parsing replacement text “%s†at char %lu: %s"
+msgstr "Грешка при анализа на текÑта за замÑна „%s“ при знак %lu: %s"
-#: ../glib/gshell.c:96
-msgid "Quoted text doesn't begin with a quotation mark"
-msgstr "Цитиран текÑÑ‚ не започва ÑÑŠÑ Ð·Ð½Ð°ÐºÐ° „\"“"
+#: glib/gshell.c:96
+msgid "Quoted text doesn’t begin with a quotation mark"
+msgstr "Цитиран текÑÑ‚ не започва ÑÑŠÑ Ð·Ð½Ð°ÐºÐ° „\"“ или „'“"
-#: ../glib/gshell.c:186
+#: glib/gshell.c:186
msgid "Unmatched quotation mark in command line or other shell-quoted text"
msgstr ""
"ЛипÑват затварÑщи кавички в команден ред или друг текÑÑ‚ цитиран за обвивката"
-#: ../glib/gshell.c:582
+#: glib/gshell.c:592
#, c-format
-msgid "Text ended just after a '\\' character. (The text was '%s')"
-msgstr "ТекÑÑ‚ÑŠÑ‚ Ñвърши веднага Ñлед знака „\\“. (ТекÑÑ‚ÑŠÑ‚ е „%s“)"
+msgid "Text ended just after a “\\†character. (The text was “%sâ€)"
+msgstr "ТекÑÑ‚ÑŠÑ‚ Ñвърши веднага Ñлед знак „\\“. (ТекÑÑ‚ÑŠÑ‚ е „%s“)"
-#: ../glib/gshell.c:589
+#: glib/gshell.c:599
#, c-format
-msgid "Text ended before matching quote was found for %c. (The text was '%s')"
+msgid "Text ended before matching quote was found for %c. (The text was “%sâ€)"
msgstr ""
-"ТекÑÑ‚ÑŠÑ‚ Ñвърши преди откриването на затварÑщи кавички за %c. (ТекÑÑ‚ÑŠÑ‚ е „%s“)"
+"ТекÑÑ‚ÑŠÑ‚ Ñвърши преди откриването на затварÑщи кавички за „%c“. (ТекÑÑ‚ÑŠÑ‚ е "
+"„%s“)"
-#: ../glib/gshell.c:601
+#: glib/gshell.c:611
msgid "Text was empty (or contained only whitespace)"
msgstr "ТекÑÑ‚ÑŠÑ‚ е празен (или Ñъдържа Ñамо празни знаци)"
-#: ../glib/gspawn.c:209
+#: glib/gspawn.c:310
#, c-format
msgid "Failed to read data from child process (%s)"
msgstr "ÐеуÑпешно четене на данни от дъщерен Ð¿Ñ€Ð¾Ñ†ÐµÑ (%s)"
-#: ../glib/gspawn.c:353
+#: glib/gspawn.c:462
#, c-format
-msgid "Unexpected error in select() reading data from a child process (%s)"
+msgid "Unexpected error in reading data from a child process (%s)"
msgstr ""
-"Ðеочаквана грешка в select() при четене на данни от дъщерен Ð¿Ñ€Ð¾Ñ†ÐµÑ (%s)"
+"Ðеочаквана грешка в „select()“ при четене на данни от дъщерен Ð¿Ñ€Ð¾Ñ†ÐµÑ (%s)"
-#: ../glib/gspawn.c:438
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
-msgstr "Ðеочаквана грешка в waitpid() (%s)"
+msgstr "Ðеочаквана грешка в „waitpid()“ (%s)"
-#: ../glib/gspawn.c:844 ../glib/gspawn-win32.c:1233
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "ДъщерниÑÑ‚ Ð¿Ñ€Ð¾Ñ†ÐµÑ Ð·Ð°Ð²ÑŠÑ€ÑˆÐ¸ Ñ ÐºÐ¾Ð´ %ld"
-#: ../glib/gspawn.c:852
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "ДъщерниÑÑ‚ Ð¿Ñ€Ð¾Ñ†ÐµÑ Ð±Ðµ убит от Ñигнал %ld"
-#: ../glib/gspawn.c:859
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "ДъщерниÑÑ‚ Ð¿Ñ€Ð¾Ñ†ÐµÑ Ð±Ðµ ÑпрÑн от Ñигнал %ld"
-#: ../glib/gspawn.c:866
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "ДъщерниÑÑ‚ Ð¿Ñ€Ð¾Ñ†ÐµÑ Ð·Ð°Ð²ÑŠÑ€ÑˆÐ¸ аварийно"
-#: ../glib/gspawn.c:1271 ../glib/gspawn-win32.c:339 ../glib/gspawn-win32.c:347
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "ÐеуÑпешно четене от дъщерен канал (%s)"
-#: ../glib/gspawn.c:1341
+#: glib/gspawn.c:2253
+#, c-format
+msgid "Failed to spawn child process “%s†(%s)"
+msgstr "ÐеуÑпешно пораждане на дъщерен Ð¿Ñ€Ð¾Ñ†ÐµÑ â€ž%s“ (%s)"
+
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
-msgstr "ÐеуÑпешно разклонÑване (%s)"
+msgstr "ÐеуÑпешно пораждане (%s)"
-#: ../glib/gspawn.c:1490 ../glib/gspawn-win32.c:370
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
-msgid "Failed to change to directory '%s' (%s)"
+msgid "Failed to change to directory “%s†(%s)"
msgstr "ÐеуÑпешна ÑмÑна към папка „%s“ (%s)"
-#: ../glib/gspawn.c:1500
+#: glib/gspawn.c:2540
#, c-format
-msgid "Failed to execute child process \"%s\" (%s)"
+msgid "Failed to execute child process “%s†(%s)"
msgstr "ÐеуÑпешно изпълнение на дъщерен Ð¿Ñ€Ð¾Ñ†ÐµÑ â€ž%s“ (%s)"
-#: ../glib/gspawn.c:1510
+#: glib/gspawn.c:2550
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "ÐеуÑпешно пренаÑочване на изхода или входа на дъщерен Ð¿Ñ€Ð¾Ñ†ÐµÑ (%s)"
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "ÐеуÑпешно отварÑне на файл за замеÑтване на файлов деÑкриптор (%s)"
-#: ../glib/gspawn.c:1519
+#: glib/gspawn.c:2558
+#, c-format
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "ÐеуÑпешно дублиране на файлов деÑкриптор за дъщерен Ð¿Ñ€Ð¾Ñ†ÐµÑ (%s)"
+
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "ÐеуÑпешно разклонÑване на дъщерен Ð¿Ñ€Ð¾Ñ†ÐµÑ (%s)"
-#: ../glib/gspawn.c:1527
+#: glib/gspawn.c:2575
+#, c-format
+msgid "Failed to close file descriptor for child process (%s)"
+msgstr "ÐеуÑпешно затварÑне на Ñ„Ð°Ð¹Ð»Ð¾Ð²Ð¸Ñ Ð´ÐµÑкриптор на дъщерен Ð¿Ñ€Ð¾Ñ†ÐµÑ (%s)"
+
+#: glib/gspawn.c:2583
#, c-format
-msgid "Unknown error executing child process \"%s\""
+msgid "Unknown error executing child process “%sâ€"
msgstr "ÐеизвеÑтна грешка при изпълнение на дъщерен Ð¿Ñ€Ð¾Ñ†ÐµÑ â€ž%s“"
-#: ../glib/gspawn.c:1551
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr ""
"ÐеуÑпешно четене на доÑтатъчно данни от канала на дъщерен Ð¿Ñ€Ð¾Ñ†ÐµÑ (Ñ "
"идентификатор %s)"
-#: ../glib/gspawn-win32.c:283
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "ÐеуÑпешно четене на данни от дъщерен процеÑ"
-#: ../glib/gspawn-win32.c:300
-#, c-format
-msgid "Failed to create pipe for communicating with child process (%s)"
-msgstr "ÐеуÑпешно Ñъздаване на канал за ÐºÐ¾Ð¼ÑƒÐ½Ð¸ÐºÐ°Ñ†Ð¸Ñ Ñ Ð´ÑŠÑ‰ÐµÑ€ÐµÐ½ Ð¿Ñ€Ð¾Ñ†ÐµÑ (%s)"
-
-#: ../glib/gspawn-win32.c:376 ../glib/gspawn-win32.c:495
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "ÐеуÑпешно изпълнение на дъщерен Ð¿Ñ€Ð¾Ñ†ÐµÑ (%s)"
-#: ../glib/gspawn-win32.c:445
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "ÐеуÑпешно разклонÑване на дъщерен Ð¿Ñ€Ð¾Ñ†ÐµÑ Ñ‡Ñ€ÐµÐ· „dup()“ (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Ðеправилно име на програма: %s"
-#: ../glib/gspawn-win32.c:455 ../glib/gspawn-win32.c:722
-#: ../glib/gspawn-win32.c:1297
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Ðеправилен низ във вектора Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ð¸ на Ð¿Ð¾Ð·Ð¸Ñ†Ð¸Ñ %d: %s"
-#: ../glib/gspawn-win32.c:466 ../glib/gspawn-win32.c:737
-#: ../glib/gspawn-win32.c:1330
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Ðеправилен низ в Ñредата: %s"
-#: ../glib/gspawn-win32.c:718 ../glib/gspawn-win32.c:1278
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Ðеправилна работна папка: %s"
-#: ../glib/gspawn-win32.c:783
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "ÐеуÑпешно изпълнение на програмата за помощта (%s)"
-#: ../glib/gspawn-win32.c:997
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
msgstr ""
-"Ðеочаквана грешка в g_io_channel_win32_poll() при четене на данни от дъщерен "
-"процеÑ"
+"Ðеочаквана грешка в „g_io_channel_win32_poll()“ при четене на данни от "
+"дъщерен процеÑ"
-#: ../glib/gutf8.c:795
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
+msgid "Empty string is not a number"
+msgstr "Празен низ не е чиÑло"
+
+#: glib/gstrfuncs.c:3375
+#, c-format
+msgid "“%s†is not a signed number"
+msgstr "„%s“ е чиÑло ÑÑŠÑ Ð·Ð½Ð°Ðº"
+
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
+#, c-format
+msgid "Number “%s†is out of bounds [%s, %s]"
+msgstr "ЧиÑлото „%s“ е извън диапазона на допуÑтимите ÑтойноÑти [%s, %s]"
+
+#: glib/gstrfuncs.c:3479
+#, c-format
+msgid "“%s†is not an unsigned number"
+msgstr "„%s“ не е чиÑло без знак"
+
+#: glib/guri.c:315
+#, no-c-format
+msgid "Invalid %-encoding in URI"
+msgstr "Ðеправилно кодиране Ñ â€ž%“ в адреÑ"
+
+#: glib/guri.c:332
+msgid "Illegal character in URI"
+msgstr "Ðеправилен знак в адреÑ"
+
+#: glib/guri.c:366
+msgid "Non-UTF-8 characters in URI"
+msgstr "Знаци в адреÑ, които не Ñа UTF-8"
+
+#: glib/guri.c:546
+#, c-format
+msgid "Invalid IPv6 address ‘%.*s’ in URI"
+msgstr "Ðеправилен Ð·Ð°Ð¿Ð¸Ñ Ð·Ð° IPv6 „%.*s“ в адреÑа"
+
+#: glib/guri.c:601
+#, c-format
+msgid "Illegal encoded IP address ‘%.*s’ in URI"
+msgstr "Ðеправилен Ð·Ð°Ð¿Ð¸Ñ Ð·Ð° IP „%.*s“ в адреÑа"
+
+#: glib/guri.c:613
+#, c-format
+msgid "Illegal internationalized hostname ‘%.*s’ in URI"
+msgstr "Ðеправилно име не на латиница „%.*s“ в адреÑа"
+
+#: glib/guri.c:645 glib/guri.c:657
+#, c-format
+msgid "Could not parse port ‘%.*s’ in URI"
+msgstr "Портът в адреÑа „%.*s“ не може да Ñе анализира"
+
+#: glib/guri.c:664
+#, c-format
+msgid "Port ‘%.*s’ in URI is out of range"
+msgstr "Портът в адреÑа „%.*s“ е извън допуÑÑ‚Ð¸Ð¼Ð¸Ñ Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½"
+
+#: glib/guri.c:1224 glib/guri.c:1288
+#, c-format
+msgid "URI ‘%s’ is not an absolute URI"
+msgstr "ÐдреÑÑŠÑ‚ „%s“ не е абÑолютен"
+
+#: glib/guri.c:1230
+#, c-format
+msgid "URI ‘%s’ has no host component"
+msgstr "ЛипÑва хоÑÑ‚ в адреÑа „%s“"
+
+#: glib/guri.c:1460
+msgid "URI is not absolute, and no base URI was provided"
+msgstr "ÐдреÑÑŠÑ‚ не абÑолютен, а не е зададен базов адреÑ"
+
+#: glib/guri.c:2238
+msgid "Missing ‘=’ and parameter value"
+msgstr "ЛипÑва „=“ и ÑтойноÑÑ‚ на параметъра"
+
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "ÐеуÑпешно заделÑне на памет"
-#: ../glib/gutf8.c:928
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Знак извън обхвата на UTF-8"
-#: ../glib/gutf8.c:1029 ../glib/gutf8.c:1038 ../glib/gutf8.c:1168
-#: ../glib/gutf8.c:1177 ../glib/gutf8.c:1316 ../glib/gutf8.c:1413
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Ðеправилна поÑледователноÑÑ‚ на входа"
-#: ../glib/gutf8.c:1327 ../glib/gutf8.c:1424
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Знак извън обхвата на UTF-16"
-#: ../glib/gutils.c:2117 ../glib/gutils.c:2144 ../glib/gutils.c:2250
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2849
#, c-format
-msgid "%u byte"
-msgid_plural "%u bytes"
-msgstr[0] "%u B"
-msgstr[1] "%u B"
+msgid "%.1f kB"
+msgstr "%.1f kB"
-#: ../glib/gutils.c:2123
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2851
#, c-format
-msgid "%.1f KiB"
-msgstr "%.1f KiB"
+msgid "%.1f MB"
+msgstr "%.1f MB"
-#: ../glib/gutils.c:2125
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2853
#, c-format
-msgid "%.1f MiB"
-msgstr "%.1f MiB"
+msgid "%.1f GB"
+msgstr "%.1f GB"
-#: ../glib/gutils.c:2128
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2855
#, c-format
-msgid "%.1f GiB"
-msgstr "%.1f GiB"
+msgid "%.1f TB"
+msgstr "%.1f TB"
-#: ../glib/gutils.c:2131
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2857
#, c-format
-msgid "%.1f TiB"
-msgstr "%.1f TiB"
+msgid "%.1f PB"
+msgstr "%.1f PB"
-#: ../glib/gutils.c:2134
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2859
#, c-format
-msgid "%.1f PiB"
-msgstr "%.1f PiB"
+msgid "%.1f EB"
+msgstr "%.1f EB"
-#: ../glib/gutils.c:2137
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2863
#, c-format
-msgid "%.1f EiB"
-msgstr "%.1f EiB"
+msgid "%.1f KiB"
+msgstr "%.1f KiB"
-#: ../glib/gutils.c:2150
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2865
#, c-format
-msgid "%.1f kB"
-msgstr "%.1f kb"
+msgid "%.1f MiB"
+msgstr "%.1f MiB"
-#: ../glib/gutils.c:2153 ../glib/gutils.c:2268
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2867
#, c-format
-msgid "%.1f MB"
-msgstr "%.1f MB"
+msgid "%.1f GiB"
+msgstr "%.1f GiB"
-#: ../glib/gutils.c:2156 ../glib/gutils.c:2273
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2869
#, c-format
-msgid "%.1f GB"
-msgstr "%.1f GB"
+msgid "%.1f TiB"
+msgstr "%.1f TiB"
-#: ../glib/gutils.c:2158 ../glib/gutils.c:2278
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2871
#, c-format
-msgid "%.1f TB"
-msgstr "%.1f TB"
+msgid "%.1f PiB"
+msgstr "%.1f PiB"
-#: ../glib/gutils.c:2161 ../glib/gutils.c:2283
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2873
#, c-format
-msgid "%.1f PB"
-msgstr "%.1f PB"
+msgid "%.1f EiB"
+msgstr "%.1f EiB"
-#: ../glib/gutils.c:2164 ../glib/gutils.c:2288
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2877
#, c-format
-msgid "%.1f EB"
-msgstr "%.1f EB"
+msgid "%.1f kb"
+msgstr "%.1f kb"
-#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: ../glib/gutils.c:2201
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2879
#, c-format
-msgid "%s byte"
-msgid_plural "%s bytes"
-msgstr[0] "%s байт"
-msgstr[1] "%s байта"
+msgid "%.1f Mb"
+msgstr "%.1f Mb"
-#. Translators: this is from the deprecated function g_format_size_for_display() which uses 'KB' to
-#. * mean 1024 bytes. I am aware that 'KB' is not correct, but it has been preserved for reasons of
-#. * compatibility. Users will not see this string unless a program is using this deprecated function.
-#. * Please translate as literally as possible.
-#.
-#: ../glib/gutils.c:2263
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2881
#, c-format
-msgid "%.1f KB"
-msgstr "%.1f KB"
-
-msgctxt "full month name with day"
-msgid "January"
-msgstr "Ñнуари"
-
-msgctxt "full month name with day"
-msgid "February"
-msgstr "февруари"
-
-msgctxt "full month name with day"
-msgid "March"
-msgstr "март"
-
-msgctxt "full month name with day"
-msgid "April"
-msgstr "април"
-
-msgctxt "full month name with day"
-msgid "May"
-msgstr "май"
+msgid "%.1f Gb"
+msgstr "%.1f GB"
-msgctxt "full month name with day"
-msgid "June"
-msgstr "юни"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2883
+#, c-format
+msgid "%.1f Tb"
+msgstr "%.1f Tb"
-msgctxt "full month name with day"
-msgid "July"
-msgstr "юли"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2885
+#, c-format
+msgid "%.1f Pb"
+msgstr "%.1f Pb"
-msgctxt "full month name with day"
-msgid "August"
-msgstr "авгуÑÑ‚"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2887
+#, c-format
+msgid "%.1f Eb"
+msgstr "%.1f Eb"
-msgctxt "full month name with day"
-msgid "September"
-msgstr "Ñептември"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2891
+#, c-format
+msgid "%.1f Kib"
+msgstr "%.1f Kib"
-msgctxt "full month name with day"
-msgid "October"
-msgstr "октомври"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2893
+#, c-format
+msgid "%.1f Mib"
+msgstr "%.1f Mib"
-msgctxt "full month name with day"
-msgid "November"
-msgstr "ноември"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2895
+#, c-format
+msgid "%.1f Gib"
+msgstr "%.1f Gib"
-msgctxt "full month name with day"
-msgid "December"
-msgstr "декември"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2897
+#, c-format
+msgid "%.1f Tib"
+msgstr "%.1f Tib"
-msgctxt "abbreviated month name with day"
-msgid "Jan"
-msgstr "Ñну"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2899
+#, c-format
+msgid "%.1f Pib"
+msgstr "%.1f Pib"
-msgctxt "abbreviated month name with day"
-msgid "Feb"
-msgstr "фев"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2901
+#, c-format
+msgid "%.1f Eib"
+msgstr "%.1f Eib"
-msgctxt "abbreviated month name with day"
-msgid "Mar"
-msgstr "мар"
+#: glib/gutils.c:2935 glib/gutils.c:3052
+#, c-format
+msgid "%u byte"
+msgid_plural "%u bytes"
+msgstr[0] "%u B"
+msgstr[1] "%u B"
-msgctxt "abbreviated month name with day"
-msgid "Apr"
-msgstr "апр"
+#: glib/gutils.c:2939
+#, c-format
+msgid "%u bit"
+msgid_plural "%u bits"
+msgstr[0] "%u бит"
+msgstr[1] "%u бита"
-msgctxt "abbreviated month name with day"
-msgid "May"
-msgstr "май"
+#. Translators: the %s in "%s bytes" will always be replaced by a number.
+#: glib/gutils.c:3006
+#, c-format
+msgid "%s byte"
+msgid_plural "%s bytes"
+msgstr[0] "%s байт"
+msgstr[1] "%s байта"
-msgctxt "abbreviated month name with day"
-msgid "Jun"
-msgstr "юни"
+#. Translators: the %s in "%s bits" will always be replaced by a number.
+#: glib/gutils.c:3011
+#, c-format
+msgid "%s bit"
+msgid_plural "%s bits"
+msgstr[0] "%s бит"
+msgstr[1] "%s бита"
-msgctxt "abbreviated month name with day"
-msgid "Jul"
-msgstr "юли"
+#. Translators: this is from the deprecated function g_format_size_for_display() which uses 'KB' to
+#. * mean 1024 bytes. I am aware that 'KB' is not correct, but it has been preserved for reasons of
+#. * compatibility. Users will not see this string unless a program is using this deprecated function.
+#. * Please translate as literally as possible.
+#.
+#: glib/gutils.c:3065
+#, c-format
+msgid "%.1f KB"
+msgstr "%.1f KB"
-msgctxt "abbreviated month name with day"
-msgid "Aug"
-msgstr "авг"
+#: glib/gutils.c:3070
+#, c-format
+msgid "%.1f MB"
+msgstr "%.1f MB"
-msgctxt "abbreviated month name with day"
-msgid "Sep"
-msgstr "Ñеп"
+#: glib/gutils.c:3075
+#, c-format
+msgid "%.1f GB"
+msgstr "%.1f GB"
-msgctxt "abbreviated month name with day"
-msgid "Oct"
-msgstr "окт"
+#: glib/gutils.c:3080
+#, c-format
+msgid "%.1f TB"
+msgstr "%.1f TB"
-msgctxt "abbreviated month name with day"
-msgid "Nov"
-msgstr "ное"
+#: glib/gutils.c:3085
+#, c-format
+msgid "%.1f PB"
+msgstr "%.1f PB"
-msgctxt "abbreviated month name with day"
-msgid "Dec"
-msgstr "дек"
+#: glib/gutils.c:3090
+#, c-format
+msgid "%.1f EB"
+msgstr "%.1f EB"
diff --git a/po/ca.po b/po/ca.po
index a9fe6acc6..796544d88 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -6,15 +6,15 @@
# Sílvia Miranda <silvia@softcatala.cat>, 2011.
# Jordi Serratosa <jordis@softcatala.cat>, 2012, 2017.
# Gil Forcada <gilforcada@guifi.net>, 2008-2013, 2013, 2014, 2016.
-# Jordi Mas i Hernàndez <jmas@softcatala.org>, 2016, 2017, 2019, 2021
+# Jordi Mas i Hernàndez <jmas@softcatala.org>, 2016-2022
# Xavi Ivars <xavi.ivars@gmail.com>, 2017.
msgid ""
msgstr ""
"Project-Id-Version: glib 2.8\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-02-11 12:33+0000\n"
-"PO-Revision-Date: 2022-02-12 18:43+0100\n"
-"Last-Translator: maite guix <maite.guix@me.com>\n"
+"POT-Creation-Date: 2022-03-22 15:19+0000\n"
+"PO-Revision-Date: 2022-03-22 11:48+0100\n"
+"Last-Translator: Jordi Mas <jmas@softcatala.org>\n"
"Language-Team: Catalan <tradgnome@softcatala.org>\n"
"Language: ca\n"
"MIME-Version: 1.0\n"
@@ -24,6 +24,16 @@ msgstr ""
"X-Generator: Poedit 3.0.1\n"
"X-Project-Style: gnome\n"
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Encara no s'admeten les aplicacions per defecte"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"L'establiment de l'aplicació com a última utilitzada per al tipus encara no "
+"és compatible"
+
#: gio/gapplication.c:500
msgid "GApplication options"
msgstr "Opcions de la GApplication"
@@ -47,11 +57,12 @@ msgid "Replace the running instance"
msgstr "Reemplaça la instància en execució"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Mostra l'ajuda"
-#: gio/gapplication-tool.c:47 gio/gresource-tool.c:495 gio/gresource-tool.c:563
+#: gio/gapplication-tool.c:47 gio/gresource-tool.c:495
+#: gio/gresource-tool.c:563
msgid "[COMMAND]"
msgstr "[ORDRE]"
@@ -59,7 +70,7 @@ msgstr "[ORDRE]"
msgid "Print version"
msgstr "Mostra la versió"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Mostra la informació de la versió i surt"
@@ -123,15 +134,16 @@ msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr ""
"Identificador de l'aplicació en format D-Bus (p. ex.: org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "FITXER"
#: gio/gapplication-tool.c:74
msgid "Optional relative or absolute filenames, or URIs to open"
-msgstr "Noms de fitxers relatius opcionals o relatius, o URI que s'han d'obrir"
+msgstr ""
+"Noms de fitxers relatius opcionals o relatius, o URI que s'han d'obrir"
#: gio/gapplication-tool.c:75
msgid "ACTION"
@@ -149,7 +161,8 @@ msgstr "PARÀMETRE"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Paràmetre opcional per la invocació de l'acció, en format GVariant"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532
+#: gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -163,7 +176,7 @@ msgid "Usage:\n"
msgstr "Forma d'ús:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Arguments:\n"
@@ -290,7 +303,7 @@ msgstr "Ja està tancat el flux"
msgid "Truncate not supported on base stream"
msgstr "No es permet truncar en els fluxos base"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -311,7 +324,7 @@ msgstr "No hi ha prou espai a la destinació"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "La seqüència de bytes a l'entrada de conversió no és vàlida"
@@ -321,7 +334,7 @@ msgstr "La seqüència de bytes a l'entrada de conversió no és vàlida"
msgid "Error during conversion: %s"
msgstr "S'ha produït un error durant la conversió: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "La cancel·lació de la inicialització no està implementada"
@@ -335,39 +348,39 @@ msgstr "No es permet la conversió entre els jocs de caràcters «%s» i «%s»"
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "No s'ha pogut obrir el convertidor de «%s» a «%s»"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "tipus %s"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Tipus desconegut"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "tipus de fitxer %s"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials conté dades no vàlides"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "Aquest sistema operatiu no implementa les GCredentials"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "La vostra plataforma no implementa les GCredentials"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr ""
"Les GCredentials no contenen cap identificador de procés en aquest sistema "
"operatiu"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Aquest sistema operatiu no implementa el falsejament de credencials"
@@ -375,48 +388,48 @@ msgstr "Aquest sistema operatiu no implementa el falsejament de credencials"
msgid "Unexpected early end-of-stream"
msgstr "No s'esperava un final de flux tan aviat"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "No es permet la clau «%s» en l'entrada de l'adreça «%s»"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "L'entrada d'adreça «%s» té una parella clau/valor que no té sentit"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
"keys)"
msgstr ""
-"L'adreça «%s» no és vàlida (ha de ser, o bé un camí, o bé un tmpdir -"
-"directori temporal-, o bé unes claus abstractes)"
+"L'adreça «%s» no és vàlida (ha de ser, o bé un camí, o bé un tmpdir "
+"-directori temporal-, o bé unes claus abstractes)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Hi ha un error a l'adreça «%s» — l'atribut «%s» no està ben formatat"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr ""
"El transport «%s» per a l'adreça «%s» és desconegut o no està implementat"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "L'element d'adreça «%s» no conté dos punts (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "El nom del transport a l'adreça a l'element «%s» no pot estar buit"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -425,7 +438,7 @@ msgstr ""
"La parella de clau/valor %d, «%s», a l'element d'adreça «%s», no conté un "
"signe d'igual"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
@@ -433,16 +446,16 @@ msgstr ""
"La parella de clau/valor %d, «%s», a l'element d'adreça «%s», no conté un "
"signe d'igual"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
-"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
-"“%sâ€"
+"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element"
+" “%sâ€"
msgstr ""
-"S'ha produït un error en suprimir l'escapament d'una clau o d'un valor en la "
-"parella clau/valor %d, «%s», de l'element d'adreça «%s»"
+"S'ha produït un error en suprimir l'escapament d'una clau o d'un valor en la"
+" parella clau/valor %d, «%s», de l'element d'adreça «%s»"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -452,97 +465,96 @@ msgstr ""
"establerta exactament una clau, o bé de tipus «path» (camí), o bé de tipus "
"«abstract» (abstracte)"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr ""
"Hi ha un error a l'adreça «%s»: manca o està mal formatat l'atribut del nom "
"d'ordinador"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr ""
"Hi ha un error a l'adreça «%s»: manca o està mal formatat l'atribut del port"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
-msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
+msgid ""
+"Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Hi ha un error a l'adreça «%s»: l'atribut noncefile no existeix o està mal "
"formatat"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "S'ha produït un error en executar-se automàticament: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "S'ha produït un error en obrir el fitxer nonce «%s»: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "S'ha produït un error en llegir el fitxer nonce «%s»: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"S'ha produït un error en llegir el fitxer nonce «%s»: s'esperaven 16 bytes, "
"però se n'han obtingut %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr ""
"S'ha produït un error en escriure els continguts del fitxer nonce «%s» al "
"flux:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "L'adreça que s'ha indicat és buida"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr ""
-"No es pot engendrar un bus de missatge si s'executa com un altre usuari "
-"(setuid)"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "No es pot engendrar un bus de missatges quan s'ha definit AT_SECURE"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr ""
"No es pot engendrar un bus de missatge sense un identificador de màquina: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "No es pot executar D-Bus automàticament sense X11 $DISPLAY"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "S'ha produït un error en engendrar la línia d'ordres «%s»: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"No s'ha pogut determinar l'adreça del bus de sessió (no està implementat en "
"aquest sistema operatiu)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
-"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
-"— unknown value “%sâ€"
+"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable"
+" — unknown value “%sâ€"
msgstr ""
"No es pot determinar l'adreça del bus a través de la variable d'entorn "
"«DBUS_STARTER_BUS_TYPE»: conté un valor desconegut «%s»"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -550,7 +562,7 @@ msgstr ""
"No es pot determinar l'adreça del bus perquè la variable d'entorn "
"«DBUS_STARTER_BUS_TYPE» no està establerta"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Tipus de bus desconegut %d"
@@ -568,10 +580,11 @@ msgstr ""
#: gio/gdbusauth.c:482
#, c-format
msgid ""
-"Exhausted all available authentication mechanisms (tried: %s) (available: %s)"
+"Exhausted all available authentication mechanisms (tried: %s) (available: "
+"%s)"
msgstr ""
-"S'han exhaurit tots els mecanismes d'autenticació disponibles (s'han provat: "
-"%s) (hi ha disponibles: %s)"
+"S'han exhaurit tots els mecanismes d'autenticació disponibles (s'han provat:"
+" %s) (hi ha disponibles: %s)"
#: gio/gdbusauth.c:1171
msgid "User IDs must be the same for peer and server"
@@ -583,12 +596,12 @@ msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr ""
"S'ha cancel·lat a través de GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "S'ha produït un error en obtenir la informació del directori «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -596,34 +609,35 @@ msgstr ""
"Els permisos del directori «%s» no estan ben formatats. S'esperava el mode "
"0700, però s'ha obtingut el 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "S'ha produït un error en crear el directori «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "L'operació no està implementada"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
-msgstr "S'ha produït un error en obrir l'anell de claus «%s» per a llegir-lo: "
+msgstr ""
+"S'ha produït un error en obrir l'anell de claus «%s» per a llegir-lo: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
"La línia %d de l'anell de claus a «%s» amb el contingut «%s» no està ben "
"formatada"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -631,69 +645,70 @@ msgstr ""
"El primer testimoni de la línia %d de l'anell de claus a «%s» amb el "
"contingut «%s» no està ben formatat"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
-"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
+"Second token of line %d of the keyring at “%s†with content “%s†is "
+"malformed"
msgstr ""
"El segon testimoni de la línia %d de l'anell de claus a «%s» amb el "
"contingut «%s» no està ben formatat"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr ""
"No s'ha trobat la galeta amb l'identificador %d a l'anell de claus a «%s»"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "S'ha produït un error en crear el fitxer de blocatge «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "S'ha produït un suprimir el fitxer de blocatge antic «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr ""
"S'ha produït un error en tancar el fitxer (no enllaçat) de blocatge «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "S'ha produït un error en desenllaçar el fitxer de blocatge «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr ""
"S'ha produït un error en obrir l'anell de claus «%s» per a escriptura: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr ""
"(A més a més, l'alliberació del blocatge per a «%s» també ha fallat: %s) "
-#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "La connexió està tancada"
-#: gio/gdbusconnection.c:1903
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "S'ha esgotat el temps d'espera"
-#: gio/gdbusconnection.c:2541
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"S'han trobat senyaladors no implementats en construir-se la part de la "
"connexió del client"
-#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
@@ -701,166 +716,168 @@ msgstr ""
"No existeix la interfície «org.freedesktop.DBus.Properties» en l'objecte al "
"camí %s"
-#: gio/gdbusconnection.c:4414
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "No existeix la propietat «%s»"
-#: gio/gdbusconnection.c:4426
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "La propietat «%s» no és de lectura"
-#: gio/gdbusconnection.c:4437
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "La propietat «%s» no és d'escriptura"
-#: gio/gdbusconnection.c:4457
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
"S'ha produït un error en establir la propietat «%s»: s'esperava el tipus "
"«%s», però s'ha obtingut el «%s»"
-#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
-#: gio/gdbusconnection.c:6760
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "No existeix la interfície «%s»"
-#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "No existeix la interfície «%s» en l'objecte al camí %s"
-#: gio/gdbusconnection.c:5100
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "No existeix el mètode «%s»"
-#: gio/gdbusconnection.c:5131
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "El tipus de missatge «%s» no correspon al tipus «%s» que s'esperava"
-#: gio/gdbusconnection.c:5334
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Ja hi ha un objecte exportat per a la interfície %s a %s"
-#: gio/gdbusconnection.c:5561
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "No s'ha pogut recuperar la propietat %s.%s"
-#: gio/gdbusconnection.c:5617
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "No s'ha pogut establir la propietat %s.%s"
-#: gio/gdbusconnection.c:5796
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "El mètode «%s» ha retornat un tipus «%s», però s'esperava «%s»"
-#: gio/gdbusconnection.c:6872
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "No existeix el mètode «%s» a la interfície «%s» amb la signatura «%s»"
-#: gio/gdbusconnection.c:6993
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Ja està exportat un subarbre per a %s"
-#: gio/gdbusconnection.c:7282
+#: gio/gdbusconnection.c:7266
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "L'objecte no existeix al camí «%s»"
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "el tipus és no vàlid"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "Missatge «METHOD_CALL»: manca el camp de capçalera «PATH» o «MEMBER»"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "Missatge «METHOD_RETURN»: manca el camp de capçalera «REPLY_SERIAL»"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr ""
"Missatge «ERROR»: manca el camp de capçalera «REPLY_SERIAL» o «ERROR_NAME»"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr ""
"Missatge «SIGNAL»: manca el camp de capçalera «PATH», «INTERFACE» o «MEMBER»"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
-"SIGNAL message: The PATH header field is using the reserved value /org/"
-"freedesktop/DBus/Local"
+"SIGNAL message: The PATH header field is using the reserved value "
+"/org/freedesktop/DBus/Local"
msgstr ""
-"Missatge «SIGNAL»: el camp de la capçalera «PATH» utilitza el valor reservat "
-"«/org/freedesktop/DBus/Local»"
+"Missatge «SIGNAL»: el camp de la capçalera «PATH» utilitza el valor reservat"
+" «/org/freedesktop/DBus/Local»"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
-"SIGNAL message: The INTERFACE header field is using the reserved value org."
-"freedesktop.DBus.Local"
+"SIGNAL message: The INTERFACE header field is using the reserved value "
+"org.freedesktop.DBus.Local"
msgstr ""
"Missatge SIGNAL: el camp de capçalera INTERFACE utilitza el valor reservat "
"org.freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "Es volia llegir %lu byte però només s'han rebut %lu"
msgstr[1] "Es volien llegir %lu bytes però només s'han rebut %lu"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr ""
"S'esperava el byte «NUL» després de la cadena «%s» però s'ha trobat el byte "
"%d"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
-"(length of string is %d). The valid UTF-8 string up until that point was “%sâ€"
+"(length of string is %d). The valid UTF-8 string up until that point was "
+"“%sâ€"
msgstr ""
"S'esperava una cadena UTF-8 vàlida però s'han trobat bytes no vàlids a "
"l'òfset %d (la llargada de la cadena és %d). La cadena UTF-8 vàlida fins "
"aquell moment era «%s»"
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Valor imbricat massa profund"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "El valor analitzat «%s» no és un camí d'objecte D-Bus vàlid"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "El valor analitzat «%s» no és una signatura D-Bus vàlida"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
msgid_plural ""
-"Encountered array of length %u bytes. Maximum length is 2<<26 bytes (64 MiB)."
+"Encountered array of length %u bytes. Maximum length is 2<<26 bytes (64 "
+"MiB)."
msgstr[0] ""
"S'ha trobat una matriu de llargada %u byte. La llargada màxima és de 2<<26 "
"bytes (64 MiB)."
@@ -868,7 +885,7 @@ msgstr[1] ""
"S'ha trobat una matriu de llargada %u bytes. La llargada màxima és de 2<<26 "
"bytes (64 MiB)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -877,24 +894,25 @@ msgstr ""
"S'ha trobat una matriu de tipus «a%c» que s'esperava que tingués una "
"llargada múltiple de %u bytes, però en realitat és de %u bytes"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
msgstr "No es permeten estructures buides (tuples) a D-Bus"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "El valor analitzat «%s» per variant no és una signatura D-Bus vàlida"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
-"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
+"Error deserializing GVariant with type string “%s†from the D-Bus wire "
+"format"
msgstr ""
"S'ha produït un error en convertir a estructura de dades la GVariant amb el "
"tipus de cadena «%s» del format de cable D-Bus"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -903,28 +921,28 @@ msgstr ""
"Valor d'ordenació de bits (endianness) no vàlid. S'esperava 0x6c («l») o "
"0x42 («B») però s'ha trobat el valor 0x%02x"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Versió major del protocol no vàlida. S'esperava 1 però s'ha trobat %d"
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "S'ha trobat la capçalera de signatura però no és del tipus signatura"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"S'ha trobat la capçalera de la signatura amb la signatura «%s», però el cos "
"és buit"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "El valor analitzat «%s» no és una signatura de D-Bus vàlida (pel cos)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -935,19 +953,19 @@ msgstr[1] ""
"No hi ha cap capçalera de la signatura en el missatge, però el cos és de %u "
"bytes"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "No s'ha pogut tornar a convertir el missatge a estructura de dades: "
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
msgstr ""
-"No s'ha pogut convertir a seqüència de bits la GVariant de tipus cadena «%s» "
-"al format de cable D-Bus"
+"No s'ha pogut convertir a seqüència de bits la GVariant de tipus cadena «%s»"
+" al format de cable D-Bus"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
@@ -955,18 +973,18 @@ msgstr ""
"El nombre de descriptors de fitxer al missatge (%d) difereix del camp de la "
"capçalera (%d)"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "No s'ha pogut convertir a seqüència de bits el missatge: "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr ""
"El cos del missatge té la signatura «%s» però no hi ha cap capçalera de "
"signatura"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -975,58 +993,58 @@ msgstr ""
"El cos del missatge té el tipus de signatura «%s» però la signatura en el "
"camp de la capçalera és «%s»"
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr ""
"El cos del missatge és buit però la signatura en el camp de la capçalera és "
"«(%s)»"
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "S'ha retornat un error amb el cos de tipus «%s»"
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "S'ha retornat un error amb el cos buit"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Premeu qualsevol tecla per a tancar aquesta finestra)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr ""
-"El bus de sessió (D-Bus) no està en funcionament i l'arrencada automàtica no "
-"ha funcionat"
+"El bus de sessió (D-Bus) no està en funcionament i l'arrencada automàtica no"
+" ha funcionat"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "No s'ha pogut obtenir el perfil de maquinari: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "No s'ha pogut carregar %s ni %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "S'ha produït un error en cridar «StartServiceByName» per a %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr ""
"S'ha obtingut una resposta inesperada %d per al mètode "
"«StartServiceByName(\"%s\")»"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1080,70 +1098,69 @@ msgstr ""
" emit Emet un senyal\n"
" wait Espera que aparegui un nom de bus\n"
"\n"
-"Utilitzeu «%s ORDRE --help» per a veure l'ajuda de cada ordre en "
-"particular.\n"
+"Utilitzeu «%s ORDRE --help» per a veure l'ajuda de cada ordre en particular.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "S'ha produït un error: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "S'ha produït un error en analitzar la introspecció XML: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Error: %s no és un nom de membre vàlid\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Error: «%s» no és un camí d'objecte vàlid\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Connecta al bus del sistema"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Connecta al bus de la sessió"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Connecta a l'adreça de D-Bus donada"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Opcions del punt final de connexió:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Opcions d'especificació del punt final de connexió"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "No s'ha especificat el punt final de connexió"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "S'han especificat més d'un punt final de connexió"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr ""
"Avís: d'acord amb les dades d'introspecció no existeix la interfície «%s»\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1152,230 +1169,238 @@ msgstr ""
"Avís: d'acord amb les dades d'introspecció no existeix el mètode «%s» a la "
"interfície «%s»\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Destinació opcional del senyal (nom únic)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Camí a l'objecte al qual se li enviarà un senyal"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Senyal i nom d'interfície"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Envia un senyal."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "S'ha produït un error en connectar-se: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Error: %s no és un nom de bus únic vàlid.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Error: no s'ha especificat el camí a l'objecte\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Error: no s'ha especificat el nom del senyal\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Error: el nom del senyal «%s» no és vàlid\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Error: %s no és un nom d'interfície vàlid\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Error: %s no és un nom de membre vàlid\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "S'ha produït un error en analitzar el paràmetre %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "S'ha produït un error en buidar la connexió: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Nom de destinació on invocar el mètode"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Camí a l'objecte on invocar el mètode"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Mètode i nom d'interfície"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Temps d'espera, en segons"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Permet l'autorització interactiva"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Invoca un mètode en un objecte remot."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Error: no s'ha especificat la destinació\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Error: %s no és un nom de bus vàlid\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Error: no s'ha especificat el nom del mètode\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Error: el nom del mètode «%s» no és vàlid\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
-msgstr ""
-"S'ha produït un error en analitzar el paràmetre %d del tipus «%s»: %s\n"
+msgstr "S'ha produït un error en analitzar el paràmetre %d del tipus «%s»: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "S'ha produït un error en afegir el gestor %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Nom de destinació a examinar"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Camí a l'objecte a examinar"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Imprimeix XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Examina el fill"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Només mostra les propietats"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Examina un objecte remot."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Nom de destinació al qual se li vol fer un seguiment"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Camí a l'objecte al qual se li vol fer un seguiment"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Fes el seguiment a un objecte remot."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr ""
"Error: no es pot fer un seguiment d'una connexió que no sigui de missatges "
"del bus\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Servei a activar abans d'esperar l'altre (nom conegut)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
-"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
-"(default)"
+"Timeout to wait for before exiting with an error (seconds); 0 for no timeout"
+" (default)"
msgstr ""
"Temps d'espera abans de sortir amb un error (segons); 0 si no voleu temps "
"d'espera (predeterminat)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[OPCIÓ...] NOM-DEL-BUS"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Espera que aparegui el nom del bus."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Error: no s'ha especificat el servei a activar.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "Error: no s'ha especificat el servei a esperar.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Error: massa arguments.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Error: %s no és un nom de bus conegut vàlid.\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "No esteu autoritzat a canviar la configuració de depuració"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Sense nom"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "El fitxer d'escriptori no especificava el camp d'execució"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "No s'ha pogut trobar el terminal que demanava l'aplicació"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr ""
"No s'ha pogut crear el directori de configuració de l'aplicació de l'usuari "
"%s: %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr ""
"No s'ha pogut crear el directori de configuració MIME de l'usuari %s: %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "A la informació d'aplicació li manca un identificador"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "No s'ha pogut crear el fitxer d'escriptori de l'usuari %s"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Definició personalitzada per a %s"
@@ -1403,9 +1428,9 @@ msgstr "la unitat no implementa la inicialització"
msgid "drive doesn’t implement stop"
msgstr "la unitat no implementa l'aturada"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
-msgstr "El dorsal TLS no implementa la recuperació de la vinculació TLS"
+msgstr "El backend TLS no implementa la recuperació de la vinculació TLS"
#: gio/gdummytlsbackend.c:195 gio/gdummytlsbackend.c:321
#: gio/gdummytlsbackend.c:513
@@ -1447,76 +1472,76 @@ msgstr "S'esperava un GEmblem per a un GEmblemedIcon"
#. Translators: This is an error message when
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
-#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "No existeix el punt de muntatge contenidor"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "No es pot copiar al directori"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "No es pot copiar el directori al directori"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Ja existeix el fitxer de destinació"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "No es pot copiar el directori de forma recursiva"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "No es pot empalmar"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "S'ha produït un error en empalmar el fitxer: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr ""
"No està implementada la còpia (referències, clonacions) entre muntatges"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
-msgstr "No està implementada o no és vàlida la còpia (referències, clonacions)"
+msgstr ""
+"No està implementada o no és vàlida la còpia (referències, clonacions)"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr ""
"No està implementada o no ha funcionat la còpia (referències, clonacions)"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "No es pot copiar el fitxer especial"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "El valor donat per a l'enllaç simbòlic no és vàlid"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "No es poden utilitzar els enllaços simbòlics"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "No es pot utilitzar la paperera"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "En els noms de fitxers no pot haver-hi «%c»"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "el volum no implementa el muntatge"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr ""
"No hi ha cap aplicació que s'hagi registrat per a gestionar aquest fitxer"
@@ -1562,7 +1587,7 @@ msgstr "No es permet truncar en els fluxos d'entrada"
msgid "Truncate not supported on stream"
msgstr "No es permet truncar en els fluxos"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "El nom de l'ordinador no és vàlid"
@@ -1650,7 +1675,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "No s'ha pogut analitzar «%s» com a màscara d'adreça IP"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "No hi ha prou espai per a l'adreça del sòcol"
@@ -1822,7 +1847,8 @@ msgstr "Conserva tots els atributs"
#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:41 gio/gio-tool-save.c:49
msgid "Backup existing destination files"
msgstr ""
-"Crea una còpia de seguretat dels fitxers existents al directori de destinació"
+"Crea una còpia de seguretat dels fitxers existents al directori de "
+"destinació"
#: gio/gio-tool-copy.c:48
msgid "Never follow symbolic links"
@@ -1962,10 +1988,8 @@ msgid ""
msgstr ""
"gio info és similar a l'eina tradicional ls, però usant ubicacions GIO\n"
"en comptes de fitxers locals: per exemple, podeu usar quelcom com ara\n"
-"smb://servidor/recurs/fitxer.txt com a ubicació. Els atributs de fitxer "
-"poden\n"
-"especificar-se amb el seu nom GIO. Per exemple, standard::icon o usant només "
-"el\n"
+"smb://servidor/recurs/fitxer.txt com a ubicació. Els atributs de fitxer poden\n"
+"especificar-se amb el seu nom GIO. Per exemple, standard::icon o usant només el\n"
"nom d'espais, p. ex. unix, o usant «*», que coincideix amb tots els atributs"
#. Translators: commandline placeholder
@@ -2033,8 +2057,7 @@ msgid ""
msgstr ""
"gio list és similar a l'eina tradicional ls, però usant ubicacions GIO\n"
"en comptes de fitxers locals: per exemple, podeu usar quelcom com ara\n"
-"smb://servidor/recurs/fitxer.txt com a ubicació. Els atributs de fitxer "
-"poden\n"
+"smb://servidor/recurs/fitxer.txt com a ubicació. Els atributs de fitxer poden\n"
"especificar-se amb el seu nom GIO. Per exemple, standard::icon"
#. Translators: commandline placeholder
@@ -2099,7 +2122,8 @@ msgstr "No s'ha pogut carregar la informació del gestor «%s»"
#, c-format
msgid "Failed to set “%s†as the default handler for “%sâ€: %s\n"
msgstr ""
-"S'ha produït un error en establir «%s» com a gestor per defecte de «%s»: %s\n"
+"S'ha produït un error en establir «%s» com a gestor per defecte de «%s»: "
+"%s\n"
#: gio/gio-tool-mkdir.c:31
msgid "Create parent directories"
@@ -2316,12 +2340,14 @@ msgstr "En crear un fitxer, limita'n l'accés a només l'usuari actual"
msgid "When replacing, replace as if the destination did not exist"
msgstr "Quan es reemplaci, fes com si el destí no existís"
-#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#. Translators: The "etag" is a token allowing to verify whether a file has
+#. been modified
#: gio/gio-tool-save.c:55
msgid "Print new etag at end"
msgstr "Mostra la nova etag al final"
-#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#. Translators: The "etag" is a token allowing to verify whether a file has
+#. been modified
#: gio/gio-tool-save.c:57
msgid "The etag of the file being overwritten"
msgstr "L'etag del fitxer que s'està sobreescrivint"
@@ -2334,7 +2360,8 @@ msgstr "ETAG"
msgid "Error reading from standard input"
msgstr "S'ha produït un error en llegir de l'entrada estàndard"
-#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#. Translators: The "etag" is a token allowing to verify whether a file has
+#. been modified
#: gio/gio-tool-save.c:139
msgid "Etag not available\n"
msgstr "L'etag no està disponible\n"
@@ -2397,8 +2424,8 @@ msgid ""
"Restore a file from trash to its original location (possibly recreating the "
"directory)"
msgstr ""
-"Restaura un fitxer de la paperera a la ubicació original (i torna a crear el "
-"directori si cal)"
+"Restaura un fitxer de la paperera a la ubicació original (i torna a crear el"
+" directori si cal)"
#: gio/gio-tool-trash.c:106
msgid "Unable to find original path"
@@ -2469,7 +2496,6 @@ msgstr "Es desconeix l'opció de processament «%s»"
#. Translators: the first %s is a gresource XML attribute,
#. * the second %s is an environment variable, and the third
#. * %s is a command line tool
-#.
#: gio/glib-compile-resources.c:310 gio/glib-compile-resources.c:367
#: gio/glib-compile-resources.c:424
#, c-format
@@ -2493,15 +2519,15 @@ msgstr "S'ha produït un error en comprimir el fitxer %s"
msgid "text may not appear inside <%s>"
msgstr "no pot haver-hi text dins de <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Mostra la versió del programa i surt"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Nom del fitxer de sortida"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2509,49 +2535,49 @@ msgstr ""
"Els directoris des d'on s'han de llegir els fitxers (per defecte és el "
"directori actual)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "DIRECTORI"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
"Genera la sortida en el format seleccionat per l'extensió del nom de fitxer "
"de destinació"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Genera la capçalera del codi"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr ""
"Genera el codi font que es fa servir per a enllaçar el fitxer de recurs amb "
"el codi"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Genera una llista de dependències"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Nom del fitxer de dependència a generar"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Inclou destinacions falses en el fitxer de dependències generat"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "No creïs ni registris automàticament els recursos"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "No exportis les funcions, declara-les com a «G_GNUC_INTERNAL»"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2559,12 +2585,16 @@ msgstr ""
"No incrusteu recursos de dades a un fitxer C; en comptes assumiu que està "
"enllaçat externament"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr ""
"El nom de l'identificador de C que s'utilitzarà en el codi font generat"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "El compilador C de destinació (per defecte: la variable d'entorn CC)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2574,7 +2604,7 @@ msgstr ""
"Els fitxers d'especificació de recursos tenen l'extensió .gresource.xml\n"
"i els fitxers de recursos tenen l'extensió .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Heu de donar un sol nom de fitxer\n"
@@ -2757,7 +2787,8 @@ msgstr ""
#: gio/glib-compile-schemas.c:828
#, c-format
msgid "Invalid name “%sâ€: two successive hyphens (“--â€) are not permitted"
-msgstr "El nom «%s» no és vàlid: no es poden posar dos guionets seguits («--»)"
+msgstr ""
+"El nom «%s» no és vàlid: no es poden posar dos guionets seguits («--»)"
#: gio/glib-compile-schemas.c:837
#, c-format
@@ -2855,14 +2886,14 @@ msgstr "No es pot ampliar un esquema amb un camí"
msgid ""
"<schema id='%s'> is a list, extending <schema id='%s'> which is not a list"
msgstr ""
-"El <schema id='%s'> és una llista i amplia el <schema id='%s'> que no és una "
-"llista"
+"El <schema id='%s'> és una llista i amplia el <schema id='%s'> que no és una"
+" llista"
#: gio/glib-compile-schemas.c:1207
#, c-format
msgid ""
-"<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but “%s†"
-"does not extend “%sâ€"
+"<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but “%sâ€"
+" does not extend “%sâ€"
msgstr ""
"El <schema id='%s' list-of='%s'> amplia el <schema id='%s' list-of='%s'> "
"però «%s» no amplia «%s»"
@@ -2880,11 +2911,11 @@ msgstr "El camí d'una llista ha d'acabar amb «:/»"
#: gio/glib-compile-schemas.c:1240
#, c-format
msgid ""
-"Warning: Schema “%s†has path “%sâ€. Paths starting with “/apps/â€, “/"
-"desktop/†or “/system/†are deprecated."
+"Warning: Schema “%s†has path “%sâ€. Paths starting with “/apps/â€, "
+"“/desktop/†or “/system/†are deprecated."
msgstr ""
-"Avís: l'esquema «%s» conté el camí «%s». Els camins que comencen amb «/"
-"apps/», «/desktop/» o «/system/» estan obsolets."
+"Avís: l'esquema «%s» conté el camí «%s». Els camins que comencen amb "
+"«/apps/», «/desktop/» o «/system/» estan obsolets."
#: gio/glib-compile-schemas.c:1270
#, c-format
@@ -2931,8 +2962,8 @@ msgstr "S'està ignorant aquest fitxer."
#: gio/glib-compile-schemas.c:1963
#, c-format
msgid ""
-"No such key “%s†in schema “%s†as specified in override file “%sâ€; ignoring "
-"override for this key."
+"No such key “%s†in schema “%s†as specified in override file “%sâ€; ignoring"
+" override for this key."
msgstr ""
"No existeix la clau «%s» en l'esquema «%s» tal com especifica el fitxer de "
"sobreescriptura «%s»; s'ignora la sobreescriptura d'aquesta clau."
@@ -2941,8 +2972,8 @@ msgstr ""
#: gio/glib-compile-schemas.c:1971
#, c-format
msgid ""
-"No such key “%s†in schema “%s†as specified in override file “%s†and --"
-"strict was specified; exiting."
+"No such key “%s†in schema “%s†as specified in override file “%s†and "
+"--strict was specified; exiting."
msgstr ""
"No existeix la clau «%s» en l'esquema «%s» tal com especifica el fitxer de "
"sobreescriptura «%s» i s'ha especificat --strict; se surt."
@@ -2950,22 +2981,22 @@ msgstr ""
#: gio/glib-compile-schemas.c:1993
#, c-format
msgid ""
-"Cannot provide per-desktop overrides for localized key “%s†in schema "
-"“%s†(override file “%sâ€); ignoring override for this key."
+"Cannot provide per-desktop overrides for localized key “%s†in schema “%s†"
+"(override file “%sâ€); ignoring override for this key."
msgstr ""
-"No es pot proveir la sobreescriptura per escriptori de la clau traduïda «%s» "
-"a l'esquema «%s» (fitxer de sobreescriptura «%s»); s'ignora la "
+"No es pot proveir la sobreescriptura per escriptori de la clau traduïda «%s»"
+" a l'esquema «%s» (fitxer de sobreescriptura «%s»); s'ignora la "
"sobreescriptura d'aquesta clau."
#: gio/glib-compile-schemas.c:2002
#, c-format
msgid ""
-"Cannot provide per-desktop overrides for localized key “%s†in schema "
-"“%s†(override file “%sâ€) and --strict was specified; exiting."
+"Cannot provide per-desktop overrides for localized key “%s†in schema “%s†"
+"(override file “%sâ€) and --strict was specified; exiting."
msgstr ""
-"No es pot proveir la sobreescriptura per escriptori de la clau traduïda «%s» "
-"a l'esquema «%s» (fitxer de sobreescriptura «%s») i s'ha especificat --"
-"strict; se surt."
+"No es pot proveir la sobreescriptura per escriptori de la clau traduïda «%s»"
+" a l'esquema «%s» (fitxer de sobreescriptura «%s») i s'ha especificat "
+"--strict; se surt."
#: gio/glib-compile-schemas.c:2026
#, c-format
@@ -2984,8 +3015,8 @@ msgid ""
"%s. --strict was specified; exiting."
msgstr ""
"S'ha produït un error en analitzar la clau «%s» en l'esquema «%s» tal com "
-"especifica el fitxer de sobreescriptura «%s»: %s. S'ha especificat --strict; "
-"se surt."
+"especifica el fitxer de sobreescriptura «%s»: %s. S'ha especificat --strict;"
+" se surt."
#: gio/glib-compile-schemas.c:2065
#, c-format
@@ -3024,8 +3055,8 @@ msgid ""
"list of valid choices and --strict was specified; exiting."
msgstr ""
"La sobreescriptura de la clau «%s» de l'esquema «%s» en el fitxer de "
-"sobreescriptura «%s» no és a la llista de valors vàlids i s'ha especificat --"
-"strict; se surt."
+"sobreescriptura «%s» no és a la llista de valors vàlids i s'ha especificat "
+"--strict; se surt."
#: gio/glib-compile-schemas.c:2173
msgid "Where to store the gschemas.compiled file"
@@ -3081,7 +3112,6 @@ msgstr ""
#. Translators: This is an error message when trying to find
#. * the enclosing (user visible) mount of a file, but none
#. * exists.
-#.
#: gio/glocalfile.c:1123
#, c-format
msgid "Containing mount for file %s not found"
@@ -3391,13 +3421,13 @@ msgstr "S'ha produït un error en crear la còpia de seguretat: %s"
msgid "Error renaming temporary file: %s"
msgstr "S'ha produït un error en canviar el nom del fitxer temporal: %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "S'ha produït un error en truncar el fitxer: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "S'ha produït un error en obrir el fitxer «%s»: %s"
@@ -3419,7 +3449,7 @@ msgstr "El fitxer ha estat modificat des d'alguna aplicació externa"
msgid "Error removing old file: %s"
msgstr "S'ha produït un error en suprimir el fitxer vell: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "El GSeekType proporcionat no és vàlid"
@@ -3431,15 +3461,15 @@ msgstr "La sol·licitud de cerca és no vàlida"
msgid "Cannot truncate GMemoryInputStream"
msgstr "No es pot truncar el GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "El flux de sortida de memòria no és modificable"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Ha fallat el redimensionament de la memòria del flux de sortida"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3447,11 +3477,11 @@ msgstr ""
"La quantitat de memòria necessària per a processar l'escriptura és més gran "
"que l'espai d'adreces disponible"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "S'ha sol·licitat un desplaçament abans de l'inici del flux"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "S'ha sol·licitat un desplaçament més enllà del final del flux"
@@ -3557,18 +3587,22 @@ msgstr "La suma de vectors donada a %s és massa gran"
msgid "Source stream is already closed"
msgstr "El flux font ja està tancat"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "S'ha produït un error en resoldre «%s»: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "no s'ha implementat %s"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "El domini no és vàlid"
@@ -3683,7 +3717,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " SECCIÓ El nom (opcional) d'una secció elf\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " ORDRE L'ordre (opcional) que s'explicarà\n"
@@ -3716,7 +3750,7 @@ msgstr "CAMÃ"
msgid " PATH A resource path\n"
msgstr " CAMà Un camí de recurs\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "No existeix l'esquema «%s»\n"
@@ -3748,35 +3782,35 @@ msgstr "El camí ha d'acabar amb una barra inclinada (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "El camí no pot contenir dues barres inclinades seguides (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "El valor proporcionat està fora del rang vàlid\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "La clau no és d'escriptura\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Llista els esquemes instal·lats (que no es poden canviar de lloc)"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Llista els esquemes instal·lats que es poden canviar de lloc"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Llista les claus a l'ESQUEMA"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "ESQUEMA[:CAMÃ]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Llista els fills de l'ESQUEMA"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3784,48 +3818,48 @@ msgstr ""
"Llista les claus i els valors recursivament\n"
"Si no es passa cap ESQUEMA, es llista totes les claus\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[ESQUEMA[:CAMÃ]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Obtén el valor de la CLAU"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "ESQUEMA[:CAMÃ] CLAU"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Consulta el rang de valors vàlids per a la CLAU"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Consulta la descripció per a la CLAU"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Estableix el valor de la CLAU a VALOR"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "ESQUEMA[:CAMÃ] CLAU VALOR"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Reinicia la CLAU al seu valor predeterminat"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Reinicia totes les claus de l'ESQUEMA als seus valors per defecte"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Comprova si la CLAU és d'escriptura"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3836,11 +3870,11 @@ msgstr ""
"totes les claus de l'ESQUEMA.\n"
"Utilitzeu ^C per a deixar de fer el seguiment.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "ESQUEMA[:CAMÃ] [CLAU]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3872,8 +3906,7 @@ msgstr ""
"Ordres:\n"
" help Mostra aquesta informació\n"
" list-schemas Llista els esquemes instal·lats\n"
-" list-relocatable-schemas Llista els esquemes que es poden canviar de "
-"lloc\n"
+" list-relocatable-schemas Llista els esquemes que es poden canviar de lloc\n"
" list-keys Llista les claus d'un esquema\n"
" list-children Llista els fills d'un esquema\n"
" list-recursively Llista les claus i els valors recursivament\n"
@@ -3888,7 +3921,7 @@ msgstr ""
"Utilitzeu «gsettings help ORDRE» per a veure l'ajuda més detallada.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3903,12 +3936,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
-msgstr ""
-" DIRECTORI_D'ESQUEMES Un directori on cercar-hi esquemes addicionals\n"
+msgstr " DIRECTORI_D'ESQUEMES Un directori on cercar-hi esquemes addicionals\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3916,217 +3948,217 @@ msgstr ""
" ESQUEMA El nom de l'esquema\n"
" CAMà El camí, pels esquemes que es poden canviar de lloc\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " CLAU La clau (opcional) de l'esquema\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " CLAU La clau de l'esquema\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " VALOR El valor a establir\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "No s'han pogut carregar els esquemes %s: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "No hi ha cap esquema instal·lat\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "S'ha donat un nom d'esquema buit\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "No existeix la clau «%s»\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "El sòcol no és vàlid, no està inicialitzat"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "El sòcol no és vàlid, ha fallat la inicialització a causa de: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "El sòcol ja és tancat"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "S'ha excedit el temps d'espera d'entrada/sortida del sòcol"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "s'està creant un GSocket a partir del descriptor de fitxer: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "No s'ha pogut crear el sòcol: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "S'ha especificat una família desconeguda"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "S'ha especificat un protocol desconegut"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr ""
"No es poden realitzar operacions de datagrames a un sòcol que no és de "
"datagrama."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"No es poden realitzar operacions de datagrames a un sòcol que tingui un "
"temps d'espera màxim establert."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "no s'ha pogut obtenir l'adreça local: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "no s'ha pogut obtenir l'adreça remota: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "no s'ha pogut escoltar: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "S'ha produït un error en vincular-se a l'adreça %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "S'ha produït un error en unir-se a un grup de multidestinació: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "S'ha produït un error en deixar un grup de multidestinació: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Encara no es pot fer multidestinació des d'un origen concret"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "La família del sòcol no és compatible"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "la font especificada no és una adreça IPv4"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "El nom de la interfície és massa llarg"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "No s'ha trobat la interfície: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "Encara no es pot fer multidestinació en IPv4 des d'un origen concret"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "Encara no es pot fer multidestinació en IPv6 des d'un origen concret"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "S'ha produït un error en acceptar la connexió: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Connexió en curs"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "No s'ha pogut obtenir l'error pendent: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "S'ha produït un error en rebre les dades: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "S'ha produït un error en enviar les dades: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "No s'ha pogut aturar el sòcol: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "S'ha produït un error en tancar el sòcol: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "S'està esperant la condició del sòcol: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "S'ha produït un error en enviar el missatge: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Els vectors del missatge són massa grans"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "S'ha produït un error en enviar el missatge: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "El GSocketControlMessage no està implementat a Windows"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "S'ha produït un error en rebre un missatge: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "No s'han pogut llegir les credencials del sòcol: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
-msgstr "Aquest sistema operatiu no admet g_socket_get_credentials"
+msgstr "aquest sistema operatiu no admet g_socket_get_credentials"
#: gio/gsocketclient.c:191
#, c-format
@@ -4142,13 +4174,13 @@ msgstr "No s'ha pogut connectar a %s: "
msgid "Could not connect: "
msgstr "No s'ha pogut connectar: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr ""
"Encara no es pot fer de servidor intermediari d'una connexió que no sigui "
"TCP."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "El protocol del servidor intermediari «%s» no està implementat."
@@ -4193,8 +4225,8 @@ msgstr "El servidor intermediari SOCKSv5 requereix autenticació."
#: gio/gsocks5proxy.c:191
msgid ""
-"The SOCKSv5 proxy requires an authentication method that is not supported by "
-"GLib."
+"The SOCKSv5 proxy requires an authentication method that is not supported by"
+" GLib."
msgstr ""
"El servidor intermediari SOCKSv5 requereix un mètode d'autenticació que "
"encara no està implementat a la GLib."
@@ -4257,7 +4289,7 @@ msgstr ""
msgid "Unknown SOCKSv5 proxy error."
msgstr "S'ha produït un error desconegut en el servidor intermediari SOCKSv5."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr ""
@@ -4282,44 +4314,68 @@ msgstr "No s'ha trobat cap adreça vàlida"
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "S'ha produït un error en resoldre a la inversa «%s»: %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr ""
+"S'ha produït un error en analitzar el registre de DNS %s: paquet DNS mal "
+"format"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "No hi ha cap registre del tipus sol·licitat al DNS per «%s»"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "No s'ha pogut resoldre «%s» de forma temporal"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "S'ha produït un error en resoldre «%s»"
-#: gio/gtlscertificate.c:431
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Paquet DNS mal format"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "No s'ha pogut analitzar la resposta DNS per a «%s»: "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "No s'ha trobat cap clau privada codificada amb PEM"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "No s'ha pogut desxifrar la clau privada codificada amb PEM"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "No s'ha pogut analitzar la clau privada codificada amb PEM"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "No s'ha trobat cap certificat codificat amb PEM"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "No s'ha pogut analitzar el certificat codificat amb PEM"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "El backend TLS actual no és compatible amb PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "Aquest GTlsBackend no admet la creació de certificats PKCS #11"
@@ -4345,7 +4401,11 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "La contrasenya introduïda no és correcta."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "L'enviament de FD no és compatible"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
@@ -4353,50 +4413,55 @@ msgstr[0] "S'esperava un missatge de control però se n'ha obtingut %d"
msgstr[1] "S'esperava un missatge de control però se n'han obtingut %d"
# FIXME
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Tipus de dades extres no esperades"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "S'esperava un descriptor de fitxer però se n'ha obtingut %d\n"
msgstr[1] "S'esperava un descriptor de fitxer però se n'han obtingut %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "S'ha rebut un descriptor de fitxer no vàlid"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "No s'admet la recepció de FD"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "S'ha produït un error en enviar les credencials: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr ""
"S'ha produït un error en la comprovació de si «SO_PASSCRED» és habilitat en "
"el sòcol: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "S'ha produït un error en habilitar «SO_PASSCRED»: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
-"Expecting to read a single byte for receiving credentials but read zero bytes"
+"Expecting to read a single byte for receiving credentials but read zero "
+"bytes"
msgstr ""
"S'esperava llegir un sol byte per a rebre les credencials però s'han llegit "
"zero bytes"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "No s'esperava un missatge de control però s'ha obtingut %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "S'ha produït un error en inhabilitar «SO_PASSCRED»: %s"
@@ -4412,7 +4477,7 @@ msgstr "S'ha produït un error en llegir del descriptor de fitxer: %s"
msgid "Error closing file descriptor: %s"
msgstr "S'ha produït un error en tancar el descriptor de fitxer: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Arrel del sistema de fitxers"
@@ -4423,7 +4488,7 @@ msgstr "Arrel del sistema de fitxers"
msgid "Error writing to file descriptor: %s"
msgstr "S'ha produït un error en escriure al descriptor de fitxer: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "Aquest sistema no admet adreces de sòcol de domini UNIX abstractes"
@@ -4565,8 +4630,8 @@ msgstr "No hi ha cap grup establert a l'adreça d'interès per a l'URI «%s»"
#, c-format
msgid "No application with name “%s†registered a bookmark for “%sâ€"
msgstr ""
-"No hi ha cap aplicació amb el nom «%s» que hagi registrat l'adreça d'interès "
-"«%s»"
+"No hi ha cap aplicació amb el nom «%s» que hagi registrat l'adreça d'interès"
+" «%s»"
#: glib/gbookmarkfile.c:3743
#, c-format
@@ -4577,8 +4642,8 @@ msgstr "No s'ha pogut ampliar la línia d'execució «%s» amb l'URI «%s»"
msgid "Unrepresentable character in conversion input"
msgstr "Caràcter no representable a l'entrada de la conversió"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Seqüència de caràcters parcial al final de l'entrada"
@@ -4626,7 +4691,8 @@ msgstr "L'URI «%s» conté caràcters d'escapada no vàlids"
msgid "The pathname “%s†is not an absolute path"
msgstr "El nom de camí «%s» no és un camí absolut"
-#. Translators: this is the preferred format for expressing the date and the time
+#. Translators: this is the preferred format for expressing the date and the
+#. time
#: glib/gdatetime.c:226
msgctxt "GDateTime"
msgid "%a %b %e %H:%M:%S %Y"
@@ -4665,7 +4731,6 @@ msgstr "%I:%M:%S %p"
#. * paste here. Note that in most of the languages (western European,
#. * non-European) there is no difference between the standalone and
#. * complete date form.
-#.
#: glib/gdatetime.c:274
msgctxt "full month name"
msgid "January"
@@ -4742,7 +4807,6 @@ msgstr "desembre"
#. * and paste here. Note that this feature is not yet supported by any
#. * other platform. Here are abbreviated month names in a form
#. * appropriate when they are used standalone.
-#.
#: glib/gdatetime.c:328
msgctxt "abbreviated month name"
msgid "Jan"
@@ -4889,7 +4953,6 @@ msgstr "dg."
#. * incorrect in some languages. Note that in most of the languages
#. * (western European, non-European) there is no difference between the
#. * standalone and complete date form.
-#.
#: glib/gdatetime.c:468
msgctxt "full month name with day"
msgid "January"
@@ -4966,7 +5029,6 @@ msgstr "de desembre"
#. * `locale abmon' in your native locale produces a complete list of
#. * month names almost ready to copy and paste here. In other systems
#. * due to a bug the result is incorrect in some languages.
-#.
#: glib/gdatetime.c:555
msgctxt "abbreviated month name with day"
msgid "Jan"
@@ -5093,12 +5155,14 @@ msgstr ""
#: glib/gfileutils.c:1154
#, c-format
msgid "Failed to write file “%sâ€: write() failed: %s"
-msgstr "No s'ha pogut escriure el fitxer «%s»: ha fallat la funció write(): %s"
+msgstr ""
+"No s'ha pogut escriure el fitxer «%s»: ha fallat la funció write(): %s"
#: glib/gfileutils.c:1175
#, c-format
msgid "Failed to write file “%sâ€: fsync() failed: %s"
-msgstr "No s'ha pogut escriure el fitxer «%s»: ha fallat la funció fsync(): %s"
+msgstr ""
+"No s'ha pogut escriure el fitxer «%s»: ha fallat la funció fsync(): %s"
#: glib/gfileutils.c:1336 glib/gfileutils.c:1751
#, c-format
@@ -5138,7 +5202,8 @@ msgstr "No es pot fer una lectura bàsica a g_io_channel_read_line_string"
#: glib/giochannel.c:1805 glib/giochannel.c:2063 glib/giochannel.c:2150
msgid "Leftover unconverted data in read buffer"
-msgstr "A la memòria intermèdia de lectura hi ha dades sobrants no convertides"
+msgstr ""
+"A la memòria intermèdia de lectura hi ha dades sobrants no convertides"
#: glib/giochannel.c:1886 glib/giochannel.c:1963
msgid "Channel terminates in a partial character"
@@ -5148,15 +5213,16 @@ msgstr "El canal acaba en un caràcter parcial"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "No es pot fer una lectura bàsica a g_io_channel_read_to_end"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
-msgstr "No s'ha pogut trobar cap fitxer de claus vàlid als directoris de cerca"
+msgstr ""
+"No s'ha pogut trobar cap fitxer de claus vàlid als directoris de cerca"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "No és un fitxer regular"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5164,44 +5230,44 @@ msgstr ""
"El fitxer de claus conté la línia «%s» que no és una parella clau-valor, "
"grup o comentari"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "El nom del grup no és vàlid: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "El fitxer de claus no comença amb un grup"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "El nom de la clau no és vàlid: %s"
+msgid "Invalid key name: %.*s"
+msgstr "El nom de la clau no és vàlid: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "El fitxer de claus conté la codificació no implementada «%s»"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "El fitxer de claus no té el grup «%s»"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "El fitxer de claus no conté una clau «%s» en el grup «%s»"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr ""
"El fitxer de claus conté la clau «%s» amb el valor «%s», que no és UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
@@ -5209,7 +5275,7 @@ msgstr ""
"El fitxer de claus conté la clau «%s», que té un valor que no es pot "
"interpretar."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5218,37 +5284,37 @@ msgstr ""
"El fitxer de claus conté la clau «%s» en el grup «%s», que té un valor que "
"no es pot interpretar."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr ""
"La clau «%s» en el grup «%s» té el valor «%s» però s'esperava el valor %s"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "El fitxer de claus conté un caràcter d'escapada al final de línia"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "El fitxer de claus conté la seqüència d'escapada no vàlida «%s»"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "El valor «%s» no es pot interpretar com un nombre."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "El valor enter «%s» és fora de l'interval"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "El valor «%s» no es pot interpretar com un nombre amb coma flotant."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "El valor «%s» no es pot interpretar com un booleà."
@@ -5324,8 +5390,8 @@ msgstr "El caràcter de referència «%-.*s» no codifica un caràcter permès"
msgid ""
"Empty entity “&;†seen; valid entities are: &amp; &quot; &lt; &gt; &apos;"
msgstr ""
-"S'ha detectat una entitat buida «&;». Les entitats vàlides són: &amp; &quot; "
-"&lt; &gt; &apos;"
+"S'ha detectat una entitat buida «&;». Les entitats vàlides són: &amp; &quot;"
+" &lt; &gt; &apos;"
#: glib/gmarkup.c:774
#, c-format
@@ -5348,8 +5414,8 @@ msgstr "El document ha de començar amb un element (p. ex. <book>)"
#: glib/gmarkup.c:1233
#, c-format
msgid ""
-"“%s†is not a valid character following a “<†character; it may not begin an "
-"element name"
+"“%s†is not a valid character following a “<†character; it may not begin an"
+" element name"
msgstr ""
"«%s» no és un caràcter vàlid després d'un caràcter «<»: no pot començar un "
"nom d'element"
@@ -5411,8 +5477,8 @@ msgid ""
"“%s†is not a valid character following the close element name “%sâ€; the "
"allowed character is “>â€"
msgstr ""
-"«%s» no és un caràcter vàlid després del nom d'element de tancament «%s». El "
-"caràcter permès és «>»"
+"«%s» no és un caràcter vàlid després del nom d'element de tancament «%s». El"
+" caràcter permès és «>»"
#: glib/gmarkup.c:1637
#, c-format
@@ -5552,7 +5618,7 @@ msgstr "S'ha produït un error en analitzar l'opció %s"
msgid "Missing argument for %s"
msgstr "Manca un argument per a %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Es desconeix l'opció %s"
@@ -5660,7 +5726,7 @@ msgstr "no es reconeix el caràcter després de «(?» o «(?-»"
#: glib/gregex.c:361
msgid "POSIX named classes are supported only within a class"
msgstr ""
-"només es permeten les classes amb nom de POSIX dins de la pròpia classe"
+"Només es permeten les classes amb nom de POSIX dins de la pròpia classe"
#: glib/gregex.c:364
msgid "missing terminating )"
@@ -5712,7 +5778,6 @@ msgstr "s'esperava una asserció després de «(?(»"
#. translators: '(?R' and '(?[+-]digits' are both meant as (groups of)
#. * sequences here, '(?-54' would be an example for the second group.
-#.
#: glib/gregex.c:407
msgid "(?R or (?[+-]digits must be followed by )"
msgstr "«(?R» o «(?[+-]dígits» han d'anar seguits de «)»"
@@ -5723,7 +5788,7 @@ msgstr "nom de classe POSIX desconeguda"
#: glib/gregex.c:413
msgid "POSIX collating elements are not supported"
-msgstr "no es poden utilitzar els elements d'ordenació de POSIX"
+msgstr "No es poden utilitzar els elements d'ordenació de POSIX"
#: glib/gregex.c:416
msgid "character value in \\x{...} sequence is too large"
@@ -5739,8 +5804,7 @@ msgstr "no es permet \\C en assercions cap enrere"
#: glib/gregex.c:429
msgid "escapes \\L, \\l, \\N{name}, \\U, and \\u are not supported"
-msgstr ""
-"no s'admeten els caràcters d'escapada «\\L», «\\l», «\\N{nom}», «\\U» i «\\u»"
+msgstr "no s'admeten els caràcters d'escapada «\\L», «\\l», «\\N{nom}», «\\U» i «\\u»"
#: glib/gregex.c:432
msgid "recursive call could loop indefinitely"
@@ -5788,7 +5852,7 @@ msgstr "no s'ha trobat el subpatró referenciat comprovat anteriorment"
#: glib/gregex.c:468
msgid "DEFINE group contains more than one branch"
-msgstr "el grup «DEFINE» conté més d'una branca"
+msgstr "El grup «DEFINE» conté més d'una branca"
#: glib/gregex.c:471
msgid "inconsistent NEWLINE options"
@@ -5829,8 +5893,8 @@ msgstr "s'esperava un dígit després de (?+"
#: glib/gregex.c:496
msgid "] is an invalid data character in JavaScript compatibility mode"
msgstr ""
-"el caràcter«]» no és un caràcter de dades vàlid en el mode de compatibilitat "
-"amb JavaScript"
+"el caràcter«]» no és un caràcter de dades vàlid en el mode de compatibilitat"
+" amb JavaScript"
#: glib/gregex.c:499
msgid "different names for subpatterns of the same number are not allowed"
@@ -5934,8 +5998,8 @@ msgstr "no es reconeix la seqüència d'escapament"
#, c-format
msgid "Error while parsing replacement text “%s†at char %lu: %s"
msgstr ""
-"S'ha produït un error en analitzar el text de reemplaçament «%s» al caràcter "
-"%lu: %s"
+"S'ha produït un error en analitzar el text de reemplaçament «%s» al caràcter"
+" %lu: %s"
#: glib/gshell.c:96
msgid "Quoted text doesn’t begin with a quotation mark"
@@ -5944,8 +6008,8 @@ msgstr "El text citat no comença amb cometes"
#: glib/gshell.c:186
msgid "Unmatched quotation mark in command line or other shell-quoted text"
msgstr ""
-"S'han trobat unes cometes desaparellades en una línia d'ordres o en un altre "
-"text entre cometes"
+"S'han trobat unes cometes desaparellades en una línia d'ordres o en un altre"
+" text entre cometes"
#: glib/gshell.c:592
#, c-format
@@ -5968,124 +6032,137 @@ msgstr "El text era buit (o només contenia espais en blanc)"
msgid "Failed to read data from child process (%s)"
msgstr "No s'han pogut llegir dades des del procés fill (%s)"
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr ""
"S'ha produït un error no esperat en llegir dades des d'un procés fill (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "S'ha produït un error inesperat en waitpid() (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "El procés fill ha sortit amb el codi %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "El senyal %ld ha matat el procés fill"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "El senyal %ld ha aturat el procés fill"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "El procés fill ha sortit inesperadament"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "No s'ha pogut llegir des del conducte fill (%s)"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
-msgstr "No s'ha pogut executar el procés fill «%s» (%s)"
+msgstr "No s'ha pogut engendrar el procés fill «%s» (%s)"
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "No s'ha pogut bifurcar (%s)"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "No s'ha pogut canviar al directori «%s» (%s)"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "No s'ha pogut executar el procés fill «%s» (%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2550
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "No s'ha pogut redirigir l'entrada o la sortida del procés fill (%s)"
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr ""
+"No s'ha pogut obrir el fitxer per a tornar a assignar el descriptor de "
+"fitxers (%s)"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2558
+#, c-format
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr ""
+"No s'ha pogut duplicar el descriptor de fitxers per al procés fill (%s)"
+
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "No s'ha pogut bifurcar el procés fill (%s)"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2575
#, c-format
msgid "Failed to close file descriptor for child process (%s)"
msgstr "No s'ha pogut tancar el descriptor de fitxers per al procés fill (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "S'ha produït un error desconegut en executar el procés fill «%s»"
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr ""
"No s'han pogut llegir prou dades del conducte de l'identificador del procés "
"fill (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "No s'han pogut llegir dades del procés fill"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "No s'ha pogut executar el procés fill (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "No s'ha pogut dup() en el procés fill (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "El nom del programa no és vàlid: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "La cadena en el vector d'argument no és vàlida a %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Cadena no vàlida a l'entorn: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "El directori de treball no és vàlid: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "No s'ha pogut executar el programa d'ajuda (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -6093,21 +6170,21 @@ msgstr ""
"S'ha produït un error inesperat a g_io_channel_win32_poll() en llegir dades "
"d'un procés fill"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "La cadena buida no és un número"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "«%s» no és un nombre amb signe"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "El número «%s» està fora de rangs [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "«%s» no és un nombre sense signe"
@@ -6153,7 +6230,7 @@ msgstr "El port «%.*s» de l'URI està fora de rang"
#: glib/guri.c:1224 glib/guri.c:1288
#, c-format
msgid "URI ‘%s’ is not an absolute URI"
-msgstr "L'URI «%s» no és un URI absoluta"
+msgstr "L'URI «%s» no és un URI absolut"
#: glib/guri.c:1230
#, c-format
@@ -6168,175 +6245,175 @@ msgstr "L'URI no és absolut i no s'ha proporcionat cap URI base"
msgid "Missing ‘=’ and parameter value"
msgstr "Falta «=» i el valor del paràmetre"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "No s'ha pogut ubicar memòria"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "El caràcter és fora de l'interval d'UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Seqüència no vàlida a l'entrada de la conversió"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "El caràcter és fora de l'interval d'UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u byte"
msgstr[1] "%u bytes"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6344,7 +6421,7 @@ msgstr[0] "%u bit"
msgstr[1] "%u bits"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6352,44 +6429,46 @@ msgstr[0] "%s byte"
msgstr[1] "%s bytes"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
msgstr[0] "%s bit"
msgstr[1] "%s bits"
-#. Translators: this is from the deprecated function g_format_size_for_display() which uses 'KB' to
-#. * mean 1024 bytes. I am aware that 'KB' is not correct, but it has been preserved for reasons of
-#. * compatibility. Users will not see this string unless a program is using this deprecated function.
+#. Translators: this is from the deprecated function
+#. g_format_size_for_display() which uses 'KB' to
+#. * mean 1024 bytes. I am aware that 'KB' is not correct, but it has been
+#. preserved for reasons of
+#. * compatibility. Users will not see this string unless a program is using
+#. this deprecated function.
#. * Please translate as literally as possible.
-#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
diff --git a/po/cs.po b/po/cs.po
index 19ca2bc4f..a47614c11 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -13,10 +13,10 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: glib glib-2-70\n"
+"Project-Id-Version: glib\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-02-01 17:05+0000\n"
-"PO-Revision-Date: 2022-02-09 20:38+0100\n"
+"POT-Creation-Date: 2022-02-14 13:48+0000\n"
+"PO-Revision-Date: 2022-02-14 20:38+0100\n"
"Last-Translator: Marek Černocký <marek@manet.cz>\n"
"Language-Team: ÄeÅ¡tina <gnome-cs-list@gnome.org>\n"
"Language: cs\n"
@@ -27,29 +27,39 @@ msgstr ""
"X-Generator: Gtranslator 2.91.7\n"
"X-Project-Style: gnome\n"
-#: gio/gapplication.c:500
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Nastavení výchozích aplikací není podporováno"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"Nastavení aplikace, jako poslední použité pro daný typ, není zatím "
+"podporováno"
+
+#: gio/gapplication.c:497
msgid "GApplication options"
msgstr "Volby GApplication"
-#: gio/gapplication.c:500
+#: gio/gapplication.c:497
msgid "Show GApplication options"
-msgstr "Ukázat volby GApplication"
+msgstr "Zobrazit volby GApplication"
-#: gio/gapplication.c:545
+#: gio/gapplication.c:542
msgid "Enter GApplication service mode (use from D-Bus service files)"
msgstr ""
"Vstoupit do režimu služby GApplication (použít ze souborů služby D-Bus)"
-#: gio/gapplication.c:557
+#: gio/gapplication.c:554
msgid "Override the application’s ID"
msgstr "Přepsat ID aplikace"
-#: gio/gapplication.c:569
+#: gio/gapplication.c:566
msgid "Replace the running instance"
msgstr "Nahradit běžící instanci"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Vypsat nápovědu"
@@ -61,7 +71,7 @@ msgstr "[PŘÃKAZ]"
msgid "Print version"
msgstr "Vypsat verzi"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Vypsat informace o verzi a skonÄit"
@@ -123,8 +133,8 @@ msgstr "Příkaz, ke kterému vypsat podrobnou nápovědu"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Identifikátor aplikace ve formátu D-Bus (např. org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "SOUBOR"
@@ -151,7 +161,7 @@ msgstr "PARAMETR"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Volitelný parametr k akci vyvolání ve formátu GVariant"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -165,7 +175,7 @@ msgid "Usage:\n"
msgstr "Použití:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argumenty:\n"
@@ -288,7 +298,7 @@ msgstr "Proud je již uzavřen"
msgid "Truncate not supported on base stream"
msgstr "Zkrácování není v proudu podporováno"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -309,7 +319,7 @@ msgstr "Cíl nemá dostatek místa"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Neplatná posloupnost bajtů na vstupu převodu"
@@ -319,7 +329,7 @@ msgstr "Neplatná posloupnost bajtů na vstupu převodu"
msgid "Error during conversion: %s"
msgstr "Chyba při převodu: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Zrušitelné spuštění není podporováno"
@@ -333,7 +343,7 @@ msgstr "Převod ze znakové sady „%s“ do „%s“ není podporován"
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Nelze otevřít převodník z „%s“ do „%s“"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "typ %s"
@@ -347,23 +357,23 @@ msgstr "Neznámý typ"
msgid "%s filetype"
msgstr "typ souboru %s"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials obsahuje neplatná data"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials na tomto OS není implementováno"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Danou platformu GCredentials nepodporuje"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GCredentials na tomto OS neobsahuje ID procesu"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Změna přihlašovacích údajů na tomto OS není implementován"
@@ -371,17 +381,17 @@ msgstr "Změna přihlašovacích údajů na tomto OS není implementován"
msgid "Unexpected early end-of-stream"
msgstr "NeoÄekávaný Äasný konec proudu"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Nepodporovaný klÃ­Ä â€ž%s“ v záznamu s adresou „%s“"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Nesmyslná párová kombinace klíÄ/hodnota v záznamu s adresou „%s“"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -390,28 +400,28 @@ msgstr ""
"Adresa „%s“ je neplatná (je zapotÅ™ebí právÄ› jeden z klíÄů path, tmpdir nebo "
"abstract)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Chyba v adrese „%s“ – atribut „%s“ má chybný formát"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Neznámý nebo nepodporovaný přenos „%s“ adresy „%s“"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "Prvek adresy „%s“ neobsahuje dvojteÄku (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "Název přenosu v prvku adresy „%s“ nesmí být prázdný"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -419,13 +429,13 @@ msgid ""
msgstr ""
"Pár klíÄ/hodnota %d, „%s“, v prvku adresy „%s“ neobsahuje znak rovná se"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
msgstr "Pár klíÄ/hodnota %d, „%s“ v prvku adresy „%s“ nesmí mít prázdný klíÄ"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -434,7 +444,7 @@ msgstr ""
"Chyba v neuvozeném klíÄi nebo hodnotÄ› v páru klíÄ/hodnota %d, „%s“, v prvku "
"adresy „%s“"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -443,74 +453,74 @@ msgstr ""
"Chyba v adrese „%s“ – unix transport vyžaduje jako nastavený právě jeden z "
"klíÄů „path“ nebo „abstract“"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr "Chyba v adrese „%s“ – atribut poÄítaÄe schází nebo má chybný formát"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "Chyba v adrese „%s“ – atribut portu schází nebo má chybný formát"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr "Chyba v adrese „%s“ – atribut noncefile schází nebo má chybný formát"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Chyba při automatickém spouštění: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Chyba při otevírání souboru nonce „%s“: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Chyba pÅ™i Ätení ze souboru nonce „%s“: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr "Chyba pÅ™i Ätení ze souboru nonce „%s“, oÄekáváno 16 bajtů, obdrženo %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Chyba při zápisu obsahu souboru nonce „%s“ do proudu:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "Daná adresa je prázdná"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Nelze spustit sběrnici zpráv bez setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "Nelze spustit sběrnici zpráv, když je nastaveno AT_SECURE"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "Nelze spustit sběrnici zpráv bez machine-id: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Nelze automaticky spustit D-Bus bez X11 $DISPLAY"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Chyba při spouštění příkazového řádku „%s“: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr "Nelze urÄit adresu sbÄ›rnice sezení (v tomto OS neimplementováno)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7334
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -519,7 +529,7 @@ msgstr ""
"Nelze urÄit adresu sbÄ›rnice z promÄ›nné prostÅ™edí DBUS_STARTER_BUS_TYPE – "
"neznámá hodnota „%s“"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7343
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -527,7 +537,7 @@ msgstr ""
"Nelze urÄit adresu sbÄ›rnice, jelikož promÄ›nná prostÅ™edí "
"DBUS_STARTER_BUS_TYPE není nastavena"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Neznámý typ sběrnice %d"
@@ -555,86 +565,86 @@ msgstr "ID uživatele musí být stejné pro klienta i server"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Zrušeno přes GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:299
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Chyba při získávání informací pro složku „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:314
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
msgstr ""
"OprávnÄ›ní složky „%s“ mají chybný formát. OÄekáván režim 0700, obdržen 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:347 gio/gdbusauthmechanismsha1.c:358
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Chyba při vytváření složky %s: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:360 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Operace není podporována"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:403
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Chyba pÅ™i otevírání klíÄenky „%s“ ke Ätení: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:426 gio/gdbusauthmechanismsha1.c:748
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "Řádek %d klíÄenky na „%s“ s obsahem „%s“ má chybný formát"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:440 gio/gdbusauthmechanismsha1.c:762
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "První symbol řádku %d klíÄenky na „%s“ s obsahem „%s“ má chybný formát"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:454 gio/gdbusauthmechanismsha1.c:776
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "Druhý symbol řádku %d klíÄenky na „%s“ s obsahem „%s“ má chybný formát"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:478
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Nenalezena cookie s id %d v klíÄence na „%s“"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:524
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Chyba při vytváření zamykacího souboru „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:588
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Chyba při mazání zastaralého zamykacího souboru „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:627
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Chyba při zavírání (neodkazovaného) zamykacího souboru „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:638
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Chyba mazámí zamykacího souboru „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:715
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Chyba pÅ™i otevírání klíÄenky „%s“ k zápisu: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:909
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Navíc selhalo také uvolnění zámku pro „%s“: %s) "
@@ -737,27 +747,27 @@ msgstr "Podstrom je již exportován pro %s"
msgid "Object does not exist at path “%sâ€"
msgstr "V cestě „%s“ objekt neexistuje"
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "typ je INVALID"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "Zpráva METHOD_CALL: pole se záhlavím PATH nebo MEMBER schází"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "Zpráva METHOD_RETURN: pole se záhlavím REPLY_SERIAL schází"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "Zpráva ERROR: pole se záhlavím REPLY_SERIAL nebo ERROR_NAME schází"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "Zpráva SIGNAL: pole se záhlavím PATH, INTERFACE nebo MEMBER schází"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -765,7 +775,7 @@ msgstr ""
"Zpráva SIGNAL: pole se záhlavím PATH používá rezervovanou hodnotu /org/"
"freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -773,7 +783,7 @@ msgstr ""
"Zpráva SIGNAL: pole se záhlavím INTERFACE používá rezervovanou hodnotu org."
"freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
@@ -781,12 +791,12 @@ msgstr[0] "Zamýšlel se pÅ™eÄíst %lu bajt, ale obdrženo %lu"
msgstr[1] "Zamýšlely se pÅ™eÄíst %lu bajty, ale obdrženo %lu"
msgstr[2] "Zamýšlelo se pÅ™eÄíst %lu bajtů, ale obdrženo %lu"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "OÄekáván bajt NULL za Å™etÄ›zcem „%s“, ale byl nalezen bajt %d"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -795,21 +805,21 @@ msgstr ""
"OÄekáván platný Å™etÄ›zec UTF-8, ale byly nalezeny neplatné bajty na pozici %d "
"(délka řetězce je %d). Platný řetězec UTF-8 až do příslušného bodu byl „%s“"
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Hodnota je zanořená příliš hluboko"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Analyzovaná hodnota „%s“ není platná cesta objektu D-Bus"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Analyzovaná hodnota „%s“ není platný podpis D-Bus"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -822,7 +832,7 @@ msgstr[1] ""
msgstr[2] ""
"Zjištěno pole o délce %u bajtů. Maximální délka je 2<<26 bajtů (64 MiB)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -831,16 +841,16 @@ msgstr ""
"Vyskytlo se pole typu „a%c“, které by mělo mít délku v násobku %u bajtů, ale "
"skuteÄná délka je %u bajtů"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
msgstr "Prázdné struktury (n-tice) nejsou na sběrnici D-Bus dovoleny"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "Analyzovaná hodnota „%s“ varianty není platným podpisem D-Bus"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
@@ -848,7 +858,7 @@ msgstr ""
"Chyba při rušení serializace GVariant s řetězcem typu „%s“ z přenosového "
"formátu D-Bus"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -857,27 +867,27 @@ msgstr ""
"Neplatná hodnota endianity. OÄekávána 0x6c („l“) nebo 0x42 („B“), ale "
"nalezena hodnota 0x%02x"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Neplatná verze hlavního protokolu. OÄekávána 1, ale nalezena %d"
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Byla nalezena hlaviÄka podpisu, ale není typu podpis"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"Byla nalezena hlaviÄka podpisu s podpisem „%s“, ale tÄ›lo zprávy je prázdné"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "Analyzovaná hodnota „%s“ není platným podpisem D-Bus (pro tělo)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -885,11 +895,11 @@ msgstr[0] "Ve zprávÄ› není hlaviÄka s podpisem, ale tÄ›lo zprávy má %u bajt
msgstr[1] "Ve zprávÄ› není hlaviÄka s podpisem, ale tÄ›lo zprávy má %u bajty"
msgstr[2] "Ve zprávÄ› není hlaviÄka s podpisem, ale tÄ›lo zprávy má %u bajtů"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Nelze zrušit serializaci zprávy: "
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
@@ -897,75 +907,75 @@ msgstr ""
"Chyba při serializaci GVariant s řetězcem typu „%s“ do přenosového formátu D-"
"Bus"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr ""
"PoÄet popisovaÄů souborů ve zprávÄ› (%d) se liší od pole v hlaviÄce (%d)"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Nelze serializovat zprávu: "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "Tělo zprávy má podpis „%s“, ale záhlaví s podpisem neexistuje"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
"“%sâ€"
msgstr "Tělo zprávy má podpis typu „%s“, ale podpis v poli se záhlavím je „%s“"
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "Tělo zprávy je prázdné, ale podpis v poli se záhlavím je „(%s)“"
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Navrácena chyba s tělem typu „%s“"
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Navrácena chyba s prázdným tělem"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(ZmáÄknutím libovolného znaku okno zavÅ™ete)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Služba dbus sezení neběží a automatické spuštění selhalo"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Nelze získat profil hardwaru: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Nelze naÄíst %s: %s"
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Chyba při volání StartServiceByName pro %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "NeoÄekávaná odpovÄ›Ä %d od metody StartServiceByName(„%s“)"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1021,13 +1031,13 @@ msgstr ""
"NápovÄ›du k jednotlivým příkazům získáte použitím „%s PŘÃKAZ --help“.\n"
#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1244
+#: gio/gdbus-tool.c:1732
#, c-format
msgid "Error: %s\n"
msgstr "Chyba: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1748
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Chyba při analýze introspection XML: %s\n"
@@ -1037,8 +1047,8 @@ msgstr "Chyba při analýze introspection XML: %s\n"
msgid "Error: %s is not a valid name\n"
msgstr "Chyba: %s není platným názvem\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1063
+#: gio/gdbus-tool.c:1898 gio/gdbus-tool.c:2138
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Chyba: %s není platnou cestou objektu\n"
@@ -1104,8 +1114,8 @@ msgstr "Název signálu a rozhraní"
msgid "Emit a signal."
msgstr "Vyslat signál."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:1000 gio/gdbus-tool.c:1835
+#: gio/gdbus-tool.c:2067 gio/gdbus-tool.c:2287
#, c-format
msgid "Error connecting: %s\n"
msgstr "Chyba při spojení: %s\n"
@@ -1115,7 +1125,7 @@ msgstr "Chyba při spojení: %s\n"
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Chyba: %s není platným jedineÄným názvem sbÄ›rnice.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1043 gio/gdbus-tool.c:1878
msgid "Error: Object path is not specified\n"
msgstr "Chyba: Není urÄena žádná cesta k objektu\n"
@@ -1139,7 +1149,7 @@ msgid "Error: %s is not a valid member name\n"
msgstr "Chyba: %s není platným názvem Älenu\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1175
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Chyba při analyzování parametru %d: %s\n"
@@ -1149,101 +1159,105 @@ msgstr "Chyba při analyzování parametru %d: %s\n"
msgid "Error flushing connection: %s\n"
msgstr "Chyba při vyprazdňování spojení: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:894
msgid "Destination name to invoke method on"
msgstr "Název cíle, u kterého se má spustit metoda"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:895
msgid "Object path to invoke method on"
msgstr "Cesta objektu, u kterého se má spustit metoda"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:896
msgid "Method and interface name"
msgstr "Název metody a rozhraní"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:897
msgid "Timeout in seconds"
msgstr "Časový limit v sekundách"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:898
+msgid "Allow interactive authorization"
+msgstr "Povolit interaktivní autorizaci"
+
+#: gio/gdbus-tool.c:945
msgid "Invoke a method on a remote object."
msgstr "Spustit metodu na vzdáleném objektu."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1017 gio/gdbus-tool.c:1852 gio/gdbus-tool.c:2092
msgid "Error: Destination is not specified\n"
msgstr "Chyba: Není urÄen žádný cíl\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1028 gio/gdbus-tool.c:1869 gio/gdbus-tool.c:2103
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Chyba: %s není platným názvem sběrnice\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1078
msgid "Error: Method name is not specified\n"
msgstr "Chyba: Není urÄen název metody\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1089
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Chyba: Název metody „%s“ je neplatný\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1167
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Chyba při analyzování parametru %d typu „%s“: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1193
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Chyba při přidávání obsluhy %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1694
msgid "Destination name to introspect"
msgstr "Název cíle, u kterého provést introspection"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1695
msgid "Object path to introspect"
msgstr "Cesta objektu, u které provést introspection"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1696
msgid "Print XML"
msgstr "Vypsat XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1697
msgid "Introspect children"
msgstr "Provést introspection potomka"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1698
msgid "Only print properties"
msgstr "Vypsat pouze vlastnosti"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1787
msgid "Introspect a remote object."
msgstr "Provést introspection vzdáleného objektu."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1993
msgid "Destination name to monitor"
msgstr "Název cíle urÄený ke sledování"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1994
msgid "Object path to monitor"
msgstr "Cesta objektu urÄená ke sledování"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2019
msgid "Monitor a remote object."
msgstr "Sledovat vzdálený objekt."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2077
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Chyba: nelze monitorovat připojení na sběrnici bez zpráv\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2201
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr ""
"Služba, která se má aktivovat pÅ™ed Äekáním na jinou službu (oficiálnÄ› známý "
"název)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2204
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1251,63 +1265,68 @@ msgstr ""
"ÄŒasové omezení Äekaní, po kterém se skonÄí s chybou (v sekundách). 0 znamená "
"bez omezení (výchozí)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2252
msgid "[OPTION…] BUS-NAME"
msgstr "[PŘEPÃNAČ…] NÃZEV-SBÄšRNICE"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2253
msgid "Wait for a bus name to appear."
msgstr "Čekat, než se objeví název sběrnice."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2329
msgid "Error: A service to activate for must be specified.\n"
msgstr "Chyba: Musí být urÄena služba, pro kterou provádíte aktivaci.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2334
msgid "Error: A service to wait for must be specified.\n"
msgstr "Chyba: Musí být urÄena služba, na kterou Äekáte.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2339
msgid "Error: Too many arguments.\n"
msgstr "Chyba: Příliš mnoho argumentů.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2347 gio/gdbus-tool.c:2354
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Chyba: %s není platným oficiálně známým názvem sběrnice.\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdebugcontrollerdbus.c:203
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Neautorizováno ke změnám ladicích nastavení"
+
+#: gio/gdesktopappinfo.c:2174 gio/gdesktopappinfo.c:5099
msgid "Unnamed"
msgstr "Bez názvu"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2584
msgid "Desktop file didn’t specify Exec field"
msgstr "V souboru .desktop není urÄeno pole Exec"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2892
msgid "Unable to find terminal required for application"
msgstr "Nezdařilo se najít terminál vyžadovaný pro aplikaci"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3619
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr "Nezdařilo se vytvořit složku %s s uživatelským nastavením aplikace: %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3623
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Nezdařilo se vytvořit složku %s s uživatelským nastavením MIME: %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3865 gio/gdesktopappinfo.c:3889
msgid "Application information lacks an identifier"
msgstr "Informace o aplikaci postrádá identifikátor"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4125
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Nezdařilo se vytvořit uživatelský soubor .desktop %s"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4261
#, c-format
msgid "Custom definition for %s"
msgstr "Vlastní definice %s"
@@ -1335,7 +1354,7 @@ msgstr "mechanika neumí spuštění"
msgid "drive doesn’t implement stop"
msgstr "mechanika neumí zastavení"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "Knihovna TLS neimplementuje zjišťování vazeb TLS"
@@ -1376,74 +1395,74 @@ msgstr "OÄekáváno GEmblem u GEmblemedIcon"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Obsahující připojené neexistuje"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Nelze kopírovat nad složku"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Nelze kopírovat složku nad složku"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Cílový soubor existuje"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Složku nelze kopírovat rekurzivně"
# For splice(), see http://en.wikipedia.org/w/index.php?title=Splice_(system_call)&oldid=334434835
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "splice() není podporováno"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Chyba při spojování souboru: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Kopírování (reflink/clone) mezi připojeními není podporováno"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Kopírování (reflink/clone) není podporováno nebo je neplatné"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Kopírování (reflink/clone) není podporováno nebo neproběhlo správně"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Nelze kopírovat zvláštní soubor"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Zadaný symbolický odkaz je neplatný"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Symbolické odkazy nejsou podporovány"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Zahozené není podporováno"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Názvy souborů nemohou obsahovat „%c“"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "svazek neumí připojení"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Žádná aplikace není zaregistrována k obsluze tohoto souboru"
@@ -1488,7 +1507,7 @@ msgstr "Oříznutí není možné ve vstupním datovém proudu"
msgid "Truncate not supported on stream"
msgstr "Oříznutí není v datovém proudu podporováno"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Neplatný název poÄítaÄe"
@@ -1575,7 +1594,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Nelze zpracovat „%s“ jak masku adresy IP"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Adresa soketu nemá dostatek místa"
@@ -2410,15 +2429,15 @@ msgstr "Chyba při komprimaci souboru „%s“"
msgid "text may not appear inside <%s>"
msgstr "text nemůže být umístěn uvnitř <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Zobrazit verzi programu a skonÄit"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Název výstupního souboru"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2426,48 +2445,48 @@ msgstr ""
"Složka, ze které mají být Äteny soubory odkazované v SOUBOR (výchozí je "
"aktuální složka)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "SLOŽKA"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
"Generovat výstup ve formátu vybraného podle přípony v názvu cílového souboru"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Generovat hlaviÄkový soubor"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr ""
"Generovat zdrojový kód, který se použije ve vašem zdrojovém kódu jako odkaz "
"na soubor prostředků"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Generovat seznam závislostí"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Název souboru se závislostmi, který se má vygenerovat"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Do generovaných souborů závislostí zahrnout i fiktivní cíle"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Prostředek nevytvářet a neregistrovat automaticky"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Neexportovat funkce; oznaÄit je za G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2475,11 +2494,15 @@ msgstr ""
"Nevkládat data prostředků do souborů C; předpokládat, že jsou místo toho "
"navázána externě"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "Název identifikátoru C použitý ke generování zdrojového kódu"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "Kompilátor C pro cíl (výchozí: proměnná prostředí CC)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2489,7 +2512,7 @@ msgstr ""
"Soubory se specifikacemi prostředků musí mít příponu .gschema.xml,\n"
"a soubor prostředků musí mít příponu .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Měl by být zadán právě jeden název souboru\n"
@@ -3286,7 +3309,7 @@ msgid "Error truncating file: %s"
msgstr "Chyba při zkracování souboru: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Chyba při otevírání souboru %s: %s"
@@ -3308,7 +3331,7 @@ msgstr "Soubor byl externě pozměněn"
msgid "Error removing old file: %s"
msgstr "Chyba při odstraňování starého souboru: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Poskytnut neplatný GSeekType"
@@ -3320,15 +3343,15 @@ msgstr "Neplatný požadavek na hledání"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Nelze zkrátit GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Nelze měnit velikost výstupního proudu paměti"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Nelze změnit velikost výstupního proudu paměti"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3336,11 +3359,11 @@ msgstr ""
"Velikost paměti potřebná ke zpracování zápisu je větší než dostupný adresní "
"prostor"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Požadováno hledání pÅ™ed poÄátkem proudu"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Požadováno hledání za ukonÄením proudu"
@@ -3444,18 +3467,18 @@ msgstr "SouÄet vektorů pÅ™edaných do %s je příliÅ¡ velký"
msgid "Source stream is already closed"
msgstr "Zdrojový proud je již ukonÄen"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Chyba při řešení „%s“: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "Funkce %s není implementovaná"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Neplatná doména"
@@ -3570,7 +3593,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " ODDÃL (Volitelný) název oddílu elf\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " PŘÃKAZ (Volitelný) příkaz, který má být popsán\n"
@@ -3603,7 +3626,7 @@ msgstr "CESTA"
msgid " PATH A resource path\n"
msgstr " CESTA Cesta k prostředku\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Schéma „%s“ neexistuje\n"
@@ -3634,35 +3657,35 @@ msgstr "Cesta musí konÄit lomítkem (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Cesta nesmí obsahovat dvě po sobě jdoucí lomítka (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "Poskytnutá hodnota je mimo platný rozsah\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "KlÃ­Ä není zapisovatelný\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Vypíše nainstalovaná (nepřemístitelná) schémata"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Vypíše nainstalovaná přemístitelná schémata"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Vypíše klíÄe ve SCHÉMATU"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "SCHÉMA[:CESTA]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Vypíše potomky SCHÉMATU"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3670,48 +3693,48 @@ msgstr ""
"Vypíše klíÄe a hodnoty, rekurzivnÄ›\n"
"Není-li zadáno SCHÉMA, vypíše vÅ¡echny klíÄe\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SCHÉMA[:CESTA]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Získá hodnotu KLÃÄŒE"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "SCHÉMA[:CESTA] KLÃÄŒ"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Dotáže se na rozsah platných hodnot KLÃÄŒE"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Dotáže se na popis KLÃÄŒE"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Nastaví hodnotu KLÃÄŒE k HODNOTÄš"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SCHÉMA[:CESTA] KLÃÄŒ HODNOTA"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Nastaví KLÃÄŒ na výchozí hodnotu"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Resetovat vÅ¡echny klíÄe ve SCHÉMATU na výchozí hodnoty"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Zjistí, zda je KLÃÄŒ zapisovatelný"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3721,11 +3744,11 @@ msgstr ""
"Není-li zadán KLÃÄŒ, sleduje vÅ¡echny klíÄe ve SCHÉMATU.\n"
"Sledování zastavíte použitím ^C.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SCHÉMA[:CESTA] [KLÃÄŒ]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3773,7 +3796,7 @@ msgstr ""
"Podrobnou nápovÄ›du získáte použitím „gsettings help PŘÃKAZ“.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3788,11 +3811,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " SLOŽKA_SCHÉMAT Složka, ve které se mají hledat dodateÄná schémata\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3800,212 +3823,212 @@ msgstr ""
" SCHÉMA Název schématu\n"
" CESTA Cesta, pro přemístitelná schémata\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " KLÃÄŒ (Volitelný) klÃ­Ä uvnitÅ™ schématu\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " KLÃÄŒ KlÃ­Ä uvnitÅ™ schématu\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " HODNOTA Hodnota, která má být nastavena\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Nelze nahrát schémata z %s: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Nejsou nainstalována žádná schémata\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Poskytnut prázdný název schématu\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "KlÃ­Ä â€ž%s“ neexistuje\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Neplatný soket, nebyl spuštěn"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Neplatný soket, spuštění selhalo kvůli: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Soket je již ukonÄen"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Časový limit V/V soketu vypršel"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "vytváří se GSocket z fd: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Nelze vytvořit soket: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Byla zadána neznámá rodina"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Byl zadán neznámý protokol"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "Nelze používat datagramové operace na nedatagramovém soketu."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Nelze používat datagramové operace na soketu s nastaveným Äasovým limitem."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "nezdařilo se získat místní adresu: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "nezdařilo se získat vzdálenou adresu: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "nezdařilo se naslouchání: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Chyba při navázání na adresu %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Chyba připojování ke skupině hromadného vysílání: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Chyba při opouštění skupiny hromadného vysílání: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Není podpora pro hromadné vysílání urÄené zdrojem"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Nepodporovaná rodina soketů"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "urÄení zdroje není adresa IPv4"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Název rozhraní je příliš dlouhý"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Rozhraní nebylo nalezeno: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "Není podpora pro hromadné vysílání urÄené zdrojem IPv4"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "Není podpora pro hromadné vysílání urÄené zdrojem IPv6"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Chyba při přijímání spojení: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Probíhá spojení"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Nelze získat nevyřízenou chybu: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Chyba při získávání dat: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Chyba při odesílání dat: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Nelze ukonÄit soket: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Chyba při zavírání soketu: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Čeká se na stav soketu: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Nezdařilo se odeslat zprávu: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Vektory zprávy jsou příliš rozsáhlé"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Chyba při odesílání zprávy: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage nepodporováno na Windows"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Chyba při získávání zprávy: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Nelze Äíst pověření k soketu: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "g_socket_get_credentials není u tohoto OS implementováno"
@@ -4023,12 +4046,12 @@ msgstr "Nelze se připojit k %s: "
msgid "Could not connect: "
msgstr "Nelze se připojit: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr ""
"Není podporován pokus o proxy přes spojení, které není založeno na TCP."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Protokol proxy „%s“ není podporován."
@@ -4127,7 +4150,7 @@ msgstr "SOCKSv5 proxy nepodporuje poskytnutý typ adresy."
msgid "Unknown SOCKSv5 proxy error."
msgstr "Neznámá chyba SOCKSv5 proxy."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr "Selhalo vytvoření roury ke komunikaci s procesem potomka (%s)"
@@ -4168,27 +4191,31 @@ msgstr "DoÄasnÄ› není možné vyÅ™eÅ¡it „%s“"
msgid "Error resolving “%sâ€"
msgstr "Chyba při řešení „%s“"
-#: gio/gtlscertificate.c:431
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Nebyl nalezen žádný soukromý klÃ­Ä kódovaný jako PEM."
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Nelze deÅ¡ifrovat soukromý klÃ­Ä kódovaný jako PEM"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "NezdaÅ™ilo se analyzovat soukromý klÃ­Ä kódovaný jako PEM."
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Nebyl nalezen žádný certifikát kódovaný jako PEM."
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Nezdařilo se analyzovat certifikát kódovaný jako PEM."
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "Tato knihovna TLS nepodporuje PKCS #12."
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "Tento GTlsBackend nepodporuje vytváření certifikátů PKCS #11."
@@ -4214,7 +4241,11 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "Zadané heslo není správné."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "Odesílání popisovaÄe souboru není podporováno"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
@@ -4222,11 +4253,11 @@ msgstr[0] "OÄekávána 1 ovládací zpráva, získána %d"
msgstr[1] "OÄekávána 1 ovládací zpráva, získány %d"
msgstr[2] "OÄekávána 1 ovládací zpráva, získáno %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "NeoÄekávaný typ pomocných dat"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
@@ -4234,37 +4265,41 @@ msgstr[0] "OÄekáváno jedno fd, ale získána %d\n"
msgstr[1] "OÄekáváno jedno fd, ale získány %d\n"
msgstr[2] "OÄekáváno jedno fd, ale získáno %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
-msgstr "Přijato neplatné fd"
+msgstr "PÅ™ijat neplatný popisovaÄ souboru"
+
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "PÅ™ijímání popisovaÄe souboru není podporováno"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Chyba při odesílání přihlašovacích údajů: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Chyba při kontrole, zda je SO_PASSCRED povoleno u soketu: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Chyba při povolování SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"U odeslání pÅ™ihlaÅ¡ovacích údajů oÄekáváno pÅ™eÄtení jednoho bajtu, ale "
"pÅ™eÄteno nula bajtů"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Ovládací zpráva nebyla oÄekávána, ale obdrženo %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Chyba při zakazování SO_PASSCRED: %s"
@@ -4280,7 +4315,7 @@ msgstr "Chyba pÅ™i Ätení z popisovaÄe souboru: %s"
msgid "Error closing file descriptor: %s"
msgstr "Chyba pÅ™i zavírání popisovaÄe souboru: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2782 gio/gunixmounts.c:2835
msgid "Filesystem root"
msgstr "Kořen systému souborů"
@@ -4291,7 +4326,7 @@ msgstr "Kořen systému souborů"
msgid "Error writing to file descriptor: %s"
msgstr "Chyba pÅ™i zápisu do popisovaÄe souboru: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "V tomto systému nejsou podporovány abstraktní adresy soketů domén UNIX"
@@ -4441,8 +4476,8 @@ msgstr "Nelze rozšířit řádek exec „%s“ pomocí URI „%s“"
msgid "Unrepresentable character in conversion input"
msgstr "Nereprezentovatelný znak na vstupu převodu"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "ČásteÄná posloupnost znaků na konci vstupu"
@@ -5012,15 +5047,15 @@ msgstr "Kanál ukonÄen Äástí znaku"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Nelze přímo Äíst v g_io_channel_read_to_end"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "V složkách hledání nelze najít platný soubor klíÄe"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Není obyÄejným souborem"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5028,50 +5063,50 @@ msgstr ""
"Soubor klíÄe obsahuje „%s“, což není dvojice klíÄ-hodnota, skupina ani "
"komentář"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Neplatný název skupiny: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Soubor klíÄe nezaÄíná skupinou"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Neplatný název klíÄe: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Neplatný název klíÄe: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Soubor klíÄe obsahuje nepodporované kódování „%s“"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Soubor klíÄe nemá skupinu „%s“"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Soubor klíÄe nemá klÃ­Ä â€ž%s“ ve skupinÄ› „%s“"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "Soubor klíÄe obsahuje klÃ­Ä â€ž%s“ s hodnotou „%s“, která není v UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr ""
"Soubor klíÄe obsahuje klÃ­Ä â€ž%s“, který má neinterpretovatelnou hodnotu."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5080,36 +5115,36 @@ msgstr ""
"Soubor klíÄe obsahuje klÃ­Ä â€ž%s“ ve skupinÄ› „%s“, který má "
"neinterpretovatelnou hodnotu."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "KlÃ­Ä â€ž%s“ ve skupinÄ› „%s“ má hodnotu „%s“, když byla oÄekávána „%s“"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Soubor klíÄe obsahuje na konci řádku znak zmÄ›ny"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Soubor klíÄe obsahuje neplatnou únikovou sekvenci „%s“"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "Hodnotu „%s“ nelze interpretovat jako Äíslo."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "CeloÄíselná hodnota „%s“ je mimo rozsah"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "Hodnotu „%s“ nelze interpretovat jako reálné (plovoucí) Äíslo."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "Hodnotu „%s“ nelze interpretovat jako pravdivostní hodnotu."
@@ -5117,17 +5152,18 @@ msgstr "Hodnotu „%s“ nelze interpretovat jako pravdivostní hodnotu."
#: glib/gmappedfile.c:129
#, c-format
msgid "Failed to get attributes of file “%s%s%s%sâ€: fstat() failed: %s"
-msgstr "Nelze získat atributy souboru „%s%s%s%s“: fstat() selhalo: %s"
+msgstr ""
+"Selhalo získání atributů souboru „%s%s%s%s“: selhala funkce fstat(): %s"
#: glib/gmappedfile.c:195
#, c-format
msgid "Failed to map %s%s%s%s: mmap() failed: %s"
-msgstr "Nelze mapovat „%s%s%s%s“: mmap() selhalo: %s"
+msgstr "Selhalo namapování „%s%s%s%s“: selhala funkce mmap(): %s"
#: glib/gmappedfile.c:262
#, c-format
msgid "Failed to open file “%sâ€: open() failed: %s"
-msgstr "Nelze otevřít soubor „%s“: open() selhalo: %s"
+msgstr "Selhalo otevření souboru „%s“: selhala funkce open(): %s"
#: glib/gmarkup.c:398 glib/gmarkup.c:440
#, c-format
@@ -5397,7 +5433,7 @@ msgstr "Chyba volby %s při syntaktické analýze"
msgid "Missing argument for %s"
msgstr "Chybí parametr %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Neznámý pÅ™epínaÄ %s"
@@ -5811,132 +5847,142 @@ msgstr "NeoÄekávaná chyba pÅ™i Ätení dat z procesu potomka (%s)"
msgid "Unexpected error in waitpid() (%s)"
msgstr "NeoÄekávaná chyba v waitpid() (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1168 glib/gspawn-win32.c:1426
#, c-format
msgid "Child process exited with code %ld"
msgstr "Proces potomka skonÄil s kódem %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1176
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Proces potomka byl zabit signálem %ld"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Proces potomka byl zastaven signálem %ld"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process exited abnormally"
msgstr "Proces potomka neskonÄil normálnÄ›"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1881 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Selhalo Ätení z roury potomka (%s)"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2241
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Selhalo zplození procesu potomka „%s“ (%s)"
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2358
#, c-format
msgid "Failed to fork (%s)"
msgstr "Selhalo rozvětvení procesu (%s)"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2518 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Selhal přechod do složky „%s“ (%s)"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2528
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Selhalo spuštění procesu potomka „%s“ (%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2538
+#, c-format
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Selhalo otevÅ™ení souboru pro pÅ™emapování popisovaÄe souboru (%s)"
+
+#: glib/gspawn.c:2546
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Selhalo přesměrování vstupu nebo výstupu procesu potomka (%s)"
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Selhalo zduplikování popisovaÄe souboru pro proces potomka (%s)"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2555
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Selhalo rozvětvení procesu potomka (%s)"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2563
#, c-format
msgid "Failed to close file descriptor for child process (%s)"
msgstr "Selhalo zavÅ™ení popisovaÄe souboru pro proces potomka (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2571
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Neznámá chyba při běhu procesu potomka „%s“"
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2595
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "NezdaÅ™ilo se pÅ™eÄíst dostatek dat z roury pid potomka (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Selhalo Ätení dat z procesu potomka"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:519
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Selhalo spuštění procesu potomka (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Selhala funkce dup() v procesu potomka (%s)"
+
+#: glib/gspawn-win32.c:469
#, c-format
msgid "Invalid program name: %s"
msgstr "Neplatný název programu: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:479 glib/gspawn-win32.c:797
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Neplatný řetězec v poli argumentů na %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:490 glib/gspawn-win32.c:813
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Neplatný řetězec v prostředí: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:793
#, c-format
msgid "Invalid working directory: %s"
msgstr "Neplatná aktuální složka: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:858
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Nelze spustit pomocný program (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1086
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
msgstr ""
"NeoÄekávaná chyba v g_io_channel_win32_poll() pÅ™i Ätení dat z procesu potomka"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Prázdný Å™etÄ›zec není Äíslo"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "„%s“ není Äíslo se znaménkem"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Číslo „%s“ je mimo meze [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "„%s“ není Äíslo bez znaménka"
@@ -5997,168 +6043,168 @@ msgstr "Adresa URI není absolutní a není poskytnuta žádná základní URI"
msgid "Missing ‘=’ and parameter value"
msgstr "Schází „=“ a hodnota parametru"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Nelze alokovat paměť"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Znak je mimo rozsah UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Neplatná posloupnost na vstupu převodu"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Znak je mimo rozsah UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
@@ -6166,7 +6212,7 @@ msgstr[0] "%u bajt"
msgstr[1] "%u bajty"
msgstr[2] "%u bajtů"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6175,7 +6221,7 @@ msgstr[1] "%u bity"
msgstr[2] "%u bitů"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6184,7 +6230,7 @@ msgstr[1] "%s bajty"
msgstr[2] "%s bajtů"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6197,32 +6243,32 @@ msgstr[2] "%s bitů"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
diff --git a/po/da.po b/po/da.po
index 45f53a061..b37378149 100644
--- a/po/da.po
+++ b/po/da.po
@@ -9,7 +9,7 @@
# Kenneth Nielsen <k.nielsen81@gmail.com>, 2011.
# Joe Hansen <joedalton2@yahoo.dk>, 2013.
# Ask Hjorth Larsen <asklarsen@gmail.com>, 2007, 08, 09, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20.
-# Alan Mortensen <alanmortensen.am@gmail.com>, 2019.
+# Alan Mortensen <alanmortensen.am@gmail.com>, 2019, 2022.
#
# Konventioner:
#
@@ -28,8 +28,8 @@ msgid ""
msgstr ""
"Project-Id-Version: glib master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2021-07-19 15:52+0000\n"
-"PO-Revision-Date: 2021-08-28 11:37+0200\n"
+"POT-Creation-Date: 2022-04-08 12:19+0000\n"
+"PO-Revision-Date: 2022-04-18 19:18+0200\n"
"Last-Translator: Alan Mortensen <alanmortensen.am@gmail.com>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
"Language: da\n"
@@ -39,6 +39,15 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 2.3\n"
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Indstilling af standardprogrammer understøttes endnu ikke"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"Indstilling af program som det sidst brugte til typen understøttes endnu ikke"
+
#: gio/gapplication.c:500
msgid "GApplication options"
msgstr "GApplication-indstillinger"
@@ -60,7 +69,7 @@ msgid "Replace the running instance"
msgstr "Erstat den kørende instans"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Udskriv hjælp"
@@ -72,7 +81,7 @@ msgstr "[KOMMANDO]"
msgid "Print version"
msgstr "Udskriv version"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Udskriv versionsoplysninger og afslut"
@@ -134,8 +143,8 @@ msgstr "Kommandoen, der skal vises uddybende hjælp for"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Programidentifikator i D-Bus-format (f.eks. org.eksempel.fremviser)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "FIL"
@@ -160,7 +169,7 @@ msgstr "PARAMETER"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Valgfri parameter til handlingen i GVariant-format"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -174,7 +183,7 @@ msgid "Usage:\n"
msgstr "Brug:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argumenter:\n"
@@ -297,7 +306,7 @@ msgstr "Strømmen er allerede lukket"
msgid "Truncate not supported on base stream"
msgstr "Afkortning understøttes ikke af basisstrømmen"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1872 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -318,7 +327,7 @@ msgstr "Ikke nok plads på destinationen"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Ugyldig bytesekvens i konverteringsinddata"
@@ -328,7 +337,7 @@ msgstr "Ugyldig bytesekvens i konverteringsinddata"
msgid "Error during conversion: %s"
msgstr "Fejl under konvertering: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Initialisering med mulighed for afbrydelse understøttes ikke"
@@ -342,37 +351,37 @@ msgstr "Konvertering fra tegnsæt “%s†til “%s†er ikke understøttet"
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Kunne ikke konvertere fra “%s†til “%sâ€"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "%s-type"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Ukendt type"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "%s-filtype"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials indeholder ugyldige data"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials er ikke implementeret på dette operativsystem"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Der er ingen understøttelse for GCredentials på din platform"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GCredentials indeholder ikke en proces-id på dette operativsystem"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Falske akkreditiver er ikke mulige på dette operativsystem"
@@ -380,17 +389,17 @@ msgstr "Falske akkreditiver er ikke mulige på dette operativsystem"
msgid "Unexpected early end-of-stream"
msgstr "Uventet tidlig strømafslutning"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Ikke-understøttet nøgle “%s†i adresseindgang “%sâ€"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Meningsløst nøgle-/værdikombination i adresseindgang “%sâ€"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -399,28 +408,28 @@ msgstr ""
"Adressen “%s†er ugyldig (kræver præcist en af nøglerne path, dir, tmpdir "
"eller abstract)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Fejl i adressen “%s†— attributten “%s†er fejlformateret"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Ukendt eller ikke-understøttet transport “%s†for adressen “%sâ€"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "Adresseelementet “%s†indeholder intet kolon (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "Transportnavn i adresseelementet “%s†må ikke være tomt"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -429,14 +438,14 @@ msgstr ""
"Nøgle-/værdiparret %d, “%s†i adresseelementet “%s†indeholder ikke et "
"lighedstegn"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
msgstr ""
"Nøgle-/værdiparret %d, “%s†i adresseelementet “%s†må ikke have en tom nøgle"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -445,7 +454,7 @@ msgstr ""
"Fejl ved af-undvigelse af nøgle eller værdi i nøgle-/værdiparret %d, “%s†i "
"adresseelementet “%sâ€"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -454,79 +463,79 @@ msgstr ""
"Fejl i adressen “%s†— unix-transporten kræver at præcist en af nøglerne "
"“path†eller “abstract†er givet"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr ""
"Fejl i adressen “%s†— værtsattributten mangler eller er fejlformateret"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "Fejl i adressen “%s†— portattributten mangler eller er fejlformateret"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Fejl i adressen “%s†— noncefile-attributten mangler eller er fejlformateret"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Fejl ved automatisk opstart: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Fejl ved Ã¥bning af “nonceâ€-filen “%sâ€: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Fejl ved læsning af “nonceâ€-filen “%sâ€: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr "Fejl ved læsning af “nonceâ€-filen “%sâ€. Forventede 16 byte, fandt %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Fejl under skrivning af indhold af “nonceâ€-filen “%s†til strømmen:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "Den givne adresse er tom"
# nå ja, det er ikke grimmere på dansk end på engelsk
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Kan ikke starte en meddelelsesbus når setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "Kan ikke starte en meddelelsesbus, når AT_SECURE er indstillet"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "Kan ikke starte en meddelelsesbus uden maskine-id: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Kan ikke køre D-Bus automatisk uden $DISPLAY til X11"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Fejl ved kørsel af kommandolinjen “%sâ€: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Kan ikke bestemme sessionsbussens adresse (ikke implementeret for dette "
"operativsystem)"
-#: gio/gdbusaddress.c:1397 gio/gdbusconnection.c:7261
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -535,7 +544,7 @@ msgstr ""
"Kan ikke bestemme busadressen fra miljøvariablen DBUS_STARTER_BUS_TYPE — "
"ukendt værdi “%sâ€"
-#: gio/gdbusaddress.c:1406 gio/gdbusconnection.c:7270
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -543,7 +552,7 @@ msgstr ""
"Kan ikke bestemme busadressen, da miljøvariablen DBUS_STARTER_BUS_TYPE ikke "
"er angivet"
-#: gio/gdbusaddress.c:1416
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Ukendt bustype %d"
@@ -572,12 +581,12 @@ msgstr "Bruger-id'er skal være de samme for peer og server"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Annulleret via GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Fejl ved indhentning af oplysninger for mappen “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -585,32 +594,32 @@ msgstr ""
"Rettigheder for mappen “%s†er fejlformateret. Forventede tilstanden 0700, "
"fandt 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Fejl ved oprettelse af mappen “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Operationen understøttes ikke"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Fejl ved åbning af nøgleringen “%s†til læsning: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "Linje %d i nøgleringen på “%s†med indholdet “%s†er fejlformateret"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -618,7 +627,7 @@ msgstr ""
"Første symbol i linje %d af nøgleringen på “%s†med indholdet “%s†er "
"fejlformateret"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -626,162 +635,162 @@ msgstr ""
"Andet symbol i linje %d af nøgleringen på “%s†med indholdet “%s†er "
"fejlformateret"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Fandt ingen cookie med id %d i nøgleringen pÃ¥ “%sâ€"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Fejl ved oprettelse af lÃ¥sefil “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Fejl ved sletning af forældet lÃ¥sefil “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Fejl ved lukning af lÃ¥sefil (uden link) “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Fejl ved fjernelse af link til lÃ¥sefil “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Fejl ved åbning af nøgleringen “%s†til skrivning: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Yderligere kunne låsen for “%s†ikke opgives: %s) "
-#: gio/gdbusconnection.c:603 gio/gdbusconnection.c:2417
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "Forbindelsen er lukket"
-#: gio/gdbusconnection.c:1902
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "Tiden løb ud"
-#: gio/gdbusconnection.c:2540
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"Der blev fundet ikke-understøttede flag ved oprettelse af en forbindelse på "
"klientsiden"
-#: gio/gdbusconnection.c:4189 gio/gdbusconnection.c:4536
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr ""
"Ingen grænseflade “org.freedesktop.DBus.Properties†på objekt ved stien %s"
-#: gio/gdbusconnection.c:4331
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "Ingen sÃ¥dan egenskab “%sâ€"
-#: gio/gdbusconnection.c:4343
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "Egenskaben “%s†kan ikke læses"
-#: gio/gdbusconnection.c:4354
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "Egenskaben “%s†er skrivebeskyttet"
-#: gio/gdbusconnection.c:4374
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
"Fejl ved anvendelse af egenskaben “%sâ€: Forventede typen “%sâ€, men fik “%sâ€"
-#: gio/gdbusconnection.c:4479 gio/gdbusconnection.c:4687
-#: gio/gdbusconnection.c:6689
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "Ingen sÃ¥dan grænseflade “%sâ€"
-#: gio/gdbusconnection.c:4905 gio/gdbusconnection.c:7201
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Ingen sådan grænseflade “%s†på objektet ved stien %s"
-#: gio/gdbusconnection.c:5003
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "Ingen sÃ¥dan metode “%sâ€"
-#: gio/gdbusconnection.c:5034
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Beskedtypen “%s†er ikke den forventede type, “%sâ€"
-#: gio/gdbusconnection.c:5237
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Der er allerede eksporteret et objekt for grænsefladen %s på %s"
-#: gio/gdbusconnection.c:5463
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Kan ikke hente egenskaben %s.%s"
-#: gio/gdbusconnection.c:5519
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Kan ikke sætte egenskaben %s.%s"
-#: gio/gdbusconnection.c:5698
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "Metoden “%s†returnerede typen “%sâ€, men forventede “%sâ€"
-#: gio/gdbusconnection.c:6800
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "Metoden “%s†på grænsefladen “%s†med signatur “%s†findes ikke"
-#: gio/gdbusconnection.c:6921
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Der er allerede eksporteret et undertræ for %s"
-#: gio/gdbusconnection.c:7209
+#: gio/gdbusconnection.c:7266
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "Objektet findes ikke ved stien “%sâ€"
-#: gio/gdbusmessage.c:1266
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "typen er INVALID"
-#: gio/gdbusmessage.c:1277
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr ""
"Meddelelse for METHOD_CALL: Et af teksthovederne PATH eller MEMBER mangler"
-#: gio/gdbusmessage.c:1288
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "Meddelelse for METHOD_RETURN: Teksthovedet REPLY_SERIAL mangler"
-#: gio/gdbusmessage.c:1300
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "FEJLmeddelelse: Teksthovedet REPLY_SERIAL eller ERROR_NAME mangler"
-#: gio/gdbusmessage.c:1313
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "SIGNALmeddelelse: Teksthovedet PATH, INTERFACE eller MEMBER mangler"
-#: gio/gdbusmessage.c:1321
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -789,7 +798,7 @@ msgstr ""
"SIGNALmeddelelse: Teksthovedet PATH bruger den reserverede værdi /org/"
"freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1329
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -797,19 +806,19 @@ msgstr ""
"SIGNALbesked: Teksthovedet INTERFACE bruger den reserverede værdi org."
"freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1377 gio/gdbusmessage.c:1437
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "Ville læse %lu byte men fik kun %lu"
msgstr[1] "Ville læse %lu byte men fik kun %lu"
-#: gio/gdbusmessage.c:1391
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "Forventede NUL-byte efter strengen “%sâ€, men fandt byte %d"
-#: gio/gdbusmessage.c:1410
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -819,21 +828,21 @@ msgstr ""
"(strengens længde er %d). Den gyldige UTF-8-streng indtil dette punkt var "
"“%sâ€"
-#: gio/gdbusmessage.c:1474 gio/gdbusmessage.c:1722 gio/gdbusmessage.c:1911
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Værdien er for dybt indlejret"
-#: gio/gdbusmessage.c:1620
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Den fortolkede værdi “%s†er ikke en gyldig objektsti til D-Bus"
-#: gio/gdbusmessage.c:1642
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Fortolket værdi “%s†er ikke en gyldig D-Bus-signatur"
-#: gio/gdbusmessage.c:1689
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -846,7 +855,7 @@ msgstr[1] ""
"Stødte på et array med længde %u byte. Den maksimale længde er 2<<26 byte "
"(64 MiB)."
-#: gio/gdbusmessage.c:1709
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -855,12 +864,16 @@ msgstr ""
"Stødte pÃ¥ et array af typen “a%câ€, som ventes at have en længde som er et "
"multiplum af %u byte, men som havde længde %u byte"
-#: gio/gdbusmessage.c:1895
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
+msgid "Empty structures (tuples) are not allowed in D-Bus"
+msgstr "Tomme strukturer (tupler) er ikke tilladte i D-Bus"
+
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "Fortolket værdi “%s†for variant er ikke en gyldig D-Bus-signatur"
-#: gio/gdbusmessage.c:1936
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
@@ -868,7 +881,7 @@ msgstr ""
"Fejl ved deserialisering af GVariant med type-streng “%s†fra D-Bus-wire-"
"formatet"
-#: gio/gdbusmessage.c:2121
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -877,38 +890,38 @@ msgstr ""
"Ugyldigt værdi for byterækkefølge (endianness). Forventede 0x6c (“lâ€) eller "
"0x42 (“Bâ€), men fandt værdien 0x%02x"
-#: gio/gdbusmessage.c:2134
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Ugyldig hovedprotokolversion. Forventede 1 men fandt %d"
-#: gio/gdbusmessage.c:2188 gio/gdbusmessage.c:2784
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Signaturteksthoved fundet, men er ikke af typen signatur"
-#: gio/gdbusmessage.c:2200
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"Signaturteksthoved med signaturen “%s†fundet, men beskedteksten er tom"
-#: gio/gdbusmessage.c:2215
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "Fortolket værdi “%s†er ikke en gyldig D-Bus-signatur (for tekst)"
-#: gio/gdbusmessage.c:2247
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
msgstr[0] "Intet signaturteksthoved i beskeden, men beskedteksten er %u byte"
msgstr[1] "Intet signaturteksthoved i beskeden, men beskedteksten er %u byte"
-#: gio/gdbusmessage.c:2257
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Kan ikke deserialisere besked: "
-#: gio/gdbusmessage.c:2601
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
@@ -916,23 +929,23 @@ msgstr ""
"Fejl ved serialisering af GVariant med typestreng “%s†til D-Bus-wire-"
"formatet"
-#: gio/gdbusmessage.c:2738
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr ""
"Antal fildeskriptorer i meddelelsen (%d) er forskelligt fra teksthovedet (%d)"
-#: gio/gdbusmessage.c:2746
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Kan ikke serialisere besked: "
-#: gio/gdbusmessage.c:2799
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "Beskedteksten har signatur “%sâ€, men der er intet signaturteksthoved"
-#: gio/gdbusmessage.c:2809
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -940,53 +953,53 @@ msgid ""
msgstr ""
"Beskedteksten har typesignatur “%sâ€, men signaturen i teksthovedet er “%sâ€"
-#: gio/gdbusmessage.c:2825
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "Beskedteksten er tom, men signaturen i teksthovedet er “(%s)â€"
-#: gio/gdbusmessage.c:3380
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Fejlagtig returværdi med beskedtekst af typen “%sâ€"
-#: gio/gdbusmessage.c:3388
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Fejlagtig returværdi - tom beskedtekst"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Tryk på en tast for at lukke dette vindue)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Sessions-dbus kører ikke, og autostart mislykkedes"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Kan ikke hente hardwareprofil: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Kan ikke indlæse %s eller %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Fejl ved kald til StartServiceByName for %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Uventet svar %d fra metoden StartServiceByName(“%sâ€)"
# Ved ikke helt hvad proxy dækker over her
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1041,66 +1054,66 @@ msgstr ""
"\n"
"Brug “%s KOMMANDO --help†for at få hjælp om hver kommando.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Fejl: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Fejl ved fortolkning af XML til introspektion: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Fejl: %s er ikke et gyldigt navn\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Fejl: “%s†er ikke en gyldig objektsti\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Forbind til systembussen"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Forbind til sessionsbussen"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Forbind til den givne D-Bus-adresse"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Tilvalg for forbindelsesslutpunkt:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Tilvalg, der angiver forbindelsens slutpunkt"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Intet slutpunkt for forbindelsen angivet"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Flere slutpunkter for forbindelsen angivet"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr "Advarsel: Grænsefladen “%s†findes ikke ifølge introspektionsdata\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1109,160 +1122,164 @@ msgstr ""
"Advarsel: Metoden “%s†findes ikke i grænsefladen “%s†ifølge "
"introspektionsdata\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Valgfri destination for signal (unikt navn)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Objektsti, der skal udsendes et signal fra"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Signal- og grænsefladenavn"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Udsend et signal."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Fejl ved forbindelse: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Fejl: “%s†er ikke et gyldigt unikt busnavn.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Fejl: Objektstien er ikke angivet\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Fejl: Signalnavnet er ikke angivet\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Fejl: Signalnavnet “%s†er ugyldigt\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Fejl: “%s†er ikke et gyldigt grænsefladenavn\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Fejl: “%s†er ikke et gyldigt medlemsnavn\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Fejl ved fortolkning af parameter %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Fejl ved tømning (flush) af forbindelse: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Destinationsnavnet, som metoden skal kaldes på"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Objektstien, som metoden skal kaldes på"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Metode- og grænsefladenavn"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Tidsudløb i sekunder"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Tillad interaktiv godkendelse"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Kald en metode på et fjernobjekt."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Fejl: Destinationen er ikke angivet\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Fejl: %s er ikke et gyldigt busnavn\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Fejl: Metodenavnet er ikke angivet\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Fejl: Metodenavnet “%s†er ugyldigt\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Fejl ved fortolkning af parameter %d af typen “%sâ€: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Fejl ved tilføjelse af håndtag: %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Destinationsnavnet, der skal introspiceres"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Objektstien, der skal introspiceres"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Udskriv XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Foretag introspektion af underelementer"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Vis kun egenskaber"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Introspicér et fjernobjekt."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Navn på destination, der skal overvåges"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Objektsti, der skal overvåges"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Overvåg et fjernobjekt."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Fejl: Kan ikke overvåge en ikke-meddelelsesbus-forbindelse\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Tjeneste som skal aktiveres, før den anden afventes (velkendt navn)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1270,63 +1287,68 @@ msgstr ""
"Ventetid før afslutning med fejl (sekunder); 0 for ingen tidsgrænse "
"(standard)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[TILVALG …] BUSNAVN"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Vent på at et busnavn fremkommer."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Fejl: Der skal angives en tjeneste at aktivere for.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "Fejl: Der skal angives en tjeneste at vente på.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Fejl: For mange argumenter.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Fejl: %s er ikke et gyldigt velkendt busnavn.\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4932
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Ikke godkendt til at ændre fejlsøgningsindstillinger"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Unavngivet"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "Skrivebordsfil angav intet Exec-felt"
-#: gio/gdesktopappinfo.c:2801
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Kan ikke finde terminal krævet af dette program"
-#: gio/gdesktopappinfo.c:3452
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr "Kan ikke oprette konfigurationsfolder %s for brugerprogram: %s"
-#: gio/gdesktopappinfo.c:3456
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Kan ikke oprette bruger-MIME-konfigurationsfolder %s: %s"
-#: gio/gdesktopappinfo.c:3698 gio/gdesktopappinfo.c:3722
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "Programinformation mangler en identifikator"
-#: gio/gdesktopappinfo.c:3958
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Kan ikke oprette brugerskrivebords-fil %s"
-#: gio/gdesktopappinfo.c:4094
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Tilpasset definition for %s"
@@ -1354,7 +1376,7 @@ msgstr "drevet implementerer ikke start"
msgid "drive doesn’t implement stop"
msgstr "drevet implementerer ikke stop"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "TLS-motor implementerer ikke hentning af TLS-bindinger"
@@ -1395,74 +1417,74 @@ msgstr "Forventede et GEmblem til GEmblemedIcon"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Indeholdende montering findes ikke"
-#: gio/gfile.c:2608 gio/glocalfile.c:2477
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Kan ikke kopiere over mappe"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Kan ikke kopiere mappe over mappe"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "MÃ¥lfilen findes"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Kan ikke kopiere mappe rekursivt"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Splejsning understøttes ikke"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Fejl ved splejsning af fil: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Kopiering (reflink/klon) mellem monteringer understøttes ikke"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Kopiering (reflink/klon) er ikke understøttet eller ugyldigt"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Kopiering (reflink/klon) er ikke understøttet eller virkede ikke"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Kan ikke kopiere specialfil"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Ugyldig værdi givet for symlink"
-#: gio/gfile.c:4045 glib/gfileutils.c:2354
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Symbolske links er ikke understøttet"
# I koden er det en funktion der hedder g_file_trash, som kan give dette som en fejlmeddelelse
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Flyt til papirkurv understøttes ikke"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Filnavne mÃ¥ ikke indeholder “%câ€"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "diskenheden implementerer ikke montering"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Intet program er registreret til håndtering af denne fil"
@@ -1508,7 +1530,7 @@ msgstr "Afkortning tillades ikke for inputstrømmen"
msgid "Truncate not supported on stream"
msgstr "Afkortning understøttes ikke på strømmen"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Ugyldigt værtsnavn"
@@ -1596,7 +1618,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Kunne ikke fortolke “%s†som en IP-adresse-maske"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Utilstrækkelig plads til sokkeladresse"
@@ -2438,15 +2460,15 @@ msgstr "Fejl ved komprimering af filen %s"
msgid "text may not appear inside <%s>"
msgstr "der må ikke være tekst inden i <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Vis programversion og afslut"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Navnet på outputfilen"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2454,47 +2476,47 @@ msgstr ""
"Katalogerne hvorfra filer fra henvisninger i FIL læses (som standard det "
"nuværende katalog)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "KATALOG"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr "Generér output i formatet givet ved målets filendelse"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Generér kildeheader"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr ""
"Generér kildekoden, der bruges til at linke fra ressourcefilen ind i din kode"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Generér liste af afhængigheder"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Navn på afhængighedsfil som skal oprettes"
# phony er et nøgleord i make
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Inkludér falske (phony) mål i den genererede afhængighedsfil"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Opret og registrér ikke ressource automatisk"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Eksporter ikke funktioner; erklær dem G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2502,11 +2524,15 @@ msgstr ""
"Indlejr ikke ressourcedata i C-filen; antag at den i stedet er linket "
"eksternt"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "C-identifikatornavn, der bruges til genereret kildekode"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "Mål-C-kompileren (standard: CC-miljøvariablen)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2516,7 +2542,7 @@ msgstr ""
"Ressourcespecifikationsfiler har filendelsen .gresource.xml,\n"
"og ressourcefilen har filendelsen .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Du skal angive præcist ét filnavn\n"
@@ -3031,8 +3057,8 @@ msgstr "Fejl ved omdøbning af filen %s: %s"
msgid "Can’t rename file, filename already exists"
msgstr "Kan ikke omdøbe fil, da filnavnet allerede findes"
-#: gio/glocalfile.c:1184 gio/glocalfile.c:2371 gio/glocalfile.c:2399
-#: gio/glocalfile.c:2538 gio/glocalfileoutputstream.c:656
+#: gio/glocalfile.c:1184 gio/glocalfile.c:2380 gio/glocalfile.c:2408
+#: gio/glocalfile.c:2547 gio/glocalfileoutputstream.c:656
msgid "Invalid filename"
msgstr "Ugyldigt filnavn"
@@ -3046,91 +3072,91 @@ msgstr "Fejl ved åbning af filen %s: %s"
msgid "Error removing file %s: %s"
msgstr "Fejl under fjernelse af filen %s: %s"
-#: gio/glocalfile.c:1982 gio/glocalfile.c:1993
+#: gio/glocalfile.c:1982 gio/glocalfile.c:1993 gio/glocalfile.c:2020
#, c-format
msgid "Error trashing file %s: %s"
msgstr "Fejl ved flytning af filen %s til papirkurv: %s"
-#: gio/glocalfile.c:2031
+#: gio/glocalfile.c:2040
#, c-format
msgid "Unable to create trash directory %s: %s"
msgstr "Kan ikke oprette papirkurvskatalog %s: %s"
-#: gio/glocalfile.c:2052
+#: gio/glocalfile.c:2061
#, c-format
msgid "Unable to find toplevel directory to trash %s"
msgstr "Kan ikke finde topniveau-katalog til papirkurv %s"
-#: gio/glocalfile.c:2060
+#: gio/glocalfile.c:2069
#, c-format
msgid "Trashing on system internal mounts is not supported"
msgstr "Papirkurv understøttes ikke på interne systemmonteringer"
-#: gio/glocalfile.c:2146 gio/glocalfile.c:2174
+#: gio/glocalfile.c:2155 gio/glocalfile.c:2183
#, c-format
msgid "Unable to find or create trash directory %s to trash %s"
msgstr "Kan ikke finde eller oprette papirkurvskatalog %s til papirkurv %s"
-#: gio/glocalfile.c:2220
+#: gio/glocalfile.c:2229
#, c-format
msgid "Unable to create trashing info file for %s: %s"
msgstr "Kan ikke oprette papirkurvs-infofil for %s: %s"
-#: gio/glocalfile.c:2282
+#: gio/glocalfile.c:2291
#, c-format
msgid "Unable to trash file %s across filesystem boundaries"
msgstr "Kan ikke smide filen %s ud på andet filsystem"
-#: gio/glocalfile.c:2286 gio/glocalfile.c:2342
+#: gio/glocalfile.c:2295 gio/glocalfile.c:2351
#, c-format
msgid "Unable to trash file %s: %s"
msgstr "Kan ikke smide filen %s ud: %s"
-#: gio/glocalfile.c:2348
+#: gio/glocalfile.c:2357
#, c-format
msgid "Unable to trash file %s"
msgstr "Kan ikke smide filen %s ud"
-#: gio/glocalfile.c:2374
+#: gio/glocalfile.c:2383
#, c-format
msgid "Error creating directory %s: %s"
msgstr "Fejl ved oprettelse af mappen %s: %s"
-#: gio/glocalfile.c:2403
+#: gio/glocalfile.c:2412
#, c-format
msgid "Filesystem does not support symbolic links"
msgstr "Filsystemet understøtter ikke symbolske links"
-#: gio/glocalfile.c:2406
+#: gio/glocalfile.c:2415
#, c-format
msgid "Error making symbolic link %s: %s"
msgstr "Fejl under oprettelse af symbolsk link %s: %s"
-#: gio/glocalfile.c:2449 gio/glocalfile.c:2484 gio/glocalfile.c:2541
+#: gio/glocalfile.c:2458 gio/glocalfile.c:2493 gio/glocalfile.c:2550
#, c-format
msgid "Error moving file %s: %s"
msgstr "Fejl ved flytning af filen %s: %s"
-#: gio/glocalfile.c:2472
+#: gio/glocalfile.c:2481
msgid "Can’t move directory over directory"
msgstr "Kan ikke flytte mappe over mappe"
-#: gio/glocalfile.c:2498 gio/glocalfileoutputstream.c:1108
+#: gio/glocalfile.c:2507 gio/glocalfileoutputstream.c:1108
#: gio/glocalfileoutputstream.c:1122 gio/glocalfileoutputstream.c:1137
#: gio/glocalfileoutputstream.c:1154 gio/glocalfileoutputstream.c:1168
msgid "Backup file creation failed"
msgstr "Oprettelse af sikkerhedskopi mislykkedes"
-#: gio/glocalfile.c:2517
+#: gio/glocalfile.c:2526
#, c-format
msgid "Error removing target file: %s"
msgstr "Fejl ved fjernelse af målfil: %s"
-#: gio/glocalfile.c:2531
+#: gio/glocalfile.c:2540
msgid "Move between mounts not supported"
msgstr "Flytning mellem monteringer understøttes ikke"
-#: gio/glocalfile.c:2705
+#: gio/glocalfile.c:2714
#, c-format
msgid "Could not determine the disk usage of %s: %s"
msgstr "Kunne ikke bestemme diskforbruget af %s: %s"
@@ -3311,13 +3337,13 @@ msgstr "Fejl under oprettelse af sikkerhedskopi: %s"
msgid "Error renaming temporary file: %s"
msgstr "Fejl under omdøbning af midlertidig fil: %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "Fejl ved afkortning af filen: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Fejl ved Ã¥bning af filen “%sâ€: %s"
@@ -3339,7 +3365,7 @@ msgstr "Filen blev ændret eksternt"
msgid "Error removing old file: %s"
msgstr "Fejl under fjernelse af gammel fil: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Ugyldig GSeekType angivet"
@@ -3351,15 +3377,15 @@ msgstr "Ugyldig søgeforespørgsel"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Kan ikke afkorte GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Hukommelses-uddatastrøm kan ikke ændre størrelse"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Kunne ikke ændre størrelse for hukommelses-uddatastrøm"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3367,11 +3393,11 @@ msgstr ""
"Mængden af hukommelse, der kræves af skrivningen, er større end det "
"tilgængelige adresserum"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Forespurgte om søgning før begyndelse af strøm"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Forespurgte om søgning efter afslutning af strøm"
@@ -3453,12 +3479,12 @@ msgstr "Kunne ikke oprette netværksovervågning: "
msgid "Could not get network status: "
msgstr "Kunne ikke finde netværksstatus: "
-#: gio/gnetworkmonitornm.c:348
+#: gio/gnetworkmonitornm.c:311
#, c-format
msgid "NetworkManager not running"
msgstr "Netværkshåndtering kører ikke"
-#: gio/gnetworkmonitornm.c:359
+#: gio/gnetworkmonitornm.c:322
#, c-format
msgid "NetworkManager version too old"
msgstr "Versionen af NetværksHåndtering er for gammel"
@@ -3476,18 +3502,22 @@ msgstr "Summen af vektorer givet til %s er for stor"
msgid "Source stream is already closed"
msgstr "Kildestrømmen er allerede lukket"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Fejl ved opløsning af “%sâ€: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s er ikke implementeret"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Ugyldigt domæne"
@@ -3602,7 +3632,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " SEKTION Navn på elf-sektion (valgfri)\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " KOMMANDO Den kommandoen der skal forklares (valgfri)\n"
@@ -3634,7 +3664,7 @@ msgstr "STI"
msgid " PATH A resource path\n"
msgstr " STI En ressourcesti\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Intet sÃ¥dant skema “%sâ€\n"
@@ -3665,35 +3695,35 @@ msgstr "Sti skal slutte med skråstreg (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Sti må ikke indeholde to skråstreger i træk (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "Den givne værdi ligger uden for det gyldige interval\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "Nøglen er skrivebeskyttet\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Vis de installerede (uflytbare) skemaer"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Vis de installerede flytbare skemaer"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Vis nøglerne i SKEMA"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "SKEMA[:STI]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Vis underelementerne af SKEMA"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3701,48 +3731,48 @@ msgstr ""
"Vis nøgler og værdier rekursivt\n"
"Hvis intet SKEMA er angivet, vis alle nøgler\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SKEMA[:STI]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Hent værdien for NØGLE"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "SKEMA[:STI] NØGLE"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Forespørg om det gyldige interval af værdier for NØGLE"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Forespørg om beskrivelsen af NØGLE"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Sæt værdien af NØGLE til VÆRDI"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SKEMA[:STI] NØGLE VÆRDI"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Nulstil NØGLE til dens standardværdi"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Nulstil alle nøgler i SKEMA til deres standardværdier"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Se om NØGLE er skrivbar"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3752,11 +3782,11 @@ msgstr ""
"Hvis ingen NØGLE er givet, overvåges alle nøgler i SKEMA.\n"
"Brug ^C for at standse overvågning.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SKEMA[:STI] [NØGLE]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3804,7 +3834,7 @@ msgstr ""
"Brug “gsettings help KOMMANDO†for at få uddybende hjælp.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3819,11 +3849,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " SKEMAKAT Et katalog hvor der søges efter yderligere skemaer\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3831,211 +3861,211 @@ msgstr ""
" SKEMA Navnet på skemaet\n"
" STI Stien, for flytbare skemaer\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " NØGLE Den (valgfri) nøgle inden for skemaet\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " NØGLE Nøglen inden for skemaet\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " VÆRDI Værdien der skal sættes\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Kunne ikke indlæse skemaer fra %s: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Ingen skemaer installeret\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Tomt skemanavn givet\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Ingen sÃ¥dan nøgle “%sâ€\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Ugyldig sokkel, ikke initialiseret"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Ugyldig sokkel, initialisering mislykkedes på grund af: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Soklen er allerede lukket"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Tidsudløb for sokkel-I/O"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "opretter GSocket fra fd: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Kan ikke oprette sokkel: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Der blev angivet en ukendt familie"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Der blev angivet en ukendt protokol"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "Kan ikke bruge datagramoperationer på en ikke-datagram-sokkel."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr "Kan ikke bruge datagramoperationer på en sokkel med angivet udløbstid."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "kunne ikke finde lokal adresse: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "kunne ikke finde fjern adresse: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "kunne ikke lytte: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Fejl ved binding til adresse %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Fejl ved deltagelse i multicastgruppe: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Fejl ved fratræden fra multicastgruppe: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Ingen understøttelse for kildespecifik multicast"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Sokkelfamilie understøttes ikke"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "kildespecifik er ikke en IPv4-adresse"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Grænsefladenavnet er for langt"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Grænseflade ikke fundet: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "Ingen understøttelse for kildespecifik multicast med IPv4"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "Ingen understøttelse for kildespecifik multicast med IPv6"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Fejl ved accept af forbindelse: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Forbinder"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Kan ikke hente verserende fejl: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Fejl ved modtagelse af data: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Fejl ved afsendelse af data: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Kan ikke nedlukke sokkel: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Fejl ved lukning af sokkel: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Venter på sokkelbetingelse: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Kan ikke sende meddelelse: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Meddelelsesvektorer er for store"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Fejl ved afsendelse af meddelelse: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage understøttes ikke af Windows"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Fejl ved modtagelse af meddelelse: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Kan ikke læse sokkelakkreditiver: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "g_socket_get_credentials ikke implementeret på dette operativsystem"
@@ -4053,11 +4083,11 @@ msgstr "Kunne ikke forbinde til %s: "
msgid "Could not connect: "
msgstr "Kunne ikke forbinde: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "Brug af proxy over ikke-TCP-forbindelse understøttes ikke."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Proxyprotokollen “%s†understøttes ikke."
@@ -4157,6 +4187,16 @@ msgstr "SOCKSv5-proxy understøtter ikke den givne adressetype."
msgid "Unknown SOCKSv5 proxy error."
msgstr "Ukendt SOCKSv5-proxyfejl."
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
+#, c-format
+msgid "Failed to create pipe for communicating with child process (%s)"
+msgstr "Fejl under oprettelse af kommunikationskanal til underproces (%s)"
+
+#: gio/gtestdbus.c:619
+#, c-format
+msgid "Pipes are not supported in this platform"
+msgstr "Kanaler understøttes ikke på denne platform"
+
#: gio/gthemedicon.c:595
#, c-format
msgid "Can’t handle version %d of GThemedIcon encoding"
@@ -4171,44 +4211,66 @@ msgstr "Der blev ikke fundet nogen gyldige adresser"
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "Fejl ved baglæns opløsning af “%sâ€: %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr "Fejl ved fortolkning af DNS-post %s: fejlformateret DNS-pakke"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "Ingen DNS-post af den forespurgte type for “%sâ€"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "Midlertidigt ude af stand til at opløse “%sâ€"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "Fejl ved opløsning af “%sâ€"
-#: gio/gtlscertificate.c:419
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Fejlformateret DNS-pakke"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "Kunne ikke fortolke DNS-svar for “%sâ€: "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Intet privat, PEM-kodet nøgle fundet"
-#: gio/gtlscertificate.c:429
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Kan ikke dekryptere PEM-kodet privat nøgle"
-#: gio/gtlscertificate.c:440
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Kunne ikke fortolke PEM-kodet privat nøgle"
-#: gio/gtlscertificate.c:467
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Intet PEM-kodet certifikat fundet"
-#: gio/gtlscertificate.c:476
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Kunne ikke fortolke PEM-kodet certifikat"
-#: gio/gtlscertificate.c:832
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "Den nuværende TLS-motor understøtter ikke PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr ""
"Denne GTlsBackend understøtter ikke oprettelse af PKCS #11-certifikater"
@@ -4235,55 +4297,63 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "Den indtastede adgangskode er forkert."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "Afsendelse af FD understøttes ikke"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "Forventede én kontrolmeddelelse, men fik %d"
msgstr[1] "Forventede én kontrolmeddelelse, men fik %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Uventet type af supplerende data"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "Forventede én fd, men fik %d\n"
msgstr[1] "Forventede én fd, men fik %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Modtog ugyldig fd"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "Modtagelse af FD understøttes ikke"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Fejl ved afsendelse af akkreditiver: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Fejl ved kontrol af om SO_PASSCRED er slået til for sokkel: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Fejl ved aktivering af SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Forventede at læse en enkelt byte for at modtage akkreditiver, men læste nul "
"byte"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Forventer ikke kontrolmeddelelse, men modtog %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Fejl ved deaktivering af SO_PASSCRED: %s"
@@ -4299,7 +4369,7 @@ msgstr "Fejl ved læsning fra fildeskriptor: %s"
msgid "Error closing file descriptor: %s"
msgstr "Fejl ved lukning af fildeskriptor: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Filsystemets rod"
@@ -4311,7 +4381,7 @@ msgid "Error writing to file descriptor: %s"
msgstr "Fejl under skrivning til fildeskriptor: %s"
# "[abstract unix domain]-socket address" eller "abstract [unix domain socket] address", eller en anden kombination? Vi må hellere bibeholde ordenes rækkefølge på bekostning af at ordet bliver meget langt
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "Abstrakte UNIX-domænesokkeladresser understøttes ikke af dette system"
@@ -4462,8 +4532,8 @@ msgstr "Kunne ikke udvide eksekveringslinjen “%s†med URI'en “%sâ€"
msgid "Unrepresentable character in conversion input"
msgstr "Konverteringsinddata indeholder et tegn, som ikke kan repræsenteres"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Delvis tegnsekvens ved slutningen af inddata"
@@ -4929,80 +4999,80 @@ msgstr "PM"
msgid "Error opening directory “%sâ€: %s"
msgstr "Fejl ved Ã¥bning af mappen “%sâ€: %s"
-#: glib/gfileutils.c:737 glib/gfileutils.c:829
+#: glib/gfileutils.c:733 glib/gfileutils.c:825
#, c-format
msgid "Could not allocate %lu byte to read file “%sâ€"
msgid_plural "Could not allocate %lu bytes to read file “%sâ€"
msgstr[0] "Kunne ikke allokere %lu byte til at læse filen “%sâ€"
msgstr[1] "Kunne ikke allokere %lu byte til at læse filen “%sâ€"
-#: glib/gfileutils.c:754
+#: glib/gfileutils.c:750
#, c-format
msgid "Error reading file “%sâ€: %s"
msgstr "Fejl ved læsning af filen “%sâ€: %s"
-#: glib/gfileutils.c:790
+#: glib/gfileutils.c:786
#, c-format
msgid "File “%s†is too large"
msgstr "Filen “%s†er for stor"
-#: glib/gfileutils.c:854
+#: glib/gfileutils.c:850
#, c-format
msgid "Failed to read from file “%sâ€: %s"
msgstr "Kunne ikke læse fra filen “%sâ€: %s"
-#: glib/gfileutils.c:904 glib/gfileutils.c:979 glib/gfileutils.c:1468
+#: glib/gfileutils.c:900 glib/gfileutils.c:975 glib/gfileutils.c:1447
#, c-format
msgid "Failed to open file “%sâ€: %s"
msgstr "Kunne ikke Ã¥bne filen “%sâ€: %s"
-#: glib/gfileutils.c:917
+#: glib/gfileutils.c:913
#, c-format
msgid "Failed to get attributes of file “%sâ€: fstat() failed: %s"
msgstr "Kunne ikke læse attributter for filen “%sâ€: fstat() mislykkedes: %s"
-#: glib/gfileutils.c:948
+#: glib/gfileutils.c:944
#, c-format
msgid "Failed to open file “%sâ€: fdopen() failed: %s"
msgstr "Kunne ikke Ã¥bne filen “%sâ€: fdopen() mislykkedes: %s"
-#: glib/gfileutils.c:1049
+#: glib/gfileutils.c:1045
#, c-format
msgid "Failed to rename file “%s†to “%sâ€: g_rename() failed: %s"
msgstr "Kunne ikke omdøbe filen “%s†til “%sâ€: g_rename() mislykkedes: %s"
-#: glib/gfileutils.c:1175
+#: glib/gfileutils.c:1154
#, c-format
msgid "Failed to write file “%sâ€: write() failed: %s"
msgstr "Kunne ikke skrive filen “%sâ€: write() mislykkedes: %s"
-#: glib/gfileutils.c:1196
+#: glib/gfileutils.c:1175
#, c-format
msgid "Failed to write file “%sâ€: fsync() failed: %s"
msgstr "Kunne ikke skrive filen “%sâ€: fsync() mislykkedes: %s"
-#: glib/gfileutils.c:1357 glib/gfileutils.c:1772
+#: glib/gfileutils.c:1336 glib/gfileutils.c:1751
#, c-format
msgid "Failed to create file “%sâ€: %s"
msgstr "Fejl under oprettelse af filen “%sâ€: %s"
-#: glib/gfileutils.c:1402
+#: glib/gfileutils.c:1381
#, c-format
msgid "Existing file “%s†could not be removed: g_unlink() failed: %s"
msgstr ""
"Den eksisterende fil “%s†kunne ikke fjernes: g_unlink() mislykkedes: %s"
-#: glib/gfileutils.c:1737
+#: glib/gfileutils.c:1716
#, c-format
msgid "Template “%s†invalid, should not contain a “%sâ€"
msgstr "Skabelonen “%s†er ugyldig, mÃ¥ ikke indeholde en “%sâ€"
-#: glib/gfileutils.c:1750
+#: glib/gfileutils.c:1729
#, c-format
msgid "Template “%s†doesn’t contain XXXXXX"
msgstr "Skabelonen “%s†indeholder ikke XXXXXX"
-#: glib/gfileutils.c:2310 glib/gfileutils.c:2339
+#: glib/gfileutils.c:2289 glib/gfileutils.c:2318
#, c-format
msgid "Failed to read the symbolic link “%sâ€: %s"
msgstr "Kunne ikke læse den symbolske link “%sâ€: %s"
@@ -5028,15 +5098,15 @@ msgstr "Kanal afslutter med et ufuldendt tegn"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Kan ikke foretage en rå læsning i g_io_channel_read_to_end"
-#: glib/gkeyfile.c:790
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "Gyldig nøglefil blev ikke fundet i søgekatalogerne"
-#: glib/gkeyfile.c:827
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Ikke en almindelig fil"
-#: glib/gkeyfile.c:1282
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5044,50 +5114,50 @@ msgstr ""
"Nøglefilen indeholder linjen “%s†hvilken ikke er et nøgle-værdi-par, en "
"gruppe eller en kommentar"
-#: glib/gkeyfile.c:1339
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Ugyldigt gruppenavn: %s"
-#: glib/gkeyfile.c:1361
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Nøglefilen starter ikke med en gruppe"
-#: glib/gkeyfile.c:1387
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Ugyldigt nøglenavn: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Ugyldigt nøglenavn: %.*s"
-#: glib/gkeyfile.c:1414
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Nøglefilen indeholder kodningen “%sâ€, der ikke understøttes"
-#: glib/gkeyfile.c:1663 glib/gkeyfile.c:1836 glib/gkeyfile.c:3289
-#: glib/gkeyfile.c:3353 glib/gkeyfile.c:3483 glib/gkeyfile.c:3615
-#: glib/gkeyfile.c:3761 glib/gkeyfile.c:3996 glib/gkeyfile.c:4063
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Nøglefilen indeholder ikke gruppen “%sâ€"
-#: glib/gkeyfile.c:1791
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Nøglefilen indeholder ikke nøglen “%s†i gruppen “%sâ€"
-#: glib/gkeyfile.c:1953 glib/gkeyfile.c:2069
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "Nøglefilen indeholder nøglen “%s†med værdien “%s†der ikke er UTF-8"
-#: glib/gkeyfile.c:1973 glib/gkeyfile.c:2089 glib/gkeyfile.c:2531
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr ""
"Nøglefilen indeholder nøglen “%sâ€, som har en værdi, der ikke kan fortolkes."
-#: glib/gkeyfile.c:2749 glib/gkeyfile.c:3118
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5096,36 +5166,36 @@ msgstr ""
"Nøglefilen indeholder nøglen “%s†i gruppen “%sâ€, som har en værdi der ikke "
"kan fortolkes."
-#: glib/gkeyfile.c:2827 glib/gkeyfile.c:2904
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "Nøglen “%s†i gruppen “%s†har værdien “%sâ€, mens %s blev forventet"
-#: glib/gkeyfile.c:4306
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Nøglefilen indeholder beskyttede tegn for enden af linjen"
-#: glib/gkeyfile.c:4328
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Nøglefilen indeholder en ugyldig undvigesekvens “%sâ€"
-#: glib/gkeyfile.c:4472
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "Værdien “%s†kan ikke fortolkes som et nummer."
-#: glib/gkeyfile.c:4486
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "Heltalsværdien “%s†er ikke i gyldigt interval"
-#: glib/gkeyfile.c:4519
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "Værdien “%s†kan ikke fortolkes som en float."
-#: glib/gkeyfile.c:4558
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "Værdien “%s†kan ikke fortolkes som en sandhedsværdi."
@@ -5417,7 +5487,7 @@ msgstr "Kunne ikke fortolke tilvalg %s"
msgid "Missing argument for %s"
msgstr "Mangler argument for %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Ukendt tilvalg %s"
@@ -5564,7 +5634,7 @@ msgstr "lookbehind-assert-erklæring har ikke fast længde"
#: glib/gregex.c:394
msgid "malformed number or name after (?("
-msgstr "fejlformet tal eller navn efter (?("
+msgstr "fejlformateret tal eller navn efter (?("
#: glib/gregex.c:397
msgid "conditional group contains more than two branches"
@@ -5623,7 +5693,7 @@ msgstr "to navngivne undermønstre har samme navn"
#: glib/gregex.c:445
msgid "malformed \\P or \\p sequence"
-msgstr "fejlformet \\P- eller \\p-sekvens"
+msgstr "fejlformateret \\P- eller \\p-sekvens"
#: glib/gregex.c:448
msgid "unknown property name after \\P or \\p"
@@ -5795,152 +5865,162 @@ msgstr "ukendt undvigesekvens"
msgid "Error while parsing replacement text “%s†at char %lu: %s"
msgstr "Fejl under fortolkning af erstatningstekst “%s†ved tegn %lu: %s"
-#: glib/gshell.c:94
+#: glib/gshell.c:96
msgid "Quoted text doesn’t begin with a quotation mark"
msgstr "Anført tekst begynder ikke med anførselstegn"
-#: glib/gshell.c:184
+#: glib/gshell.c:186
msgid "Unmatched quotation mark in command line or other shell-quoted text"
msgstr ""
"Uafbalanceret anførselstegn i kommandolinje eller anden skal-anført tekst"
-#: glib/gshell.c:580
+#: glib/gshell.c:592
#, c-format
msgid "Text ended just after a “\\†character. (The text was “%sâ€)"
msgstr "Tekst sluttede lige efter et “\\â€-tegn. (Teksten var “%sâ€)"
-#: glib/gshell.c:587
+#: glib/gshell.c:599
#, c-format
msgid "Text ended before matching quote was found for %c. (The text was “%sâ€)"
msgstr ""
"Tekst sluttede før tilsvarende anførselstegn blev fundet for %c (teksten var "
"“%sâ€)"
-#: glib/gshell.c:599
+#: glib/gshell.c:611
msgid "Text was empty (or contained only whitespace)"
msgstr "Tekst var tom (eller indeholdt kun blanke tegn)"
-#: glib/gspawn.c:308
+#: glib/gspawn.c:310
#, c-format
msgid "Failed to read data from child process (%s)"
msgstr "Fejl ved læsning af data fra underproces (%s)"
-#: glib/gspawn.c:458
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "Uventet fejl ved læsning af data fra underproces (%s)"
-#: glib/gspawn.c:543
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Uventet fejl i waitpid() (%s)"
-#: glib/gspawn.c:1152 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "Underproces afsluttede med kode %ld"
-#: glib/gspawn.c:1160
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Underproces dræbt med signal %ld"
-#: glib/gspawn.c:1167
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Underproces stoppet med signal %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Underproces afsluttede fejlagtigt"
-#: glib/gspawn.c:1793 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Fejl under læsning fra barnedatakanal (%s)"
-#: glib/gspawn.c:2095
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Fejl under kørsel af underprocessen “%s†(%s)"
-#: glib/gspawn.c:2212
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Fejl under fraspaltning af proces (%s)"
-#: glib/gspawn.c:2372 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Fejl ved skift til mappen “%s†(%s)"
-#: glib/gspawn.c:2382
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Kunne ikke køre underprocessen “%s†(%s)"
-#: glib/gspawn.c:2392
+#: glib/gspawn.c:2550
+#, c-format
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Kunne ikke åbne filen for at omtildele fildeskriptoren (%s)"
+
+#: glib/gspawn.c:2558
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Fejl under omdirigering af uddata eller inddata for underproces (%s)"
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Kunne ikke duplikere fildeskriptoren for underproces (%s)"
-#: glib/gspawn.c:2401
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Fejl ved fraspaltning af underproces (%s)"
-#: glib/gspawn.c:2409
+#: glib/gspawn.c:2575
+#, c-format
+msgid "Failed to close file descriptor for child process (%s)"
+msgstr "Kunne ikke lukke fildeskriptoren for underproces (%s)"
+
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Ukendt fejl under kørsel af underprocessen “%sâ€"
-#: glib/gspawn.c:2433
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr ""
"Kunne ikke læse tilstrækkelig mængde data fra underprocessens pid-kanal (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Fejl under læsning af data fra underproces"
-#: glib/gspawn-win32.c:311
-#, c-format
-msgid "Failed to create pipe for communicating with child process (%s)"
-msgstr "Fejl under oprettelse af kommunikationskanal til underproces (%s)"
-
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Kunne ikke køre underproces (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Kunne ikke dup() i underproces (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Ugyldigt programnavn: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Ugyldig streng i argumentvektor på %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Ugyldig streng i miljø: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Ugyldigt arbejdskatalog: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Fejl under kørsel af hjælpeprogram (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -5948,21 +6028,21 @@ msgstr ""
"Uventet fejl i g_io_channel_win32_poll() under læsning af data fra en "
"underproces"
-#: glib/gstrfuncs.c:3338 glib/gstrfuncs.c:3440
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Tom streng er ikke et tal"
-#: glib/gstrfuncs.c:3362
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "“%s†er ikke et tal med fortegn"
-#: glib/gstrfuncs.c:3372 glib/gstrfuncs.c:3476
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Tallet “%s†er uden for det gyldige interval [%s, %s]"
-#: glib/gstrfuncs.c:3466
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "“%s†er ikke et tal uden fortegn"
@@ -6015,183 +6095,183 @@ msgstr "URI'en “%s†er ikke en absolut URI"
msgid "URI ‘%s’ has no host component"
msgstr "URI'en “%s†har ingen værtskomponent"
-#: glib/guri.c:1435
+#: glib/guri.c:1460
msgid "URI is not absolute, and no base URI was provided"
msgstr "URI'en er ikke absolut og der er ikke givet nogen basis-URI"
-#: glib/guri.c:2213
+#: glib/guri.c:2238
msgid "Missing ‘=’ and parameter value"
msgstr "Mangler “=†og parameterværdi"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Kunne ikke allokere hukommelse"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Tegn uden for gyldigt interval for UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Ugyldig sekvens i konverteringsinddata"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Tegn uden for gyldigt interval for UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2727
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2729
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2731
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2733
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2735
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2737
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2741
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2743
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2745
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2747
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2749
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2751
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2755
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2757
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2759
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2761
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2763
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2765
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2769
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2771
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2773
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2775
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2777
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2779
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2813 glib/gutils.c:2930
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u byte"
msgstr[1] "%u byte"
-#: glib/gutils.c:2817
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6199,7 +6279,7 @@ msgstr[0] "%u bit"
msgstr[1] "%u bit"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2884
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6207,7 +6287,7 @@ msgstr[0] "%s byte"
msgstr[1] "%s byte"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2889
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6219,32 +6299,32 @@ msgstr[1] "%s byte"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2943
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2948
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2953
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:2958
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:2963
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:2968
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
diff --git a/po/de.po b/po/de.po
index 965806f38..c95dcddbb 100644
--- a/po/de.po
+++ b/po/de.po
@@ -11,24 +11,34 @@
# Tobias Endrigkeit <tobiasendrigkeit@googlemail.com>, 2012.
# Bernd Homuth <dev@hmt.im>, 2015.
# Wolfgang Stöggl <c72578@yahoo.de>, 2011, 2015-2016.
-# Tim Sabsch <tim@sabsch.com>, 2019-2021.
+# Tim Sabsch <tim@sabsch.com>, 2019-2022.
# Mario Blättermann <mario.blaettermann@gmail.com>, 2010-2013, 2015-2018, 2020-2021.
-# Philipp Kiemle <philipp.kiemle@gmail.com>, 2021.
+# Philipp Kiemle <philipp.kiemle@gmail.com>, 2021-2022.
#
msgid ""
msgstr ""
"Project-Id-Version: glib master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-02-01 17:05+0000\n"
-"PO-Revision-Date: 2022-02-08 22:40+0100\n"
-"Last-Translator: Christian Kirbach <christian.kirbach@gmail.com>\n"
+"POT-Creation-Date: 2022-05-18 14:09+0000\n"
+"PO-Revision-Date: 2022-05-22 12:39+0200\n"
+"Last-Translator: Tim Sabsch <tim@sabsch.com>\n"
"Language-Team: German <gnome-de@gnome.org>\n"
"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Poedit 3.0\n"
+"X-Generator: Poedit 3.0.1\n"
+
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Setzen von Standardanwendungen wird noch nicht unterstützt"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"Setzen einer Anwendung als »zuletzt verwendet für einen Typ« wird noch nicht "
+"unterstützt"
#: gio/gapplication.c:500
msgid "GApplication options"
@@ -51,7 +61,7 @@ msgid "Replace the running instance"
msgstr "Laufende Instanz ersetzen"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Hilfe ausgeben"
@@ -63,7 +73,7 @@ msgstr "[BEFEHL]"
msgid "Print version"
msgstr "Version ausgeben"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Versionsinformationen anzeigen und beenden"
@@ -125,8 +135,8 @@ msgstr "Der Befehl, für den eine detaillierte Hilfe ausgegeben wird"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Anwendungsbezeichnung im D-Bus-Format (z.B: org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "DATEI"
@@ -152,7 +162,7 @@ msgstr "PARAMETER"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Optionaler Parameter für den Aufruf der Aktion, im GVariant-Format"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -166,7 +176,7 @@ msgid "Usage:\n"
msgstr "Aufruf:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argumente:\n"
@@ -289,7 +299,7 @@ msgstr "Datenstrom ist bereits geschlossen"
msgid "Truncate not supported on base stream"
msgstr "Abschneiden wird vom Basis-Datenstrom nicht unterstützt"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -310,7 +320,7 @@ msgstr "Nicht genug Platz im Ziel"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Ungültige Bytefolge in Umwandlungseingabe"
@@ -320,7 +330,7 @@ msgstr "Ungültige Bytefolge in Umwandlungseingabe"
msgid "Error during conversion: %s"
msgstr "Fehler bei der Umwandlung: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Abbrechbare Initialisierung wird nicht unterstützt"
@@ -334,37 +344,37 @@ msgstr "Umwandlung von Zeichensatz »%s« in »%s« wird nicht unterstützt"
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Konverter von »%s« in »%s« konnte nicht geöffnet werden"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "%s-Typ"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Unbekannter Typ"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "%s-Dateityp"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials enthält ungültige Daten"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials ist in diesem Betriebssystem nicht implementiert"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Es gibt auf Ihrer Plattform keine Unterstützung für GCredentials"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GCredentials enthält in diesem Betriebssystem keine Prozesskennung"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr ""
"Fälschen von Anmeldedaten ist unter diesem Betriebssystem nicht möglich"
@@ -373,17 +383,17 @@ msgstr ""
msgid "Unexpected early end-of-stream"
msgstr "Unerwartet frühes Datenstromende"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Nicht unterstützter Schlüssel »%s« im Adresseintrag »%s«"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Bedeutungsloses Schlüssel-Wert-Paar im Adresseintrag »%s«"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -392,28 +402,28 @@ msgstr ""
"Adresse »%s« ist ungültig (benötigt genau einen der Schlüssel path, dir, "
"tmpdir oder abstract keys)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Fehler in Adresse »%s« – Das Attribut »%s« ist nicht korrekt"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Unbekannter oder nicht unterstützter Transport »%s« für Adresse »%s«"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "Adresselement »%s« enthält keinen Doppelpunkt"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "Der Transportname im Adresselement »%s« darf nicht leer sein"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -422,7 +432,7 @@ msgstr ""
"Schlüssel-Wert-Paar %d, »%s«, in Adresselement »%s« enthält kein "
"Gleichheitszeichen"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
@@ -430,7 +440,7 @@ msgstr ""
"Schlüssel-Wert-Paar %d, »%s«, in Adresselement »%s« darf keinen leeren "
"Schlüssel enthalten"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -439,7 +449,7 @@ msgstr ""
"Fehler beim Entfernen von Escape-Zeichen im Schlüssel-Wert-Paar %d, »%s«, im "
"Adresselement »%s«"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -448,83 +458,84 @@ msgstr ""
"Fehler in Adresse »%s« - für den Unix-Transport muss genau einer der "
"Schlüssel »path« oder »abstract« gesetzt sein"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr ""
"Fehler in Adresse »%s« – Das Host-Attribut fehlt oder ist nicht korrekt"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr ""
"Fehler in Adresse »%s« – Das Port-Attribut fehlt oder ist nicht korrekt"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Fehler in Adresse »%s« – Das noncefile-Attribut fehlt oder ist nicht korrekt"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Fehler beim automatischen Starten: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Fehler beim Öffnen der Nonce-Datei »%s«: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Fehler beim Lesen der Nonce-Datei »%s«: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"Fehler beim Lesen der Nonce-Datei »%s«, erwartet wurden 16 Bytes, jedoch %d "
"erhalten"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr ""
"Fehler beim Schreiben des Inhalts der Nonce-Datei »%s« in den Datenstrom:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "Die angegebene Adresse ist leer"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Ein Nachrichtenbus kann nicht mit setuid erzeugt werden"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr ""
+"Ein Nachrichtenbus kann nicht erzeugt werden, wenn AT_SECURE gesetzt ist"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr ""
"Ein Nachrichtenbus kann nicht ohne eine Rechner-Kennung erzeugt werden: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "D-Bus kann nicht automatisch ohne X11 $DISPLAY gestartet werden"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Fehler beim Erzeugen der Befehlszeile »%s«: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Adresse des Sitzungsbus konnte nicht ermittelt werden (für dieses "
"Betriebssystem nicht implementiert)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -533,7 +544,7 @@ msgstr ""
"Bus-Adresse konnte nicht über die Umgebungsvariable DBUS_STARTER_BUS_TYPE "
"ermittelt werden – unbekannter Wert »%s«"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -541,7 +552,7 @@ msgstr ""
"Bus-Adresse konnte nicht ermittelt werden, da die Umgebungsvariable "
"DBUS_STARTER_BUS_TYPE nicht gesetzt ist"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Unbekannter Bus-Typ %d"
@@ -571,12 +582,12 @@ msgstr "Benutzerkennungen müssen für Server und Gegenstelle gleich sein"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Abgebrochen durch GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Fehler beim Holen der Informationen für Ordner »%s«: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -584,32 +595,32 @@ msgstr ""
"Zugriffsrechte des Ordners »%s« sind inkorrekt. Erwarteter Modus ist 0700, "
"0%o wurde erhalten"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Fehler beim Erstellen des Ordners »%s«: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Vorgang wird nicht unterstützt"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Fehler beim Öffnen des Schlüsselbundes »%s« zum Lesen: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "Zeile %d des Schlüsselbundes auf »%s« mit Inhalt »%s« ist inkorrekt"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -617,7 +628,7 @@ msgstr ""
"Der erste Token in Zeile %d des Schlüsselbundes bei »%s« mit dem Inhalt »%s« "
"ist inkorrekt"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -625,58 +636,58 @@ msgstr ""
"Der zweite Token in Zeile %d des Schlüsselbundes bei »%s« mit dem Inhalt "
"»%s« ist inkorrekt"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr ""
"Cookie mit Kennung %d konnte im Schlüsselbund auf »%s« nicht gefunden werden"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Fehler beim Erstellen der Sperrdatei »%s«: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Fehler beim Löschen der alten Sperrdatei »%s«: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Fehler beim Schließen der entknüpften Sperrdatei »%s«: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Fehler beim Entknüpfen der Sperrdatei »%s«: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Fehler beim Öffnen des Schlüsselbundes »%s« zum Schreiben: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Außerdem schlug das Entsperren von »%s« ebenso fehl: %s) "
-#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "Verbindung ist geschlossen"
-#: gio/gdbusconnection.c:1903
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "Zeitüberschreitung wurde erreicht"
-#: gio/gdbusconnection.c:2541
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"Beim Erstellen einer client-seitigen Verbindung wurden nicht unterstützte "
"Flags entdeckt"
-#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
@@ -684,105 +695,105 @@ msgstr ""
"Keine derartige Schnittstelle »org.freedesktop.DBus.Properties« des Objekts "
"im Pfad %s"
-#: gio/gdbusconnection.c:4414
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "Keine derartige Eigenschaft »%s«"
-#: gio/gdbusconnection.c:4426
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "Eigenschaft »%s« ist nicht lesbar"
-#: gio/gdbusconnection.c:4437
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "Eigenschaft »%s« ist nicht schreibbar"
-#: gio/gdbusconnection.c:4457
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
"Fehler beim Setzen der Eigenschaft »%s«: Erwarteter Typ war »%s«, aber »%s« "
"wurde erhalten"
-#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
-#: gio/gdbusconnection.c:6760
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "Keine derartige Schnittstelle »%s«"
-#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Keine derartige Schnittstelle »%s« des Objekts im Pfad %s"
-#: gio/gdbusconnection.c:5100
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "Keine derartige Methode »%s«"
-#: gio/gdbusconnection.c:5131
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Der Nachrichtentyp »%s« entspricht nicht dem erwarteten Typ »%s«"
-#: gio/gdbusconnection.c:5334
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Für die Schnittstelle %s auf %s wurde bereits ein Objekt exportiert"
-#: gio/gdbusconnection.c:5561
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Eigenschaft kann nicht abgefragt werden: %s.%s"
-#: gio/gdbusconnection.c:5617
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Eigenschaft kann nicht gesetzt werden: %s.%s"
-#: gio/gdbusconnection.c:5796
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "Methode »%s« gab Typ »%s« zurück, aber »%s« wurde erwartet"
-#: gio/gdbusconnection.c:6872
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "Methode »%s« in Schnittstelle »%s« mit Signatur »%s« existiert nicht"
-#: gio/gdbusconnection.c:6993
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Ein Unterbaum wurde bereits für %s exportiert"
-#: gio/gdbusconnection.c:7282
+#: gio/gdbusconnection.c:7266
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "Das Objekt existiert nicht am Pfad »%s«"
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "Typ ist UNGÃœLTIG"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "METHOD_CALL-Meldung: Kopfzeilenfeld PATH oder MEMBER fehlt"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "METHOD_RETURN-Meldung: Kopfzeilenfeld REPLY_SERIAL fehlt"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "ERROR-Meldung: Kopfzeilenfeld REPLY_SERIAL oder ERROR_NAME fehlt"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "SIGNAL-Meldung: Kopfzeilenfeld PATH, INTERFACE oder MEMBER fehlt"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -790,7 +801,7 @@ msgstr ""
"SIGNAL-Meldung: Das Kopfzeilenfeld PATH verwendet den reservierten Wert /org/"
"freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -798,21 +809,21 @@ msgstr ""
"SIGNAL-Meldung: Das Kopfzeilenfeld INTERFACE verwendet den reservierten Wert "
"org.freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "%lu Byte sollte gelesen werden, aber nur %lu erhalten"
msgstr[1] "%lu Bytes sollten gelesen werden, aber nur %lu erhalten"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr ""
"Ein NUL-Byte wurde nach der Zeichenkette »%s« erwartet, aber es wurde Byte "
"%d gefunden"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -822,21 +833,21 @@ msgstr ""
"Position %d gefunden (Länge der Zeichenkette ist %d). Die gültige UTF-8-"
"Zeichenkette bis zu diesem Punkt war »%s«."
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Der Wert ist zu tief verschachtelt"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Verarbeiteter Wert »%s« ist kein gültiger D-Bus-Objektpfad"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Verarbeiteter Wert »%s« ist keine gültige D-Bus-Signatur"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -849,7 +860,7 @@ msgstr[1] ""
"Array der Länge %u Bytes wurde erkannt. Maximale Länge ist 2<<26 Bytes (64 "
"MiB)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -858,16 +869,16 @@ msgstr ""
"Es wurde ein Feld des Typs »a%c« gefunden. Erwartet wurde als Länge ein "
"Vielfaches von %u Byte, aber es waren %u Byte Länge"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
msgstr "Leere Strukturen (Tupel) sind in D-Bus nicht erlaubt"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "Verarbeiteter Wert »%s« für Variante ist keine gültige D-Bus-Signatur"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
@@ -875,7 +886,7 @@ msgstr ""
"Fehler beim Deserialisieren von GVariant mit der Typenzeichenkette »%s« aus "
"dem D-Bus Wire-Format"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -884,29 +895,29 @@ msgstr ""
"Ungültiger Wert für die Speicherreihenfolge. Es wird entweder 0x6c (»l«) "
"oder 0x42 (»B«) erwartet, aber der Wert 0x%02x gefunden"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr ""
"Ungültige Version des Hauptprotokolls. Erwartet wurde 1, jedoch %d gefunden"
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Signatur-Kopfzeilenfeld gefunden, ist aber nicht vom Typ Signatur"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"Signatur-Kopfzeilenfeld mit Signatur »%s« gefunden, aber Nachrichtenrumpf "
"ist leer"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "Verarbeiteter Wert »%s« ist keine gültige D-Bus-Signatur (für Rumpf)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -917,11 +928,11 @@ msgstr[1] ""
"Kein Signatur-Kopfzeilenfeld in der Nachricht, aber der Nachrichtenrumpf ist "
"%u Bytes groß"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Meldung kann nicht deserialisiert werden: "
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
@@ -929,7 +940,7 @@ msgstr ""
"Fehler beim Deserialisieren von GVariant mit der Typenzeichenkette »%s« in "
"das D-Bus Wire-Format"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
@@ -937,18 +948,18 @@ msgstr ""
"Anzahl der Dateideskriptoren in Meldung (%d) und Kopfzeilenfeld (%d) ist "
"unterschiedlich"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Meldung kann nicht serialisiert werden: "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr ""
"Nachrichtenrumpf hat den Signaturtyp »%s«, aber es gibt keine Signatur im "
"Kopfzeilenfeld"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -957,54 +968,54 @@ msgstr ""
"Nachrichtenrumpf hat den Signaturtyp »%s«, aber die Signatur im "
"Kopfzeilenfeld ist »%s«"
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr ""
"Nachrichtenrumpf ist leer, aber die Signatur im Kopfzeilenfeld ist »(%s)«"
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Fehlerrückmeldung mit Inhalt des Typs »%s«"
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Fehlerrückmeldung mit leerem Inhalt"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr ""
"(Geben Sie ein beliebiges Zeichen ein, um dieses Fenster zu schließen)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Der Sitzungs-dbus läuft nicht und automatisches Starten schlug fehl"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Hardware-Profil konnte nicht ermittelt werden: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "%s oder %s kann nicht geladen werden: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Fehler beim Aufruf von StartServiceByName für %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Unerwartete Antwort %d von der Methode StartServiceByName(»%s«)"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1060,60 +1071,60 @@ msgstr ""
"\n"
"Mit »%s BEFEHL --help« erhalten Sie Hilfe zu jedem der Befehle.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Fehler: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Fehler beim Verarbeiten des XML-Codes der Inspektion: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Fehler: %s ist kein gültiger Name\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Fehler: %s ist kein gültiger Objektpfad\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Zum Systembus verbinden"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Zum Sitzungsbus verbinden"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Zur angegebenen D-Bus-Adresse verbinden"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Optionen für Gegenstelle der Verbindung:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Optionen zur Gegenstelle der Verbindung"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Keine Gegenstelle der Verbindung angegeben"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Mehrere Gegenstellen der Verbindung angegeben"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
@@ -1121,7 +1132,7 @@ msgstr ""
"Warnung: Entsprechend den Inspektionsdaten existiert die Schnittstelle »%s« "
"nicht\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1130,163 +1141,167 @@ msgstr ""
"Warnung: Entsprechend den Inspektionsdaten existiert die Methode »%s« nicht "
"in der Schnittstelle »%s«\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Optionales Ziel des Signals (eindeutiger Name)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Objektpfad, auf den das Signal ausgegeben werden soll"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Signal und Schnittstellenname"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Ein Signal ausgeben."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Fehler beim Verbinden: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Fehler: %s ist kein gültiger eindeutiger Bus-Name.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Fehler: Objektpfad wurde nicht angegeben\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Fehler: Signalname wurde nicht angegeben\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Fehler: Signalname »%s« ist ungültig\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Fehler: %s ist kein gültiger Schnittstellenname\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Fehler: %s ist kein gültiger Mitgliedsname\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Fehler bei der Verarbeitung des Parameters %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Fehler beim Löschen der Verbindung: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Name des Ziels, für das die Methode aufgerufen werden soll"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Objektpfad, für den die Methode aufgerufen werden soll"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Methode und Schnittstellenname"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Zeitablauf in Sekunden"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Interaktive Legitimierung erlauben"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Eine Methode für ein entferntes Objekt aufrufen."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Fehler: Ziel wurde nicht angegeben\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Fehler: %s ist kein gültiger Bus-Name\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Fehler: Name der Methode wurde nicht angegeben\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Fehler: Name der Methode »%s« ist ungültig\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Fehler bei der Verarbeitung des Parameters %d vom Typ »%s«: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Fehler beim Hinzufügen des Handlers %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Name des Ziels der Inspektion"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Zu inspizierender Objektpfad"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "XML drucken"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Unterelemente inspizieren"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Nur Eigenschaften ausgeben"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Ein entferntes Objekt inspizieren."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Name des zu überwachenden Ziels"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Zu überwachender Objektpfad"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Ein entferntes Objekt überwachen."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr ""
"Fehler: eine Nicht-Message-Bus-Verbindung kann nicht überwacht werden\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr ""
"Zu aktivierender Dienst, bevor auf den anderen gewartet wird (allgemein "
"bekannter Name)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1294,68 +1309,73 @@ msgstr ""
"Zeitspanne, die gewartet werden soll, bis mit einer Fehlermeldung "
"abgebrochen wird (Sekunden); 0 für keine Zeitspanne (Voreinstellung)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[OPTION …] BUS-NAME"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Name eines Busses, auf dessen Verfügbarkeit gewartet werden soll."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr ""
"Fehler: Es muss ein Dienst angegeben werden, der gestartet werden soll.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr ""
"Fehler: Es muss ein Dienst angegeben werden, auf den gewartet werden soll.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Fehler: Zu viele Argumente.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Fehler: %s ist kein gültiger, bekannter Bus-Name\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Nicht berechtigt, Fehlerdiagnose-Einstellungen zu ändern"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Unbenannt"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "Desktop-Datei hat kein Exec-Feld angegeben"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Für die Anwendung benötigtes Terminal konnte nicht gefunden werden"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr ""
"Konfigurationsordner %s für Benutzeranwendungen konnte nicht erstellt "
"werden: %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr ""
"MIME-Konfigurationsordner %s des Benutzers konnte nicht erstellt werden: %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "Den Anwendungsinformationen fehlt ein Bezeichner"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Benutzer-Desktop-Datei %s kann nicht erstellt werden"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Benutzerdefinition für %s"
@@ -1383,7 +1403,7 @@ msgstr "Laufwerk unterstützt keinen Startvorgang"
msgid "drive doesn’t implement stop"
msgstr "Laufwerk unterstützt keinen Stoppvorgang"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "TLS-Backend implementiert keine TLS-Bindungs-Ermittlung"
@@ -1424,74 +1444,74 @@ msgstr "Es wurde ein GEmblem für GEmblemedIcon erwartet"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Enthaltender Einhängepunkt existiert nicht"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Es kann nicht über den Ordner kopiert werden"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Ordner kann nicht über Ordner kopiert werden"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Zieldatei existiert"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Ordner kann nicht rekursiv kopiert werden"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Zusammenfügen wird nicht unterstützt"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Fehler beim Zusammenfügen der Datei: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Kopieren (reflink/clone) zwischen Einhängepunkten nicht unterstützt"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Kopieren (reflink/clone) wird nicht unterstützt oder ist ungültig"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr ""
"Kopieren (reflink/clone) wird nicht unterstützt oder funktioniert nicht"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Spezielle Datei kann nicht kopiert werden"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Ungültiger Wert für symbolische Verknüpfung angegeben"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Symbolische Verknüpfungen nicht unterstützt"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Papierkorb nicht unterstützt"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Dateinamen dürfen kein »%c« enthalten"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "Datenträger unterstützt Einhängen nicht"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Es wurde keine Anwendung gefunden, die diese Datei verarbeiten kann"
@@ -1536,7 +1556,7 @@ msgstr "Abschneiden des Eingabedatenstroms nicht erlaubt"
msgid "Truncate not supported on stream"
msgstr "Abschneiden wird vom Datenstrom nicht unterstützt"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Ungültiger Rechnername"
@@ -1623,7 +1643,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "»%s« konnte nicht als IP-Adressmaske verarbeitet werden"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Nicht genug Platz für eine Socket-Adresse"
@@ -1751,7 +1771,7 @@ msgstr "Fehler beim Schreiben in die Standardausgabe"
#: gio/gio-tool-mkdir.c:48 gio/gio-tool-monitor.c:37 gio/gio-tool-monitor.c:39
#: gio/gio-tool-monitor.c:41 gio/gio-tool-monitor.c:43
#: gio/gio-tool-monitor.c:204 gio/gio-tool-mount.c:1199 gio/gio-tool-open.c:70
-#: gio/gio-tool-remove.c:48 gio/gio-tool-rename.c:45 gio/gio-tool-set.c:89
+#: gio/gio-tool-remove.c:48 gio/gio-tool-rename.c:45 gio/gio-tool-set.c:91
#: gio/gio-tool-trash.c:220 gio/gio-tool-tree.c:239
msgid "LOCATION"
msgstr "ORT"
@@ -2266,7 +2286,7 @@ msgstr "Eine Datei umbenennen."
msgid "Missing argument"
msgstr "Fehlendes Argument"
-#: gio/gio-tool-rename.c:76 gio/gio-tool-save.c:190 gio/gio-tool-set.c:137
+#: gio/gio-tool-rename.c:76 gio/gio-tool-save.c:190 gio/gio-tool-set.c:139
msgid "Too many arguments"
msgstr "Zu viele Argumente"
@@ -2330,31 +2350,31 @@ msgstr "Typ des Attributs"
msgid "TYPE"
msgstr "TYP"
-#: gio/gio-tool-set.c:89
+#: gio/gio-tool-set.c:91
msgid "ATTRIBUTE"
msgstr "ATTRIBUT"
-#: gio/gio-tool-set.c:89
+#: gio/gio-tool-set.c:91
msgid "VALUE"
msgstr "WERT"
-#: gio/gio-tool-set.c:93
+#: gio/gio-tool-set.c:95
msgid "Set a file attribute of LOCATION."
msgstr "Ein Dateiattribut von ORT festlegen."
-#: gio/gio-tool-set.c:113
+#: gio/gio-tool-set.c:115
msgid "Location not specified"
msgstr "Kein Ort angegeben"
-#: gio/gio-tool-set.c:120
+#: gio/gio-tool-set.c:122
msgid "Attribute not specified"
msgstr "Kein Attribut angegeben"
-#: gio/gio-tool-set.c:130
+#: gio/gio-tool-set.c:132
msgid "Value not specified"
msgstr "Kein Wert angegeben"
-#: gio/gio-tool-set.c:180
+#: gio/gio-tool-set.c:182
#, c-format
msgid "Invalid attribute type “%sâ€"
msgstr "Ungültiger Attributtyp »%s«"
@@ -2470,15 +2490,15 @@ msgstr "Fehler beim Komprimieren der Datei %s"
msgid "text may not appear inside <%s>"
msgstr "Text könnte nicht innerhalb von <%s> erscheinen"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Programm-Version anzeigen und beenden"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Name der Ausgabedatei"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2486,47 +2506,47 @@ msgstr ""
"Die Ordner, aus denen in FILE referenzierte Dateien gelesen werden sollen "
"(Vorgabe ist der aktuelle Ordner)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "ORDNER"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
"Ausgabe in dem Format generieren, welches durch die Dateiendung der "
"Zieldatei vorgegeben wird"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Quellcode-Header generieren"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr "Quellcode zum Verlinken der Ressourcendatei in Ihren Code verwenden"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Abhängigkeitsliste generieren"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Name der zu erzeugenden Abhängigkeitsdatei"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Phony-Ziele in der erzeugten Abhängigkeitsdatei einschließen"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Die Ressource nicht automatisch anlegen und registrieren"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Keine Funktionen exportieren; als G_GNUC_INTERNAL deklarieren"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2534,11 +2554,15 @@ msgstr ""
"Ressourcendaten nicht in der C-Datei einbetten; stattdesssen externe "
"Verlinkung voraussetzen"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "C-Bezeichnername für den generierten Quellcode"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "Der Ziel-C-Compiler (Voreinstellung: die CC-Umgebungsvariable)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2549,7 +2573,7 @@ msgstr ""
"haben,\n"
"die Ressourcendateien die Erweiterung .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Sie sollten genau einen Dateinamen angeben\n"
@@ -3367,13 +3391,13 @@ msgstr "Fehler beim Erzeugen der Sicherungskopie: %s"
msgid "Error renaming temporary file: %s"
msgstr "Fehler beim Umbenennen der temporären Datei: %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "Fehler beim Abschneiden der Datei: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Fehler beim Öffnen der Datei »%s«: %s"
@@ -3395,7 +3419,7 @@ msgstr "Die Datei wurde extern verändert"
msgid "Error removing old file: %s"
msgstr "Fehler beim Entfernen der alten Datei: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Ungültiger GSeekType übergeben"
@@ -3407,15 +3431,15 @@ msgstr "Ungültige Suchanfrage"
msgid "Cannot truncate GMemoryInputStream"
msgstr "GMemoryInputStream konnte nicht abgeschnitten werden"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Größe des Speicherausgabestroms ist nicht änderbar"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Größe des Speicherausgabestroms konnte nicht geändert werden"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3423,11 +3447,11 @@ msgstr ""
"Für den Schreibvorgang erforderliche Speichermenge ist größer als der "
"verfügbare Adressbereich"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Angeforderte Suche vor dem Beginn des Datenstroms"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Angeforderte Suche nach dem Ende des Datenstroms"
@@ -3531,18 +3555,22 @@ msgstr "An %s übermittelte Vektorsumme ist zu groß"
msgid "Source stream is already closed"
msgstr "Quelldatenstrom ist bereits geschlossen"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Fehler beim Auflösen von »%s«: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s ist nicht implementiert"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Ungültige Domain"
@@ -3657,7 +3685,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " SEKTION Ein (optionaler) Name einer ELF-Sektion\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " BEFEHL Der (optionale) zu erklärende Befehl\n"
@@ -3691,7 +3719,7 @@ msgstr "PFAD"
msgid " PATH A resource path\n"
msgstr " PFAD Ein Ressourcenpfad\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Kein derartiges Schema »%s«\n"
@@ -3724,35 +3752,35 @@ msgid "Path must not contain two adjacent slashes (//)\n"
msgstr ""
"Pfad darf nicht zwei aufeinander folgende Schrägstriche enthalten (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "Der angegebene Wert liegt außerhalb des gültigen Bereichs\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "Der Schlüssel ist nicht schreibbar\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Installierte (nicht verschiebbare) Schemata auflisten"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Installierte (verschiebbare) Schemata auflisten"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Schlüssel in SCHEMA auflisten"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "SCHEMA[:PFAD]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Unterelemente von SCHEMA auflisten"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3760,48 +3788,48 @@ msgstr ""
"Schlüssel und Werte rekursiv auflisten\n"
"Falls kein Schema angegeben, alle Schlüssel auflisten\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SCHEMA[:PFAD]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Den Wert von SCHLÃœSSEL ermitteln"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "SCHEMA[:PFAD] SCHLÃœSSEL"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Den Bereich gültiger Werte für SCHLÜSSEL abfragen"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Die Beschreibung für SCHLÜSSEL abfragen"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Den Wert von SCHLÃœSSEL auf WERT setzen"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SCHEMA[:PFAD] SCHLÃœSSEL WERT"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "SCHLÃœSSEL auf Vorgabewert setzen"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Alle Schlüssel in SCHEMA auf deren Vorgaben zurücksetzen"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Prüfen, ob SCHLÜSSEL schreibgeschützt ist"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3812,11 +3840,11 @@ msgstr ""
"in SCHEMA überwacht.\n"
"Drücken Sie ^C, um die Überwachung zu beenden.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SCHEMA[:PFAD] [SCHLÃœSSEL]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3866,7 +3894,7 @@ msgstr ""
"erhalten.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3881,11 +3909,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " SCHEMADIR Ein Ordner zum Suchen nach zusätzlichen Schemas\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3893,215 +3921,215 @@ msgstr ""
" SCHEMA Die Kennung des Schemas\n"
" SCHLÜSSEL Der Name des Schlüssels\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " SCHLÜSSEL Der (optionale) Schlüssel innerhalb des Schemas\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " SCHLÜSSEL Der Schlüssel innerhalb des Schemas\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " WERT Der zu setzende Wert\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Schemata von »%s« konnten nicht geladen werden: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Keine Schemata installiert\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Leerer Schema-Name wurde angegeben\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Kein derartiger Schlüssel »%s«\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Ungültiger Socket, wurde nicht initialisiert"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Ungültiger Socket, Initialisierung schlug fehl wegen: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Der Socket ist bereits geschlossen"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Zeitüberschreitung bei Ein-/Ausgabeoperation des Sockets"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "GSocket wird erstellt von Dateideskriptor: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Socket kann nicht angelegt werden: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Eine unbekannte Familie wurde angegeben"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Ein unbekanntes Protokoll wurde angegeben"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr ""
"Datagramm-Operationen können nicht auf einem Nicht-Datagramm-Socket "
"ausgeführt werden."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Datagramm-Operationen können nicht auf einem Socket mit gesetzter "
"Zeitüberschreitung ausgeführt werden."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "Lokale Adresse konnte nicht gelesen werden: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "Entfernte Adresse konnte nicht gelesen werden: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "Es konnte nicht gelauscht werden: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Fehler beim Binden an Adresse %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Fehler beim Beitreten zur Multicast-Gruppe: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Fehler beim Verlassen der Multicast-Gruppe: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Quellen-spezifisches Multicast wird nicht unterstützt"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Nicht unterstützte Socket-Familie"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "Quellen-spezifisch ist keine IPv4-Adresse"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Schnittstellenname ist zu lang"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Schnittstelle nicht gefunden: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "Quellen-spezifisches IPv4-Multicast wird nicht unterstützt"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "Quellen-spezifisches IPv6-Multicast wird nicht unterstützt"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Fehler bei Annahme der Verbindung: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Verbindungsvorgang läuft"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Ausstehender Fehler konnte nicht erhalten werden: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Fehler beim Erhalt von Daten: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Fehler beim Senden von Daten: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Socket kann nicht heruntergefahren werden: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Fehler beim Schließen des Sockets: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Es wird auf eine Socket-Bedingung gewartet: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Nachricht konnte nicht gesendet werden: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Nachrichtenträger sind zu lang"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Fehler beim Senden der Nachricht: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage wird unter Windows nicht unterstützt"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Fehler beim Empfang der Nachricht: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Socket-Berechtigungen konnten nicht gelesen werden: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr ""
"g_socket_get_credentials ist für dieses Betriebssystem nicht implementiert"
@@ -4120,11 +4148,11 @@ msgstr "Verbindung mit %s ist gescheitert: "
msgid "Could not connect: "
msgstr "Verbindung ist gescheitert: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "Nicht-TCP-Verbindung über Proxy wird nicht unterstützt."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Proxy-Protokoll »%s« wird nicht unterstützt."
@@ -4226,7 +4254,7 @@ msgstr "SOCKSv5-Proxy unterstützt den angegebenen Adresstyp nicht."
msgid "Unknown SOCKSv5 proxy error."
msgstr "Unbekannter Fehler im SOCKSv5-Proxy."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr ""
@@ -4252,44 +4280,66 @@ msgstr "Es wurden keine gültigen Adressen gefunden"
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "Fehler beim Rückwärtsauflösen von »%s«: %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr "Fehler bei der Verarbeitung des DNS %s-Eintrags: ungültiges DNS-Paket"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
-msgstr "Kein DNS-Datensatz des angeforderten Typs für »%s«"
+msgstr "Kein DNS-Eintrag des angeforderten Typs für »%s«"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "»%s« kann vorübergehend nicht aufgelöst werden"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "Fehler beim Auflösen von »%s«"
-#: gio/gtlscertificate.c:431
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Ungültiges DNS-Paket"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "Fehler bei der Verarbeitung der DNS-Antwort zu »%s«: "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Kein PEM-enkodierter geheimer Schlüssel gefunden"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "PEM-enkodierter geheimer Schlüssel konnte nicht entschlüsselt werden"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "PEM-enkodierter geheimer Schlüssel konnte nicht verarbeitet werden"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Kein PEM-enkodiertes Zertifikat gefunden"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "PEM-enkodiertes Zertifikat konnte nicht verarbeitet werden"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "Das aktuelle TLS-Backend unterstützt PKCS #12 nicht"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr ""
"Das GTlsBackend unterstützt die Erstellung von PKCS #11-Zertifikaten nicht"
@@ -4316,56 +4366,64 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "Das eingegebene Passwort ist ungültig."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "Senden von FD wird nicht unterstützt"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "1 Kontrollnachricht wird erwartet, %d wurde erhalten"
msgstr[1] "1 Kontrollnachricht wird erwartet, %d wurden erhalten"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Unerwartete Art von Zusatzdaten"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "Ein Dateideskriptor wird erwartet, aber %d wurde erhalten\n"
msgstr[1] "Ein Dateideskriptor wird erwartet, aber %d wurden erhalten\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Ungültiger Dateideskriptor wurde erhalten"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "Erhalten von FD wird nicht unterstützt"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Fehler beim Senden der Anmeldedaten: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr ""
"Fehler bei der Überprüfung, ob SO_PASSCRED für Socket aktiviert ist: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Fehler beim Aktivieren von SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Erwartet wurde der Empfang eines einzelnen Bytes als Anmeldedaten, jedoch "
"null Bytes gelesen"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Kontrollnachricht wurde nicht erwartet, %d wurde erhalten"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Fehler beim Deaktivieren von SO_PASSCRED: %s"
@@ -4381,7 +4439,7 @@ msgstr "Fehler beim Lesen aus dem Dateideskriptor: %s"
msgid "Error closing file descriptor: %s"
msgstr "Fehler beim Schließen des Dateideskriptors: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Wurzelordner des Dateisystems"
@@ -4392,7 +4450,7 @@ msgstr "Wurzelordner des Dateisystems"
msgid "Error writing to file descriptor: %s"
msgstr "Fehler beim Schreiben in den Dateideskriptor: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr ""
"Abstrakte Unix Domänen-Socket-Adresse wird auf diesem System nicht "
@@ -4550,8 +4608,8 @@ msgstr ""
msgid "Unrepresentable character in conversion input"
msgstr "Nicht darstellbares Zeichen in Umwandlungsausgabe"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Bruchstückhafte Zeichenfolge am Eingabeende"
@@ -5123,15 +5181,15 @@ msgstr "Kanal endet mit einem Teilzeichen"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Raw-read in g_io_channel_read_to_end nicht möglich"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "Es wurde keine gültige Schlüsselwertedatei in den Suchordnern gefunden"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Keine reguläre Datei"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5139,45 +5197,45 @@ msgstr ""
"Die Schlüsselwertedatei enthält die Zeile »%s«, welche kein zulässiges "
"Schlüssel-Wert-Paar, keine Gruppe und kein Kommentar ist"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Ungültiger Gruppenname: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Die Schlüsselwertedatei beginnt nicht mit einer Gruppe"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Ungültiger Schlüsselname: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Ungültiger Schlüsselname: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Die Schlüsselwertedatei enthält die nicht unterstützte Kodierung »%s«"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Die Schlüsselwertedatei enthält nicht die Gruppe »%s«"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Die Schlüsselwertedatei hat keinen Schlüssel »%s« in der Gruppe »%s«"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr ""
"Die Schlüsselwertedatei enthält den Schlüssel »%s« mit dem Wert »%s«, der "
"nicht in UTF-8 kodiert ist"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
@@ -5185,7 +5243,7 @@ msgstr ""
"Die Schlüsselwertedatei enthält den Schlüssel »%s« mit einem Wert, der nicht "
"interpretiert werden konnte."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5194,39 +5252,39 @@ msgstr ""
"Die Schlüsselwertedatei enthält den Schlüssel »%s« in der Gruppe »%s« mit "
"einem Wert, der nicht interpretiert werden konnte."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr ""
"Der Schlüssel »%s« in der Gruppe »%s« enthält den Wert »%s«, obwohl %s "
"erwartet wurde"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Die Schlüsselwertedatei enthält ein Escape-Zeichen am Zeilenende"
# CHECK
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Die Schlüsselwertedatei enthält das ungültige Escape-Zeichen »%s«"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "Der Wert »%s« konnte nicht als Zahl interpretiert werden."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "Ganzzahliger Wert »%s« ist außerhalb des Wertebereiches"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "Der Wert »%s« konnte nicht als Gleitkommazahl interpretiert werden."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr ""
@@ -5528,7 +5586,7 @@ msgstr "Fehler beim Verarbeiten der Option: %s"
msgid "Missing argument for %s"
msgstr "Für %s wird ein Argument benötigt"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Unbekannte Option %s"
@@ -5945,124 +6003,137 @@ msgstr "Text war leer (oder enthielt nur Leerraum)"
msgid "Failed to read data from child process (%s)"
msgstr "Daten vom Kindprozess konnten nicht gelesen werden (%s)"
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "Unerwarteter Fehler beim Lesen von Daten eines Kindprozesses (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Unerwarteter Fehler in waitpid() (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "Der Kindprozess wurde mit Status %ld beendet"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Der Kindprozess wurde mit Signal %ld beendet"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Der Kindprozess wurde mit Signal %ld beendet"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Der Kindprozess wurde gewaltsam beendet"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Lesen aus Weiterleitung zum Kind (%s) gescheitert"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Abspalten des Kindprozesses »%s« gescheitert (%s)"
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Abspalten gescheitert (%s)"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "In Ordner »%s« (%s) konnte nicht gewechselt werden"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Kindprozess »%s« konnte nicht ausgeführt werden (%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2550
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Umleiten der Ausgabe oder Eingabe des Kindprozesses (%s) gescheitert"
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr ""
+"Öffnen der Datei zur Neuzuweisung des Datei-Deskriptors ist fehlgeschlagen "
+"(%s)"
+
+#: glib/gspawn.c:2558
+#, c-format
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr ""
+"Duplizieren des Datei-Deskriptors für Kindprozess ist fehlgeschlagen (%s)"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Abspalten des Kindprozesses gescheitert (%s)"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2575
#, c-format
msgid "Failed to close file descriptor for child process (%s)"
msgstr ""
"Schließen des Datei-Deskriptors des Kindprozesses ist fehlgeschlagen (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Unbekannter Fehler beim Ausführen des Kindprozesses »%s«"
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr ""
"Es konnten nicht genug Daten von Kind-Programmkennungsweiterleitung (%s) "
"gelesen werden"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Daten konnten nicht vom Kindprozess gelesen werden"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Kindprozess konnte nicht ausgeführt werden (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "dup() im Kindprozess ist fehlgeschlagen (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Ungültiger Programmname: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Ungültige Zeichenkette im Argumentsvektor bei %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Ungültige Zeichenkette in der Umgebung: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Ungültiger Arbeitsordner: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Hilfsprogramm (%s) konnte nicht ausgeführt werden"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -6070,21 +6141,21 @@ msgstr ""
"Unerwarteter Fehler in g_io_channel_win32_poll() beim Lesen aus dem "
"Kindprozess"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Leere Zeichenkette ist keine Zahl"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "»%s« ist keine vorzeichenbehaftete Zahl"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Zahl »%s« ist außerhalb des zulässigen Bereichs [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "»%s« ist keine vorzeichenlose Zahl"
@@ -6145,175 +6216,175 @@ msgstr "Adresse ist nicht absolut und es wurde keine Basis-Adresse angegeben"
msgid "Missing ‘=’ and parameter value"
msgstr "»=« und Parameter-Wert fehlen"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Fehler beim Anfordern von Speicher"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Zeichen außerhalb des Bereiches für UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Ungültige Folge in Umwandlungseingabe"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Zeichen außerhalb des Bereiches für UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kbit"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mbit"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gbit"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tbit"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pbit"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Ebit"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kibit"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mibit"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gibit"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tibit"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pibit"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eibit"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u Byte"
msgstr[1] "%u Bytes"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6321,7 +6392,7 @@ msgstr[0] "%u bit"
msgstr[1] "%u bits"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6329,7 +6400,7 @@ msgstr[0] "%s Byte"
msgstr[1] "%s Bytes"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6341,36 +6412,40 @@ msgstr[1] "%s bits"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
+#~ msgid "Failed to redirect output or input of child process (%s)"
+#~ msgstr ""
+#~ "Umleiten der Ausgabe oder Eingabe des Kindprozesses (%s) gescheitert"
+
#~ msgid "Unable to load /var/lib/dbus/machine-id or /etc/machine-id: "
#~ msgstr ""
#~ "/var/lib/dbus/machine-id oder /etc/machine-id konnte nicht geladen "
diff --git a/po/en_GB.po b/po/en_GB.po
index 288ef8a6a..95c45ba30 100644
--- a/po/en_GB.po
+++ b/po/en_GB.po
@@ -3,23 +3,23 @@
# This file is distributed under the same licence as the GLIB package.
# Gareth Owen <gowen72@yahoo.com> 2004
# Philip Withnall <philip@tecnocode.co.uk>, 2010.
-# Bruce Cowan <bruce@bcowan.me.uk>, 2009-2021.
# Zander Brown <zbrown@gnome.org>, 2019-2021.
+# Bruce Cowan <bruce@bcowan.me.uk>, 2009-2022.
#
msgid ""
msgstr ""
"Project-Id-Version: glib\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2021-07-19 15:52+0000\n"
-"PO-Revision-Date: 2021-08-29 16:22+0100\n"
-"Last-Translator: Zander Brown <zbrown@gnome.org>\n"
-"Language-Team: English - United Kingdom <en_GB@li.org>\n"
+"POT-Creation-Date: 2022-04-08 12:19+0000\n"
+"PO-Revision-Date: 2022-04-24 11:26+0100\n"
+"Last-Translator: Bruce Cowan <bruce@bcowan.me.uk>\n"
+"Language-Team: English - United Kingdom <en@li.org>\n"
"Language: en_GB\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Gtranslator 40.0\n"
+"X-Generator: Gtranslator 42.0\n"
"X-Project-Style: gnome\n"
"X-DL-Team: en_GB\n"
"X-DL-Module: glib\n"
@@ -27,6 +27,14 @@ msgstr ""
"X-DL-Domain: po\n"
"X-DL-State: Translating\n"
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Setting default applications not supported yet"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr "Setting application as last used for type not supported yet"
+
#: gio/gapplication.c:500
msgid "GApplication options"
msgstr "GApplication options"
@@ -48,7 +56,7 @@ msgid "Replace the running instance"
msgstr "Replace the running instance"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Print help"
@@ -60,7 +68,7 @@ msgstr "[COMMAND]"
msgid "Print version"
msgstr "Print version"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Print version information and exit"
@@ -121,8 +129,8 @@ msgstr "The command to print detailed help for"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Application identifier in D-Bus format (eg: org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "FILE"
@@ -147,7 +155,7 @@ msgstr "PARAMETER"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Optional parameter to the action invocation, in GVariant format"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -161,7 +169,7 @@ msgid "Usage:\n"
msgstr "Usage:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Arguments:\n"
@@ -284,7 +292,7 @@ msgstr "Stream is already closed"
msgid "Truncate not supported on base stream"
msgstr "Truncate not supported on base stream"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1872 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -305,7 +313,7 @@ msgstr "Not enough space in destination"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Invalid byte sequence in conversion input"
@@ -315,7 +323,7 @@ msgstr "Invalid byte sequence in conversion input"
msgid "Error during conversion: %s"
msgstr "Error during conversion: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Cancellable initialisation not supported"
@@ -329,37 +337,37 @@ msgstr "Conversion from character set “%s†to “%s†is not supported"
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Could not open converter from “%s†to “%sâ€"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "%s type"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Unknown type"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "%s filetype"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials contains invalid data"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials is not implemented on this OS"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "There is no GCredentials support for your platform"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GCredentials does not contain a process ID on this OS"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Credentials spoofing is not possible on this OS"
@@ -367,17 +375,17 @@ msgstr "Credentials spoofing is not possible on this OS"
msgid "Unexpected early end-of-stream"
msgstr "Unexpected early end-of-stream"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Unsupported key “%s†in address entry “%sâ€"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Meaningless key/value pair combination in address entry “%sâ€"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -386,28 +394,28 @@ msgstr ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
"keys)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Error in address “%s†— the “%s†attribute is malformed"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Unknown or unsupported transport “%s†for address “%sâ€"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "Address element “%s†does not contain a colon (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "Transport name in address element “%s†must not be empty"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -416,14 +424,14 @@ msgstr ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
"sign"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
msgstr ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -432,7 +440,7 @@ msgstr ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
"“%sâ€"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -441,75 +449,75 @@ msgstr ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
"“path†or “abstract†to be set"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr "Error in address “%s†— the host attribute is missing or malformed"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "Error in address “%s†— the port attribute is missing or malformed"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Error in address “%s†— the noncefile attribute is missing or malformed"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Error auto-launching: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Error opening nonce file “%sâ€: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Error reading from nonce file “%sâ€: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Error writing contents of nonce file “%s†to stream:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "The given address is empty"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Cannot spawn a message bus when setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "Cannot spawn a message bus when AT_SECURE is set"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "Cannot spawn a message bus without a machine-id: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Cannot autolaunch D-Bus without X11 $DISPLAY"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Error spawning command line “%sâ€: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr "Cannot determine session bus address (not implemented for this OS)"
-#: gio/gdbusaddress.c:1397 gio/gdbusconnection.c:7261
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -518,7 +526,7 @@ msgstr ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
"— unknown value “%sâ€"
-#: gio/gdbusaddress.c:1406 gio/gdbusconnection.c:7270
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -526,7 +534,7 @@ msgstr ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
-#: gio/gdbusaddress.c:1416
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Unknown bus type %d"
@@ -554,211 +562,210 @@ msgstr "User IDs must be the same for peer and server"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Error when getting information for directory “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
msgstr ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Error creating directory “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Operation not supported"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Error opening keyring “%s†for reading: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "Line %d of the keyring at “%s†with content “%s†is malformed"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Didn’t find cookie with id %d in the keyring at “%sâ€"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Error creating lock file “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Error deleting stale lock file “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Error closing (unlinked) lock file “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Error unlinking lock file “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Error opening keyring “%s†for writing: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Additionally, releasing the lock for “%s†also failed: %s) "
-#: gio/gdbusconnection.c:603 gio/gdbusconnection.c:2417
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "The connection is closed"
-#: gio/gdbusconnection.c:1902
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "Timeout was reached"
-#: gio/gdbusconnection.c:2540
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"Unsupported flags encountered when constructing a client-side connection"
-#: gio/gdbusconnection.c:4189 gio/gdbusconnection.c:4536
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
-#: gio/gdbusconnection.c:4331
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "No such property “%sâ€"
-#: gio/gdbusconnection.c:4343
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "Property “%s†is not readable"
-#: gio/gdbusconnection.c:4354
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "Property “%s†is not writable"
-#: gio/gdbusconnection.c:4374
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
-#: gio/gdbusconnection.c:4479 gio/gdbusconnection.c:4687
-#: gio/gdbusconnection.c:6689
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "No such interface “%sâ€"
-#: gio/gdbusconnection.c:4905 gio/gdbusconnection.c:7201
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "No such interface “%s†on object at path %s"
-#: gio/gdbusconnection.c:5003
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "No such method “%sâ€"
-#: gio/gdbusconnection.c:5034
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Type of message, “%sâ€, does not match expected type “%sâ€"
-#: gio/gdbusconnection.c:5237
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "An object is already exported for the interface %s at %s"
-#: gio/gdbusconnection.c:5463
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Unable to retrieve property %s.%s"
-#: gio/gdbusconnection.c:5519
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Unable to set property %s.%s"
-#: gio/gdbusconnection.c:5698
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "Method “%s†returned type “%sâ€, but expected “%sâ€"
-#: gio/gdbusconnection.c:6800
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "Method “%s†on interface “%s†with signature “%s†does not exist"
-#: gio/gdbusconnection.c:6921
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "A subtree is already exported for %s"
-#: gio/gdbusconnection.c:7209
+#: gio/gdbusconnection.c:7266
#, c-format
-#| msgid "Key file does not have group “%sâ€"
msgid "Object does not exist at path “%sâ€"
msgstr "Object does not exist at path “%sâ€"
-#: gio/gdbusmessage.c:1266
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "type is INVALID"
-#: gio/gdbusmessage.c:1277
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "METHOD_CALL message: PATH or MEMBER header field is missing"
-#: gio/gdbusmessage.c:1288
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "METHOD_RETURN message: REPLY_SERIAL header field is missing"
-#: gio/gdbusmessage.c:1300
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
-#: gio/gdbusmessage.c:1313
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
-#: gio/gdbusmessage.c:1321
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -766,7 +773,7 @@ msgstr ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1329
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -774,19 +781,19 @@ msgstr ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1377 gio/gdbusmessage.c:1437
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "Wanted to read %lu byte but only got %lu"
msgstr[1] "Wanted to read %lu bytes but only got %lu"
-#: gio/gdbusmessage.c:1391
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "Expected NUL byte after the string “%s†but found byte %d"
-#: gio/gdbusmessage.c:1410
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -795,21 +802,21 @@ msgstr ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
"(length of string is %d). The valid UTF-8 string up until that point was “%sâ€"
-#: gio/gdbusmessage.c:1474 gio/gdbusmessage.c:1722 gio/gdbusmessage.c:1911
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Value nested too deeply"
-#: gio/gdbusmessage.c:1620
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Parsed value “%s†is not a valid D-Bus object path"
-#: gio/gdbusmessage.c:1642
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Parsed value “%s†is not a valid D-Bus signature"
-#: gio/gdbusmessage.c:1689
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -820,7 +827,7 @@ msgstr[0] ""
msgstr[1] ""
"Encountered array of length %u bytes. Maximum length is 2<<26 bytes (64 MiB)."
-#: gio/gdbusmessage.c:1709
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -829,19 +836,23 @@ msgstr ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
"bytes, but found to be %u bytes in length"
-#: gio/gdbusmessage.c:1895
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
+msgid "Empty structures (tuples) are not allowed in D-Bus"
+msgstr "Empty structures (tuples) are not allowed in D-Bus"
+
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "Parsed value “%s†for variant is not a valid D-Bus signature"
-#: gio/gdbusmessage.c:1936
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
msgstr ""
"Error deserialising GVariant with type string “%s†from the D-Bus wire format"
-#: gio/gdbusmessage.c:2121
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -850,60 +861,60 @@ msgstr ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
"0x%02x"
-#: gio/gdbusmessage.c:2134
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Invalid major protocol version. Expected 1 but found %d"
-#: gio/gdbusmessage.c:2188 gio/gdbusmessage.c:2784
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Signature header found but is not of type signature"
-#: gio/gdbusmessage.c:2200
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr "Signature header with signature “%s†found but message body is empty"
-#: gio/gdbusmessage.c:2215
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "Parsed value “%s†is not a valid D-Bus signature (for body)"
-#: gio/gdbusmessage.c:2247
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
msgstr[0] "No signature header in message but the message body is %u byte"
msgstr[1] "No signature header in message but the message body is %u bytes"
-#: gio/gdbusmessage.c:2257
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Cannot deserialise message: "
-#: gio/gdbusmessage.c:2601
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
msgstr ""
"Error serialising GVariant with type string “%s†to the D-Bus wire format"
-#: gio/gdbusmessage.c:2738
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr ""
"Number of file descriptors in message (%d) differs from header field (%d)"
-#: gio/gdbusmessage.c:2746
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Cannot serialise message: "
-#: gio/gdbusmessage.c:2799
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "Message body has signature “%s†but there is no signature header"
-#: gio/gdbusmessage.c:2809
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -912,52 +923,52 @@ msgstr ""
"Message body has type signature “%s†but signature in the header field is "
"“%sâ€"
-#: gio/gdbusmessage.c:2825
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "Message body is empty but signature in the header field is “(%s)â€"
-#: gio/gdbusmessage.c:3380
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Error return with body of type “%sâ€"
-#: gio/gdbusmessage.c:3388
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Error return with empty body"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Type any character to close this window)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Session dbus not running, and autolaunch failed"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Unable to get Hardware profile: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Unable to load %s or %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Error calling StartServiceByName for %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Unexpected reply %d from StartServiceByName(\"%s\") method"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1013,67 +1024,67 @@ msgstr ""
"\n"
"Use “%s COMMAND --help†to get help on each command.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Error: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Error parsing introspection XML: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Error: %s is not a valid name\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Error: %s is not a valid object path\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Connect to the system bus"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Connect to the session bus"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Connect to given D-Bus address"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Connection Endpoint Options:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Options specifying the connection endpoint"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "No connection endpoint specified"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Multiple connection endpoints specified"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr ""
"Warning: According to introspection data, interface “%s†does not exist\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1082,160 +1093,164 @@ msgstr ""
"Warning: According to introspection data, method “%s†does not exist on "
"interface “%sâ€\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Optional destination for signal (unique name)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Object path to emit signal on"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Signal and interface name"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Emit a signal."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Error connecting: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Error: %s is not a valid unique bus name.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Error: Object path is not specified\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Error: Signal name is not specified\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Error: Signal name “%s†is invalid\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Error: %s is not a valid interface name\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Error: %s is not a valid member name\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Error parsing parameter %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Error flushing connection: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Destination name to invoke method on"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Object path to invoke method on"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Method and interface name"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Timeout in seconds"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Allow interactive authorisation"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Invoke a method on a remote object."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Error: Destination is not specified\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Error: %s is not a valid bus name\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Error: Method name is not specified\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Error: Method name “%s†is invalid\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Error parsing parameter %d of type “%sâ€: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Error adding handle %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Destination name to introspect"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Object path to introspect"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Print XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Introspect children"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Only print properties"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Introspect a remote object."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Destination name to monitor"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Object path to monitor"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Monitor a remote object."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Error: can’t monitor a non-message-bus connection\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Service to activate before waiting for the other one (well-known name)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1243,63 +1258,68 @@ msgstr ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[OPTION…] BUS-NAME"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Wait for a bus name to appear."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Error: A service to activate for must be specified.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "Error: A service to wait for must be specified.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Error: Too many arguments.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Error: %s is not a valid well-known bus name.\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4932
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Not authorised to change debug settings"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Unnamed"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "Desktop file didn’t specify Exec field"
-#: gio/gdesktopappinfo.c:2801
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Unable to find terminal required for application"
-#: gio/gdesktopappinfo.c:3452
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr "Can’t create user application configuration folder %s: %s"
-#: gio/gdesktopappinfo.c:3456
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Can’t create user MIME configuration folder %s: %s"
-#: gio/gdesktopappinfo.c:3698 gio/gdesktopappinfo.c:3722
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "Application information lacks an identifier"
-#: gio/gdesktopappinfo.c:3958
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Can’t create user desktop file %s"
-#: gio/gdesktopappinfo.c:4094
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Custom definition for %s"
@@ -1327,7 +1347,7 @@ msgstr "drive doesn’t implement start"
msgid "drive doesn’t implement stop"
msgstr "drive doesn’t implement stop"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "TLS backend does not implement TLS binding retrieval"
@@ -1368,73 +1388,73 @@ msgstr "Expected a GEmblem for GEmblemedIcon"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Containing mount does not exist"
-#: gio/gfile.c:2608 gio/glocalfile.c:2477
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Can’t copy over directory"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Can’t copy directory over directory"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Target file exists"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Can’t recursively copy directory"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Splice not supported"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Error splicing file: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Copy (reflink/clone) between mounts is not supported"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Copy (reflink/clone) is not supported or invalid"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Copy (reflink/clone) is not supported or didn’t work"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Can’t copy special file"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Invalid symlink value given"
-#: gio/gfile.c:4045 glib/gfileutils.c:2354
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Symbolic links not supported"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Wastebasket not supported"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "File names cannot contain “%câ€"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "volume doesn’t implement mount"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "No application is registered as handling this file"
@@ -1479,7 +1499,7 @@ msgstr "Truncate not allowed on input stream"
msgid "Truncate not supported on stream"
msgstr "Truncate not supported on stream"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Invalid hostname"
@@ -1566,7 +1586,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Could not parse “%s†as IP address mask"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Not enough space for socket address"
@@ -2399,15 +2419,15 @@ msgstr "Error compressing file %s"
msgid "text may not appear inside <%s>"
msgstr "text may not appear inside <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Show program version and exit"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Name of the output file"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2415,46 +2435,46 @@ msgstr ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "DIRECTORY"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
"Generate output in the format selected for by the target filename extension"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Generate source header"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr "Generate source code used to link in the resource file into your code"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Generate dependency list"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Name of the dependency file to generate"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Include phony targets in the generated dependency file"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Don’t automatically create and register resource"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Don’t export functions; declare them G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2462,11 +2482,15 @@ msgstr ""
"Don’t embed resource data in the C file; assume it’s linked externally "
"instead"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "C identifier name used for the generated source code"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "The target C compiler (default: the CC environment variable)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2476,7 +2500,7 @@ msgstr ""
"Resource specification files have the extension .gresource.xml,\n"
"and the resource file have the extension called .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "You should give exactly one file name\n"
@@ -2984,8 +3008,8 @@ msgstr "Error renaming file %s: %s"
msgid "Can’t rename file, filename already exists"
msgstr "Can’t rename file, filename already exists"
-#: gio/glocalfile.c:1184 gio/glocalfile.c:2371 gio/glocalfile.c:2399
-#: gio/glocalfile.c:2538 gio/glocalfileoutputstream.c:656
+#: gio/glocalfile.c:1184 gio/glocalfile.c:2380 gio/glocalfile.c:2408
+#: gio/glocalfile.c:2547 gio/glocalfileoutputstream.c:656
msgid "Invalid filename"
msgstr "Invalid filename"
@@ -2999,91 +3023,91 @@ msgstr "Error opening file %s: %s"
msgid "Error removing file %s: %s"
msgstr "Error removing file %s: %s"
-#: gio/glocalfile.c:1982 gio/glocalfile.c:1993
+#: gio/glocalfile.c:1982 gio/glocalfile.c:1993 gio/glocalfile.c:2020
#, c-format
msgid "Error trashing file %s: %s"
msgstr "Error moving file %s to the wastebasket: %s"
-#: gio/glocalfile.c:2031
+#: gio/glocalfile.c:2040
#, c-format
msgid "Unable to create trash directory %s: %s"
msgstr "Unable to create the wastebasket directory %s: %s"
-#: gio/glocalfile.c:2052
+#: gio/glocalfile.c:2061
#, c-format
msgid "Unable to find toplevel directory to trash %s"
msgstr "Unable to find toplevel directory to move %s to the wastebasket"
-#: gio/glocalfile.c:2060
+#: gio/glocalfile.c:2069
#, c-format
msgid "Trashing on system internal mounts is not supported"
msgstr "Can’t move to wastebasket on system internal mounts"
-#: gio/glocalfile.c:2146 gio/glocalfile.c:2174
+#: gio/glocalfile.c:2155 gio/glocalfile.c:2183
#, c-format
msgid "Unable to find or create trash directory %s to trash %s"
msgstr "Unable to find or create wastebasket directory %s to move %s to"
-#: gio/glocalfile.c:2220
+#: gio/glocalfile.c:2229
#, c-format
msgid "Unable to create trashing info file for %s: %s"
msgstr "Unable to create wastebasket info file for %s: %s"
-#: gio/glocalfile.c:2282
+#: gio/glocalfile.c:2291
#, c-format
msgid "Unable to trash file %s across filesystem boundaries"
msgstr "Unable to move %s to wastebasket across filesystem boundaries"
-#: gio/glocalfile.c:2286 gio/glocalfile.c:2342
+#: gio/glocalfile.c:2295 gio/glocalfile.c:2351
#, c-format
msgid "Unable to trash file %s: %s"
msgstr "Unable to move file %s to the wastebasket: %s"
-#: gio/glocalfile.c:2348
+#: gio/glocalfile.c:2357
#, c-format
msgid "Unable to trash file %s"
msgstr "Unable to move file %s to the wastebasket"
-#: gio/glocalfile.c:2374
+#: gio/glocalfile.c:2383
#, c-format
msgid "Error creating directory %s: %s"
msgstr "Error creating directory %s: %s"
-#: gio/glocalfile.c:2403
+#: gio/glocalfile.c:2412
#, c-format
msgid "Filesystem does not support symbolic links"
msgstr "Filesystem does not support symbolic links"
-#: gio/glocalfile.c:2406
+#: gio/glocalfile.c:2415
#, c-format
msgid "Error making symbolic link %s: %s"
msgstr "Error making symbolic link %s: %s"
-#: gio/glocalfile.c:2449 gio/glocalfile.c:2484 gio/glocalfile.c:2541
+#: gio/glocalfile.c:2458 gio/glocalfile.c:2493 gio/glocalfile.c:2550
#, c-format
msgid "Error moving file %s: %s"
msgstr "Error moving file %s: %s"
-#: gio/glocalfile.c:2472
+#: gio/glocalfile.c:2481
msgid "Can’t move directory over directory"
msgstr "Can’t move directory over directory"
-#: gio/glocalfile.c:2498 gio/glocalfileoutputstream.c:1108
+#: gio/glocalfile.c:2507 gio/glocalfileoutputstream.c:1108
#: gio/glocalfileoutputstream.c:1122 gio/glocalfileoutputstream.c:1137
#: gio/glocalfileoutputstream.c:1154 gio/glocalfileoutputstream.c:1168
msgid "Backup file creation failed"
msgstr "Backup file creation failed"
-#: gio/glocalfile.c:2517
+#: gio/glocalfile.c:2526
#, c-format
msgid "Error removing target file: %s"
msgstr "Error removing target file: %s"
-#: gio/glocalfile.c:2531
+#: gio/glocalfile.c:2540
msgid "Move between mounts not supported"
msgstr "Move between mounts not supported"
-#: gio/glocalfile.c:2705
+#: gio/glocalfile.c:2714
#, c-format
msgid "Could not determine the disk usage of %s: %s"
msgstr "Could not determine the disk usage of %s: %s"
@@ -3260,13 +3284,13 @@ msgstr "Error creating backup copy: %s"
msgid "Error renaming temporary file: %s"
msgstr "Error renaming temporary file: %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "Error truncating file: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Error opening file “%sâ€: %s"
@@ -3288,7 +3312,7 @@ msgstr "The file was externally modified"
msgid "Error removing old file: %s"
msgstr "Error removing old file: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Invalid GSeekType supplied"
@@ -3300,15 +3324,15 @@ msgstr "Invalid seek request"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Cannot truncate GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Memory output stream not resizable"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Failed to resize memory output stream"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3316,11 +3340,11 @@ msgstr ""
"Amount of memory required to process the write is larger than available "
"address space"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Requested seek before the beginning of the stream"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Requested seek beyond the end of the stream"
@@ -3400,12 +3424,12 @@ msgstr "Could not create network monitor: "
msgid "Could not get network status: "
msgstr "Could not get network status: "
-#: gio/gnetworkmonitornm.c:348
+#: gio/gnetworkmonitornm.c:311
#, c-format
msgid "NetworkManager not running"
msgstr "NetworkManager not running"
-#: gio/gnetworkmonitornm.c:359
+#: gio/gnetworkmonitornm.c:322
#, c-format
msgid "NetworkManager version too old"
msgstr "NetworkManager version too old"
@@ -3423,18 +3447,22 @@ msgstr "Sum of vectors passed to %s too large"
msgid "Source stream is already closed"
msgstr "Source stream is already closed"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Error resolving “%sâ€: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s not implemented"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Invalid domain"
@@ -3549,7 +3577,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " SECTION An (optional) elf section name\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " COMMAND The (optional) command to explain\n"
@@ -3581,7 +3609,7 @@ msgstr "PATH"
msgid " PATH A resource path\n"
msgstr " PATH A resource path\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "No such schema “%sâ€\n"
@@ -3612,35 +3640,35 @@ msgstr "Path must end with a slash (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Path must not contain two adjacent slashes (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "The provided value is outside of the valid range\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "The key is not writable\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "List the installed (non-relocatable) schemas"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "List the installed relocatable schemas"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "List the keys in SCHEMA"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "SCHEMA[:PATH]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "List the children of SCHEMA"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3648,48 +3676,48 @@ msgstr ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SCHEMA[:PATH]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Get the value of KEY"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "SCHEMA[:PATH] KEY"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Query the range of valid values for KEY"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Query the description for KEY"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Set the value of KEY to VALUE"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SCHEMA[:PATH] KEY VALUE"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Reset KEY to its default value"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Reset all keys in SCHEMA to their defaults"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Check if KEY is writable"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3699,11 +3727,11 @@ msgstr ""
"If no KEY is specified, monitor all keys in SCHEMA.\n"
"Use ^C to stop monitoring.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SCHEMA[:PATH] [KEY]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3751,7 +3779,7 @@ msgstr ""
"Use “gsettings help COMMAND†to get detailed help.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3766,11 +3794,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " SCHEMADIR A directory to search for additional schemas\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3778,211 +3806,211 @@ msgstr ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " KEY The (optional) key within the schema\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " KEY The key within the schema\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " VALUE The value to set\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Could not load schemas from %s: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "No schemas installed\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Empty schema name given\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "No such key “%sâ€\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Invalid socket, not initialised"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Invalid socket, initialisation failed due to: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Socket is already closed"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Socket I/O timed out"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "creating GSocket from fd: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Unable to create socket: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Unknown family was specified"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Unknown protocol was specified"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "Cannot use datagram operations on a non-datagram socket."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr "Cannot use datagram operations on a socket with a timeout set."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "could not get local address: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "could not get remote address: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "could not listen: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Error binding to address %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Error joining multicast group: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Error leaving multicast group: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "No support for source-specific multicast"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Unsupported socket family"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "source-specific not an IPv4 address"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Interface name too long"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Interface not found: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "No support for IPv4 source-specific multicast"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "No support for IPv6 source-specific multicast"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Error accepting connection: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Connection in progress"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Unable to get pending error: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Error receiving data: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Error sending data: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Unable to shutdown socket: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Error closing socket: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Waiting for socket condition: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Unable to send message: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Message vectors too large"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Error sending message: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage not supported on Windows"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Error receiving message: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Unable to read socket credentials: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "g_socket_get_credentials not implemented for this OS"
@@ -4000,11 +4028,11 @@ msgstr "Could not connect to %s: "
msgid "Could not connect: "
msgstr "Could not connect: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "Proxying over a non-TCP connection is not supported."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Proxy protocol “%s†is not supported."
@@ -4104,6 +4132,16 @@ msgstr "SOCKSv5 proxy does not support provided address type."
msgid "Unknown SOCKSv5 proxy error."
msgstr "Unknown SOCKSv5 proxy error."
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
+#, c-format
+msgid "Failed to create pipe for communicating with child process (%s)"
+msgstr "Failed to create pipe for communicating with child process (%s)"
+
+#: gio/gtestdbus.c:619
+#, c-format
+msgid "Pipes are not supported in this platform"
+msgstr "Pipes are not supported in this platform"
+
#: gio/gthemedicon.c:595
#, c-format
msgid "Can’t handle version %d of GThemedIcon encoding"
@@ -4118,44 +4156,66 @@ msgstr "No valid addresses were found"
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "Error reverse-resolving “%sâ€: %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr "Error parsing DNS %s record: malformed DNS packet"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "No DNS record of the requested type for “%sâ€"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "Temporarily unable to resolve “%sâ€"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "Error resolving “%sâ€"
-#: gio/gtlscertificate.c:419
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Malformed DNS packet"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "Failed to parse DNS response for “%sâ€: "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "No PEM-encoded private key found"
-#: gio/gtlscertificate.c:429
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Cannot decrypt PEM-encoded private key"
-#: gio/gtlscertificate.c:440
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Could not parse PEM-encoded private key"
-#: gio/gtlscertificate.c:467
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "No PEM-encoded certificate found"
-#: gio/gtlscertificate.c:476
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Could not parse PEM-encoded certificate"
-#: gio/gtlscertificate.c:832
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "The current TLS backend does not support PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "This GTlsBackend does not support creating PKCS #11 certificates"
@@ -4181,54 +4241,62 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "The password entered is incorrect."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "Sending FD is not supported"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "Expecting 1 control message, got %d"
msgstr[1] "Expecting 1 control message, got %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Unexpected type of ancillary data"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "Expecting one fd, but got %d\n"
msgstr[1] "Expecting one fd, but got %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Received invalid fd"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "Receiving FD is not supported"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Error sending credentials: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Error checking if SO_PASSCRED is enabled for socket: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Error enabling SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Not expecting control message, but got %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Error while disabling SO_PASSCRED: %s"
@@ -4244,7 +4312,7 @@ msgstr "Error reading from file descriptor: %s"
msgid "Error closing file descriptor: %s"
msgstr "Error closing file descriptor: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Filesystem root"
@@ -4255,7 +4323,7 @@ msgstr "Filesystem root"
msgid "Error writing to file descriptor: %s"
msgstr "Error writing to file descriptor: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "Abstract UNIX domain socket addresses not supported on this system"
@@ -4405,8 +4473,8 @@ msgstr "Failed to expand exec line “%s†with URI “%sâ€"
msgid "Unrepresentable character in conversion input"
msgstr "Unrepresentable character in conversion input"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Partial character sequence at end of input"
@@ -4871,79 +4939,79 @@ msgstr "PM"
msgid "Error opening directory “%sâ€: %s"
msgstr "Error opening directory “%sâ€: %s"
-#: glib/gfileutils.c:737 glib/gfileutils.c:829
+#: glib/gfileutils.c:733 glib/gfileutils.c:825
#, c-format
msgid "Could not allocate %lu byte to read file “%sâ€"
msgid_plural "Could not allocate %lu bytes to read file “%sâ€"
msgstr[0] "Could not allocate %lu byte to read file “%sâ€"
msgstr[1] "Could not allocate %lu bytes to read file “%sâ€"
-#: glib/gfileutils.c:754
+#: glib/gfileutils.c:750
#, c-format
msgid "Error reading file “%sâ€: %s"
msgstr "Error reading file “%sâ€: %s"
-#: glib/gfileutils.c:790
+#: glib/gfileutils.c:786
#, c-format
msgid "File “%s†is too large"
msgstr "File “%s†is too large"
-#: glib/gfileutils.c:854
+#: glib/gfileutils.c:850
#, c-format
msgid "Failed to read from file “%sâ€: %s"
msgstr "Failed to read from file “%sâ€: %s"
-#: glib/gfileutils.c:904 glib/gfileutils.c:979 glib/gfileutils.c:1468
+#: glib/gfileutils.c:900 glib/gfileutils.c:975 glib/gfileutils.c:1447
#, c-format
msgid "Failed to open file “%sâ€: %s"
msgstr "Failed to open file “%sâ€: %s"
-#: glib/gfileutils.c:917
+#: glib/gfileutils.c:913
#, c-format
msgid "Failed to get attributes of file “%sâ€: fstat() failed: %s"
msgstr "Failed to get attributes of file “%sâ€: fstat() failed: %s"
-#: glib/gfileutils.c:948
+#: glib/gfileutils.c:944
#, c-format
msgid "Failed to open file “%sâ€: fdopen() failed: %s"
msgstr "Failed to open file “%sâ€: fdopen() failed: %s"
-#: glib/gfileutils.c:1049
+#: glib/gfileutils.c:1045
#, c-format
msgid "Failed to rename file “%s†to “%sâ€: g_rename() failed: %s"
msgstr "Failed to rename file “%s†to “%sâ€: g_rename() failed: %s"
-#: glib/gfileutils.c:1175
+#: glib/gfileutils.c:1154
#, c-format
msgid "Failed to write file “%sâ€: write() failed: %s"
msgstr "Failed to write file “%sâ€: write() failed: %s"
-#: glib/gfileutils.c:1196
+#: glib/gfileutils.c:1175
#, c-format
msgid "Failed to write file “%sâ€: fsync() failed: %s"
msgstr "Failed to write file “%sâ€: fsync() failed: %s"
-#: glib/gfileutils.c:1357 glib/gfileutils.c:1772
+#: glib/gfileutils.c:1336 glib/gfileutils.c:1751
#, c-format
msgid "Failed to create file “%sâ€: %s"
msgstr "Failed to create file “%sâ€: %s"
-#: glib/gfileutils.c:1402
+#: glib/gfileutils.c:1381
#, c-format
msgid "Existing file “%s†could not be removed: g_unlink() failed: %s"
msgstr "Existing file “%s†could not be removed: g_unlink() failed: %s"
-#: glib/gfileutils.c:1737
+#: glib/gfileutils.c:1716
#, c-format
msgid "Template “%s†invalid, should not contain a “%sâ€"
msgstr "Template “%s†invalid, should not contain a “%sâ€"
-#: glib/gfileutils.c:1750
+#: glib/gfileutils.c:1729
#, c-format
msgid "Template “%s†doesn’t contain XXXXXX"
msgstr "Template “%s†doesn’t contain XXXXXX"
-#: glib/gfileutils.c:2310 glib/gfileutils.c:2339
+#: glib/gfileutils.c:2289 glib/gfileutils.c:2318
#, c-format
msgid "Failed to read the symbolic link “%sâ€: %s"
msgstr "Failed to read the symbolic link “%sâ€: %s"
@@ -4969,65 +5037,65 @@ msgstr "Channel terminates in a partial character"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Can’t do a raw read in g_io_channel_read_to_end"
-#: glib/gkeyfile.c:790
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "Valid key file could not be found in search dirs"
-#: glib/gkeyfile.c:827
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Not a regular file"
-#: glib/gkeyfile.c:1282
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
msgstr ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
-#: glib/gkeyfile.c:1339
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Invalid group name: %s"
-#: glib/gkeyfile.c:1361
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Key file does not start with a group"
-#: glib/gkeyfile.c:1387
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Invalid key name: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Invalid key name: %.*s"
-#: glib/gkeyfile.c:1414
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Key file contains unsupported encoding “%sâ€"
-#: glib/gkeyfile.c:1663 glib/gkeyfile.c:1836 glib/gkeyfile.c:3289
-#: glib/gkeyfile.c:3353 glib/gkeyfile.c:3483 glib/gkeyfile.c:3615
-#: glib/gkeyfile.c:3761 glib/gkeyfile.c:3996 glib/gkeyfile.c:4063
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Key file does not have group “%sâ€"
-#: glib/gkeyfile.c:1791
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Key file does not have key “%s†in group “%sâ€"
-#: glib/gkeyfile.c:1953 glib/gkeyfile.c:2069
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "Key file contains key “%s†with value “%s†which is not UTF-8"
-#: glib/gkeyfile.c:1973 glib/gkeyfile.c:2089 glib/gkeyfile.c:2531
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr ""
"Key file contains key “%s†which has a value that cannot be interpreted."
-#: glib/gkeyfile.c:2749 glib/gkeyfile.c:3118
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5036,36 +5104,36 @@ msgstr ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
"interpreted."
-#: glib/gkeyfile.c:2827 glib/gkeyfile.c:2904
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "Key “%s†in group “%s†has value “%s†where %s was expected"
-#: glib/gkeyfile.c:4306
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Key file contains escape character at end of line"
-#: glib/gkeyfile.c:4328
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Key file contains invalid escape sequence “%sâ€"
-#: glib/gkeyfile.c:4472
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "Value “%s†cannot be interpreted as a number."
-#: glib/gkeyfile.c:4486
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "Integer value “%s†out of range"
-#: glib/gkeyfile.c:4519
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "Value “%s†cannot be interpreted as a float number."
-#: glib/gkeyfile.c:4558
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "Value “%s†cannot be interpreted as a boolean."
@@ -5354,7 +5422,7 @@ msgstr "Error parsing option %s"
msgid "Missing argument for %s"
msgstr "Missing argument for %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Unknown option %s"
@@ -5726,148 +5794,158 @@ msgstr "unknown escape sequence"
msgid "Error while parsing replacement text “%s†at char %lu: %s"
msgstr "Error while parsing replacement text “%s†at char %lu: %s"
-#: glib/gshell.c:94
+#: glib/gshell.c:96
msgid "Quoted text doesn’t begin with a quotation mark"
msgstr "Quoted text doesn’t begin with a quotation mark"
-#: glib/gshell.c:184
+#: glib/gshell.c:186
msgid "Unmatched quotation mark in command line or other shell-quoted text"
msgstr "Unmatched quotation mark in command line or other shell-quoted text"
-#: glib/gshell.c:580
+#: glib/gshell.c:592
#, c-format
msgid "Text ended just after a “\\†character. (The text was “%sâ€)"
msgstr "Text ended just after a “\\†character. (The text was “%sâ€)"
-#: glib/gshell.c:587
+#: glib/gshell.c:599
#, c-format
msgid "Text ended before matching quote was found for %c. (The text was “%sâ€)"
msgstr "Text ended before matching quote was found for %c. (The text was “%sâ€)"
-#: glib/gshell.c:599
+#: glib/gshell.c:611
msgid "Text was empty (or contained only whitespace)"
msgstr "Text was empty (or contained only whitespace)"
-#: glib/gspawn.c:308
+#: glib/gspawn.c:310
#, c-format
msgid "Failed to read data from child process (%s)"
msgstr "Failed to read data from child process (%s)"
-#: glib/gspawn.c:458
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "Unexpected error in reading data from a child process (%s)"
-#: glib/gspawn.c:543
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Unexpected error in waitpid() (%s)"
-#: glib/gspawn.c:1152 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "Child process exited with code %ld"
-#: glib/gspawn.c:1160
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Child process killed by signal %ld"
-#: glib/gspawn.c:1167
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Child process stopped by signal %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Child process exited abnormally"
-#: glib/gspawn.c:1793 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Failed to read from child pipe (%s)"
-#: glib/gspawn.c:2095
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Failed to spawn child process “%s†(%s)"
-#: glib/gspawn.c:2212
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Failed to fork (%s)"
-#: glib/gspawn.c:2372 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Failed to change to directory “%s†(%s)"
-#: glib/gspawn.c:2382
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Failed to execute child process “%s†(%s)"
-#: glib/gspawn.c:2392
+#: glib/gspawn.c:2550
+#, c-format
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Failed to open file to remap file descriptor (%s)"
+
+#: glib/gspawn.c:2558
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Failed to redirect output or input of child process (%s)"
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Failed to duplicate file descriptor for child process (%s)"
-#: glib/gspawn.c:2401
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Failed to fork child process (%s)"
-#: glib/gspawn.c:2409
+#: glib/gspawn.c:2575
+#, c-format
+msgid "Failed to close file descriptor for child process (%s)"
+msgstr "Failed to close file descriptor for child process (%s)"
+
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Unknown error executing child process “%sâ€"
-#: glib/gspawn.c:2433
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "Failed to read enough data from child pid pipe (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Failed to read data from child process"
-#: glib/gspawn-win32.c:311
-#, c-format
-msgid "Failed to create pipe for communicating with child process (%s)"
-msgstr "Failed to create pipe for communicating with child process (%s)"
-
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Failed to execute child process (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Failed to dup() in child process (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Invalid program name: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Invalid string in argument vector at %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Invalid string in environment: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Invalid working directory: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Failed to execute helper program (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -5875,21 +5953,21 @@ msgstr ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
-#: glib/gstrfuncs.c:3338 glib/gstrfuncs.c:3440
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Empty string is not a number"
-#: glib/gstrfuncs.c:3362
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "“%s†is not a signed number"
-#: glib/gstrfuncs.c:3372 glib/gstrfuncs.c:3476
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Number “%s†is out of bounds [%s, %s]"
-#: glib/gstrfuncs.c:3466
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "“%s†is not an unsigned number"
@@ -5942,183 +6020,183 @@ msgstr "URI ‘%s’ is not an absolute URI"
msgid "URI ‘%s’ has no host component"
msgstr "URI ‘%s’ has no host component"
-#: glib/guri.c:1435
+#: glib/guri.c:1460
msgid "URI is not absolute, and no base URI was provided"
msgstr "URI is not absolute, and no base URI was provided"
-#: glib/guri.c:2213
+#: glib/guri.c:2238
msgid "Missing ‘=’ and parameter value"
msgstr "Missing ‘=’ and parameter value"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Failed to allocate memory"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Character out of range for UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Invalid sequence in conversion input"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Character out of range for UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2727
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2729
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2731
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2733
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2735
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2737
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2741
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2743
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2745
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2747
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2749
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2751
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2755
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2757
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2759
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2761
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2763
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2765
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2769
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2771
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2773
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2775
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2777
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2779
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2813 glib/gutils.c:2930
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u byte"
msgstr[1] "%u bytes"
-#: glib/gutils.c:2817
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6126,7 +6204,7 @@ msgstr[0] "%u bit"
msgstr[1] "%u bits"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2884
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6134,7 +6212,7 @@ msgstr[0] "%s byte"
msgstr[1] "%s bytes"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2889
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6146,32 +6224,32 @@ msgstr[1] "%s bits"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2943
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2948
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2953
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:2958
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:2963
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:2968
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
@@ -6311,9 +6389,6 @@ msgstr "%.1f EB"
#~ "Unexpected option length while checking if SO_PASSCRED is enabled for "
#~ "socket. Expected %d bytes, got %d"
-#~ msgid "URIs not supported"
-#~ msgstr "URIs not supported"
-
#~ msgid "association changes not supported on win32"
#~ msgstr "association changes not supported on win32"
diff --git a/po/es.po b/po/es.po
index b78329ded..e2fdc3816 100644
--- a/po/es.po
+++ b/po/es.po
@@ -9,46 +9,57 @@
#
# Jorge González <jorgegonz@svn.gnome.org>, 2007, 2008, 2009, 2010, 2011, 2012.
# Daniel Mustieles <daniel.mustieles@gmail.com>, 2010-2022.
+# Daniel Mustieles García <daniel.mustieles@gmail.com>, 2022.
#
msgid ""
msgstr ""
"Project-Id-Version: glib.master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-02-01 17:05+0000\n"
-"PO-Revision-Date: 2022-02-07 13:55+0100\n"
-"Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n"
+"POT-Creation-Date: 2022-02-22 18:23+0000\n"
+"PO-Revision-Date: 2022-02-24 12:31+0100\n"
+"Last-Translator: Daniel Mustieles García <daniel.mustieles@gmail.com>\n"
"Language-Team: Spanish - Spain <gnome-es-list@gnome.org>\n"
"Language: es_ES\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Plural-Forms: nplurals=2; plural=(n != 1)\n"
"X-Generator: Gtranslator 41.0\n"
-#: gio/gapplication.c:500
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Todavía no se soporta establecer aplicaciones predeterminadas"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"Establecer aplicación como la usada por última vez para el tipo no está "
+"soportado"
+
+#: gio/gapplication.c:497
msgid "GApplication options"
msgstr "Opciones de GApplication"
-#: gio/gapplication.c:500
+#: gio/gapplication.c:497
msgid "Show GApplication options"
msgstr "Mostrar las opciones de GApplication"
-#: gio/gapplication.c:545
+#: gio/gapplication.c:542
msgid "Enter GApplication service mode (use from D-Bus service files)"
msgstr ""
"Entrar en modo de servicio de GApplication (usar desde archivos de servicio "
"de D-Bus)"
-#: gio/gapplication.c:557
+#: gio/gapplication.c:554
msgid "Override the application’s ID"
msgstr "Omitir el ID de la aplicación"
-#: gio/gapplication.c:569
+#: gio/gapplication.c:566
msgid "Replace the running instance"
msgstr "Reemplazar la instancia actual en ejecución"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Imprimir ayuda"
@@ -60,7 +71,7 @@ msgstr "[COMANDO]"
msgid "Print version"
msgstr "Imprimir versión"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Mostrar informacioÌn de la versioÌn y salir"
@@ -124,8 +135,8 @@ msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr ""
"Identificador de la aplicación en formato D-Bus (ej. org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "ARCHIVO"
@@ -151,7 +162,7 @@ msgid "Optional parameter to the action invocation, in GVariant format"
msgstr ""
"Parámetro opcionales para la invocación de la acción, en formato GVariant"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -165,7 +176,7 @@ msgid "Usage:\n"
msgstr "Uso:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argumentos:\n"
@@ -290,7 +301,7 @@ msgstr "El flujo ya se cerró"
msgid "Truncate not supported on base stream"
msgstr "No se soporta el truncado en el flujo base"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -311,7 +322,7 @@ msgstr "No hay suficiente espacio en el destino"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Hay una secuencia de bytes no válida en la entrada de conversión"
@@ -321,7 +332,7 @@ msgstr "Hay una secuencia de bytes no válida en la entrada de conversión"
msgid "Error during conversion: %s"
msgstr "Falló durante la conversión: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "La inicialización cancelable no eestá soportada"
@@ -336,7 +347,7 @@ msgstr ""
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "No se pudo abrir el conversor de «%s» a «%s»"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "tipo %s"
@@ -350,23 +361,23 @@ msgstr "Tipo desconocido"
msgid "%s filetype"
msgstr "tipo de archivo %s"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials contiene datos no válidos"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials no está implementado en este SO"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "No existe soporte de GCredentials para su plataforma"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GCredentials no contiene un ID de proceso en este SO"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "No se soporta la burla de credenciales en este SO"
@@ -374,18 +385,18 @@ msgstr "No se soporta la burla de credenciales en este SO"
msgid "Unexpected early end-of-stream"
msgstr "Final de flujo inesperadamente prematuro"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Clave «%s» no soportada en la entrada de dirección «%s»"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr ""
"Combinación del par clave/valor sin sentido en la entrada de dirección «%s»"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -394,29 +405,29 @@ msgstr ""
"La dirección «%s» no es válida (se necesita exactamente una ruta, carpeta, "
"carpeta temporal o claves abstractas)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Error en la direccioÌn «%s» — el atributo «%s» estaÌ mal formado"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Transporte «%s» desconocido o no soportado para la dirección «%s»"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "El elemento de dirección «%s» no contiene dos puntos (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr ""
"El nombre del transporte en el elemento de dirección «%s» no debe estar vacío"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -425,7 +436,7 @@ msgstr ""
"El par clave/valor %d, «%s», en el elemento de dirección «%s», no contiene "
"un signo de igual"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
@@ -433,7 +444,7 @@ msgstr ""
"El par clave/valor %d, «%s», en el elemento de dirección «%s», no debe "
"contener una clave vacía"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -442,7 +453,7 @@ msgstr ""
"Error al desescapar la clave o el valor en el par clave/valor %d, «%s», en "
"el elemento de dirección «%s»"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -451,86 +462,86 @@ msgstr ""
"Error en la dirección «%s»: el transporte UNIX requiere exactamente que una "
"de las claves «path» o «abstract» esté establecida"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr ""
"Error en la dirección «%s»: falta o está mal formado el atributo para el "
"servidor"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr ""
"Error en la direccioÌn «%s»: falta o estaÌ mal formado el atributo para el "
"puerto"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Error en la dirección «%s»: falta o está mal formado el atributo para el "
"archivo de número usado una sola vez"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Error al autolanzar: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Error al abrir el archivo de número usado una sola vez «%s»: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Error al leer el archivo de número usado una sola vez «%s»: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"Error al leer el archivo de número usado una sola vez «%s», se esperaban 16 "
"bytes, se obtuvieron %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr ""
"Error al escribir el contenido del archivo de número usado una sola vez «%s» "
"al flujo:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "La dirección proporcionada está vacía"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "No se puede lanzar («spawn») un mensaje al bus con setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "No se puede lanzar un mensaje cuando AT_SECURE está activado"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "No se puede lanzar («spawn») un mensaje al bus sin un ID de máquina: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "No se puede lanzar D-Bus automáticamente sin X11 $DISPLAY"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Error al lanzar («spawn») el comando «%s»: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"No se puede determinar la dirección del bus de sesión (no implementado para "
"este SO)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7334
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -539,7 +550,7 @@ msgstr ""
"No se puede determinar la dirección del bus desde la variable de entorno "
"DBUS_STARTER_BUS_TYPE; variable «%s» desconocida"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7343
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -547,7 +558,7 @@ msgstr ""
"No se puede determinar la dirección del bus porque la variable de entorno "
"DBUS_STARTER_BUS_TYPE no está establecida"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Tipo de bus %d desconocido"
@@ -577,12 +588,12 @@ msgstr "El ID del usuario debe ser el mismo en el par y el servidor"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Cancelado a través de GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Error al obtener la información de la carpeta «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -590,34 +601,34 @@ msgstr ""
"Los permisos de la carpeta «%s» están mal formados. Se esperaba el modo "
"0700, se obtuvo 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Error al crear la carpeta %s: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Operación no soportada"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Error al abrir el depósito de claves «%s» para su lectura: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
"La línea %d del depósito de claves en «%s» con contenido «%s» está mal "
"formada"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -625,7 +636,7 @@ msgstr ""
"El primer token de la línea %d del depósito de claves en «%s» con contenido "
"«%s» está mal formado"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -633,37 +644,37 @@ msgstr ""
"El segundo token de la liÌnea %d del depoÌsito de claves en «%s» con contenido "
"«%s» estaÌ mal formado"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "No se encontró la «cookie» con ID %d en el depósito de claves en «%s»"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Error al crear el archivo de bloqueo «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Error al eliminar el archivo de bloqueo antiguo «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Error al cerrar (desenlazar) el archivo de bloqueo «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Error al desenlazar el archivo de bloqueo «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Error al abrir el depósito de claves «%s» para su escritura:"
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr ""
@@ -770,28 +781,28 @@ msgstr "Ya se ha exportado un subárbol para %s"
msgid "Object does not exist at path “%sâ€"
msgstr "El objeto no existe en la ruta «%s»"
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "el tipo no es válido («INVALID»)"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "Mensaje de METHOD_CALL: falta el campo de cabecera PATH o MEMEBER"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "Mensaje de METHOD_RETURN: falta el campo de cabecera REPLY_SERIAL"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr ""
"Mensaje de ERROR: falta el campo de cabecera REPLY_SERRIAL o ERROR_NAME"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "Mensaje de SIGNAL: falta el campo de cabecera PATH, INTERFACE o MEMBER"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -799,7 +810,7 @@ msgstr ""
"Mensaje de SIGNAL: el campo de cabecera PATH está usando el valor reservado /"
"org/freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -807,21 +818,21 @@ msgstr ""
"Mensaje de SIGNAL: el campo de cabecera INTERFACE estaÌ usando el valor "
"reservado org.freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "Se quería leer %lu byte pero sólo se obtuvo %lu"
msgstr[1] "Se querían leer %lu bytes pero sólo se obtuvo %lu"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr ""
"Se esperaba el byte NULL después de la cadena «%s» pero se encontró el byte "
"%d"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -831,21 +842,21 @@ msgstr ""
"en el byte desplazado %d (la longitud de la cadena es %d). La cadena UTF-8 "
"válida hasta ese punto era «%s»."
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Valor anidado demasiado profundamente"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "El valor analizado «%s» no es un objeto de ruta D-Bus válido"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "El valor analizado «%s» no es una firma de D-Bus válida"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -858,7 +869,7 @@ msgstr[1] ""
"Se encontró un array de longitud %u bytes. La longitud máxima es 2<<26 bytes "
"(64 MiB)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -867,17 +878,17 @@ msgstr ""
"Encontrado un vector de tipo «a%c», esperando que su longitud fuese múltiplo "
"de %u bytes, pero su longitud es de %u"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
-msgstr "La estructuras vacías (tuplas) no están permitidas en D-Bus"
+msgstr "Las estructuras vacías (tuplas) no están permitidas en D-Bus"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr ""
"El valor analizado «%s» para la variante no es una firma de D-Bus válida"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
@@ -885,7 +896,7 @@ msgstr ""
"Error al deserializar GVariant con el tipo de cadena «%s» al formato de "
"mensaje de D-Bus"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -894,31 +905,31 @@ msgstr ""
"Valor endian no válido. Se esperaba 0x6c («l») o 0x42 («B»)» pero se obtuvo "
"el valor 0x%02x"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr ""
"La versión principal del protocolo no es válida. Se esperaba 1 pero se "
"encontró %d."
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Cabecera de firma encontrada pero no es del tipo firma"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"Se encontró la cabecera de firma con firma «%s» pero el cuerpo del mensaje "
"está vacío"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr ""
"El valor analizado «%s» no es una firma de D-Bus válida (para el cuerpo)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -929,11 +940,11 @@ msgstr[1] ""
"No existe la cabecera de firma en el mensaje pero el cuerpo del mensaje "
"tiene %u bytes"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "No se puede deserializar el mensaje: "
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
@@ -941,7 +952,7 @@ msgstr ""
"Error al serializar GVariant con el tipo de cadena «%s» al formato de "
"mensaje de D-Bus"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
@@ -949,17 +960,17 @@ msgstr ""
"El número de descriptores de archivos en el mensaje (%d) es distinto del "
"campo de cabecera (%d)"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "No se puede serializar el mensaje: "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr ""
"El cuerpo del mensaje tiene la firma «%s» pero no existe la cabecera de firma"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -968,55 +979,55 @@ msgstr ""
"El cuerpo del mensaje tiene un tipo de firma «%s» pero la firma en el campo "
"de cabecera es «%s»"
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr ""
"El cuerpo del mensaje está vacío pero la firma en el campo de cabecera es "
"«(%s)»"
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Error al devolver el cuerpo de tipo «%s»"
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Error al devolver un cuepro vacío"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Escriba un caraÌcter cualquiera para cerrar esta ventana)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr ""
"La sesión de dbus no está en ejecución, y falló el lanzamiento automático"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "No se pudo obtener el perfil de hardware: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "No se pudo cargar «%s» o %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Error al llamar StartSereviceByName para %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Respuesta %d no esperada del método StartServiceByName(«%s»)"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1074,60 +1085,60 @@ msgstr ""
"\n"
"Use «%s COMANDO --help» para obtener ayuda de cada comando.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Error: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Error al analizar la introspección XML: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Error: %s no es un nombre válido\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Error: %s no es una ruta de objeto válida\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Conectar con el bus del sistema"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Conectar con el bus de sesión"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Conectar con la dirección de D-Bus proporcionada"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Opciones de conexión del extremo:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Opciones para especificar la conexión del extremo:"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "No se especificó ningún punto de conexión extremo"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Se especificaron varios puntos de conexión extremos"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
@@ -1135,7 +1146,7 @@ msgstr ""
"Advertencia: según la introspección de los datos, la interfaz «%s» no "
"existe\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1144,161 +1155,165 @@ msgstr ""
"Advertencia: según la introspección de los datos, el método «%s» no existe "
"en la interfaz «%s»\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Destino opcional para la señal (nombre único)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Ruta del objeto sobre el que emitir la señal"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Nombres de la interfaz y señal"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Emitir una señal."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Error al conectar: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Error: %s no es un nombre de bus único válido.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Error: no se especificó la ruta del objeto\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Error: no se especificó el nombre de la señal\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Error: el nombre de la señal «%s» no es válido\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Error: %s no es un nombre de interfaz válida\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Error: %s no es un nombre de miembro válido\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Error al analizar el parámetro %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Error al limpiar la conexión: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Nombre del detino sobre el que invocar elmétodo"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Ruta del objeto sobre la que invocar el método"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Nombre de la interfaz y método"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Tiempo de expiración en segundos"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Permitir autorización interactiva"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Invocar un método en un objeto remoto."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Error: el destino no está especificado\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Error: %s no es un nombre de bus válido\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Error: no se especificó el nombre del método\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Error: el nombre del método «%s» no es válido\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Error al analizar el parámetro %d del tipo «%s»: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Error al añadir el manejador %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Nombre de destino que introspeccionar"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Ruta del objeto que introspeccionar"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Imprimir XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Introspeccionar hijo"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Solo mostrar propiedades"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Introspeccionar un objeto remoto."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Nombre de destino para monitorizar"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Ruta objeto para monitorizar"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Monitorizar un objeto remoto."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr ""
"Error: no se puede monitorizar una conexión que no sea de mensajes del bus\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Servicio que activar antes de esperar a otro (nombre conocido)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1306,65 +1321,70 @@ msgstr ""
"Tiempo que esperar antes de salir con un error (en segundos); 0 para que no "
"haya tiempo de expiración (predeterminado)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[OPCIÓN…] NOMBRE-BUS"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Esperar a que aparezca el nombre del bus."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Error: se debe especificar un servicio que activar.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "Error: se debe especificar un servicio al que esperar.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Demasiados argumentos.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Error: %s no es un nombre de bus conocido válido\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdebugcontrollerdbus.c:357
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "No autorizado para cambiar la configuración de depuración"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Sin nombre"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "El archivo de escritorio no especificó el campo Exec"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Imposible encontrar el terminal requerido por la aplicación"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr ""
"No se puede crear la carpeta de configuración de la aplicación %s del "
"usuario: %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "No se puede crear la carpeta de configuración MIME %s del usuario: %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "La información de la aplicación carece de un identificador"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "No se puede crear el archivo de escritorio %s del usuario"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Definición personalizada para %s"
@@ -1392,7 +1412,7 @@ msgstr "la unidad no implementa reproducir"
msgid "drive doesn’t implement stop"
msgstr "la unidad no implementa detener"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "El «backend» de TLS no implementa recuperación de enlace de TLS"
@@ -1433,73 +1453,73 @@ msgstr "Se esperaba un GEmblem para GEmblemedIconjo"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "El punto de montaje contenido no existe"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "No se puede copiar sobre la carpeta"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "No se puede copiar una carpeta sobre otra"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "El archivo destino ya existe"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "No se puede copiar la carpeta recursivamente"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "La unión no está soportada"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Error al unir el archivo: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Copiar (reflink/clone) entre puntos de montaje no está soportado"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Copiar (reflink/clone) no está soportado o no es válido"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Copiar (reflink/clone) no está soportado o no ha funcionado"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "No se puede copiar el archivo especial"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "El valor del enlace simbólico dado no es válido"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Enlaces simbólicos no soportados"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "No se soporta mover a la papelera"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Los nombres de archivo no pueden contener «%c»"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "el volumen no implementa el montaje"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "No hay ninguna aplicación registrada para manejar este archivo"
@@ -1544,7 +1564,7 @@ msgstr "No se permite truncar en el flujo de entrada"
msgid "Truncate not supported on stream"
msgstr "No se soporta el truncamiento en el flujo"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "El nombre del host no es válido"
@@ -1632,7 +1652,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "No se pudo analizar «%s» como una máscara de una dirección IP"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "No hay suficiente espacio para la dirección del socket"
@@ -2476,15 +2496,15 @@ msgstr "Error al comprimir el archivo %s"
msgid "text may not appear inside <%s>"
msgstr "El texto no debe aparecer dentro de <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Mostrar la versión del programa y salir"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Nombre del archivo de salida"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2492,49 +2512,49 @@ msgstr ""
"La carpeta de la que se tienen que leer los archivos indicados en ARCHIVO "
"(la predeterminada es la carpeta actual)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "CARPETA"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
"Generar salida en el formato seleccionado por la extensión del nombre del "
"archivo objetivo"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Generar cabecera fuente"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr ""
"Generar el código fuente usado para enlazar el archivo del recurso en su "
"código fuente"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Generar lista de dependencias"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Nombre del archivo de dependencias que generar"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Incluir objetivos falsos en el archivo de dependencias generado"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "No crear y registrar automáticamente un recurso"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "No exportar funciones; declararlas como G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2542,11 +2562,15 @@ msgstr ""
"No incluir datos de recursos en el archivo C; en su lugar, asumir que está "
"enlazado de manera externa"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "Nombre del identificador C usado para el código fuente generado"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "El compilador C objetivo (predeterminado: la variable de entorno CC)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2557,7 +2581,7 @@ msgstr ""
"gresource.xml,\n"
"y el archivo del recurso debe tener la extensión se llama .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Deberá proporcionar exactamente un nombre de archivo\n"
@@ -3368,7 +3392,7 @@ msgid "Error truncating file: %s"
msgstr "Error al truncar el archivo: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Error al abrir el archivo %s: %s"
@@ -3390,7 +3414,7 @@ msgstr "El archivo se modificó externamente"
msgid "Error removing old file: %s"
msgstr "Error al eliminar el archivo antiguo: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Se proporcionó un GSeekType no válido"
@@ -3402,15 +3426,15 @@ msgstr "Petición de búsqueda no válida"
msgid "Cannot truncate GMemoryInputStream"
msgstr "No se puede truncar GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "El flujo de salida de la memoria no es redimensionable"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Falló al redimensionar el flujo de salida de la memoria"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3418,11 +3442,11 @@ msgstr ""
"La cantidad de memoria necesaria para procesar el escrito es mayor que el "
"espacio de direcciones libre disponible"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "La búsqueda solicitada antes del inicio del flujo"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "La búsqueda solicitada después del final del flujo"
@@ -3530,18 +3554,18 @@ msgstr "La suma de vectores pasada a %s es demasiado grande"
msgid "Source stream is already closed"
msgstr "El flujo de origen ya está cerrado"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Error al resolver «%s»: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s no está implementado"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Dominio no válido"
@@ -3656,7 +3680,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " SECCIÓN El nombre de sección (opcional) de un elf\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " COMANDO El comando (opcional) que explicar\n"
@@ -3689,7 +3713,7 @@ msgstr "RUTA"
msgid " PATH A resource path\n"
msgstr " RUTA La ruta de un recurso\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "No existe el esquema «%s»\n"
@@ -3720,35 +3744,35 @@ msgstr "La ruta debe terminar con una barra (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "La ruta no debe contener dos barras adyacentes (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "El valor proporcionado está fuera del rango válido\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "No se puede escribir la clave\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Listar los esquemas instalados (no reubicables)"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Listar los esquemas reubicables instalados"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Listar las claves en el ESQUEMA"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "ESQUEMA[:RUTA]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Listar los hijos del ESQUEMA"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3756,49 +3780,49 @@ msgstr ""
"Listar las claves y valores recursivamente\n"
"Si no se proporciona un ESQUEMA, listar todas las claves\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[ESQUEMA[:RUTA]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Obtener el valor de la CLAVE"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "ESQUEMA[:RUTA] CLAVE"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Consultar el rango de valores válidos para la CLAVE"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Consultar la descripción para la CLAVE"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Establecer el valor de la CLAVE a VALOR"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "ESQUEMA[:RUTA] CLAVE VALOR"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Restablecer la CLAVE a su valor predeterminado"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr ""
"Restablecer todas las claves en un ESQUEMA a sus valores predeterminados"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Comprobar si la CLAVE se puede escribir"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3808,11 +3832,11 @@ msgstr ""
"Si no se especifica una CLAVE, monitorizar todas las claves en el ESQUEMA.\n"
"Use ^C para detener la monitorización.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "ESQUEMA[:RUTA] [CLAVE]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3861,7 +3885,7 @@ msgstr ""
"Use «gsettings help COMANDO» para obtener una ayuda detallada.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3876,11 +3900,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " CARPETA_ESQUEMA: una carpeta para buscar esquemas adicionales\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3888,215 +3912,215 @@ msgstr ""
" SCHEMA El nombre del esquema\n"
" RUTA La ruta, para esquemas reubicables\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " CLAVE La clave (opcional) para el esquema\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " CLAVE La clave para el esquema\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " VALOR El valor para establecer\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "No se pudieron cargar los esquemas de %s: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "No hay esquemas instalados\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Se proporcionó un nombre de esquema vacío\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "No existe la clave «%s»\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Socket no válido, no inicializado"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Socket no válido, falló la instalación debido a: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "El socket ya está cerrado"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Expiró la E/S del socket"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "creando el GSocket desde fd: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "No se pudo crear el socket: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Se especificó una familia desconocida"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Se especificó un protocolo desconocido"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr ""
"No se pueden usar operaciones de datagrama en un zócalo que no es de "
"datagrama."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"No se pueden usar operaciones de datagrama en un zócalo sin un tiempo de "
"expiración establecido."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "no se pudo obtener la dirección local: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "no se pudo obtener la dirección remota: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "no se pudo escuchar: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Error al vincular con la dirección %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Error al unirse al grupo de multicast: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Error al abandonar al grupo de multicast: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "No se soporta el multicast específico de la fuente"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Familia del socket no soportada"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "la fuente específica no es una dirección IPv4"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "El nombre de la interfaz es demasiado largo"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Interfaz no encontrada: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "No se soporta el multicast específico de la fuente para IPv4"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "No se soporta el multicast específico de la fuente para IPv6"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Error al aceptar la conexión: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Conexión en progreso"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "No se pudo obtener el error pendiente: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Error al recibir los datos: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Error al enviar los datos: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "No se pudo desconectar el socket: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Error al cerrar el socket: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Esperando la condición del socket: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "No se pudo enviar el mensaje: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Vectores de mensaje demasiado largos"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Error al enviar el mensaje: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage no está soportado en Windows"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Error al recibir el mensaje: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "No se pudieron leer las credenciales del socket: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "g_socket_get_credentials no está implementado en este SO"
@@ -4114,12 +4138,12 @@ msgstr "No se pudo conectar a %s: "
msgid "Could not connect: "
msgstr "No se pudo conectar: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr ""
"No se soporta intentar hacer de proxy sobre una conexión que no es TCP."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "El protocolo del proxy «%s» no está soportado."
@@ -4223,7 +4247,7 @@ msgstr "El proxy SOCKSv5 no soporta el tipo de dirección proporcionado."
msgid "Unknown SOCKSv5 proxy error."
msgstr "Error desconocido del proxy SOCKSv5."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr ""
@@ -4233,7 +4257,7 @@ msgstr ""
#: gio/gtestdbus.c:619
#, c-format
msgid "Pipes are not supported in this platform"
-msgstr "No se soportan las tuberías en esta plataforma"
+msgstr "En esta plataforma no se soportan las tuberías"
#: gio/gthemedicon.c:595
#, c-format
@@ -4266,27 +4290,31 @@ msgstr "No se puede resolver «%s» temporalmente"
msgid "Error resolving “%sâ€"
msgstr "Error al resolver «%s»"
-#: gio/gtlscertificate.c:431
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "No se encontró ninguna clave privada codificada con PEM"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "No se pudo descifrar la clave privada codificada con PEM"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "No se pudo analizar la clave privada codificada con PEM"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "No se encontró ningún certificado codificado con PEM"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "No se pudo analizar el certificado codificado con PEM"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "Este «backend» de TLS actual no soporta crear certificados PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "Este GTlsBackend no soporta crear certificados PKCS #11"
@@ -4312,55 +4340,63 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "La contraseña introducida no es correcta."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "No se soporta el envío de FD"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "Se esperaba un mensaje de control, se obtuvo %d"
msgstr[1] "Se esperaba un mensaje de control, se obtuvieron %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Tipos de datos complementarios inesperados"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "Se esperaba un fd pero se obtuvo %d\n"
msgstr[1] "Se esperaba un fd pero se obtuvieron %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Se recibió un fd no válido"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "No se soporta recibid FD"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Error al enviar las credenciales: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Error al comprobar si SO_PASSCRED está activada para el socket: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Error al activar SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Se esperaba leer un solo byte para recibir las credenciales pero se leyeron "
"cero bytes"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "No se esperaba un mensaje de control, pero se obtuvo %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Error al desactivar SO_PASSCRED: %s"
@@ -4376,7 +4412,7 @@ msgstr "Error al leer del descriptor del archivo: %s"
msgid "Error closing file descriptor: %s"
msgstr "Error al cerrar el descriptor del archivo: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Sistema de archivos raíz"
@@ -4387,7 +4423,7 @@ msgstr "Sistema de archivos raíz"
msgid "Error writing to file descriptor: %s"
msgstr "Error al escribir en el descriptor del archivo: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr ""
"Este sistema no soporta direcciones de socket de dominio UNIX abstracto"
@@ -4540,8 +4576,8 @@ msgstr "Falló la expansión de lalinea ejecutable «%s» con el URI «%s»"
msgid "Unrepresentable character in conversion input"
msgstr "Carácter no representable en entrada de conversión"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Hay una secuencia parcial de caracteres en el final de la entrada"
@@ -5106,16 +5142,16 @@ msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr ""
"No se puede hacer una lectura en bruto (raw) en g_io_channel_read_to_end"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr ""
"No se pudo encontrar la clave de archivo válida en las carpetas de búsqueda"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "No es un archivo regular"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5123,45 +5159,45 @@ msgstr ""
"El archivo de claves contiene la línea «%s» que no es un par valor-clave, "
"grupo o comentario"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Nombre de grupo no válido: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "El archivo de claves no empieza por un grupo"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Nombre de clave no válida: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Nombre de clave no válido: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "El archivo de claves contiene una codificación «%s» no soportada"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "El archivo de claves no tiene el grupo «%s»"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "El archivo de claves no tiene la clave «%s» en el grupo «%s»"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr ""
"El archivo de claves contiene la clave «%s» con el valor «%s» el cual no es "
"UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
@@ -5169,7 +5205,7 @@ msgstr ""
"El archivo de claves contiene la clave «%s» que tiene un valor que no se "
"puede interpretar."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5178,38 +5214,38 @@ msgstr ""
"El archivo de claves contiene la clave «%s» en el grupo «%s» que tiene un "
"valor que no puede interpretarse."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr ""
"La clave «%s» en el grupo «%s» tiene el valor «%s», pero se esperaba %s"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr ""
"El archivo de claves contiene un carácter de escape al final de la línea"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "El archivo de claves contiene la secuencia de escape no válida «%s»"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "El valor «%s» no puede interpretarse como un número."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "El valor entero «%s» está fuera de rango"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "El valor «%s» no puede interpretarse como un número de coma flotante."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "El valor «%s» no puede interpretarse como un booleano."
@@ -5512,7 +5548,7 @@ msgstr "Error al analizar la opción: %s"
msgid "Missing argument for %s"
msgstr "Falta un argumento para %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Opción desconocida %s"
@@ -5926,121 +5962,132 @@ msgstr "El texto está vacío (o sólo contiene espacios en blanco)"
msgid "Failed to read data from child process (%s)"
msgstr "Falló en la lectura de datos desde el proceso hijo (%s)"
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "Error inesperado al leer datos desde el proceso hijo (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Falló inesperado en waitpid() (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1431
#, c-format
msgid "Child process exited with code %ld"
msgstr "El proceso hijo terminó con el código %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "El proceso hijo terminado por la señal %ld"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "El proceso hijo se detuvo por la señal %ld"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "El proceso hijo terminó de forma anormal"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Falló al leer desde el conducto hijo (%s)"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Falló al ejecutar el proceso hijo «%s» (%s)"
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Falló al bifurcar (fork) (%s)"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Falló al cambiar a la carpeta «%s» (%s)"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Falló al ejecutar el proceso hijo «%s» (%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2550
+#, c-format
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Falló al abrir el archivo para volver a mapear el descriptor: (%s)"
+
+#: glib/gspawn.c:2558
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Falló al redirigir la salida o la entrada del proceso hijo (%s)"
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Falló al duplicar el descriptor del archivo para el proceso hijo (%s)"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Falló al bifurcar el proceso hijo (%s)"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2575
#, c-format
msgid "Failed to close file descriptor for child process (%s)"
msgstr "Falló al cerrar el descriptor del archivo para el proceso hijo (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Error desconocido al ejecutar el proceso hijo «%s»"
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "Falló al leer suficientes datos desde el conducto del pid hijo (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Falló al leer los datos desde un proceso hijo"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Falló al ejecutar el proceso hijo (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+#| msgid "Failed to fork child process (%s)"
+msgid "Failed to dup() in child process (%s)"
+msgstr "Falló al hacer dup() en el proceso hijo (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Nombre de programa no válido: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:800
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Cadena no válida en el vector del argumento en %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:816
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Cadena no válida en el entorno: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:796
#, c-format
msgid "Invalid working directory: %s"
msgstr "Carpeta de trabajo no válido: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:861
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Falló al ejecutar el programa auxiliar (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1089
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -6048,21 +6095,21 @@ msgstr ""
"Falló inesperado en g_io_channel_win32_poll() al leer datos desde un proceso "
"hijo"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Una cadena vacía no es un número"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "«%s» no es un número con signo"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "El número «%s» está fuera de los límites [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "«%s» no es un número sin signo"
@@ -6123,175 +6170,175 @@ msgstr "El URI no es absoluto y no se ha proporcionado un URI base"
msgid "Missing ‘=’ and parameter value"
msgstr "Faltan el «=» y el valor del parámetro"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Falló al obtener memoria"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "El carácter se sale del rango para UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Secuencia no válida en la entrada de conversión"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "El carácter se sale del rango para UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u byte"
msgstr[1] "%u bytes"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6299,7 +6346,7 @@ msgstr[0] "%u bit"
msgstr[1] "%u bits"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6307,7 +6354,7 @@ msgstr[0] "%s byte"
msgstr[1] "%s bytes"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6319,32 +6366,32 @@ msgstr[1] "%s bits"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
@@ -6479,9 +6526,6 @@ msgstr "%.1f EB"
#~ "No se pudo encontrar el tipo de monitorización de la carpeta local "
#~ "predeterminada"
-#~ msgid "URIs not supported"
-#~ msgstr "No se soportan URI"
-
#~ msgid "Key file does not have key '%s'"
#~ msgstr "El archivo de claves no tiene la clave «%s»"
diff --git a/po/eu.po b/po/eu.po
index 2995df6a0..8406e4d5c 100644
--- a/po/eu.po
+++ b/po/eu.po
@@ -5,13 +5,13 @@
# Hizkuntza Politikarako Sailburuordetza <hizpol@ej-gv.es>, 2004.
# Iñaki Larrañaga Murgoitio <dooteo@zundan.com>, 2004, 2005, 2006, 2007, 2008, 2009, 2010.
# Iñaki Larrañaga Murgoitio <dooteo@zundan.com>, 2011, 2012, 2013, 2014, 2015, 2016, 2017.
-# Asier Sarasua Garmendia <asiersarasua@ni.eus>, 2019, 2020, 2021.
+# Asier Sarasua Garmendia <asiersarasua@ni.eus>, 2019, 2020, 2021, 2022.
#
msgid ""
msgstr "Project-Id-Version: glib master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2021-07-19 15:52+0000\n"
-"PO-Revision-Date: 2021-08-21 10:00+0100\n"
+"POT-Creation-Date: 2022-02-22 18:23+0000\n"
+"PO-Revision-Date: 2022-02-27 10:00+0100\n"
"Last-Translator: Asier Sarasua Garmendia <asiersarasua@ni.eus>\n"
"Language-Team: Basque <librezale@librezale.eus>\n"
"Language: eu\n"
@@ -20,28 +20,36 @@ msgstr "Project-Id-Version: glib master\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: gio/gapplication.c:500
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Aplikazio lehenetsia ezartzea edago onartuta oraindik"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr "Erabilitako azken aplikazioa motarako ezartzea ez dago onartuta oraindik"
+
+#: gio/gapplication.c:497
msgid "GApplication options"
msgstr "GApplication aplikazioaren aukerak"
-#: gio/gapplication.c:500
+#: gio/gapplication.c:497
msgid "Show GApplication options"
msgstr "Erakutsi GApplication-en aukerak"
-#: gio/gapplication.c:545
+#: gio/gapplication.c:542
msgid "Enter GApplication service mode (use from D-Bus service files)"
msgstr "Sartu GApplication zerbitzu moduan (erabili D-Bus zerbitzuaren fitxategietatik)"
-#: gio/gapplication.c:557
+#: gio/gapplication.c:554
msgid "Override the application’s ID"
msgstr "Gainidatzi aplikazioaren IDa"
-#: gio/gapplication.c:569
+#: gio/gapplication.c:566
msgid "Replace the running instance"
msgstr "Ordeztu exekuzioan dagoen instantzia"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Erakutsi laguntza"
@@ -53,7 +61,7 @@ msgstr "[KOMANDOA]"
msgid "Print version"
msgstr "Bistaratu bertsioa"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Erakutsi bertsioaren informazioa eta irten"
@@ -114,8 +122,8 @@ msgstr "Erakutsi komandoaren laguntza xehea"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Aplikazioaren identifikatzailea D-bus formatuan (adib: org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "FITXATEGIA"
@@ -140,7 +148,7 @@ msgstr "PARAMETROA"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Ekintza deitzean emango zaion parametroa, GVariant formatuan"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -153,7 +161,7 @@ msgid "Usage:\n"
msgstr "Erabilera:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argumentuak:\n"
@@ -272,7 +280,7 @@ msgstr "Korrontea jadanik itxita dago"
msgid "Truncate not supported on base stream"
msgstr "Trunkatzea ez da onartzen oinarrizko korrontean"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1872 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -293,7 +301,7 @@ msgstr "Ez dago nahikoa lekurik helburuan"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Byteen sekuentzia baliogabea bihurketa-sarreran"
@@ -303,7 +311,7 @@ msgstr "Byteen sekuentzia baliogabea bihurketa-sarreran"
msgid "Error during conversion: %s"
msgstr "Errorea bihurtzean: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Hasieratzea bertan behera uztea ez dago onartuta"
@@ -317,7 +325,7 @@ msgstr "“%s†karaktere-multzoa “%s†bihurtzea ez da onartzen"
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Ezin izan da “%s†“%s†bihurtzeko tresna ireki"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "%s mota"
@@ -331,23 +339,23 @@ msgstr "Mota ezezaguna"
msgid "%s filetype"
msgstr "%s fitxategi mota"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials-ek baliogabeko datuak ditu"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials ez dago inplementatuta SE honetan"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Ez dago GCredentials euskarririk plataforma honetan"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GCredentials-ek ez dauka prozesuaren IDrik SE honetan"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Kredentzialak usurpatzea ezinezkoa da SE honetan"
@@ -355,152 +363,152 @@ msgstr "Kredentzialak usurpatzea ezinezkoa da SE honetan"
msgid "Unexpected early end-of-stream"
msgstr "Ustekabeko korronte-amaiera azkarregia"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Onartu gabeko “%s†gakoa helbidearen “%s†sarreran"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Zentzurik gabeko gakoa/balioa bikotearen konbinazioa “%s†helbidearen sarreran"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
"keys)"
msgstr "“%s†helbidea baliogabea da (gako hauetako bat behar du: “path†(bide-izena), “tmpdir†(aldi baterako direktorioa) edo “abstract†(abstraktua))"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Errorea “%s†helbidean — “%s†atributua gaizki osatuta dago"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "“%2$s†helbidearen “%1$s†garraioa ezezaguna edo onartu gabea"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "“%s†helbidearen elementuak ez dauka bi punturik (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "“%s†helbidearen elementuko garraio-izenak ez du hutsik egon behar"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
"sign"
msgstr "%d. gakoa/balioa bikoteak, “%sâ€, “%s†helbidearen elementuan, ez dauka berdina (=) ikurrik"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
msgstr "%d. gakoa/balioa bikoteak, “%sâ€, “%s†helbidearen elementuan, ez du gakoa hutsik eduki behar"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
"“%sâ€"
msgstr "Errorea gakoa edo balioa iheseko modutik kentzean %d. gakoa/balioa bikotean, “%sâ€, “%s†helbidearen elementuan"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
"“path†or “abstract†to be set"
msgstr "Errorea “%s†helbidean - unix-eko garraioak “path†edo “abstract†gakoetariko bat behar du hain zuzen."
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr "Errorea “%s†helbidean — ostalariaren atributua falta da edo gaizki osatuta dago"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "Errorea “%s†helbidean — atakaren atributua falta da edo gaizki osatuta dago"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr "Errorea “%s†helbidean — izendapenaren fitxategiaren atributua falta da edo gaizki osatuta dago"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Errorea automatikoki abiaraztean: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Errorea “%s†izendapeneko fitxategia irekitzean: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Errorea “%s†izendapeneko fitxategitik irakurtzean: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr "Errorea “%s†izendapeneko fitxategitik irakurtzean: 16 byte espero ziren, baina %d lortu dira"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Errorea “%s†izendapeneko fitxategiko edukia korrontean idaztean:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "Emandako helbidea hutsik dago"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Ezin da mezuaren deia abiarazi 'setuid' duenean"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "Ezin da mezuaren deia abiarazi AT_SECURE ezarrita dagoenean"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "Ezin da mezuaren deia abiarazi makinaren IDrik gabe: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Ezin da D-Bus automatikoki abiarazi X11 $DISPLAY gabe"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Errorea “%s†komando-lerroa abiaraztean: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr "Ezin da saioaren bus-eko helbidea zehaztu (ez dago SE honetan garatuta)"
-#: gio/gdbusaddress.c:1397 gio/gdbusconnection.c:7261
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7334
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
"— unknown value “%sâ€"
msgstr "Ezin da bus-aren helbidea zehaztua inguruneko DBUS_STARTER_BUS_TYPE aldagaitik. “%s†balio ezezaguna"
-#: gio/gdbusaddress.c:1406 gio/gdbusconnection.c:7270
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7343
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
msgstr "Ezin da bus-aren helbidea zehaztua, inguruneko DBUS_STARTER_BUS_TYPE aldagaia ezarri gabe dagoelako"
-#: gio/gdbusaddress.c:1416
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "%d bus mota ezezaguna"
@@ -527,250 +535,250 @@ msgstr "Erabiltzailearen IDak ID bera izan behar du parekoan eta zerbitzarian"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Bertan behera utzita GDBusAuthObserver::authorize-authenticated-peer erabiliz"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Errorea “%s†direktorioaren informazioa eskuratzean: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
msgstr "“%s†direktorioko baimenak gaizki osatuta. 0700 modua espero zen, baina 0%o lortuta"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Errorea “%s†direktorioa sortzean: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Eragiketa ez dago onartuta"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Errorea “%s†gako sorta irakurtzeko irekitzean: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "“%2$sâ€(e)ngo gako sortako %1$d. lerroa (“%3$s†edukiarekin) gaizki osatuta dago"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "“%2$sâ€(e)ngo gako sortako %1$d. lerroko aurreneko tokena (“%3$s†edukiarekin) gaizki osatuta dago"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "“%2$sâ€(e)ngo gako sortako %1$d. lerroko bigarren tokena (“%3$s†edukiarekin) gaizki osatuta dago"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Ez da %d IDko cookie-rik aurkitu “%sâ€(e)ngo gako sortan"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Errorea blokeoko “%s†fitxategia sortzean: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Errorea blokeoaren “%s†fitxategi zaharkitua ezabatzean: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Errorea blokeoko (estekatu gabeko) “%s†fitxategia ixtean: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Errorea blokeoko “%s†fitxategia desestekatzean: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Errorea “%s†gako sorta idazteko irekitzean: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Gainera, “%sâ€(r)en blokeoa askatzeak ere huts egin du: %s) "
-#: gio/gdbusconnection.c:603 gio/gdbusconnection.c:2417
+#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
msgid "The connection is closed"
msgstr "Konexioa itxi egin da"
-#: gio/gdbusconnection.c:1902
+#: gio/gdbusconnection.c:1903
msgid "Timeout was reached"
msgstr "Denbora-mugara iritsi da"
-#: gio/gdbusconnection.c:2540
+#: gio/gdbusconnection.c:2541
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr "Onartu gabeko banderak aurkitu dira bezeroaren aldeko konexioa eraikitzean"
-#: gio/gdbusconnection.c:4189 gio/gdbusconnection.c:4536
+#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr "Ez dago “org.freedesktop.DBus.Properties†interfazerik %s bide-izeneko objektuan"
-#: gio/gdbusconnection.c:4331
+#: gio/gdbusconnection.c:4414
#, c-format
msgid "No such property “%sâ€"
msgstr "Ez dago “%s†propietaterik"
-#: gio/gdbusconnection.c:4343
+#: gio/gdbusconnection.c:4426
#, c-format
msgid "Property “%s†is not readable"
msgstr "“%s†propietatea ez da irakurgarria"
-#: gio/gdbusconnection.c:4354
+#: gio/gdbusconnection.c:4437
#, c-format
msgid "Property “%s†is not writable"
msgstr "“%s†propietatea ez da idazgarria"
-#: gio/gdbusconnection.c:4374
+#: gio/gdbusconnection.c:4457
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr "Errorea “%s†propietatea ezartzean: “%s†mota espero zen, baina “%s†lortu da"
-#: gio/gdbusconnection.c:4479 gio/gdbusconnection.c:4687
-#: gio/gdbusconnection.c:6689
+#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
+#: gio/gdbusconnection.c:6760
#, c-format
msgid "No such interface “%sâ€"
msgstr "Ez dago “%s†interfazerik"
-#: gio/gdbusconnection.c:4905 gio/gdbusconnection.c:7201
+#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Ez dago “%s†interfazerik %s bide-izeneko objektuan"
-#: gio/gdbusconnection.c:5003
+#: gio/gdbusconnection.c:5100
#, c-format
msgid "No such method “%sâ€"
msgstr "Ez dago “%s†metodorik"
-#: gio/gdbusconnection.c:5034
+#: gio/gdbusconnection.c:5131
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "“%s†mezu mota ez dator bat espero zen “%s†motarekin"
-#: gio/gdbusconnection.c:5237
+#: gio/gdbusconnection.c:5334
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Jadanik objektu bat esportatuta dago %s interfazearentzako %s(e)n"
-#: gio/gdbusconnection.c:5463
+#: gio/gdbusconnection.c:5561
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Ezin da %s.%s propietatea eskuratu"
-#: gio/gdbusconnection.c:5519
+#: gio/gdbusconnection.c:5617
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Ezin da %s.%s propietatea ezarri"
-#: gio/gdbusconnection.c:5698
+#: gio/gdbusconnection.c:5796
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "“%s†metodoak “%s†mota itzuli du, baina “%s†espero zen"
-#: gio/gdbusconnection.c:6800
+#: gio/gdbusconnection.c:6872
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "“%s†metodoa, “%s†interfazekoa eta “%s†sinadura duena, ez da existitzen"
-#: gio/gdbusconnection.c:6921
+#: gio/gdbusconnection.c:6993
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Azpizuhaitza jadanik %s(e)ra esportatuta"
-#: gio/gdbusconnection.c:7209
+#: gio/gdbusconnection.c:7282
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "Objekturik ez da existitzen “%s†bide-izenean"
-#: gio/gdbusmessage.c:1266
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "mota baliogabea da"
-#: gio/gdbusmessage.c:1277
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "METHOD_CALL-en mezua: goiburuko PATH edo MEMBER eremua falta da"
-#: gio/gdbusmessage.c:1288
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "METHOD_RETURN-en mezua: goiburuko REPLY_SERIAL eremua falta da"
-#: gio/gdbusmessage.c:1300
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "ERROR-en mezua: goiburuko REPLY_SERIAL edo ERROR_NAME eremua falta da"
-#: gio/gdbusmessage.c:1313
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "SIGNAL-en mezua: goiburuko PATH, INTERFACE edo MEMBER eremua falta da"
-#: gio/gdbusmessage.c:1321
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
msgstr "SIGNAL-en mezua: goiburuko PATH eremua '/org/freedesktop/DBus/Local' balio erreserbatua erabiltzen ari da"
-#: gio/gdbusmessage.c:1329
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
msgstr "SIGNAL-en mezua: goiburuko INTERFACE eremua '/org/freedesktop/DBus/Local' balio erreserbatua erabiltzen ari da"
-#: gio/gdbusmessage.c:1377 gio/gdbusmessage.c:1437
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "byte %lu irakurtzea nahi zen, baina soilik %lu lortu da"
msgstr[1] "%lu byte irakurtzea nahi ziren, baina %lu lortu da"
-#: gio/gdbusmessage.c:1391
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "NUL bytea espero zen “%s†katearen ondoren, baina “%d†bytea aurkitu da"
-#: gio/gdbusmessage.c:1410
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
"(length of string is %d). The valid UTF-8 string up until that point was “%sâ€"
msgstr "Baliozko UTF-8 katea espero zen, baina baliogabeko byte batzuk aurkitu dira byteen %d desplazamenduan (katearen luzera: %d). Ordurarteko baliozko UTF-8 katea honakoa zen: “%sâ€"
-#: gio/gdbusmessage.c:1474 gio/gdbusmessage.c:1722 gio/gdbusmessage.c:1911
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Balioa sakonegi habiaratuta dago"
-#: gio/gdbusmessage.c:1620
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Analizatutako “%s†balioa ez da baliozko D-Bus objektuaren bide-izen bat"
-#: gio/gdbusmessage.c:1642
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Analizatutako “%s†balioa ez da baliozko D-Bus sinadura"
-#: gio/gdbusmessage.c:1689
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -779,135 +787,139 @@ msgid_plural ""
msgstr[0] "%u byte luzerako matrizea aurkituta. Gehieneko luzera 2<<26 byte da (64 MiB)."
msgstr[1] "%u byte luzerako matrizea aurkituta. Gehieneko luzera 2<<26 byte da (64 MiB)."
-#: gio/gdbusmessage.c:1709
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
"bytes, but found to be %u bytes in length"
msgstr "“a%c' motako matrizea aurkitu da, expected to have a length a multiple of %u byteko multiploko luzera edukitzea espero zen, baina %u byteko luzera du"
-#: gio/gdbusmessage.c:1895
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
+msgid "Empty structures (tuples) are not allowed in D-Bus"
+msgstr "D-Bus-en ez dira hutsik dauden egiturak (tuplak) onartzen"
+
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "Analizatutako “%s†balioa aldagaiarentzat ez da baliozko D-Bus sinadura bat"
-#: gio/gdbusmessage.c:1936
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
msgstr "Errorea GVariant deserializatzean “%s†kate motarekin D-Bus konexioko formatutik"
-#: gio/gdbusmessage.c:2121
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
"0x%02x"
msgstr "Baliogabeko endian balioa. 0x6c (“l“) edo 0x42 (“B“) espero zen, baina 0x%02x balioa aurkitu da."
-#: gio/gdbusmessage.c:2134
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Protokoloaren bertsio nagusia baliogabea. 1 espero zen, baina %d aurkitu da"
-#: gio/gdbusmessage.c:2188 gio/gdbusmessage.c:2784
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Sinaduraren goiburua aurkitu da, baina ez da sinadura motakoa"
-#: gio/gdbusmessage.c:2200
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr "Sinaduraren goiburua “%s†sinadurarekin aurkitu da, baina gorputza hutsik dago"
-#: gio/gdbusmessage.c:2215
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "Analizatutako “%s†balioa ez da baliozko D-Bus sinadura (gorputzarentzako)"
-#: gio/gdbusmessage.c:2247
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
msgstr[0] "Ez dago sinaduraren goibururik mezuan, baina mezuaren gorputzak %u byte du"
msgstr[1] "Ez dago sinaduraren goibururik mezuan, baina mezuaren gorputzak %u byte ditu"
-#: gio/gdbusmessage.c:2257
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Ezin da mezua deserializatu: "
-#: gio/gdbusmessage.c:2601
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
msgstr "Errorea GVariant serializatzean “%s†kate motarekin D-Bus konexioaren formatura"
-#: gio/gdbusmessage.c:2738
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr "Mezuko fitxategi-deskriptoreen kopurua (%d) goiburu-eremukoaren (%d) desberdina da"
-#: gio/gdbusmessage.c:2746
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Ezin da mezua serializatu: "
-#: gio/gdbusmessage.c:2799
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "Mezuaren gorputzak “%s†sinadura du, baina ez dago sinaduraren goibururik"
-#: gio/gdbusmessage.c:2809
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
"“%sâ€"
msgstr "Mezuaren gorputzak “%s†sinadura mota du, baina goiburuaren eremuko sinadura “%s†da"
-#: gio/gdbusmessage.c:2825
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "Mezuaren gorputza hutsik dago, baina goiburuaren eremuko sinadura “(%s)“ da"
-#: gio/gdbusmessage.c:3380
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Errorearen itzulera “'%s†motako gorputzarekin"
-#: gio/gdbusmessage.c:3388
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Errorearen itzulera gorputz hutsarekin"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Sakatu edozer tekla leihoa ixteko)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Saioaren dbus ez da exekutatzen ari, eta abiarazte automatikoak huts egin du"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Ezin da hardwarearen profila eskuratu: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Ezin izan da %s edo %s kargatu: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Errorea %s(r)en StartServiceByName deia egitean: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Ustekabeko %d erantzuna StartServiceByName(“%sâ€) metodotik"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -959,288 +971,297 @@ msgstr "Komandoak:\n"
"\n"
"Erabili “%s KOMANDOA --help†komando bakoitzari dagokion laguntza lortzeko.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Errorea: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Errorea introspekzioko XMLa analizatzean: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Errorea: '%s' ez da baliozko izena\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Errorea: '%s' ez da objektuaren baliozko bide-izena\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Konektatu sistemako bus-arekin"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Konektatu saioko bus-arekin"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Konektatu emandako D-Bus helbidera"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Konexioaren amaierako puntuaren aukerak:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Aukerak konexioaren amaierako puntua zehaztuz"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Ez da konexioaren amaierako punturik zehaztu"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Konexioaren hainbat amaierako puntu zehaztu dira"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr "Abisua: introspekzioko datuen arabera, “%s†interfazea ez da existitzen\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
"interface “%sâ€\n"
msgstr "Abisua: introspekzioko datuen arabera, “%s†metodoa ez da existitzen “%s†interfazean\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Seinalearen aukerazko helburua (izen esklusiboa)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Objektuaren bide-izena bere gainera seinalea igortzeko"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Seinale eta interfazearen izena"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Igorri seinale bat."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Errorea konektatzean: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Errorea: '%s' ez da bus-aren baliozko izen esklusiboa\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Errorea: objektuaren bide-izena ez dago zehaztuta\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Errorea: seinalearen izena ez dago zehaztuta\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Errorea: “%s†seinalearen izena baliogabea da\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Errorea: '%s' ez da interfazearen baliozko izena\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Errorea: '%s' ez da kidearen baliozko izena\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Errorea %d parametroa analizatzean: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Errorea konexioa garbitzean: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Helburuaren izena metodoari deitzeko"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Objektuaren bide-izena metodoari deitzeko"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Metodo eta interfazearen izena"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Denbora-muga (segundotan)"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Onartu baimen dinamikoa"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Deitu metodo bati urruneko objektu batean."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Errorea: helburua ez dago zehaztuta\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Errorea: '%s' ez da busaren baliozko izena\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Errorea: metodoaren izena ez dago zehaztuta\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Errorea: “%s†metodoaren izena baliogabea da\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Errorea “%2$s†motako %1$d parametroa analizatzean: %3$s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Errorea %d heldulekua gehitzean: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Helburuko izena introspekzioa egiteko"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Objektuaren bide-izena introspekzioa egiteko"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Inprimatu XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Aztertu umeen barnean"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Soilik inprimatzeko propietateak"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Urruneko objektu baten introspekzioa egin."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Helburuko izena monitorizatzeko"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Objektuaren bide-izena monitorizatzeko"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Monitorizatu urruneko objektu bat."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Errorea: ezin da monitorizatu non-message-bus konexio bat\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Aktibatu beharreko zerbitzua bestearen (izen ezaguna) zain egon aurretik"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
msgstr "Denbora-muga errore batekin irten aurretik zain egoteko (segundotan); 0 denbora-mugarik ez (lehenetsia)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[AUKERA…] BUS-IZENA"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Bus-izen bat agertzeko zain egon."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Errorea: zerbitzua zehaztu behar da aktibatzeko.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "Errorea: zerbitzua zehaztu behar da haren zain egoteko.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Errorea: argumentu gehiegi.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Errorea: '%s' ez da busaren izen ezagun bat\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4932
+#: gio/gdebugcontrollerdbus.c:357
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Ez duzu arazketa-ezarpenak aldatzeko baimenik"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Izengabea"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "Mahaigaineko fitxategiak ez du Exec eremua zehaztu"
-#: gio/gdesktopappinfo.c:2801
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Ezin izan da aplikazioak eskatzen duen terminala aurkitu"
-#: gio/gdesktopappinfo.c:3452
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr "Ezin da erabiltzailearen aplikazioaren %s konfigurazio-karpeta sortu: %s"
-#: gio/gdesktopappinfo.c:3456
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Ezin da erabiltzailearen MIMEren %s konfigurazio-karpeta sortu: %s"
-#: gio/gdesktopappinfo.c:3698 gio/gdesktopappinfo.c:3722
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "Aplikazioaren informazioari identifikatzaile bat falta zaio"
-#: gio/gdesktopappinfo.c:3958
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Ezin da erabiltzailearen mahaigaineko %s fitxategia sortu"
-#: gio/gdesktopappinfo.c:4094
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "%s(r)en definizio pertsonalizatua"
@@ -1268,7 +1289,7 @@ msgstr "gailuak ez dauka “abiatu†inplementatuta"
msgid "drive doesn’t implement stop"
msgstr "gailuak ez dauka “gelditu†inplementatuta"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "TLS motorrak ez du inplementatu TLS loturen atzitzea"
@@ -1309,73 +1330,73 @@ msgstr "GEmblen espero zen GEmblemedIcon-entzako"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Ontziaren muntaia ez da existitzen"
-#: gio/gfile.c:2608 gio/glocalfile.c:2477
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Ezin da direktorioaren gainean kopiatu"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Ezin da direktorioa kopiatu direktorio gainean"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Helburuko fitxategia existitzen da"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Ezin da direktorioa errekurtsiboki kopiatu"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Lotura ez da onartzen"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Errorea fitxategia batzean: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Muntaien artean kopiatzea (reflink/clone) ez dago onartuta"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Kopiatzea (reflink/clone) ez dago onartuta edo baliogabea da"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Kopiatzea (reflink/clone) ez dago onartuta edo ez du funtzionatzen"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Ezin da fitxategi berezia kopiatu"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Esteka sinbolikoaren baliogabeko balioa eman da"
-#: gio/gfile.c:4045 glib/gfileutils.c:2354
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Esteka sinbolikoak ez dira onartzen"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Zakarrontzira botatzea ez dago onartuta"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Fitxategi-izenek ezin dute “%c†eduki"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "bolumenak ez dauka muntatzea inplementatuta"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Ez da aplikaziorik erregistratu fitxategi hau kudeatzeko"
@@ -1421,7 +1442,7 @@ msgid "Truncate not supported on stream"
msgstr "Trunkatzea ez da onartzen korrontean"
#
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Ostalari-izen baliogabea"
@@ -1508,7 +1529,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Ezin izan da “%s†analizatu IP helbide-maskara gisa"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Ez dago nahikoa lekurik socket helbideentzako"
@@ -2323,69 +2344,73 @@ msgstr "Errorea %s fitxategia konprimatzean"
msgid "text may not appear inside <%s>"
msgstr "testua ezin da <%s>(r)en barruan egon"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Erakutsi programaren bertsioa eta irten"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Irteerako fitxategiaren izena"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
msgstr "FITXATEGIA atributuak erreferentziatutako fitxategiak kargatzeko direktorioak (lehenetsia: uneko direktorioa)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "DIREKTORIOA"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr "Sortu irteera hautatutako formatuan helburuko fitxategiaren luzapenaren arabera"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Sortu iturburuaren goiburua"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr "Sortu iturburu-kodea (baliabidearen fitxategia zure kodean estekatzeko erabilita)"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Sortu mendekotasunen zerrenda"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Sortuko den mendekotasun-fitxategiaren izena"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Sartu helburu faltsuak sortutako mendekotasun-fitxategian"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Ez sortu eta erregistratu baliabidea automatikoki"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Ez esportatu funtzioak: deklaratu haiek G_GNUC_INTERNAL gisa"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
msgstr "Ez kapsulatu baliabide-datuak C fitxategian; onartu kanpotik estekatuta dagoela"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "C identifikatzailearen izena (sortutako iturburuaren kodean erabilita)"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "Helburuko C konpilatzailea (balio lehenetsia: CC ingurumen-aldagaia)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2394,7 +2419,7 @@ msgstr "Konpilatu baliabidearen zehaztapen bat baliabideko fitxategi batean.\n"
"Baliabideen zehaztapenen fitxategiak .gresource.xml luzapena dute,\n"
"eta baliabideen fitxategiek berriz .gresource luzapena."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Fitxategi baten izena bakarrik eman behar duzu\n"
@@ -2867,8 +2892,8 @@ msgid "Can’t rename file, filename already exists"
msgstr "Ezin da fitxategia izenez aldatu, fitxategi-izena badago lehendik ere"
#
-#: gio/glocalfile.c:1184 gio/glocalfile.c:2371 gio/glocalfile.c:2399
-#: gio/glocalfile.c:2538 gio/glocalfileoutputstream.c:656
+#: gio/glocalfile.c:1184 gio/glocalfile.c:2380 gio/glocalfile.c:2408
+#: gio/glocalfile.c:2547 gio/glocalfileoutputstream.c:656
msgid "Invalid filename"
msgstr "Fitxategi-izen baliogabea"
@@ -2882,91 +2907,91 @@ msgstr "Errorea '%s' fitxategia irekitzean: %s"
msgid "Error removing file %s: %s"
msgstr "Errorea '%s' fitxategia kentzean: %s"
-#: gio/glocalfile.c:1982 gio/glocalfile.c:1993
+#: gio/glocalfile.c:1982 gio/glocalfile.c:1993 gio/glocalfile.c:2020
#, c-format
msgid "Error trashing file %s: %s"
msgstr "Errorea '%s' fitxategia zakarrontzira botatzean: %s"
-#: gio/glocalfile.c:2031
+#: gio/glocalfile.c:2040
#, c-format
msgid "Unable to create trash directory %s: %s"
msgstr "Ezin izan da %s zakarrontzi-direktorioa sortu: %s"
-#: gio/glocalfile.c:2052
+#: gio/glocalfile.c:2061
#, c-format
msgid "Unable to find toplevel directory to trash %s"
msgstr "Ezin da '%s' zakarrontziaren goi-mailako direktorioa aurkitu"
-#: gio/glocalfile.c:2060
+#: gio/glocalfile.c:2069
#, c-format
msgid "Trashing on system internal mounts is not supported"
msgstr "Sistemaren barneko muntaietan ez da onartzen zakarrontzira botatzea"
-#: gio/glocalfile.c:2146 gio/glocalfile.c:2174
+#: gio/glocalfile.c:2155 gio/glocalfile.c:2183
#, c-format
msgid "Unable to find or create trash directory %s to trash %s"
msgstr "Ezin izan da %s zakarrontzi-direktorioa aurkitu edo sortu %s zakarrontzian"
-#: gio/glocalfile.c:2220
+#: gio/glocalfile.c:2229
#, c-format
msgid "Unable to create trashing info file for %s: %s"
msgstr "Ezin da '%s' fitxategiaren zakarrontzi-informazioa sortu: %s"
-#: gio/glocalfile.c:2282
+#: gio/glocalfile.c:2291
#, c-format
msgid "Unable to trash file %s across filesystem boundaries"
msgstr "Ezin da '%s' fitxategia fitxategi-sistemen arteko zakarrontzira bota"
-#: gio/glocalfile.c:2286 gio/glocalfile.c:2342
+#: gio/glocalfile.c:2295 gio/glocalfile.c:2351
#, c-format
msgid "Unable to trash file %s: %s"
msgstr "Ezin da '%s' fitxategia zakarrontzira bota: %s"
-#: gio/glocalfile.c:2348
+#: gio/glocalfile.c:2357
#, c-format
msgid "Unable to trash file %s"
msgstr "Ezin da '%s' fitxategia zakarrontzira bota"
-#: gio/glocalfile.c:2374
+#: gio/glocalfile.c:2383
#, c-format
msgid "Error creating directory %s: %s"
msgstr "Errorea '%s' direktorioa sortzean: %s"
-#: gio/glocalfile.c:2403
+#: gio/glocalfile.c:2412
#, c-format
msgid "Filesystem does not support symbolic links"
msgstr "Fitxategi-sistemak ez ditu esteka sinbolikorik onartzen"
-#: gio/glocalfile.c:2406
+#: gio/glocalfile.c:2415
#, c-format
msgid "Error making symbolic link %s: %s"
msgstr "Errorea '%s' esteka sinbolikoa sortzean: %s"
-#: gio/glocalfile.c:2449 gio/glocalfile.c:2484 gio/glocalfile.c:2541
+#: gio/glocalfile.c:2458 gio/glocalfile.c:2493 gio/glocalfile.c:2550
#, c-format
msgid "Error moving file %s: %s"
msgstr "Errorea '%s' fitxategia lekuz aldatzean: %s"
-#: gio/glocalfile.c:2472
+#: gio/glocalfile.c:2481
msgid "Can’t move directory over directory"
msgstr "Ezin da direktorioa lekuz aldatu direktorioaren gainera"
-#: gio/glocalfile.c:2498 gio/glocalfileoutputstream.c:1108
+#: gio/glocalfile.c:2507 gio/glocalfileoutputstream.c:1108
#: gio/glocalfileoutputstream.c:1122 gio/glocalfileoutputstream.c:1137
#: gio/glocalfileoutputstream.c:1154 gio/glocalfileoutputstream.c:1168
msgid "Backup file creation failed"
msgstr "Huts egin du babeskopia sortzean"
-#: gio/glocalfile.c:2517
+#: gio/glocalfile.c:2526
#, c-format
msgid "Error removing target file: %s"
msgstr "Errorea helburuko fitxategia kentzean: %s"
-#: gio/glocalfile.c:2531
+#: gio/glocalfile.c:2540
msgid "Move between mounts not supported"
msgstr "Muntaien artean lekuz aldatzea ez dago onartuta"
-#: gio/glocalfile.c:2705
+#: gio/glocalfile.c:2714
#, c-format
msgid "Could not determine the disk usage of %s: %s"
msgstr "Ezin izan da '%s' diskoaren erabilpena zehaztu: %s"
@@ -3149,7 +3174,7 @@ msgid "Error truncating file: %s"
msgstr "Errorea fitxategia trunkatzean: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Errorea “%s†fitxategia irekitzean: %s"
@@ -3171,7 +3196,7 @@ msgstr "Fitxategia kanpotik aldatu da"
msgid "Error removing old file: %s"
msgstr "Errorea fitxategi zaharra kentzean: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Baliogabeko GSeekType eman da"
@@ -3184,25 +3209,25 @@ msgstr "Bilaketa-eskaera baliogabea"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Ezin da GMemoryInputStream trunkatu"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Ezin da memoriaren irteeraren korrontea tamainaz aldatu"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Huts egin du memoriaren irteeraren korrontea tamainaz aldatzean"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
msgstr "Idazketa lantzeko behar den memoria kopurua erabilgarri dagoen helbide-espazioa baino handiagoa da"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Bilaketa eskatu da korrontearen hasieraren aurretik"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Bilaketa eskatu da korrontearen amaieraren ondoren"
@@ -3282,12 +3307,12 @@ msgstr "Ezin izan da sareko monitorea sortu: "
msgid "Could not get network status: "
msgstr "Ezin izan da sarearen egoera eskuratu: "
-#: gio/gnetworkmonitornm.c:348
+#: gio/gnetworkmonitornm.c:311
#, c-format
msgid "NetworkManager not running"
msgstr "NetworkManager ez dago abian"
-#: gio/gnetworkmonitornm.c:359
+#: gio/gnetworkmonitornm.c:322
#, c-format
msgid "NetworkManager version too old"
msgstr "NetworkManager-en bertsioa zaharregia"
@@ -3305,19 +3330,19 @@ msgstr "%s(e)ri pasatutako bektoreen batuketa handiegia da"
msgid "Source stream is already closed"
msgstr "Iturburuko korrontea jadanik itxi da"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Errorea “%s†ebaztean: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s ez dago inplementatuta"
#
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Baliogabeko domeinua"
@@ -3428,7 +3453,7 @@ msgstr "Erabilera:\n"
msgid " SECTION An (optional) elf section name\n"
msgstr " ATALA elf atalaren izena (aukerakoa)\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " KOMANDOA (aukerako) komandoa deskribatzeko\n"
@@ -3459,7 +3484,7 @@ msgstr "BIDE-IZENA"
msgid " PATH A resource path\n"
msgstr " BIDE-IZENA Baliabidearen bide-izena\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Ez dago “%s†bezalako eskemarik\n"
@@ -3490,83 +3515,83 @@ msgstr "Bide-izena barra batekin (/) amaitu behar da\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Bide-izenak ezin ditu bi barra jarraian eduki (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "Emandako balioa baliozko barrutitik kanpo dago\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "Gakoa ez da idazgarria\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Zerrendatu instalatutako eskemak (lekuz ezin direnak aldatu)"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Zerrendatu instalatutako eskemak (lekuz alda daitezkeenak)"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Zerrendatu ESKEMAko gakoak"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "ESKEMA[:bide-izena]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Zerrendatu ESKEMAren haurrak"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
msgstr "Zerrendatu gako eta balioak, errekurtsiboki\n"
"Ez bada ESKEMArik ematen, zerrendatu gako guztiak\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[ESKEMA[:BIDE-IZENA]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Lortu GAKOAren balioa"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "ESKEMA[:BIDE-IZENA] GAKOA"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Kontsultatu GAKOAren baliozko balioen barrutiari buruz"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Kontsultatu GAKOAren azalpena"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Ezarri GAKOAren balioa BALIOArekin"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "ESKEMA[:BIDE-IZENA] GAKOA BALIOA"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Berrezarri GAKOA bere balio lehenetsira"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Berrezarri ESKEMAko gako guztiak beraien balio lehenetsietara"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Begiratu GAKOA idazgarria den edo ez"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3575,11 +3600,11 @@ msgstr "Monitorizatu GAKOAren aldaketak.\n"
"Ez bada GAKOA zehazten, ESKEMAko gako guztiak monitorizatuko ditu.\n"
"Erabili ^C monitorizazioa gelditzeko.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "ESKEMA[:BIDE-IZENA] GAKOA"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3628,7 +3653,7 @@ msgstr "Erabilera:\n"
"Erabili “gsettings help KOMANDOA“ laguntza xehea lortzeko.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3642,222 +3667,222 @@ msgstr "Erabilera:\n"
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " ESKEMA-DIREKTORIOA Eskema gehigarriak bilatzeko direkotrioa\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
msgstr " ESKEMA Eskemaren izena\n"
" BIDE-IZENA Bide-izena, lekuz alda daitezkeen eskementzako\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " GAKOA Eskema barruko (aukerako) gakoa\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " GAKOA Eskema barruko gakoa\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " BALIOA Ezarriko den balioa\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Ezin izan dira eskemarik '%s'(e)ndik kargatu : %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Ez dago eskemarik instalatuta\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Eskemaren izen hutsa eman da\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Ez dago “%s†bezalako gakorik\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Baliogabeko socket-a, hasieratu gabe dago"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Baliogabeko socket-a, hasieratzeak huts egin du: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Socket-a jadanik itxita dago"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "S/Iko socketaren denbora-muga gaindituta"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "GSocket sortzen fd-tik: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Ezin da socket-a sortu: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Familia ezezaguna zehaztu da"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Protokolo ezezaguna zehaztu da"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "Ezin da datagramen eragiketarik erabili datagramak ez diren socket-etan."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr "Ezin da datagramen eragiketarik erabili socket-etan iraungitze-denborarik ezarri gabe."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "ezin izan da lokaleko helbidea lortu: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "ezin izan da urruneko helbidea lortu: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "ezin izan da entzun: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Errorea %s helbidearekin lotzean: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Errorea multidifusioko taldean elkartzean: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Errorea multidifusioko taldea uztean: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Iturburu zehatzeko multidifusiorik ez da onartzen"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Onartzen ez den socket familia"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "Iturburu zehatzekoa ez IPv4 helbidea"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Interfaze-izena luzeegia da"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Interfazea ez da aurkitu: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "IPv4 iturburu zehatzeko multidifusiorik ez da onartzen"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "IPv6 iturburu zehatzeko multidifusiorik ez da onartzen"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Errorea konexioa onartzean: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Konexioa lantzen"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Ezin da falta diren erroreak lortu: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Errorea datuak jasotzean: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Errorea datuak bidaltzean: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Ezin da socket-a itzali: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Errorea socket-a ixtean: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Socket-aren baldintzen zai: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Ezin izan da mezua bidali: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Mezu-bektoreak luzeegiak dira"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Errorea mezua bidaltzean: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage ez da Windows sisteman onartzen"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Errorea mezua jasotzean: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Ezin da socket-aren kredentzialik irakurri: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "g_socket_get_credentials ez dago S.E. honetan inplementatuta"
@@ -3875,11 +3900,11 @@ msgstr "Ezin izan da %s(r)ekin konektatu: "
msgid "Could not connect: "
msgstr "Ezin izan da konektatu: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "TCP motakoak ez diren konexioen gainean proxya egitea ez dago onartuta."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Proxy-aren “%s†protokoloa ez dago onartuta."
@@ -3977,6 +4002,16 @@ msgstr "SOCKSv5 proxyak ez du emandako helbide mota onartzen."
msgid "Unknown SOCKSv5 proxy error."
msgstr "SOCKSv5 proxyaren errore ezezaguna."
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
+#, c-format
+msgid "Failed to create pipe for communicating with child process (%s)"
+msgstr "Ezin izan da kanalizazioa sortu prozesu haurrarekin komunikatzeko (%s)"
+
+#: gio/gtestdbus.c:619
+#, c-format
+msgid "Pipes are not supported in this platform"
+msgstr "Plataforma honetan ez dira kanalizazioak onartzen"
+
#: gio/gthemedicon.c:595
#, c-format
msgid "Can’t handle version %d of GThemedIcon encoding"
@@ -4008,27 +4043,31 @@ msgstr "Ezin da “%s†ebatzi aldi batean"
msgid "Error resolving “%sâ€"
msgstr "Errorea “%s†ebaztean"
-#: gio/gtlscertificate.c:419
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Ez da PEMekin kodetutako ziurtagirik aurkitu"
-#: gio/gtlscertificate.c:429
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Ezin da PEMekin kodetutako gako pribatua deszifratu"
-#: gio/gtlscertificate.c:440
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Ezin izan da PEMekin kodetutako gako pribatua analizatu"
-#: gio/gtlscertificate.c:467
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Ez da PEMekin kodetutako ziurtagirik aurkitu"
-#: gio/gtlscertificate.c:476
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Ezin izan da PEMekin kodetutako ziurtagiririk analizatu"
-#: gio/gtlscertificate.c:832
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "Uneko TLS motorrak ez du PKCS #12 onartzen"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "GTlsBackend honek ez du onartzen PKCS #11 ziurtagiriak sortzeak"
@@ -4050,53 +4089,61 @@ msgstr "Sartu diren hainbat pasahitz ez dira zuzenak, eta zure sarbidetza blokea
msgid "The password entered is incorrect."
msgstr "Sartutako pasahitza okerrekoa da."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "FD bidaltzea ez dago onartuta"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "Kontroleko mezu 1 espero zen, %d lortu da"
msgstr[1] "Kontroleko mezu 1 espero zen, %d lortu da"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Ustekabeko datu-laguntzaile mota"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "fd bat espero zen, baina %d lortu da\n"
msgstr[1] "fd bat espero zen, baina %d lortu da\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Baliogabeko fd jasota"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "FD jasotzea ez dago onartuta"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Errorea kredentzialak bidaltzean: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Errorea SO_PASSCRED gaituta dagoen begiratzean socket-arentzako: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Errorea SO_PASSCRED gaitzean: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr "Harrerako kredentzialentzako byte bakar bat irakurtzea espero zen, baina zero byte irakurri dira."
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Ez zen kontroleko mezurik espero, baina %d lortu dira"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Errorea SO_PASSCRED desgaitzean: %s"
@@ -4112,7 +4159,7 @@ msgstr "Errorea fitxategiaren deskriptoretik irakurtzean: %s"
msgid "Error closing file descriptor: %s"
msgstr "Errorea fitxategiaren deskriptorea ixtean: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Fitxategi-sistemaren erroa"
@@ -4123,7 +4170,7 @@ msgstr "Fitxategi-sistemaren erroa"
msgid "Error writing to file descriptor: %s"
msgstr "Errorea fitxategiaren deskriptorean idaztean: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "UNIX-eko domeinuen socket helbide abstraktuak ez daude sistema honetan onartuta"
@@ -4274,8 +4321,8 @@ msgstr "Huts egin du “%s†exekuzioko lerroa “%s†URIarekin hedatzean"
msgid "Unrepresentable character in conversion input"
msgstr "Adierazi ezin den karakterea bihurketa-sarreran"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Karaktere-sekuentzia partziala sarreraren amaieran"
@@ -4740,79 +4787,79 @@ msgstr "PM"
msgid "Error opening directory “%sâ€: %s"
msgstr "Errorea “%s†direktorioa irekitzean: %s"
-#: glib/gfileutils.c:737 glib/gfileutils.c:829
+#: glib/gfileutils.c:733 glib/gfileutils.c:825
#, c-format
msgid "Could not allocate %lu byte to read file “%sâ€"
msgid_plural "Could not allocate %lu bytes to read file “%sâ€"
msgstr[0] "Ezin izan da byte %lu esleitu “%s†fitxategia irakurtzeko"
msgstr[1] "Ezin izan dira %lu byte esleitu “%s†fitxategia irakurtzeko"
-#: glib/gfileutils.c:754
+#: glib/gfileutils.c:750
#, c-format
msgid "Error reading file “%sâ€: %s"
msgstr "Errorea “%s†fitxategia irakurtzean: %s"
-#: glib/gfileutils.c:790
+#: glib/gfileutils.c:786
#, c-format
msgid "File “%s†is too large"
msgstr "“%s†fitxategia handiegia da"
-#: glib/gfileutils.c:854
+#: glib/gfileutils.c:850
#, c-format
msgid "Failed to read from file “%sâ€: %s"
msgstr "Ezin izan da “%s†fitxategitik irakurri: %s"
-#: glib/gfileutils.c:904 glib/gfileutils.c:979 glib/gfileutils.c:1468
+#: glib/gfileutils.c:900 glib/gfileutils.c:975 glib/gfileutils.c:1447
#, c-format
msgid "Failed to open file “%sâ€: %s"
msgstr "Ezin izan da “%s†fitxategia ireki: %s"
-#: glib/gfileutils.c:917
+#: glib/gfileutils.c:913
#, c-format
msgid "Failed to get attributes of file “%sâ€: fstat() failed: %s"
msgstr "Ezin izan dira “%s†fitxategiko atributuak lortu, fstat() funtzioak huts egin du: %s"
-#: glib/gfileutils.c:948
+#: glib/gfileutils.c:944
#, c-format
msgid "Failed to open file “%sâ€: fdopen() failed: %s"
msgstr "Ezin izan da “%s†fitxategia ireki, fdopen() funtzioak huts egin du: %s"
-#: glib/gfileutils.c:1049
+#: glib/gfileutils.c:1045
#, c-format
msgid "Failed to rename file “%s†to “%sâ€: g_rename() failed: %s"
msgstr "Ezin izan da “%s†fitxategia “%s†gisa berrizendatu, g_rename() funtzioak huts egin du: %s"
-#: glib/gfileutils.c:1175
+#: glib/gfileutils.c:1154
#, c-format
msgid "Failed to write file “%sâ€: write() failed: %s"
msgstr "Huts egin du “%s†fitxategian idaztean: fwrite() funtzioak huts egin du: %s"
-#: glib/gfileutils.c:1196
+#: glib/gfileutils.c:1175
#, c-format
msgid "Failed to write file “%sâ€: fsync() failed: %s"
msgstr "Huts egin du “%s†fitxategia idaztean: fsync() funtzioak huts egin du: %s"
-#: glib/gfileutils.c:1357 glib/gfileutils.c:1772
+#: glib/gfileutils.c:1336 glib/gfileutils.c:1751
#, c-format
msgid "Failed to create file “%sâ€: %s"
msgstr "Ezin izan da “%s†fitxategia sortu: %s"
-#: glib/gfileutils.c:1402
+#: glib/gfileutils.c:1381
#, c-format
msgid "Existing file “%s†could not be removed: g_unlink() failed: %s"
msgstr "“%s†fitxategia ezin izan da kendu, g_unlik() funtzioak huts egin du: %s"
-#: glib/gfileutils.c:1737
+#: glib/gfileutils.c:1716
#, c-format
msgid "Template “%s†invalid, should not contain a “%sâ€"
msgstr "“%s†txantiloia baliogabea da, ez luke “%s†eduki behar"
-#: glib/gfileutils.c:1750
+#: glib/gfileutils.c:1729
#, c-format
msgid "Template “%s†doesn’t contain XXXXXX"
msgstr "“%s†txantiloiak ez dauka: XXXXXX"
-#: glib/gfileutils.c:2310 glib/gfileutils.c:2339
+#: glib/gfileutils.c:2289 glib/gfileutils.c:2318
#, c-format
msgid "Failed to read the symbolic link “%sâ€: %s"
msgstr "Ezin izan da “%s†esteka sinbolikorik irakurri: %s"
@@ -4838,101 +4885,101 @@ msgstr "Kanala karaktere partzial batean bukatzen da"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Ezin dira datu gordinak irakurri “g_io_channel_read_to_end“-etik"
-#: glib/gkeyfile.c:790
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "Ezin izan da baliozko gakoa datuen direktorioan aurkitu"
-#: glib/gkeyfile.c:827
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Ez da fitxategi arrunta"
-#: glib/gkeyfile.c:1282
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
msgstr "Gako-fitxategiak “%s†lerroa du, gako-balioa bikotea, taldea edo iruzkinik ez daukalarik"
#
-#: glib/gkeyfile.c:1339
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Taldearen izen baliogabea: %s"
-#: glib/gkeyfile.c:1361
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Gako-fitxategiak ez da talde batekin hasten"
#
-#: glib/gkeyfile.c:1387
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Gakoaren izen baliogabea: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Gakoaren izen baliogabea: %.*s"
-#: glib/gkeyfile.c:1414
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Gako-fitxategiak onartzen ez den “%s†kodeketa du"
-#: glib/gkeyfile.c:1663 glib/gkeyfile.c:1836 glib/gkeyfile.c:3289
-#: glib/gkeyfile.c:3353 glib/gkeyfile.c:3483 glib/gkeyfile.c:3615
-#: glib/gkeyfile.c:3761 glib/gkeyfile.c:3996 glib/gkeyfile.c:4063
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Gako-fitxategiak ez dauka “%s†taldea"
-#: glib/gkeyfile.c:1791
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Gako-fitxategiak ez dauka “%s†gakoa (“%s†taldean)"
-#: glib/gkeyfile.c:1953 glib/gkeyfile.c:2069
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "Gako-fitxategiak “%s†gakoa dauka (%s balioduna) baina ez da UTF-8"
-#: glib/gkeyfile.c:1973 glib/gkeyfile.c:2089 glib/gkeyfile.c:2531
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr "Gako-fitxategiak “%s†gakoa dauka, baina ezin den interpretatu balio bat dauka."
-#: glib/gkeyfile.c:2749 glib/gkeyfile.c:3118
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
"interpreted."
msgstr "Gako-fitxategiak “%s†gakoa dauka ('%s taldean), baina dagokion balioa ezin da interpretatu."
-#: glib/gkeyfile.c:2827 glib/gkeyfile.c:2904
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "“%2$s†taldeko “%1$s†gakoaren balioa “%3$s†da, “%4$s†izan ordez."
-#: glib/gkeyfile.c:4306
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Gako-fitxategiak ihes-karakterea dauka lerro amaieran"
-#: glib/gkeyfile.c:4328
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Gako-fitxategiak “%s†ihes-sekuentzia baliogabea dauka"
-#: glib/gkeyfile.c:4472
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "“%s†balioa ezin da zenbaki gisa interpretatu"
-#: glib/gkeyfile.c:4486
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "“%s†osoko balioa barrutitik kanpo"
-#: glib/gkeyfile.c:4519
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "“%s†balioa ezin da zenbaki mugikor gisa interpretatu."
-#: glib/gkeyfile.c:4558
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "“%s†balioa ezin da boolear gisa interpretatu"
@@ -5192,7 +5239,7 @@ msgstr "Errorea %s aukera analizatzean"
msgid "Missing argument for %s"
msgstr "%s(e)ko argumentua falta da"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "%s aukera ezezaguna"
@@ -5562,170 +5609,180 @@ msgstr "ihes-sekuentzi ezezaguna"
msgid "Error while parsing replacement text “%s†at char %lu: %s"
msgstr "Errorea ordezko “%s†testua analizatzean %lu karakterean: %s"
-#: glib/gshell.c:94
+#: glib/gshell.c:96
msgid "Quoted text doesn’t begin with a quotation mark"
msgstr "Komatxo arteko testua ez da komatxoekin hasten"
-#: glib/gshell.c:184
+#: glib/gshell.c:186
msgid "Unmatched quotation mark in command line or other shell-quoted text"
msgstr "Bat ez datozen komatxoak daude komando-lerroan edo shell-ak aipatutako beste testu batean"
-#: glib/gshell.c:580
+#: glib/gshell.c:592
#, c-format
msgid "Text ended just after a “\\†character. (The text was “%sâ€)"
msgstr "Testua “\\“ karakterearen atzetik amaitu da (testua “%s†zen)"
-#: glib/gshell.c:587
+#: glib/gshell.c:599
#, c-format
msgid "Text ended before matching quote was found for %c. (The text was “%sâ€)"
msgstr "Testua %c(r)en komatxoak aurkitu baino lehen amaitu da (testua “%s†zen)"
-#: glib/gshell.c:599
+#: glib/gshell.c:611
msgid "Text was empty (or contained only whitespace)"
msgstr "Testua hutsik dago (edo zuriuneak bakarrik ditu)"
-#: glib/gspawn.c:308
+#: glib/gspawn.c:310
#, c-format
msgid "Failed to read data from child process (%s)"
msgstr "Ezin izan da daturik irakurri prozesu umetik (%s)"
-#: glib/gspawn.c:458
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "Ustekabeko errorea datuak prozesu umetik irakurtzean (%s)"
-#: glib/gspawn.c:543
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Ustekabeko errorea waitpid()-en (%s)"
-#: glib/gspawn.c:1152 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1431
#, c-format
msgid "Child process exited with code %ld"
msgstr "Prozesu haurra amaitu da %ld kodearekin"
-#: glib/gspawn.c:1160
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Prozesu haurra %ld seinaleak hilda"
-#: glib/gspawn.c:1167
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Prozesu haurra %ld seinaleak geldituta"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Prozesu haurra ustekabean amaituta"
-#: glib/gspawn.c:1793 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Ezin izan da kanalizazio umetik irakurri (%s)"
-#: glib/gspawn.c:2095
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Ezin izan da “%s†prozesu haurra abiarazi (%s)"
-#: glib/gspawn.c:2212
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Ezin da sardetu (%s)"
-#: glib/gspawn.c:2372 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Ezin izan da “%s†direktoriora aldatu (%s)"
-#: glib/gspawn.c:2382
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Ezin izan da “%s†prozesu haurra exekutatu (%s)"
-#: glib/gspawn.c:2392
+#: glib/gspawn.c:2550
+#, c-format
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Huts egin du fitxategia irekitzeak fitxategi-deskribatzailea birmapatzeko (%s)"
+
+#: glib/gspawn.c:2558
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Ezin izan da prozesu haurraren irteera edo sarrera birbideratu (%s)"
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Huts egin du prozesu umerako fitxategi-deskribatzailea bikoizteak (%s)"
-#: glib/gspawn.c:2401
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Ezin izan da prozesu haurra sardetu (%s)"
-#: glib/gspawn.c:2409
+#: glib/gspawn.c:2575
+#, c-format
+msgid "Failed to close file descriptor for child process (%s)"
+msgstr "Huts egin du prozesu umerako fitxategi-deskribatzailea ixteak (%s)"
+
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Errore ezezaguna “%s†prozesu haurra exekutatzean"
-#: glib/gspawn.c:2433
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "Ezin izan da nahikoa datu irakurri pid kanalizazio umetik (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Ezin izan da daturik irakurri prozesu umetik"
-#: glib/gspawn-win32.c:311
-#, c-format
-msgid "Failed to create pipe for communicating with child process (%s)"
-msgstr "Ezin izan da kanalizazioa sortu prozesu haurrarekin komunikatzeko (%s)"
-
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Ezin izan da prozesu haurra exekutatu (%s)"
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Huts egin du dup() komandoak prozesu haurrean (%s)"
+
#
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Programaren izen baliogabea: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:800
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Kate baliogabea %d(e)ko bektorearen argumentuan: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:816
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Kate baliogabea ingurunean: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:796
#, c-format
msgid "Invalid working directory: %s"
msgstr "Laneko direktorio baliogabea: %s"
#
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:861
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Ezin izan da laguntza-programa exekutatu (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1089
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
msgstr "Ustekabeko errorea gertatu da 'g_io_channel_win32_poll()'-en prozesu umetik datuak irakurtzean"
-#: glib/gstrfuncs.c:3338 glib/gstrfuncs.c:3440
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Kate hutsa ez da zenbaki bat"
-#: glib/gstrfuncs.c:3362
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "“%s†ez da zeinudun zenbaki bat"
-#: glib/gstrfuncs.c:3372 glib/gstrfuncs.c:3476
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "“%s†zenbakia barrutitik kanpo [%s, %s]"
-#: glib/gstrfuncs.c:3466
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "“%s†ez da zeinurik gabeko zenbaki bat"
@@ -5778,183 +5835,183 @@ msgstr "‘%s’ URIa ez da URI absolutua"
msgid "URI ‘%s’ has no host component"
msgstr "‘%s’ URIak ez du ostalari-osagairik"
-#: glib/guri.c:1435
+#: glib/guri.c:1460
msgid "URI is not absolute, and no base URI was provided"
msgstr "URIa ez da absolutua eta ez da oinarrizko URIrik eman"
-#: glib/guri.c:2213
+#: glib/guri.c:2238
msgid "Missing ‘=’ and parameter value"
msgstr "‘=’ eta parametro-balioa falta dira"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Huts egin du memoria esleitzeak"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Karakterea UTF-8 barrutitik kanpo"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Sekuentzia baliogabea bihurketa-sarreran"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Karakterea UTF-16 barrutitik kanpo"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2727
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2729
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2731
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2733
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2735
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2737
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2741
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2743
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2745
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2747
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2749
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2751
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2755
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2757
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2759
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2761
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2763
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2765
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2769
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2771
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2773
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2775
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2777
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2779
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2813 glib/gutils.c:2930
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "byte %u"
msgstr[1] "%u byte"
-#: glib/gutils.c:2817
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -5962,7 +6019,7 @@ msgstr[0] "bit %u"
msgstr[1] "%u bit"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2884
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -5970,7 +6027,7 @@ msgstr[0] "byte %s"
msgstr[1] "%s byte"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2889
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -5982,32 +6039,32 @@ msgstr[1] "%s byte"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2943
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2948
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2953
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:2958
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:2963
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:2968
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
diff --git a/po/fa.po b/po/fa.po
index 7f5223951..5ff5e42d5 100644
--- a/po/fa.po
+++ b/po/fa.po
@@ -8,633 +8,937 @@
msgid ""
msgstr ""
"Project-Id-Version: glib HEAD\n"
-"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=glib&keywords=I18N+L10N&component=general\n"
-"POT-Creation-Date: 2012-02-19 14:27+0000\n"
-"PO-Revision-Date: 2012-02-25 01:05+0330\n"
-"Last-Translator: Arash Mousavi <mousavi.arash@gmail.com>\n"
+"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
+"POT-Creation-Date: 2021-07-19 15:52+0000\n"
+"PO-Revision-Date: 2021-09-27 18:46+0330\n"
+"Last-Translator: eshagh <eshagh094@gmail.com>\n"
"Language-Team: Persian <>\n"
"Language: fa\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
+"X-Generator: Poedit 3.0\n"
-#: ../gio/gbufferedinputstream.c:411
-#: ../gio/gbufferedinputstream.c:492
-#: ../gio/ginputstream.c:185
-#: ../gio/ginputstream.c:317
-#: ../gio/ginputstream.c:556
-#: ../gio/ginputstream.c:680
-#: ../gio/goutputstream.c:203
-#: ../gio/goutputstream.c:753
+#: gio/gapplication.c:500
+#, fuzzy
+#| msgid "Application Options:"
+msgid "GApplication options"
+msgstr "گزینه‌های برنامه:"
+
+#: gio/gapplication.c:500
+#, fuzzy
+#| msgid "Application Options:"
+msgid "Show GApplication options"
+msgstr "گزینه‌های برنامه:"
+
+#: gio/gapplication.c:545
+msgid "Enter GApplication service mode (use from D-Bus service files)"
+msgstr ""
+
+#: gio/gapplication.c:557
+msgid "Override the application’s ID"
+msgstr ""
+
+#: gio/gapplication.c:569
+msgid "Replace the running instance"
+msgstr ""
+
+#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227 gio/gresource-tool.c:494
+#: gio/gsettings-tool.c:572
+msgid "Print help"
+msgstr "چاپ راهنما"
+
+#: gio/gapplication-tool.c:47 gio/gresource-tool.c:495 gio/gresource-tool.c:563
+msgid "[COMMAND]"
+msgstr "[COMMAND]"
+
+#: gio/gapplication-tool.c:49 gio/gio-tool.c:228
+msgid "Print version"
+msgstr "چاپ نگارش"
+
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+msgid "Print version information and exit"
+msgstr ""
+
+#: gio/gapplication-tool.c:53
+msgid "List applications"
+msgstr "سیاههٔ برنامه‌ها"
+
+#: gio/gapplication-tool.c:54
+msgid "List the installed D-Bus activatable applications (by .desktop files)"
+msgstr ""
+
+#: gio/gapplication-tool.c:57
+msgid "Launch an application"
+msgstr "راه‌اندازی یک برنامه"
+
+#: gio/gapplication-tool.c:58
+msgid "Launch the application (with optional files to open)"
+msgstr ""
+
+#: gio/gapplication-tool.c:59
+msgid "APPID [FILE…]"
+msgstr ""
+
+#: gio/gapplication-tool.c:61
+msgid "Activate an action"
+msgstr ""
+
+#: gio/gapplication-tool.c:62
+msgid "Invoke an action on the application"
+msgstr ""
+
+#: gio/gapplication-tool.c:63
+msgid "APPID ACTION [PARAMETER]"
+msgstr ""
+
+#: gio/gapplication-tool.c:65
+msgid "List available actions"
+msgstr ""
+
+#: gio/gapplication-tool.c:66
+msgid "List static actions for an application (from .desktop file)"
+msgstr ""
+
+#: gio/gapplication-tool.c:67 gio/gapplication-tool.c:73
+msgid "APPID"
+msgstr ""
+
+#: gio/gapplication-tool.c:72 gio/gapplication-tool.c:135 gio/gdbus-tool.c:106 gio/gio-tool.c:224
+msgid "COMMAND"
+msgstr "COMMAND"
+
+#: gio/gapplication-tool.c:72
+msgid "The command to print detailed help for"
+msgstr ""
+
+#: gio/gapplication-tool.c:73
+msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
+msgstr ""
+
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738 gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:772 gio/gresource-tool.c:501 gio/gresource-tool.c:567
+msgid "FILE"
+msgstr "FILE"
+
+#: gio/gapplication-tool.c:74
+msgid "Optional relative or absolute filenames, or URIs to open"
+msgstr ""
+
+#: gio/gapplication-tool.c:75
+msgid "ACTION"
+msgstr "ACTION"
+
+#: gio/gapplication-tool.c:75
+#, fuzzy
+#| msgid "Destination name to monitor"
+msgid "The action name to invoke"
+msgstr "نام مقصد جهت پایش"
+
+#: gio/gapplication-tool.c:76
+msgid "PARAMETER"
+msgstr ""
+
+#: gio/gapplication-tool.c:76
+msgid "Optional parameter to the action invocation, in GVariant format"
+msgstr ""
+
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#, c-format
+msgid ""
+"Unknown command %s\n"
+"\n"
+msgstr ""
+"Ùرمان ناشناس %s\n"
+"\n"
+
+#: gio/gapplication-tool.c:103
+msgid "Usage:\n"
+msgstr "کارکرد:\n"
+
+#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557 gio/gsettings-tool.c:699
+msgid "Arguments:\n"
+msgstr "متغییرها:\n"
+
+#: gio/gapplication-tool.c:135 gio/gio-tool.c:224
+msgid "[ARGS…]"
+msgstr ""
+
+#: gio/gapplication-tool.c:136
+#, c-format
+msgid "Commands:\n"
+msgstr "دستورات:\n"
+
+#. Translators: do not translate 'help', but please translate 'COMMAND'.
+#: gio/gapplication-tool.c:148
+#, c-format
+msgid ""
+"Use “%s help COMMAND†to get detailed help.\n"
+"\n"
+msgstr ""
+
+#: gio/gapplication-tool.c:167
+#, c-format
+msgid ""
+"%s command requires an application id to directly follow\n"
+"\n"
+msgstr ""
+
+#: gio/gapplication-tool.c:173
+#, c-format
+msgid "invalid application id: “%sâ€\n"
+msgstr ""
+
+#. Translators: %s is replaced with a command name like 'list-actions'
+#: gio/gapplication-tool.c:184
+#, c-format
+msgid ""
+"“%s†takes no arguments\n"
+"\n"
+msgstr ""
+
+#: gio/gapplication-tool.c:268
+#, fuzzy, c-format
+#| msgid "Could not connect to %s: "
+msgid "unable to connect to D-Bus: %s\n"
+msgstr "نمی‌توان به %s متصل شد:"
+
+#: gio/gapplication-tool.c:288
+#, fuzzy, c-format
+#| msgid "Error sending message: %s"
+msgid "error sending %s message to application: %s\n"
+msgstr "خطا در هنگام ارسال پیام: %s"
+
+#: gio/gapplication-tool.c:319
+msgid "action name must be given after application id\n"
+msgstr ""
+
+#: gio/gapplication-tool.c:327
+#, c-format
+msgid ""
+"invalid action name: “%sâ€\n"
+"action names must consist of only alphanumerics, “-†and “.â€\n"
+msgstr ""
+
+#: gio/gapplication-tool.c:346
+#, fuzzy, c-format
+#| msgid "Error parsing parameter %d: %s\n"
+msgid "error parsing action parameter: %s\n"
+msgstr "خطا در تجزیه پارامتر %Id: %s\n"
+
+#: gio/gapplication-tool.c:358
+msgid "actions accept a maximum of one parameter\n"
+msgstr ""
+
+#: gio/gapplication-tool.c:413
+msgid "list-actions command takes only the application id"
+msgstr ""
+
+#: gio/gapplication-tool.c:423
+#, fuzzy, c-format
+#| msgid "Unable to find terminal required for application"
+msgid "unable to find desktop file for application %s\n"
+msgstr "نمی‌توان پایانه‌ی لازم برای این برنامه را پیدا کرد"
+
+#: gio/gapplication-tool.c:468
+#, fuzzy, c-format
+#| msgid ""
+#| "Unknown command %s\n"
+#| "\n"
+msgid ""
+"unrecognised command: %s\n"
+"\n"
+msgstr ""
+"Ùرمان ناشناس %s\n"
+"\n"
+
+#: gio/gbufferedinputstream.c:420 gio/gbufferedinputstream.c:498 gio/ginputstream.c:179
+#: gio/ginputstream.c:379 gio/ginputstream.c:648 gio/ginputstream.c:1050 gio/goutputstream.c:223
+#: gio/goutputstream.c:1049 gio/gpollableinputstream.c:205 gio/gpollableoutputstream.c:277
#, c-format
msgid "Too large count value passed to %s"
msgstr "مقدار شمارش بسیار بزرگی به %s ارسال شده است"
-#: ../gio/gbufferedinputstream.c:882
-#: ../gio/ginputstream.c:888
-#: ../gio/giostream.c:292
-#: ../gio/goutputstream.c:1228
+#: gio/gbufferedinputstream.c:891 gio/gbufferedoutputstream.c:575 gio/gdataoutputstream.c:562
+#, fuzzy
+#| msgid "Splice not supported"
+msgid "Seek not supported on base stream"
+msgstr "اتصال پشتیبانی نمی‌شود"
+
+#: gio/gbufferedinputstream.c:938
+msgid "Cannot truncate GBufferedInputStream"
+msgstr ""
+
+#: gio/gbufferedinputstream.c:983 gio/ginputstream.c:1239 gio/giostream.c:300 gio/goutputstream.c:2198
msgid "Stream is already closed"
msgstr "جریان از قبل بسته شده است"
-#: ../gio/gcancellable.c:318
-#: ../gio/gdbusconnection.c:1834
-#: ../gio/gdbusconnection.c:1925
-#: ../gio/gdbusconnection.c:2099
-#: ../gio/gdbusprivate.c:1413
-#: ../gio/glocalfile.c:2133
-#: ../gio/gsimpleasyncresult.c:810
-#: ../gio/gsimpleasyncresult.c:836
+#: gio/gbufferedoutputstream.c:612 gio/gdataoutputstream.c:592
+#, fuzzy
+#| msgid "Trash not supported"
+msgid "Truncate not supported on base stream"
+msgstr "زباله پشتیبانی نمی‌شود"
+
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1872 gio/gdbusprivate.c:1416 gio/gsimpleasyncresult.c:871
+#: gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
msgstr "عملیات لغو شده"
-#: ../gio/gcharsetconverter.c:263
+#: gio/gcharsetconverter.c:260
msgid "Invalid object, not initialized"
msgstr "شیء نامعتبر، مقدار دهی اولیه نشد"
-#: ../gio/gcharsetconverter.c:284
-#: ../gio/gcharsetconverter.c:312
+#: gio/gcharsetconverter.c:281 gio/gcharsetconverter.c:309
#, fuzzy
msgid "Incomplete multibyte sequence in input"
msgstr "دنبالهٔ بایتی نامعتبر در ورودی تبدیل"
-#: ../gio/gcharsetconverter.c:318
-#: ../gio/gcharsetconverter.c:327
+#: gio/gcharsetconverter.c:315 gio/gcharsetconverter.c:324
msgid "Not enough space in destination"
msgstr "Ùضا کاÙÛŒ در مقصد وجود ندارد"
-#: ../gio/gcharsetconverter.c:345
-#: ../gio/gdatainputstream.c:854
-#: ../gio/gdatainputstream.c:1294
-#: ../glib/gconvert.c:767
-#: ../glib/gconvert.c:1159
-#: ../glib/giochannel.c:1583
-#: ../glib/giochannel.c:1625
-#: ../glib/giochannel.c:2468
-#: ../glib/gutf8.c:841
-#: ../glib/gutf8.c:1292
+#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848 gio/gdatainputstream.c:1266 glib/gconvert.c:449
+#: glib/gconvert.c:879 glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470 glib/gutf8.c:875
+#: glib/gutf8.c:1328
msgid "Invalid byte sequence in conversion input"
msgstr "دنبالهٔ بایتی نامعتبر در ورودی تبدیل"
-#: ../gio/gcharsetconverter.c:350
-#: ../glib/gconvert.c:775
-#: ../glib/gconvert.c:1084
-#: ../glib/giochannel.c:1590
-#: ../glib/giochannel.c:2480
+#: gio/gcharsetconverter.c:347 glib/gconvert.c:457 glib/gconvert.c:793 glib/giochannel.c:1580
+#: glib/giochannel.c:2482
#, c-format
msgid "Error during conversion: %s"
msgstr "خطا در حین تبدیل: %s"
-#: ../gio/gcharsetconverter.c:447
-#: ../gio/gsocket.c:953
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
msgid "Cancellable initialization not supported"
msgstr "مقداردهی‌های اولیه‌ی قابل لغو پشتیبانی نمی‌شود"
-#: ../gio/gcharsetconverter.c:458
-#: ../glib/gconvert.c:567
-#: ../glib/gconvert.c:645
-#: ../glib/giochannel.c:1411
-#, c-format
-msgid "Conversion from character set '%s' to '%s' is not supported"
+#: gio/gcharsetconverter.c:456 glib/gconvert.c:322 glib/giochannel.c:1401
+#, fuzzy, c-format
+#| msgid "Conversion from character set '%s' to '%s' is not supported"
+msgid "Conversion from character set “%s†to “%s†is not supported"
msgstr "تبدیل از مجموعه‌نویسهٔ «%s» به «%s» پشتیبانی نمی‌شود"
-#: ../gio/gcharsetconverter.c:462
-#: ../glib/gconvert.c:571
-#: ../glib/gconvert.c:649
-#, c-format
-msgid "Could not open converter from '%s' to '%s'"
+#: gio/gcharsetconverter.c:460 glib/gconvert.c:326
+#, fuzzy, c-format
+#| msgid "Could not open converter from '%s' to '%s'"
+msgid "Could not open converter from “%s†to “%sâ€"
msgstr "نمی‌توان مبدل «%s» به «%s» را باز کرد"
-#: ../gio/gcontenttype.c:180
+#: gio/gcontenttype.c:454
+#, c-format
+msgid "%s type"
+msgstr "نوع %s"
+
+#: gio/gcontenttype-win32.c:192
msgid "Unknown type"
msgstr "نوع نامعلوم"
-#: ../gio/gcontenttype.c:181
+#: gio/gcontenttype-win32.c:194
#, c-format
msgid "%s filetype"
msgstr "نوع پرونده %s"
-#: ../gio/gcontenttype.c:680
-#, c-format
-msgid "%s type"
-msgstr "نوع %s"
+#: gio/gcredentials.c:323
+msgid "GCredentials contains invalid data"
+msgstr ""
-#: ../gio/gcredentials.c:273
-#: ../gio/gcredentials.c:495
+#: gio/gcredentials.c:383 gio/gcredentials.c:667
msgid "GCredentials is not implemented on this OS"
msgstr "بر روی این سیستم عامل GCredentials توسعه داده نشده است"
-#: ../gio/gcredentials.c:447
+#: gio/gcredentials.c:538 gio/gcredentials.c:556
msgid "There is no GCredentials support for your platform"
msgstr "پشتیبانی از GCredentials در پلتÙرم شما وجود ندارد"
-#: ../gio/gdatainputstream.c:311
+#: gio/gcredentials.c:607
+#, fuzzy
+#| msgid "GCredentials is not implemented on this OS"
+msgid "GCredentials does not contain a process ID on this OS"
+msgstr "بر روی این سیستم عامل GCredentials توسعه داده نشده است"
+
+#: gio/gcredentials.c:661
+#, fuzzy
+#| msgid "GCredentials is not implemented on this OS"
+msgid "Credentials spoofing is not possible on this OS"
+msgstr "بر روی این سیستم عامل GCredentials توسعه داده نشده است"
+
+#: gio/gdatainputstream.c:304
msgid "Unexpected early end-of-stream"
msgstr ""
-#: ../gio/gdbusaddress.c:142
-#: ../gio/gdbusaddress.c:230
-#: ../gio/gdbusaddress.c:311
+#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
#, c-format
-msgid "Unsupported key '%s' in address entry '%s'"
+msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr ""
-#: ../gio/gdbusaddress.c:169
+#: gio/gdbusaddress.c:172
#, c-format
-msgid "Address '%s' is invalid (need exactly one of path, tmpdir or abstract keys)"
+msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr ""
-#: ../gio/gdbusaddress.c:182
+#: gio/gdbusaddress.c:181
#, c-format
-msgid "Meaningless key/value pair combination in address entry '%s'"
+msgid "Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract keys)"
msgstr ""
-#: ../gio/gdbusaddress.c:245
-#: ../gio/gdbusaddress.c:326
+#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274 gio/gdbusaddress.c:337
+#: gio/gdbusaddress.c:348
#, c-format
-msgid "Error in address '%s' - the port attribute is malformed"
+msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr ""
-#: ../gio/gdbusaddress.c:256
-#: ../gio/gdbusaddress.c:337
+#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
#, c-format
-msgid "Error in address '%s' - the family attribute is malformed"
+msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr ""
-#: ../gio/gdbusaddress.c:446
+#: gio/gdbusaddress.c:462
#, c-format
-msgid "Address element '%s', does not contain a colon (:)"
+msgid "Address element “%s†does not contain a colon (:)"
msgstr ""
-#: ../gio/gdbusaddress.c:467
+#: gio/gdbusaddress.c:471
#, c-format
-msgid "Key/Value pair %d, '%s', in address element '%s', does not contain an equal sign"
+msgid "Transport name in address element “%s†must not be empty"
msgstr ""
-#: ../gio/gdbusaddress.c:481
+#: gio/gdbusaddress.c:492
#, c-format
-msgid "Error unescaping key or value in Key/Value pair %d, '%s', in address element '%s'"
+msgid "Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal sign"
msgstr ""
-#: ../gio/gdbusaddress.c:559
+#: gio/gdbusaddress.c:503
#, c-format
-msgid "Error in address '%s' - the unix transport requires exactly one of the keys 'path' or 'abstract' to be set"
+msgid "Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
msgstr ""
-#: ../gio/gdbusaddress.c:595
+#: gio/gdbusaddress.c:517
#, c-format
-msgid "Error in address '%s' - the host attribute is missing or malformed"
+msgid "Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element “%sâ€"
msgstr ""
-#: ../gio/gdbusaddress.c:609
+#: gio/gdbusaddress.c:589
#, c-format
-msgid "Error in address '%s' - the port attribute is missing or malformed"
+msgid ""
+"Error in address “%s†— the unix transport requires exactly one of the keys “path†or “abstract†to be set"
msgstr ""
-#: ../gio/gdbusaddress.c:623
+#: gio/gdbusaddress.c:625
#, c-format
-msgid "Error in address '%s' - the noncefile attribute is missing or malformed"
+msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr ""
-#: ../gio/gdbusaddress.c:644
-msgid "Error auto-launching: "
-msgstr "خطا در اجرا خودکار:"
-
-#: ../gio/gdbusaddress.c:652
+#: gio/gdbusaddress.c:639
#, c-format
-msgid "Unknown or unsupported transport '%s' for address '%s'"
+msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr ""
-#: ../gio/gdbusaddress.c:688
+#: gio/gdbusaddress.c:653
#, c-format
-msgid "Error opening nonce file '%s': %s"
+msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
+msgstr ""
+
+#: gio/gdbusaddress.c:674
+msgid "Error auto-launching: "
+msgstr "خطا در راه‌اندازی خودکار: "
+
+#: gio/gdbusaddress.c:727
+#, fuzzy, c-format
+#| msgid "Error opening nonce file '%s': %s"
+msgid "Error opening nonce file “%sâ€: %s"
msgstr "خطا در بازکردن پرونده Ùعلی «‎%s»â€: %s"
-#: ../gio/gdbusaddress.c:706
-#, c-format
-msgid "Error reading from nonce file '%s': %s"
+#: gio/gdbusaddress.c:746
+#, fuzzy, c-format
+#| msgid "Error reading from nonce file '%s': %s"
+msgid "Error reading from nonce file “%sâ€: %s"
msgstr "خطا در خواندن از پروندهٔ Ùعلی «‎%s»â€: %s"
-#: ../gio/gdbusaddress.c:715
-#, c-format
-msgid "Error reading from nonce file '%s', expected 16 bytes, got %d"
+#: gio/gdbusaddress.c:755
+#, fuzzy, c-format
+#| msgid "Error reading from nonce file '%s', expected 16 bytes, got %d"
+msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr "خطا در خواندن از پروندهٔ Ùعلی «‎%s»â€ØŒ انتظار Û±Û¶ بایت می‌رÙت ولی %Id دریاÙت شد"
-#: ../gio/gdbusaddress.c:733
+#: gio/gdbusaddress.c:773
#, fuzzy, c-format
-msgid "Error writing contents of nonce file '%s' to stream:"
+msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "خطا در خواندن پروندهٔ «‎%s»â€: %s"
-#: ../gio/gdbusaddress.c:951
+#: gio/gdbusaddress.c:988
msgid "The given address is empty"
msgstr "آدرس داده شده خالی است"
-#: ../gio/gdbusaddress.c:1020
-msgid "Cannot spawn a message bus without a machine-id: "
+#: gio/gdbusaddress.c:1101
+#, c-format
+msgid "Cannot spawn a message bus when setuid"
msgstr ""
-#: ../gio/gdbusaddress.c:1057
-#, fuzzy, c-format
-msgid "Error spawning command line '%s': "
-msgstr "خطا در خواندن پروندهٔ «‎%s»â€: %s"
-
-#: ../gio/gdbusaddress.c:1068
-#, c-format
-msgid "Abnormal program termination spawning command line '%s': %s"
+#: gio/gdbusaddress.c:1108
+msgid "Cannot spawn a message bus without a machine-id: "
msgstr ""
-#: ../gio/gdbusaddress.c:1082
+#: gio/gdbusaddress.c:1115
#, c-format
-msgid "Command line '%s' exited with non-zero exit status %d: %s"
+msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr ""
-#: ../gio/gdbusaddress.c:1155
+#: gio/gdbusaddress.c:1157
+#, fuzzy, c-format
+msgid "Error spawning command line “%sâ€: "
+msgstr "خطا در خواندن پروندهٔ «‎%s»â€: %s"
+
+#: gio/gdbusaddress.c:1226
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
-#: ../gio/gdbusaddress.c:1254
-#: ../gio/gdbusconnection.c:6688
+#: gio/gdbusaddress.c:1397 gio/gdbusconnection.c:7261
#, c-format
-msgid "Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable - unknown value '%s'"
+msgid "Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable — unknown value “%sâ€"
msgstr ""
-#: ../gio/gdbusaddress.c:1263
-#: ../gio/gdbusconnection.c:6697
+#: gio/gdbusaddress.c:1406 gio/gdbusconnection.c:7270
msgid "Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment variable is not set"
msgstr ""
-#: ../gio/gdbusaddress.c:1273
+#: gio/gdbusaddress.c:1416
#, fuzzy, c-format
msgid "Unknown bus type %d"
msgstr "گزینهٔ نامعلوم %s"
-#: ../gio/gdbusauth.c:287
+#: gio/gdbusauth.c:294
msgid "Unexpected lack of content trying to read a line"
msgstr ""
-#: ../gio/gdbusauth.c:331
+#: gio/gdbusauth.c:338
msgid "Unexpected lack of content trying to (safely) read a line"
msgstr ""
-#: ../gio/gdbusauth.c:502
+#: gio/gdbusauth.c:482
#, c-format
msgid "Exhausted all available authentication mechanisms (tried: %s) (available: %s)"
msgstr ""
-#: ../gio/gdbusauth.c:1158
+#: gio/gdbusauth.c:1171
+msgid "User IDs must be the same for peer and server"
+msgstr ""
+
+#: gio/gdbusauth.c:1183
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:266
-#, c-format
-msgid "Error when getting information for directory '%s': %s"
+#: gio/gdbusauthmechanismsha1.c:298
+#, fuzzy, c-format
+#| msgid "Error when getting information for directory '%s': %s"
+msgid "Error when getting information for directory “%sâ€: %s"
msgstr "خطا در هنگام گرÙتن اطلاعات برای شاخه «%s»: %s"
-#: ../gio/gdbusauthmechanismsha1.c:278
+#: gio/gdbusauthmechanismsha1.c:313
#, c-format
-msgid "Permissions on directory '%s' are malformed. Expected mode 0700, got 0%o"
+msgid "Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:299
-#, c-format
-msgid "Error creating directory '%s': %s"
+#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#, fuzzy, c-format
+#| msgid "Error creating directory '%s': %s"
+msgid "Error creating directory “%sâ€: %s"
msgstr "خطا در هنگام ساخت شاخه «%s»: %s"
-#: ../gio/gdbusauthmechanismsha1.c:382
-#, c-format
-msgid "Error opening keyring '%s' for reading: "
+#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300 gio/gfile.c:1438 gio/gfile.c:1676
+#: gio/gfile.c:1731 gio/gfile.c:1789 gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
+#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572 gio/gfile.c:4983 gio/gfile.c:5068
+#: gio/gfile.c:5158 gio/gfile.c:5255 gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
+#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+msgid "Operation not supported"
+msgstr "عملیات پشتیبانی نمی‌شود"
+
+#: gio/gdbusauthmechanismsha1.c:402
+#, fuzzy, c-format
+#| msgid "Error opening keyring '%s' for reading: "
+msgid "Error opening keyring “%s†for reading: "
msgstr "خطا در هنگام باز کردن دسته‌کلید «%s» برای خواندن: "
-#: ../gio/gdbusauthmechanismsha1.c:406
-#: ../gio/gdbusauthmechanismsha1.c:718
+#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
#, c-format
-msgid "Line %d of the keyring at '%s' with content '%s' is malformed"
+msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:420
-#: ../gio/gdbusauthmechanismsha1.c:732
+#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
#, c-format
-msgid "First token of line %d of the keyring at '%s' with content '%s' is malformed"
+msgid "First token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:435
-#: ../gio/gdbusauthmechanismsha1.c:746
+#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
#, c-format
-msgid "Second token of line %d of the keyring at '%s' with content '%s' is malformed"
+msgid "Second token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:459
+#: gio/gdbusauthmechanismsha1.c:477
#, c-format
-msgid "Didn't find cookie with id %d in the keyring at '%s'"
+msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr ""
-#: ../gio/gdbusauthmechanismsha1.c:536
+#: gio/gdbusauthmechanismsha1.c:523
#, fuzzy, c-format
-msgid "Error deleting stale lock file '%s': %s"
-msgstr "خطا در خواندن پروندهٔ «‎%s»â€: %s"
-
-#: ../gio/gdbusauthmechanismsha1.c:568
-#, c-format
-msgid "Error creating lock file '%s': %s"
+#| msgid "Error creating lock file '%s': %s"
+msgid "Error creating lock file “%sâ€: %s"
msgstr "خطا در هنگام ساخت پرونده Ù‚ÙÙ„ «%s»: %s"
-#: ../gio/gdbusauthmechanismsha1.c:598
+#: gio/gdbusauthmechanismsha1.c:587
#, fuzzy, c-format
-msgid "Error closing (unlinked) lock file '%s': %s"
+msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "خطا در خواندن پروندهٔ «‎%s»â€: %s"
-#: ../gio/gdbusauthmechanismsha1.c:608
-#, c-format
-msgid "Error unlinking lock file '%s': %s"
+#: gio/gdbusauthmechanismsha1.c:626
+#, fuzzy, c-format
+msgid "Error closing (unlinked) lock file “%sâ€: %s"
+msgstr "خطا در خواندن پروندهٔ «‎%s»â€: %s"
+
+#: gio/gdbusauthmechanismsha1.c:637
+#, fuzzy, c-format
+#| msgid "Error unlinking lock file '%s': %s"
+msgid "Error unlinking lock file “%sâ€: %s"
msgstr "خطا در هنگام شکستن پیوند پرونده‌ی Ù‚ÙÙ„ «%s»: %s"
-#: ../gio/gdbusauthmechanismsha1.c:685
-#, c-format
-msgid "Error opening keyring '%s' for writing: "
+#: gio/gdbusauthmechanismsha1.c:714
+#, fuzzy, c-format
+#| msgid "Error opening keyring '%s' for writing: "
+msgid "Error opening keyring “%s†for writing: "
msgstr "خطا در هنگام باز کردن دسته‌کلید «%s» برای نوشتن: "
-#: ../gio/gdbusauthmechanismsha1.c:882
+#: gio/gdbusauthmechanismsha1.c:908
#, c-format
-msgid "(Additionally, releasing the lock for '%s' also failed: %s) "
+msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr ""
-#: ../gio/gdbusconnection.c:594
-#: ../gio/gdbusconnection.c:2402
+#: gio/gdbusconnection.c:603 gio/gdbusconnection.c:2417
msgid "The connection is closed"
msgstr "اتصال بسته شده است"
-#: ../gio/gdbusconnection.c:1879
+#: gio/gdbusconnection.c:1902
msgid "Timeout was reached"
msgstr ""
-#: ../gio/gdbusconnection.c:2524
+#: gio/gdbusconnection.c:2540
msgid "Unsupported flags encountered when constructing a client-side connection"
msgstr ""
-#: ../gio/gdbusconnection.c:4026
-#: ../gio/gdbusconnection.c:4342
+#: gio/gdbusconnection.c:4189 gio/gdbusconnection.c:4536
#, c-format
-msgid "No such interface 'org.freedesktop.DBus.Properties' on object at path %s"
+msgid "No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr ""
-#: ../gio/gdbusconnection.c:4097
-#, c-format
-msgid "Error setting property '%s': Expected type '%s' but got '%s'"
-msgstr ""
-
-#: ../gio/gdbusconnection.c:4192
-#, c-format
-msgid "No such property '%s'"
+#: gio/gdbusconnection.c:4331
+#, fuzzy, c-format
+#| msgid "No such property '%s'"
+msgid "No such property “%sâ€"
msgstr "همچین خصیصه‌ای وجود ندارد «%s»"
-#: ../gio/gdbusconnection.c:4204
-#, c-format
-msgid "Property '%s' is not readable"
+#: gio/gdbusconnection.c:4343
+#, fuzzy, c-format
+#| msgid "Property '%s' is not readable"
+msgid "Property “%s†is not readable"
msgstr "خصیصه‌ی «%s» خواندنی نیست"
-#: ../gio/gdbusconnection.c:4215
-#, c-format
-msgid "Property '%s' is not writable"
+#: gio/gdbusconnection.c:4354
+#, fuzzy, c-format
+#| msgid "Property '%s' is not writable"
+msgid "Property “%s†is not writable"
msgstr "خصیصه‌ی «%s» قابل نوشتن نیست"
-#: ../gio/gdbusconnection.c:4285
-#: ../gio/gdbusconnection.c:6131
+#: gio/gdbusconnection.c:4374
#, c-format
-msgid "No such interface '%s'"
+msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
-#: ../gio/gdbusconnection.c:4469
-msgid "No such interface"
+#: gio/gdbusconnection.c:4479 gio/gdbusconnection.c:4687 gio/gdbusconnection.c:6689
+#, c-format
+msgid "No such interface “%sâ€"
msgstr ""
-#: ../gio/gdbusconnection.c:4690
-#: ../gio/gdbusconnection.c:6637
+#: gio/gdbusconnection.c:4905 gio/gdbusconnection.c:7201
#, c-format
-msgid "No such interface '%s' on object at path %s"
+msgid "No such interface “%s†on object at path %s"
msgstr ""
-#: ../gio/gdbusconnection.c:4742
-#, c-format
-msgid "No such method '%s'"
+#: gio/gdbusconnection.c:5003
+#, fuzzy, c-format
+#| msgid "No such method '%s'"
+msgid "No such method “%sâ€"
msgstr "همچین متدی وجود ندارد «%s»"
-#: ../gio/gdbusconnection.c:4773
-#, c-format
-msgid "Type of message, '%s', does not match expected type '%s'"
+#: gio/gdbusconnection.c:5034
+#, fuzzy, c-format
+#| msgid "Type of message, '%s', does not match expected type '%s'"
+msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "نوع پیام، «%s»، با نوع مورد انتظار مطابقت ندارد «%s»"
-#: ../gio/gdbusconnection.c:4993
+#: gio/gdbusconnection.c:5237
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "یک شیء از قبل برای واسط %s در %s صادر شده است"
-#: ../gio/gdbusconnection.c:5191
+#: gio/gdbusconnection.c:5463
+#, fuzzy, c-format
+#| msgid "Unable to create socket: %s"
+msgid "Unable to retrieve property %s.%s"
+msgstr "نمی‌توان سوکت را ساخت: %s"
+
+#: gio/gdbusconnection.c:5519
+#, fuzzy, c-format
+#| msgid "Unable to create socket: %s"
+msgid "Unable to set property %s.%s"
+msgstr "نمی‌توان سوکت را ساخت: %s"
+
+#: gio/gdbusconnection.c:5698
#, c-format
-msgid "Method '%s' returned type '%s', but expected '%s'"
+msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr ""
-#: ../gio/gdbusconnection.c:6242
+#: gio/gdbusconnection.c:6800
#, c-format
-msgid "Method '%s' on interface '%s' with signature '%s' does not exist"
+msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr ""
-#: ../gio/gdbusconnection.c:6361
+#: gio/gdbusconnection.c:6921
#, c-format
msgid "A subtree is already exported for %s"
msgstr ""
-#: ../gio/gdbusmessage.c:859
+#: gio/gdbusconnection.c:7209
+#, c-format
+msgid "Object does not exist at path “%sâ€"
+msgstr ""
+
+#: gio/gdbusmessage.c:1266
msgid "type is INVALID"
msgstr "نوع INVALID است"
-#: ../gio/gdbusmessage.c:870
+#: gio/gdbusmessage.c:1277
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr ""
-#: ../gio/gdbusmessage.c:881
+#: gio/gdbusmessage.c:1288
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr ""
-#: ../gio/gdbusmessage.c:893
+#: gio/gdbusmessage.c:1300
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr ""
-#: ../gio/gdbusmessage.c:906
+#: gio/gdbusmessage.c:1313
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr ""
-#: ../gio/gdbusmessage.c:914
+#: gio/gdbusmessage.c:1321
msgid "SIGNAL message: The PATH header field is using the reserved value /org/freedesktop/DBus/Local"
msgstr ""
-#: ../gio/gdbusmessage.c:922
+#: gio/gdbusmessage.c:1329
msgid "SIGNAL message: The INTERFACE header field is using the reserved value org.freedesktop.DBus.Local"
msgstr ""
-#: ../gio/gdbusmessage.c:998
+#: gio/gdbusmessage.c:1377 gio/gdbusmessage.c:1437
#, c-format
-msgid "Wanted to read %lu byte but got EOF"
-msgid_plural "Wanted to read %lu bytes but got EOF"
+msgid "Wanted to read %lu byte but only got %lu"
+msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] ""
msgstr[1] ""
-#: ../gio/gdbusmessage.c:1025
+#: gio/gdbusmessage.c:1391
#, c-format
-msgid "Expected valid UTF-8 string but found invalid bytes at byte offset %d (length of string is %d). The valid UTF-8 string up until that point was '%s'"
+msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr ""
-#: ../gio/gdbusmessage.c:1038
+#: gio/gdbusmessage.c:1410
#, c-format
-msgid "Expected NUL byte after the string '%s' but found byte %d"
+msgid ""
+"Expected valid UTF-8 string but found invalid bytes at byte offset %d (length of string is %d). The valid "
+"UTF-8 string up until that point was “%sâ€"
msgstr ""
-#: ../gio/gdbusmessage.c:1242
-#, c-format
-msgid "Parsed value '%s' is not a valid D-Bus object path"
+#: gio/gdbusmessage.c:1474 gio/gdbusmessage.c:1722 gio/gdbusmessage.c:1911
+msgid "Value nested too deeply"
msgstr ""
-#: ../gio/gdbusmessage.c:1268
+#: gio/gdbusmessage.c:1620
+#, fuzzy, c-format
+#| msgid "Error: %s is not a valid object path\n"
+msgid "Parsed value “%s†is not a valid D-Bus object path"
+msgstr "خطا: %s یک مسیر شیء معتبر نیست\n"
+
+#: gio/gdbusmessage.c:1642
#, c-format
-msgid "Parsed value '%s' is not a valid D-Bus signature"
+msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr ""
-#: ../gio/gdbusmessage.c:1324
+#: gio/gdbusmessage.c:1689
#, c-format
msgid "Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
msgid_plural "Encountered array of length %u bytes. Maximum length is 2<<26 bytes (64 MiB)."
msgstr[0] ""
msgstr[1] ""
-#: ../gio/gdbusmessage.c:1490
+#: gio/gdbusmessage.c:1709
#, c-format
-msgid "Parsed value '%s' for variant is not a valid D-Bus signature"
+msgid ""
+"Encountered array of type “a%câ€, expected to have a length a multiple of %u bytes, but found to be %u "
+"bytes in length"
msgstr ""
-#: ../gio/gdbusmessage.c:1517
+#: gio/gdbusmessage.c:1895
#, c-format
-msgid "Error deserializing GVariant with type string '%s' from the D-Bus wire format"
+msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr ""
-#: ../gio/gdbusmessage.c:1705
+#: gio/gdbusmessage.c:1936
#, c-format
-msgid "Invalid endianness value. Expected 0x6c ('l') or 0x42 ('B') but found value 0x%02x"
+msgid "Error deserializing GVariant with type string “%s†from the D-Bus wire format"
msgstr ""
-#: ../gio/gdbusmessage.c:1719
+#: gio/gdbusmessage.c:2121
+#, c-format
+msgid "Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value 0x%02x"
+msgstr ""
+
+#: gio/gdbusmessage.c:2134
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr ""
-#: ../gio/gdbusmessage.c:1776
+#: gio/gdbusmessage.c:2188 gio/gdbusmessage.c:2784
+msgid "Signature header found but is not of type signature"
+msgstr ""
+
+#: gio/gdbusmessage.c:2200
#, c-format
-msgid "Signature header with signature '%s' found but message body is empty"
+msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
-#: ../gio/gdbusmessage.c:1790
+#: gio/gdbusmessage.c:2215
#, c-format
-msgid "Parsed value '%s' is not a valid D-Bus signature (for body)"
+msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr ""
-#: ../gio/gdbusmessage.c:1821
+#: gio/gdbusmessage.c:2247
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
msgstr[0] ""
msgstr[1] ""
-#: ../gio/gdbusmessage.c:1831
+#: gio/gdbusmessage.c:2257
msgid "Cannot deserialize message: "
msgstr ""
-#: ../gio/gdbusmessage.c:2163
+#: gio/gdbusmessage.c:2601
#, c-format
-msgid "Error serializing GVariant with type string '%s' to the D-Bus wire format"
+msgid "Error serializing GVariant with type string “%s†to the D-Bus wire format"
msgstr ""
-#: ../gio/gdbusmessage.c:2304
+#: gio/gdbusmessage.c:2738
#, c-format
-msgid "Message has %d file descriptors but the header field indicates %d file descriptors"
+msgid "Number of file descriptors in message (%d) differs from header field (%d)"
msgstr ""
-#: ../gio/gdbusmessage.c:2312
+#: gio/gdbusmessage.c:2746
msgid "Cannot serialize message: "
msgstr ""
-#: ../gio/gdbusmessage.c:2356
+#: gio/gdbusmessage.c:2799
#, c-format
-msgid "Message body has signature '%s' but there is no signature header"
+msgid "Message body has signature “%s†but there is no signature header"
msgstr ""
-#: ../gio/gdbusmessage.c:2366
+#: gio/gdbusmessage.c:2809
#, c-format
-msgid "Message body has type signature '%s' but signature in the header field is '%s'"
+msgid "Message body has type signature “%s†but signature in the header field is “%sâ€"
msgstr ""
-#: ../gio/gdbusmessage.c:2382
+#: gio/gdbusmessage.c:2825
#, c-format
-msgid "Message body is empty but signature in the header field is '(%s)'"
+msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr ""
-#: ../gio/gdbusmessage.c:2939
-#, c-format
-msgid "Error return with body of type '%s'"
+#: gio/gdbusmessage.c:3380
+#, fuzzy, c-format
+#| msgid "Error return with body of type '%s'"
+msgid "Error return with body of type “%sâ€"
msgstr "خطا در بازگردانی با بدنه‌ای از نوع «%s»"
-#: ../gio/gdbusmessage.c:2947
+#: gio/gdbusmessage.c:3388
msgid "Error return with empty body"
msgstr ""
-#: ../gio/gdbusprivate.c:2065
-msgid "Unable to load /var/lib/dbus/machine-id or /etc/machine-id: "
+#: gio/gdbusprivate.c:2246
+#, c-format
+msgid "(Type any character to close this window)\n"
msgstr ""
-#: ../gio/gdbusproxy.c:1624
+#: gio/gdbusprivate.c:2420
+#, c-format
+msgid "Session dbus not running, and autolaunch failed"
+msgstr ""
+
+#: gio/gdbusprivate.c:2443
+#, fuzzy, c-format
+#| msgid "Unable to trash file: %s"
+msgid "Unable to get Hardware profile: %s"
+msgstr "نمی‌توان پرونده را به زباله‌دان Ùرستاد: %s"
+
+#. Translators: Both placeholders are file paths
+#: gio/gdbusprivate.c:2494
+#, fuzzy, c-format
+#| msgid "Unable to create trash dir %s: %s"
+msgid "Unable to load %s or %s: "
+msgstr "نمی‌توان شاخه زباله‌دان %s را ساخت: %s"
+
+#: gio/gdbusproxy.c:1569
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr ""
-#: ../gio/gdbusproxy.c:1645
+#: gio/gdbusproxy.c:1592
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr ""
-#: ../gio/gdbusproxy.c:2726
-#: ../gio/gdbusproxy.c:2860
-msgid "Cannot invoke method; proxy is for a well-known name without an owner and proxy was constructed with the G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START flag"
+#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#, c-format
+msgid ""
+"Cannot invoke method; proxy is for the well-known name %s without an owner, and proxy was constructed "
+"with the G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START flag"
msgstr ""
-#: ../gio/gdbusserver.c:708
+#: gio/gdbusserver.c:767
#, fuzzy
-msgid "Abstract name space not supported"
+msgid "Abstract namespace not supported"
msgstr "پیوندهای نمادی پشتیبانی نمی‌شوند"
-#: ../gio/gdbusserver.c:795
+#: gio/gdbusserver.c:860
msgid "Cannot specify nonce file when creating a server"
msgstr ""
-#: ../gio/gdbusserver.c:872
+#: gio/gdbusserver.c:942
#, fuzzy, c-format
-msgid "Error writing nonce file at '%s': %s"
+msgid "Error writing nonce file at “%sâ€: %s"
msgstr "خطا در خواندن پروندهٔ «‎%s»â€: %s"
-#: ../gio/gdbusserver.c:1038
+#: gio/gdbusserver.c:1117
#, c-format
-msgid "The string '%s' is not a valid D-Bus GUID"
+msgid "The string “%s†is not a valid D-Bus GUID"
msgstr ""
-#: ../gio/gdbusserver.c:1078
+#: gio/gdbusserver.c:1157
#, c-format
-msgid "Cannot listen on unsupported transport '%s'"
+msgid "Cannot listen on unsupported transport “%sâ€"
msgstr ""
-#: ../gio/gdbus-tool.c:88
-msgid "COMMAND"
-msgstr "COMMAND"
-
-#: ../gio/gdbus-tool.c:93
+#: gio/gdbus-tool.c:111
#, c-format
msgid ""
"Commands:\n"
@@ -643,523 +947,599 @@ msgid ""
" monitor Monitor a remote object\n"
" call Invoke a method on a remote object\n"
" emit Emit a signal\n"
+" wait Wait for a bus name to appear\n"
"\n"
-"Use \"%s COMMAND --help\" to get help on each command.\n"
+"Use “%s COMMAND --help†to get help on each command.\n"
msgstr ""
-#: ../gio/gdbus-tool.c:162
-#: ../gio/gdbus-tool.c:218
-#: ../gio/gdbus-tool.c:290
-#: ../gio/gdbus-tool.c:314
-#: ../gio/gdbus-tool.c:691
-#: ../gio/gdbus-tool.c:1010
-#: ../gio/gdbus-tool.c:1443
+#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345 gio/gdbus-tool.c:369 gio/gdbus-tool.c:859
+#: gio/gdbus-tool.c:1236 gio/gdbus-tool.c:1724
#, c-format
msgid "Error: %s\n"
msgstr "خطا: %s\n"
-#: ../gio/gdbus-tool.c:173
-#: ../gio/gdbus-tool.c:231
-#: ../gio/gdbus-tool.c:1459
+#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
#, fuzzy, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "خطا در تجزیهٔ گزینهٔ %s"
-#: ../gio/gdbus-tool.c:348
+#: gio/gdbus-tool.c:250
+#, fuzzy, c-format
+#| msgid "Error: %s is not a valid member name\n"
+msgid "Error: %s is not a valid name\n"
+msgstr "خطا: %s یک نام عضو معتبر نیست\n"
+
+#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060 gio/gdbus-tool.c:1890
+#: gio/gdbus-tool.c:2130
+#, c-format
+msgid "Error: %s is not a valid object path\n"
+msgstr "خطا: %s یک مسیر شیء معتبر نیست\n"
+
+#: gio/gdbus-tool.c:403
msgid "Connect to the system bus"
msgstr ""
-#: ../gio/gdbus-tool.c:349
+#: gio/gdbus-tool.c:404
msgid "Connect to the session bus"
msgstr ""
-#: ../gio/gdbus-tool.c:350
+#: gio/gdbus-tool.c:405
msgid "Connect to given D-Bus address"
msgstr ""
-#: ../gio/gdbus-tool.c:360
+#: gio/gdbus-tool.c:415
msgid "Connection Endpoint Options:"
msgstr ""
-#: ../gio/gdbus-tool.c:361
+#: gio/gdbus-tool.c:416
msgid "Options specifying the connection endpoint"
msgstr ""
-#: ../gio/gdbus-tool.c:383
+#: gio/gdbus-tool.c:439
#, c-format
msgid "No connection endpoint specified"
msgstr ""
-#: ../gio/gdbus-tool.c:393
+#: gio/gdbus-tool.c:449
#, c-format
msgid "Multiple connection endpoints specified"
msgstr ""
-#: ../gio/gdbus-tool.c:463
+#: gio/gdbus-tool.c:522
#, c-format
-msgid "Warning: According to introspection data, interface '%s' does not exist\n"
+msgid "Warning: According to introspection data, interface “%s†does not exist\n"
msgstr ""
-#: ../gio/gdbus-tool.c:472
+#: gio/gdbus-tool.c:531
#, c-format
-msgid "Warning: According to introspection data, method '%s' does not exist on interface '%s'\n"
+msgid "Warning: According to introspection data, method “%s†does not exist on interface “%sâ€\n"
msgstr ""
-#: ../gio/gdbus-tool.c:534
+#: gio/gdbus-tool.c:593
msgid "Optional destination for signal (unique name)"
msgstr ""
-#: ../gio/gdbus-tool.c:535
+#: gio/gdbus-tool.c:594
msgid "Object path to emit signal on"
msgstr ""
-#: ../gio/gdbus-tool.c:536
+#: gio/gdbus-tool.c:595
msgid "Signal and interface name"
msgstr ""
-#: ../gio/gdbus-tool.c:568
+#: gio/gdbus-tool.c:628
msgid "Emit a signal."
msgstr ""
-#: ../gio/gdbus-tool.c:602
-#: ../gio/gdbus-tool.c:822
-#: ../gio/gdbus-tool.c:1549
-#: ../gio/gdbus-tool.c:1781
+#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827 gio/gdbus-tool.c:2059
+#: gio/gdbus-tool.c:2279
#, c-format
msgid "Error connecting: %s\n"
msgstr "خطا در هنگام اتصال: %s\n"
-#: ../gio/gdbus-tool.c:614
-#, c-format
-msgid "Error: object path not specified.\n"
-msgstr "خطا: مسیر شیء مشخص نشده است.\n"
+#: gio/gdbus-tool.c:703
+#, fuzzy, c-format
+msgid "Error: %s is not a valid unique bus name.\n"
+msgstr "نویسهٔ «%s» داخل نام نهادها مجاز نیست"
-#: ../gio/gdbus-tool.c:619
-#: ../gio/gdbus-tool.c:883
-#: ../gio/gdbus-tool.c:1607
-#: ../gio/gdbus-tool.c:1840
-#, c-format
-msgid "Error: %s is not a valid object path\n"
-msgstr "خطا: %s یک مسیر شیء معتبر نیست\n"
+#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+msgid "Error: Object path is not specified\n"
+msgstr "خطا: مسیر شیء مشخص نشده است\n"
-#: ../gio/gdbus-tool.c:625
-#, c-format
-msgid "Error: signal not specified.\n"
-msgstr ""
+#: gio/gdbus-tool.c:765
+#, fuzzy
+#| msgid "Error: Method name is not specified\n"
+msgid "Error: Signal name is not specified\n"
+msgstr "خطا: نام متد مشخص نشده است\n"
+
+#: gio/gdbus-tool.c:779
+#, fuzzy, c-format
+#| msgid "Error: Method name '%s' is invalid\n"
+msgid "Error: Signal name “%s†is invalid\n"
+msgstr "خطا: نام متد «%s» نامعتبر است\n"
-#: ../gio/gdbus-tool.c:634
+#: gio/gdbus-tool.c:791
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "خطا: %s یم نام واسط معتبر نیست\n"
-#: ../gio/gdbus-tool.c:640
+#: gio/gdbus-tool.c:797
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "خطا: %s یک نام عضو معتبر نیست\n"
-#: ../gio/gdbus-tool.c:646
-#, fuzzy, c-format
-msgid "Error: %s is not a valid unique bus name.\n"
-msgstr "نویسهٔ «%s» داخل نام نهادها مجاز نیست"
-
-#: ../gio/gdbus-tool.c:669
-#: ../gio/gdbus-tool.c:982
+#. Use the original non-"parse-me-harder" error
+#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "خطا در تجزیه پارامتر %Id: %s\n"
-#: ../gio/gdbus-tool.c:698
+#: gio/gdbus-tool.c:866
#, fuzzy, c-format
msgid "Error flushing connection: %s\n"
msgstr "خطا در حین تبدیل: %s"
-#: ../gio/gdbus-tool.c:725
+#: gio/gdbus-tool.c:893
msgid "Destination name to invoke method on"
msgstr ""
-#: ../gio/gdbus-tool.c:726
+#: gio/gdbus-tool.c:894
msgid "Object path to invoke method on"
msgstr ""
-#: ../gio/gdbus-tool.c:727
+#: gio/gdbus-tool.c:895
msgid "Method and interface name"
msgstr "نام متد و واسط"
-#: ../gio/gdbus-tool.c:728
+#: gio/gdbus-tool.c:896
msgid "Timeout in seconds"
msgstr ""
-#: ../gio/gdbus-tool.c:767
+#: gio/gdbus-tool.c:942
msgid "Invoke a method on a remote object."
msgstr ""
-#: ../gio/gdbus-tool.c:842
-#: ../gio/gdbus-tool.c:1568
-#: ../gio/gdbus-tool.c:1800
-#, c-format
+#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
msgid "Error: Destination is not specified\n"
msgstr "خطا: مقصد مشخص نشده است\n"
-#: ../gio/gdbus-tool.c:863
-#: ../gio/gdbus-tool.c:1587
-#, c-format
-msgid "Error: Object path is not specified\n"
-msgstr "خطا: مسیر شیء مشخص نشده است\n"
+#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#, fuzzy, c-format
+#| msgid "Error: %s is not a valid member name\n"
+msgid "Error: %s is not a valid bus name\n"
+msgstr "خطا: %s یک نام عضو معتبر نیست\n"
-#: ../gio/gdbus-tool.c:898
-#, c-format
+#: gio/gdbus-tool.c:1075
msgid "Error: Method name is not specified\n"
msgstr "خطا: نام متد مشخص نشده است\n"
-#: ../gio/gdbus-tool.c:909
-#, c-format
-msgid "Error: Method name '%s' is invalid\n"
+#: gio/gdbus-tool.c:1086
+#, fuzzy, c-format
+#| msgid "Error: Method name '%s' is invalid\n"
+msgid "Error: Method name “%s†is invalid\n"
msgstr "خطا: نام متد «%s» نامعتبر است\n"
-#: ../gio/gdbus-tool.c:974
-#, c-format
-msgid "Error parsing parameter %d of type '%s': %s\n"
+#: gio/gdbus-tool.c:1164
+#, fuzzy, c-format
+#| msgid "Error parsing parameter %d of type '%s': %s\n"
+msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "خطا در هنگام تجزیه پارامتر %Id از نوع «%s»: %s\n"
-#: ../gio/gdbus-tool.c:1406
+#: gio/gdbus-tool.c:1190
+#, fuzzy, c-format
+msgid "Error adding handle %d: %s\n"
+msgstr "خطا در خواندن پروندهٔ «‎%s»â€: %s"
+
+#: gio/gdbus-tool.c:1686
msgid "Destination name to introspect"
msgstr ""
-#: ../gio/gdbus-tool.c:1407
+#: gio/gdbus-tool.c:1687
msgid "Object path to introspect"
msgstr ""
-#: ../gio/gdbus-tool.c:1408
+#: gio/gdbus-tool.c:1688
msgid "Print XML"
msgstr "چاپ XML"
-#: ../gio/gdbus-tool.c:1409
+#: gio/gdbus-tool.c:1689
msgid "Introspect children"
msgstr ""
-#: ../gio/gdbus-tool.c:1410
+#: gio/gdbus-tool.c:1690
msgid "Only print properties"
msgstr "تنها ترجیحات را چاپ کن"
-#: ../gio/gdbus-tool.c:1501
+#: gio/gdbus-tool.c:1779
msgid "Introspect a remote object."
msgstr ""
-#: ../gio/gdbus-tool.c:1699
+#: gio/gdbus-tool.c:1985
msgid "Destination name to monitor"
msgstr "نام مقصد جهت پایش"
-#: ../gio/gdbus-tool.c:1700
+#: gio/gdbus-tool.c:1986
msgid "Object path to monitor"
msgstr "مسیر شیء جهت پایش"
-#: ../gio/gdbus-tool.c:1733
+#: gio/gdbus-tool.c:2011
msgid "Monitor a remote object."
msgstr "پایش یک شیء دوردست."
-#: ../gio/gdesktopappinfo.c:575
-#: ../gio/gwin32appinfo.c:221
+#: gio/gdbus-tool.c:2069
+msgid "Error: can’t monitor a non-message-bus connection\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:2193
+msgid "Service to activate before waiting for the other one (well-known name)"
+msgstr ""
+
+#: gio/gdbus-tool.c:2196
+msgid "Timeout to wait for before exiting with an error (seconds); 0 for no timeout (default)"
+msgstr ""
+
+#: gio/gdbus-tool.c:2244
+msgid "[OPTION…] BUS-NAME"
+msgstr ""
+
+#: gio/gdbus-tool.c:2245
+msgid "Wait for a bus name to appear."
+msgstr ""
+
+#: gio/gdbus-tool.c:2321
+#, fuzzy
+#| msgid "Error: object path not specified.\n"
+msgid "Error: A service to activate for must be specified.\n"
+msgstr "خطا: مسیر شیء مشخص نشده است.\n"
+
+#: gio/gdbus-tool.c:2326
+#, fuzzy
+#| msgid "Error: object path not specified.\n"
+msgid "Error: A service to wait for must be specified.\n"
+msgstr "خطا: مسیر شیء مشخص نشده است.\n"
+
+#: gio/gdbus-tool.c:2331
+msgid "Error: Too many arguments.\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#, fuzzy, c-format
+msgid "Error: %s is not a valid well-known bus name.\n"
+msgstr "نویسهٔ «%s» داخل نام نهادها مجاز نیست"
+
+#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4932
msgid "Unnamed"
msgstr "بدون‌نام"
-#: ../gio/gdesktopappinfo.c:988
-msgid "Desktop file didn't specify Exec field"
+#: gio/gdesktopappinfo.c:2516
+msgid "Desktop file didn’t specify Exec field"
msgstr ""
-#: ../gio/gdesktopappinfo.c:1276
+#: gio/gdesktopappinfo.c:2801
msgid "Unable to find terminal required for application"
msgstr "نمی‌توان پایانه‌ی لازم برای این برنامه را پیدا کرد"
-#: ../gio/gdesktopappinfo.c:1563
+#: gio/gdesktopappinfo.c:3452
#, c-format
-msgid "Can't create user application configuration folder %s: %s"
+msgid "Can’t create user application configuration folder %s: %s"
msgstr ""
-#: ../gio/gdesktopappinfo.c:1567
+#: gio/gdesktopappinfo.c:3456
#, c-format
-msgid "Can't create user MIME configuration folder %s: %s"
+msgid "Can’t create user MIME configuration folder %s: %s"
msgstr ""
-#: ../gio/gdesktopappinfo.c:1807
-#: ../gio/gdesktopappinfo.c:1831
+#: gio/gdesktopappinfo.c:3698 gio/gdesktopappinfo.c:3722
msgid "Application information lacks an identifier"
msgstr ""
-#: ../gio/gdesktopappinfo.c:2055
-#, c-format
-msgid "Can't create user desktop file %s"
-msgstr ""
+#: gio/gdesktopappinfo.c:3958
+#, fuzzy, c-format
+#| msgid "Failed to create temp file: %s"
+msgid "Can’t create user desktop file %s"
+msgstr "ساخت پرونده موقت شکست خورد: %s"
-#: ../gio/gdesktopappinfo.c:2171
+#: gio/gdesktopappinfo.c:4094
#, c-format
msgid "Custom definition for %s"
msgstr ""
-#: ../gio/gdrive.c:363
-msgid "drive doesn't implement eject"
-msgstr ""
+#: gio/gdrive.c:417
+#, fuzzy
+#| msgid "volume doesn't implement eject"
+msgid "drive doesn’t implement eject"
+msgstr "جلد قابلیت eject ندارد"
#. Translators: This is an error
#. * message for drive objects that
#. * don't implement any of eject or eject_with_operation.
-#: ../gio/gdrive.c:444
-msgid "drive doesn't implement eject or eject_with_operation"
-msgstr ""
+#: gio/gdrive.c:495
+#, fuzzy
+#| msgid "volume doesn't implement eject or eject_with_operation"
+msgid "drive doesn’t implement eject or eject_with_operation"
+msgstr "جلد قابلیت eject یا eject_with_operation را ندارد"
-#: ../gio/gdrive.c:521
-msgid "drive doesn't implement polling for media"
+#: gio/gdrive.c:571
+msgid "drive doesn’t implement polling for media"
msgstr ""
-#: ../gio/gdrive.c:728
-msgid "drive doesn't implement start"
-msgstr ""
+#: gio/gdrive.c:778
+#, fuzzy
+#| msgid "volume doesn't implement eject"
+msgid "drive doesn’t implement start"
+msgstr "جلد قابلیت eject ندارد"
-#: ../gio/gdrive.c:831
-msgid "drive doesn't implement stop"
+#: gio/gdrive.c:880
+#, fuzzy
+#| msgid "volume doesn't implement eject"
+msgid "drive doesn’t implement stop"
+msgstr "جلد قابلیت eject ندارد"
+
+#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+msgid "TLS backend does not implement TLS binding retrieval"
msgstr ""
-#: ../gio/gdummytlsbackend.c:168
-#: ../gio/gdummytlsbackend.c:288
-#: ../gio/gdummytlsbackend.c:378
+#: gio/gdummytlsbackend.c:195 gio/gdummytlsbackend.c:321 gio/gdummytlsbackend.c:513
msgid "TLS support is not available"
msgstr ""
-#: ../gio/gemblem.c:324
-#, c-format
-msgid "Can't handle version %d of GEmblem encoding"
+#: gio/gdummytlsbackend.c:423
+msgid "DTLS support is not available"
msgstr ""
-#: ../gio/gemblem.c:334
+#: gio/gemblem.c:323
+#, fuzzy, c-format
+#| msgid "Can't handle version %d of GThemedIcon encoding"
+msgid "Can’t handle version %d of GEmblem encoding"
+msgstr "نمی‌توان با رمزنگاری نسخه %Id GThemedIcon را کار کرد"
+
+#: gio/gemblem.c:333
#, c-format
msgid "Malformed number of tokens (%d) in GEmblem encoding"
msgstr ""
-#: ../gio/gemblemedicon.c:367
-#, c-format
-msgid "Can't handle version %d of GEmblemedIcon encoding"
-msgstr ""
+#: gio/gemblemedicon.c:362
+#, fuzzy, c-format
+#| msgid "Can't handle version %d of GThemedIcon encoding"
+msgid "Can’t handle version %d of GEmblemedIcon encoding"
+msgstr "نمی‌توان با رمزنگاری نسخه %Id GThemedIcon را کار کرد"
-#: ../gio/gemblemedicon.c:377
+#: gio/gemblemedicon.c:372
#, c-format
msgid "Malformed number of tokens (%d) in GEmblemedIcon encoding"
msgstr ""
-#: ../gio/gemblemedicon.c:400
+#: gio/gemblemedicon.c:395
msgid "Expected a GEmblem for GEmblemedIcon"
msgstr ""
-#: ../gio/gfile.c:874
-#: ../gio/gfile.c:1105
-#: ../gio/gfile.c:1240
-#: ../gio/gfile.c:1477
-#: ../gio/gfile.c:1531
-#: ../gio/gfile.c:1588
-#: ../gio/gfile.c:1671
-#: ../gio/gfile.c:1726
-#: ../gio/gfile.c:1786
-#: ../gio/gfile.c:1840
-#: ../gio/gfile.c:3312
-#: ../gio/gfile.c:3366
-#: ../gio/gfile.c:3500
-#: ../gio/gfile.c:3541
-#: ../gio/gfile.c:3871
-#: ../gio/gfile.c:4273
-#: ../gio/gfile.c:4359
-#: ../gio/gfile.c:4448
-#: ../gio/gfile.c:4546
-#: ../gio/gfile.c:4633
-#: ../gio/gfile.c:4727
-#: ../gio/gfile.c:5048
-#: ../gio/gfile.c:5315
-#: ../gio/gfile.c:5380
-#: ../gio/gfile.c:7008
-#: ../gio/gfile.c:7098
-#: ../gio/gfile.c:7184
-#: ../gio/win32/gwinhttpfile.c:439
-msgid "Operation not supported"
-msgstr "عملیات پشتیبانی نمی‌شود"
-
-#. Translators: This is an error message when trying to find the
-#. * enclosing (user visible) mount of a file, but none exists.
-#. Translators: This is an error message when trying to
-#. * find the enclosing (user visible) mount of a file, but
-#. * none exists.
-#. Translators: This is an error message when trying to find
-#. * the enclosing (user visible) mount of a file, but none
-#. * exists.
-#: ../gio/gfile.c:1361
-#: ../gio/glocalfile.c:1070
-#: ../gio/glocalfile.c:1081
-#: ../gio/glocalfile.c:1094
+#. Translators: This is an error message when
+#. * trying to find the enclosing (user visible)
+#. * mount of a file, but none exists.
+#.
+#: gio/gfile.c:1561
msgid "Containing mount does not exist"
msgstr ""
-#: ../gio/gfile.c:2414
-#: ../gio/glocalfile.c:2289
-msgid "Can't copy over directory"
+#: gio/gfile.c:2608 gio/glocalfile.c:2477
+#, fuzzy
+#| msgid "Can't copy over directory"
+msgid "Can’t copy over directory"
msgstr "نمی‌توان بر روی شاخه رونوشت کرد"
-#: ../gio/gfile.c:2475
-msgid "Can't copy directory over directory"
+#: gio/gfile.c:2668
+#, fuzzy
+#| msgid "Can't copy directory over directory"
+msgid "Can’t copy directory over directory"
msgstr "نمي‌توان شاخه را بر روی شاخه رونوشت کرد"
-#: ../gio/gfile.c:2483
-#: ../gio/glocalfile.c:2298
+#: gio/gfile.c:2676
msgid "Target file exists"
msgstr "پرونده مقصد وجود دارد"
-#: ../gio/gfile.c:2501
-msgid "Can't recursively copy directory"
+#: gio/gfile.c:2695
+#, fuzzy
+#| msgid "Can't recursively copy directory"
+msgid "Can’t recursively copy directory"
msgstr "نمی‌توان بطور پی‌درپی شاخه را رونوشت کرد"
-#: ../gio/gfile.c:2761
+#: gio/gfile.c:2996
msgid "Splice not supported"
msgstr "اتصال پشتیبانی نمی‌شود"
-#: ../gio/gfile.c:2765
+#: gio/gfile.c:3000
#, c-format
msgid "Error splicing file: %s"
msgstr "خطا در هنگام اتصال پرونده: %s"
-#: ../gio/gfile.c:2912
-msgid "Can't copy special file"
+#: gio/gfile.c:3152
+msgid "Copy (reflink/clone) between mounts is not supported"
+msgstr ""
+
+#: gio/gfile.c:3156
+msgid "Copy (reflink/clone) is not supported or invalid"
+msgstr ""
+
+#: gio/gfile.c:3161
+msgid "Copy (reflink/clone) is not supported or didn’t work"
+msgstr ""
+
+#: gio/gfile.c:3226
+#, fuzzy
+#| msgid "Can't copy special file"
+msgid "Can’t copy special file"
msgstr "نمی‌توان پرونده خاص را رونوشت کرد"
-#: ../gio/gfile.c:3490
+#: gio/gfile.c:4035
msgid "Invalid symlink value given"
msgstr ""
-#: ../gio/gfile.c:3584
+#: gio/gfile.c:4045 glib/gfileutils.c:2354
+msgid "Symbolic links not supported"
+msgstr "پیوندهای نمادی پشتیبانی نمی‌شوند"
+
+#: gio/gfile.c:4213
msgid "Trash not supported"
msgstr "زباله پشتیبانی نمی‌شود"
-#: ../gio/gfile.c:3633
-#, c-format
-msgid "File names cannot contain '%c'"
+#: gio/gfile.c:4325
+#, fuzzy, c-format
+#| msgid "File names cannot contain '%c'"
+msgid "File names cannot contain “%câ€"
msgstr "نام پرونده نمی‌تواند حاوی «%c» باشد"
-#: ../gio/gfile.c:6067
-#: ../gio/gvolume.c:332
-msgid "volume doesn't implement mount"
-msgstr ""
+#: gio/gfile.c:6806 gio/gvolume.c:364
+#, fuzzy
+#| msgid "volume doesn't implement eject"
+msgid "volume doesn’t implement mount"
+msgstr "جلد قابلیت eject ندارد"
-#: ../gio/gfile.c:6178
+#: gio/gfile.c:6920 gio/gfile.c:6968
msgid "No application is registered as handling this file"
msgstr "هیچ برنامه‌ای برای مار با این پرونده ثبت نشده است"
-#: ../gio/gfileenumerator.c:205
+#: gio/gfileenumerator.c:212
msgid "Enumerator is closed"
msgstr ""
-#: ../gio/gfileenumerator.c:212
-#: ../gio/gfileenumerator.c:271
-#: ../gio/gfileenumerator.c:371
-#: ../gio/gfileenumerator.c:480
+#: gio/gfileenumerator.c:219 gio/gfileenumerator.c:278 gio/gfileenumerator.c:377 gio/gfileenumerator.c:476
msgid "File enumerator has outstanding operation"
msgstr ""
-#: ../gio/gfileenumerator.c:361
-#: ../gio/gfileenumerator.c:470
+#: gio/gfileenumerator.c:368 gio/gfileenumerator.c:467
msgid "File enumerator is already closed"
msgstr ""
-#: ../gio/gfileicon.c:237
-#, c-format
-msgid "Can't handle version %d of GFileIcon encoding"
-msgstr ""
+#: gio/gfileicon.c:250
+#, fuzzy, c-format
+#| msgid "Can't handle version %d of GThemedIcon encoding"
+msgid "Can’t handle version %d of GFileIcon encoding"
+msgstr "نمی‌توان با رمزنگاری نسخه %Id GThemedIcon را کار کرد"
-#: ../gio/gfileicon.c:247
+#: gio/gfileicon.c:260
msgid "Malformed input data for GFileIcon"
msgstr ""
-#: ../gio/gfileinputstream.c:154
-#: ../gio/gfileinputstream.c:420
-#: ../gio/gfileiostream.c:170
-#: ../gio/gfileoutputstream.c:169
-#: ../gio/gfileoutputstream.c:523
-msgid "Stream doesn't support query_info"
+#: gio/gfileinputstream.c:149 gio/gfileinputstream.c:394 gio/gfileiostream.c:167 gio/gfileoutputstream.c:164
+#: gio/gfileoutputstream.c:497
+msgid "Stream doesn’t support query_info"
msgstr ""
-#: ../gio/gfileinputstream.c:335
-#: ../gio/gfileiostream.c:387
-#: ../gio/gfileoutputstream.c:381
+#: gio/gfileinputstream.c:325 gio/gfileiostream.c:379 gio/gfileoutputstream.c:371
msgid "Seek not supported on stream"
msgstr ""
-#: ../gio/gfileinputstream.c:379
+#: gio/gfileinputstream.c:369
msgid "Truncate not allowed on input stream"
msgstr ""
-#: ../gio/gfileiostream.c:463
-#: ../gio/gfileoutputstream.c:457
+#: gio/gfileiostream.c:455 gio/gfileoutputstream.c:447
msgid "Truncate not supported on stream"
msgstr ""
-#: ../gio/gicon.c:284
+#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596 glib/gconvert.c:1825
+msgid "Invalid hostname"
+msgstr "نام میزبان نامعتبر"
+
+#: gio/ghttpproxy.c:143
+msgid "Bad HTTP proxy reply"
+msgstr ""
+
+#: gio/ghttpproxy.c:159
+#, fuzzy
+#| msgid "The connection is closed"
+msgid "HTTP proxy connection not allowed"
+msgstr "اتصال بسته شده است"
+
+#: gio/ghttpproxy.c:164
+msgid "HTTP proxy authentication failed"
+msgstr ""
+
+#: gio/ghttpproxy.c:167
+msgid "HTTP proxy authentication required"
+msgstr ""
+
+#: gio/ghttpproxy.c:171
+#, fuzzy, c-format
+#| msgid "The connection is closed"
+msgid "HTTP proxy connection failed: %i"
+msgstr "اتصال بسته شده است"
+
+#: gio/ghttpproxy.c:266
+msgid "HTTP proxy response too big"
+msgstr ""
+
+#: gio/ghttpproxy.c:283
+msgid "HTTP proxy server closed connection unexpectedly."
+msgstr ""
+
+#: gio/gicon.c:298
#, c-format
msgid "Wrong number of tokens (%d)"
msgstr ""
-#: ../gio/gicon.c:304
+#: gio/gicon.c:318
#, c-format
msgid "No type for class name %s"
msgstr ""
-#: ../gio/gicon.c:314
+#: gio/gicon.c:328
#, c-format
msgid "Type %s does not implement the GIcon interface"
msgstr ""
-#: ../gio/gicon.c:325
+#: gio/gicon.c:339
#, c-format
msgid "Type %s is not classed"
msgstr ""
-#: ../gio/gicon.c:339
+#: gio/gicon.c:353
#, c-format
msgid "Malformed version number: %s"
msgstr ""
-#: ../gio/gicon.c:353
+#: gio/gicon.c:367
#, c-format
msgid "Type %s does not implement from_tokens() on the GIcon interface"
msgstr ""
-#: ../gio/gicon.c:430
-msgid "Can't handle the supplied version the icon encoding"
-msgstr ""
+#: gio/gicon.c:469
+#, fuzzy
+#| msgid "Can't handle version %d of GThemedIcon encoding"
+msgid "Can’t handle the supplied version of the icon encoding"
+msgstr "نمی‌توان با رمزنگاری نسخه %Id GThemedIcon را کار کرد"
-#: ../gio/ginetaddressmask.c:184
+#: gio/ginetaddressmask.c:182
msgid "No address specified"
msgstr "هیچ آدرسی مشخص نشده است"
-#: ../gio/ginetaddressmask.c:192
+#: gio/ginetaddressmask.c:190
#, c-format
msgid "Length %u is too long for address"
msgstr ""
-#: ../gio/ginetaddressmask.c:225
+#: gio/ginetaddressmask.c:223
msgid "Address has bits set beyond prefix length"
msgstr ""
-#: ../gio/ginetaddressmask.c:304
+#: gio/ginetaddressmask.c:300
#, fuzzy, c-format
-msgid "Could not parse '%s' as IP address mask"
+msgid "Could not parse “%s†as IP address mask"
msgstr "نمی‌توان آدرس محلی را دریاÙت کرد: %s"
-#: ../gio/ginetsocketaddress.c:206
-#: ../gio/ginetsocketaddress.c:223
-#: ../gio/gunixsocketaddress.c:221
+#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220 gio/gnativesocketaddress.c:109
+#: gio/gunixsocketaddress.c:221
msgid "Not enough space for socket address"
msgstr ""
-#: ../gio/ginetsocketaddress.c:238
+#: gio/ginetsocketaddress.c:235
msgid "Unsupported socket address"
msgstr ""
-#: ../gio/ginputstream.c:194
-msgid "Input stream doesn't implement read"
-msgstr ""
+#: gio/ginputstream.c:188
+#, fuzzy
+msgid "Input stream doesn’t implement read"
+msgstr "جلد قابلیت eject ندارد"
#. Translators: This is an error you get if there is already an
#. * operation running against this stream when you try to start
@@ -1167,872 +1547,1897 @@ msgstr ""
#. Translators: This is an error you get if there is
#. * already an operation running against this stream when
#. * you try to start one
-#: ../gio/ginputstream.c:898
-#: ../gio/giostream.c:302
-#: ../gio/goutputstream.c:1238
+#: gio/ginputstream.c:1249 gio/giostream.c:310 gio/goutputstream.c:2208
msgid "Stream has outstanding operation"
msgstr ""
-#: ../gio/glib-compile-resources.c:144
-#: ../gio/glib-compile-schemas.c:1449
+#: gio/gio-tool.c:160
+msgid "Copy with file"
+msgstr "رونوشت همراه پرونده"
+
+#: gio/gio-tool.c:164
+msgid "Keep with file when moved"
+msgstr ""
+
+#: gio/gio-tool.c:205
+msgid "“version†takes no arguments"
+msgstr ""
+
+#: gio/gio-tool.c:207 gio/gio-tool.c:223 glib/goption.c:869
+msgid "Usage:"
+msgstr "روش استÙاده:"
+
+#: gio/gio-tool.c:210
+msgid "Print version information and exit."
+msgstr ""
+
+#: gio/gio-tool.c:226
+msgid "Commands:"
+msgstr "دستورات:"
+
+#: gio/gio-tool.c:229
+msgid "Concatenate files to standard output"
+msgstr ""
+
+#: gio/gio-tool.c:230
+msgid "Copy one or more files"
+msgstr ""
+
+#: gio/gio-tool.c:231
+msgid "Show information about locations"
+msgstr ""
+
+#: gio/gio-tool.c:232
+msgid "Launch an application from a desktop file"
+msgstr ""
+
+#: gio/gio-tool.c:233
+msgid "List the contents of locations"
+msgstr ""
+
+#: gio/gio-tool.c:234
+msgid "Get or set the handler for a mimetype"
+msgstr ""
+
+#: gio/gio-tool.c:235
+#, fuzzy
+#| msgid "Can't open directory"
+msgid "Create directories"
+msgstr "نمی‌توان شاخه را باز کرد"
+
+#: gio/gio-tool.c:236
+msgid "Monitor files and directories for changes"
+msgstr ""
+
+#: gio/gio-tool.c:237
+msgid "Mount or unmount the locations"
+msgstr ""
+
+#: gio/gio-tool.c:238
+msgid "Move one or more files"
+msgstr ""
+
+#: gio/gio-tool.c:239
+msgid "Open files with the default application"
+msgstr ""
+
+#: gio/gio-tool.c:240
+msgid "Rename a file"
+msgstr "تغییر نام یک پرونده"
+
+#: gio/gio-tool.c:241
+msgid "Delete one or more files"
+msgstr "حذ٠یک یا چند پرونده"
+
+#: gio/gio-tool.c:242
+msgid "Read from standard input and save"
+msgstr ""
+
+#: gio/gio-tool.c:243
+msgid "Set a file attribute"
+msgstr ""
+
+#: gio/gio-tool.c:244
+msgid "Move files or directories to the trash"
+msgstr ""
+
+#: gio/gio-tool.c:245
+msgid "Lists the contents of locations in a tree"
+msgstr ""
+
+#: gio/gio-tool.c:247
#, c-format
-msgid "Element <%s> not allowed inside <%s>"
+msgid "Use %s to get detailed help.\n"
msgstr ""
-#: ../gio/glib-compile-resources.c:148
-#: ../gio/glib-compile-schemas.c:1453
+#: gio/gio-tool-cat.c:87
+#, fuzzy
+#| msgid "Error writing to file: %s"
+msgid "Error writing to stdout"
+msgstr "خطا در هنگام نوشتن در پرونده: %s"
+
+#. Translators: commandline placeholder
+#: gio/gio-tool-cat.c:133 gio/gio-tool-info.c:340 gio/gio-tool-list.c:172 gio/gio-tool-mkdir.c:48
+#: gio/gio-tool-monitor.c:37 gio/gio-tool-monitor.c:39 gio/gio-tool-monitor.c:41 gio/gio-tool-monitor.c:43
+#: gio/gio-tool-monitor.c:204 gio/gio-tool-mount.c:1199 gio/gio-tool-open.c:70 gio/gio-tool-remove.c:48
+#: gio/gio-tool-rename.c:45 gio/gio-tool-set.c:89 gio/gio-tool-trash.c:220 gio/gio-tool-tree.c:239
+#, fuzzy
+#| msgid "SECTION"
+msgid "LOCATION"
+msgstr "SECTION"
+
+#: gio/gio-tool-cat.c:138
+msgid "Concatenate files and print to standard output."
+msgstr ""
+
+#: gio/gio-tool-cat.c:140
+msgid ""
+"gio cat works just like the traditional cat utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location."
+msgstr ""
+
+#: gio/gio-tool-cat.c:162 gio/gio-tool-info.c:371 gio/gio-tool-mkdir.c:76 gio/gio-tool-monitor.c:229
+#: gio/gio-tool-mount.c:1250 gio/gio-tool-open.c:96 gio/gio-tool-remove.c:72 gio/gio-tool-trash.c:303
+msgid "No locations given"
+msgstr ""
+
+#: gio/gio-tool-copy.c:43 gio/gio-tool-move.c:38
+#, fuzzy
+#| msgid "Target file is a directory"
+msgid "No target directory"
+msgstr "پرونده هد٠یک شاخه است"
+
+#: gio/gio-tool-copy.c:44 gio/gio-tool-move.c:39
+msgid "Show progress"
+msgstr "نمایش پیشرÙت"
+
+#: gio/gio-tool-copy.c:45 gio/gio-tool-move.c:40
+msgid "Prompt before overwrite"
+msgstr ""
+
+#: gio/gio-tool-copy.c:46
+msgid "Preserve all attributes"
+msgstr ""
+
+#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:41 gio/gio-tool-save.c:49
+#, fuzzy
+#| msgid "Backup file creation failed"
+msgid "Backup existing destination files"
+msgstr "ساخت پرونده پشتیبان شکست خورد"
+
+#: gio/gio-tool-copy.c:48
+msgid "Never follow symbolic links"
+msgstr ""
+
+#: gio/gio-tool-copy.c:49
+msgid "Use default permissions for the destination"
+msgstr ""
+
+#: gio/gio-tool-copy.c:74 gio/gio-tool-move.c:67
#, c-format
-msgid "Element <%s> not allowed at toplevel"
+msgid "Transferred %s out of %s (%s/s)"
+msgstr ""
+
+#. Translators: commandline placeholder
+#: gio/gio-tool-copy.c:100 gio/gio-tool-move.c:94
+msgid "SOURCE"
+msgstr ""
+
+#. Translators: commandline placeholder
+#: gio/gio-tool-copy.c:100 gio/gio-tool-move.c:94 gio/gio-tool-save.c:160
+msgid "DESTINATION"
msgstr ""
-#: ../gio/glib-compile-resources.c:235
+#: gio/gio-tool-copy.c:105
+msgid "Copy one or more files from SOURCE to DESTINATION."
+msgstr ""
+
+#: gio/gio-tool-copy.c:107
+msgid ""
+"gio copy is similar to the traditional cp utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location."
+msgstr ""
+
+#: gio/gio-tool-copy.c:149
+#, fuzzy, c-format
+#| msgid "Destination name to monitor"
+msgid "Destination %s is not a directory"
+msgstr "نام مقصد جهت پایش"
+
+#: gio/gio-tool-copy.c:196 gio/gio-tool-move.c:186
#, c-format
-msgid "File %s appears multiple times in the resource"
+msgid "%s: overwrite “%s� "
+msgstr ""
+
+#: gio/gio-tool-info.c:37
+msgid "List writable attributes"
+msgstr ""
+
+#: gio/gio-tool-info.c:38
+#, fuzzy
+#| msgid "Error getting filesystem info: %s"
+msgid "Get file system info"
+msgstr "خطا در دریاÙت اطلاعات سیستم‌پرونده‌: %s"
+
+#: gio/gio-tool-info.c:39 gio/gio-tool-list.c:36
+msgid "The attributes to get"
+msgstr ""
+
+#: gio/gio-tool-info.c:39 gio/gio-tool-list.c:36
+msgid "ATTRIBUTES"
+msgstr ""
+
+#: gio/gio-tool-info.c:40 gio/gio-tool-list.c:39 gio/gio-tool-set.c:34
+msgid "Don’t follow symbolic links"
+msgstr ""
+
+#: gio/gio-tool-info.c:78
+msgid "attributes:\n"
+msgstr "مشخصه‌ها:\n"
+
+#. Translators: This is a noun and represents and attribute of a file
+#: gio/gio-tool-info.c:134
+#, fuzzy, c-format
+msgid "display name: %s\n"
+msgstr "نام نمایش: %s\n"
+
+#. Translators: This is a noun and represents and attribute of a file
+#: gio/gio-tool-info.c:139
+#, fuzzy, c-format
+msgid "edit name: %s\n"
+msgstr "نام ویرایش: %s\n"
+
+#: gio/gio-tool-info.c:145
+#, c-format
+msgid "name: %s\n"
+msgstr "نام: %s\n"
+
+#: gio/gio-tool-info.c:152
+#, c-format
+msgid "type: %s\n"
+msgstr "گونه: %s\n"
+
+#: gio/gio-tool-info.c:158
+msgid "size: "
+msgstr "اندازه: "
+
+#: gio/gio-tool-info.c:163
+msgid "hidden\n"
+msgstr "مخÙÛŒ\n"
+
+#: gio/gio-tool-info.c:166
+#, fuzzy, c-format
+#| msgid "Error: %s\n"
+msgid "uri: %s\n"
+msgstr "خطا: %s\n"
+
+#: gio/gio-tool-info.c:172
+#, c-format
+msgid "local path: %s\n"
msgstr ""
-#: ../gio/glib-compile-resources.c:248
+#: gio/gio-tool-info.c:205
#, c-format
-msgid "Failed to locate '%s' in any source directory"
+msgid "unix mount: %s%s %s %s %s\n"
msgstr ""
-#: ../gio/glib-compile-resources.c:259
+#: gio/gio-tool-info.c:286
+msgid "Settable attributes:\n"
+msgstr ""
+
+#: gio/gio-tool-info.c:310
+msgid "Writable attribute namespaces:\n"
+msgstr ""
+
+#: gio/gio-tool-info.c:345
+msgid "Show information about locations."
+msgstr ""
+
+#: gio/gio-tool-info.c:347
+msgid ""
+"gio info is similar to the traditional ls utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location. File attributes can\n"
+"be specified with their GIO name, e.g. standard::icon, or just by\n"
+"namespace, e.g. unix, or by “*â€, which matches all attributes"
+msgstr ""
+
+#. Translators: commandline placeholder
+#: gio/gio-tool-launch.c:54
+msgid "DESKTOP-FILE [FILE-ARG …]"
+msgstr ""
+
+#: gio/gio-tool-launch.c:57
+msgid "Launch an application from a desktop file, passing optional filename arguments to it."
+msgstr ""
+
+#: gio/gio-tool-launch.c:77
+msgid "No desktop file given"
+msgstr ""
+
+#: gio/gio-tool-launch.c:85
+#, fuzzy
+#| msgid "There is no GCredentials support for your platform"
+msgid "The launch command is not currently supported on this platform"
+msgstr "پشتیبانی از GCredentials در پلتÙرم شما وجود ندارد"
+
+#: gio/gio-tool-launch.c:98
#, fuzzy, c-format
-msgid "Failed to locate '%s' in current directory"
-msgstr "تغییر به شاخهٔ «%s» شکست خورد (%s)"
+#| msgid "Unable to create trash dir %s: %s"
+msgid "Unable to load ‘%s‘: %s"
+msgstr "نمی‌توان شاخه زباله‌دان %s را ساخت: %s"
-#: ../gio/glib-compile-resources.c:287
+#: gio/gio-tool-launch.c:107
+#, c-format
+msgid "Unable to load application information for ‘%s‘"
+msgstr ""
+
+#: gio/gio-tool-launch.c:119
#, fuzzy, c-format
-msgid "Unknown proprocessing options \"%s\""
-msgstr "گزینهٔ نامعلوم %s"
+#| msgid "Error launching application: %s"
+msgid "Unable to launch application ‘%s’: %s"
+msgstr "خطا در راه‌اندازی برنامه: %s"
+
+#: gio/gio-tool-list.c:37 gio/gio-tool-tree.c:32
+msgid "Show hidden files"
+msgstr ""
+
+#: gio/gio-tool-list.c:38
+msgid "Use a long listing format"
+msgstr ""
-#: ../gio/glib-compile-resources.c:305
-#: ../gio/glib-compile-resources.c:363
+#: gio/gio-tool-list.c:40
+msgid "Print display names"
+msgstr ""
+
+#: gio/gio-tool-list.c:41
+msgid "Print full URIs"
+msgstr ""
+
+#: gio/gio-tool-list.c:177
+msgid "List the contents of the locations."
+msgstr ""
+
+#: gio/gio-tool-list.c:179
+msgid ""
+"gio list is similar to the traditional ls utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location. File attributes can\n"
+"be specified with their GIO name, e.g. standard::icon"
+msgstr ""
+
+#. Translators: commandline placeholder
+#: gio/gio-tool-mime.c:71
+msgid "MIMETYPE"
+msgstr ""
+
+#: gio/gio-tool-mime.c:71
+msgid "HANDLER"
+msgstr ""
+
+#: gio/gio-tool-mime.c:76
+msgid "Get or set the handler for a mimetype."
+msgstr ""
+
+#: gio/gio-tool-mime.c:78
+msgid ""
+"If no handler is given, lists registered and recommended applications\n"
+"for the mimetype. If a handler is given, it is set as the default\n"
+"handler for the mimetype."
+msgstr ""
+
+#: gio/gio-tool-mime.c:100
+msgid "Must specify a single mimetype, and maybe a handler"
+msgstr ""
+
+#: gio/gio-tool-mime.c:116
#, c-format
-msgid "Failed to create temp file: %s"
-msgstr "ساخت پرونده موقت شکست خورد: %s"
+msgid "No default applications for “%sâ€\n"
+msgstr ""
+
+#: gio/gio-tool-mime.c:122
+#, c-format
+msgid "Default application for “%sâ€: %s\n"
+msgstr ""
+
+#: gio/gio-tool-mime.c:127
+msgid "Registered applications:\n"
+msgstr ""
+
+#: gio/gio-tool-mime.c:129
+#, fuzzy
+#| msgid "Can't find application"
+msgid "No registered applications\n"
+msgstr "نمی‌توان برنامه را پیدا کرد"
+
+#: gio/gio-tool-mime.c:140
+msgid "Recommended applications:\n"
+msgstr ""
+
+#: gio/gio-tool-mime.c:142
+#, fuzzy
+#| msgid "Can't find application"
+msgid "No recommended applications\n"
+msgstr "نمی‌توان برنامه را پیدا کرد"
+
+#: gio/gio-tool-mime.c:162
+#, fuzzy, c-format
+#| msgid "Failed to read from file '%s': %s"
+msgid "Failed to load info for handler “%sâ€"
+msgstr "خواندن از پروندهٔ «‎%s» شکست خورد: %s"
+
+#: gio/gio-tool-mime.c:168
+#, c-format
+msgid "Failed to set “%s†as the default handler for “%sâ€: %s\n"
+msgstr ""
+
+#: gio/gio-tool-mkdir.c:31
+#, fuzzy
+#| msgid "Can't open directory"
+msgid "Create parent directories"
+msgstr "نمی‌توان شاخه را باز کرد"
+
+#: gio/gio-tool-mkdir.c:52
+#, fuzzy
+#| msgid "Can't open directory"
+msgid "Create directories."
+msgstr "نمی‌توان شاخه را باز کرد"
+
+#: gio/gio-tool-mkdir.c:54
+msgid ""
+"gio mkdir is similar to the traditional mkdir utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/mydir as location."
+msgstr ""
+
+#: gio/gio-tool-monitor.c:37
+msgid "Monitor a directory (default: depends on type)"
+msgstr ""
+
+#: gio/gio-tool-monitor.c:39
+msgid "Monitor a file (default: depends on type)"
+msgstr ""
+
+#: gio/gio-tool-monitor.c:41
+msgid "Monitor a file directly (notices changes made via hardlinks)"
+msgstr ""
+
+#: gio/gio-tool-monitor.c:43
+msgid "Monitors a file directly, but doesn’t report changes"
+msgstr ""
+
+#: gio/gio-tool-monitor.c:45
+msgid "Report moves and renames as simple deleted/created events"
+msgstr ""
+
+#: gio/gio-tool-monitor.c:47
+msgid "Watch for mount events"
+msgstr ""
+
+#: gio/gio-tool-monitor.c:209
+msgid "Monitor files or directories for changes."
+msgstr ""
+
+#: gio/gio-tool-mount.c:63
+msgid "Mount as mountable"
+msgstr ""
+
+#: gio/gio-tool-mount.c:64
+msgid "Mount volume with device file, or other identifier"
+msgstr ""
+
+#: gio/gio-tool-mount.c:64
+msgid "ID"
+msgstr "شناسه"
+
+#: gio/gio-tool-mount.c:65
+msgid "Unmount"
+msgstr "پیاده کردن"
+
+#: gio/gio-tool-mount.c:66
+msgid "Eject"
+msgstr "بیرون دادن"
+
+#: gio/gio-tool-mount.c:67
+msgid "Stop drive with device file"
+msgstr ""
+
+#: gio/gio-tool-mount.c:67
+msgid "DEVICE"
+msgstr ""
+
+#: gio/gio-tool-mount.c:68
+msgid "Unmount all mounts with the given scheme"
+msgstr ""
+
+#: gio/gio-tool-mount.c:68
+msgid "SCHEME"
+msgstr ""
+
+#: gio/gio-tool-mount.c:69
+msgid "Ignore outstanding file operations when unmounting or ejecting"
+msgstr ""
+
+#: gio/gio-tool-mount.c:70
+msgid "Use an anonymous user when authenticating"
+msgstr ""
+
+#. Translator: List here is a verb as in 'List all mounts'
+#: gio/gio-tool-mount.c:72
+msgid "List"
+msgstr "سیاهه"
+
+#: gio/gio-tool-mount.c:73
+msgid "Monitor events"
+msgstr ""
+
+#: gio/gio-tool-mount.c:74
+#, fuzzy
+#| msgid "Show help options"
+msgid "Show extra information"
+msgstr "نمایش گزینه‌های راهنما"
+
+#: gio/gio-tool-mount.c:75
+msgid "The numeric PIM when unlocking a VeraCrypt volume"
+msgstr ""
+
+#: gio/gio-tool-mount.c:75
+#, fuzzy
+#| msgctxt "GDateTime"
+#| msgid "PM"
+msgid "PIM"
+msgstr "ب‌ظ"
+
+#: gio/gio-tool-mount.c:76
+msgid "Mount a TCRYPT hidden volume"
+msgstr ""
+
+#: gio/gio-tool-mount.c:77
+msgid "Mount a TCRYPT system volume"
+msgstr ""
+
+#: gio/gio-tool-mount.c:265 gio/gio-tool-mount.c:297
+msgid "Anonymous access denied"
+msgstr ""
+
+#: gio/gio-tool-mount.c:522
+msgid "No drive for device file"
+msgstr ""
+
+#: gio/gio-tool-mount.c:1014
+msgid "No volume for given ID"
+msgstr ""
+
+#: gio/gio-tool-mount.c:1203
+msgid "Mount or unmount the locations."
+msgstr ""
+
+#: gio/gio-tool-move.c:42
+msgid "Don’t use copy and delete fallback"
+msgstr ""
+
+#: gio/gio-tool-move.c:99
+msgid "Move one or more files from SOURCE to DEST."
+msgstr ""
+
+#: gio/gio-tool-move.c:101
+msgid ""
+"gio move is similar to the traditional mv utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location"
+msgstr ""
+
+#: gio/gio-tool-move.c:143
+#, fuzzy, c-format
+#| msgid "Target file is a directory"
+msgid "Target %s is not a directory"
+msgstr "پرونده هد٠یک شاخه است"
+
+#: gio/gio-tool-open.c:75
+msgid ""
+"Open files with the default application that\n"
+"is registered to handle files of this type."
+msgstr ""
+
+#: gio/gio-tool-remove.c:31 gio/gio-tool-trash.c:33
+msgid "Ignore nonexistent files, never prompt"
+msgstr ""
+
+#: gio/gio-tool-remove.c:52
+msgid "Delete the given files."
+msgstr ""
+
+#: gio/gio-tool-rename.c:45
+msgid "NAME"
+msgstr ""
+
+#: gio/gio-tool-rename.c:50
+msgid "Rename a file."
+msgstr ""
+
+#: gio/gio-tool-rename.c:70
+#, fuzzy
+#| msgid "Missing argument for %s"
+msgid "Missing argument"
+msgstr "â€%s یک آرگومان Ú©Ù… دارد"
+
+#: gio/gio-tool-rename.c:76 gio/gio-tool-save.c:190 gio/gio-tool-set.c:137
+msgid "Too many arguments"
+msgstr ""
+
+#: gio/gio-tool-rename.c:95
+#, c-format
+msgid "Rename successful. New uri: %s\n"
+msgstr ""
+
+#: gio/gio-tool-save.c:50
+msgid "Only create if not existing"
+msgstr ""
+
+#: gio/gio-tool-save.c:51
+msgid "Append to end of file"
+msgstr ""
+
+#: gio/gio-tool-save.c:52
+msgid "When creating, restrict access to the current user"
+msgstr ""
+
+#: gio/gio-tool-save.c:53
+msgid "When replacing, replace as if the destination did not exist"
+msgstr ""
+
+#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#: gio/gio-tool-save.c:55
+msgid "Print new etag at end"
+msgstr ""
+
+#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#: gio/gio-tool-save.c:57
+msgid "The etag of the file being overwritten"
+msgstr ""
+
+#: gio/gio-tool-save.c:57
+msgid "ETAG"
+msgstr ""
+
+#: gio/gio-tool-save.c:113
+#, fuzzy
+msgid "Error reading from standard input"
+msgstr "خطا در خواندن پروندهٔ «‎%s»â€: %s"
+
+#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#: gio/gio-tool-save.c:139
+msgid "Etag not available\n"
+msgstr ""
+
+#: gio/gio-tool-save.c:163
+msgid "Read from standard input and save to DEST."
+msgstr ""
+
+#: gio/gio-tool-save.c:183
+msgid "No destination given"
+msgstr ""
+
+#: gio/gio-tool-set.c:33
+msgid "Type of the attribute"
+msgstr ""
+
+#: gio/gio-tool-set.c:33
+msgid "TYPE"
+msgstr ""
+
+#: gio/gio-tool-set.c:89
+msgid "ATTRIBUTE"
+msgstr ""
-#: ../gio/glib-compile-resources.c:335
-msgid "Error processing input file with xmllint"
+#: gio/gio-tool-set.c:89
+msgid "VALUE"
msgstr ""
-#: ../gio/glib-compile-resources.c:390
-msgid "Error processing input file with to-pixdata"
+#: gio/gio-tool-set.c:93
+msgid "Set a file attribute of LOCATION."
msgstr ""
-#: ../gio/glib-compile-resources.c:403
+#: gio/gio-tool-set.c:113
+#, fuzzy
+#| msgid "Error: Destination is not specified\n"
+msgid "Location not specified"
+msgstr "خطا: مقصد مشخص نشده است\n"
+
+#: gio/gio-tool-set.c:120
+msgid "Attribute not specified"
+msgstr ""
+
+#: gio/gio-tool-set.c:130
+#, fuzzy
+#| msgid "No address specified"
+msgid "Value not specified"
+msgstr "هیچ آدرسی مشخص نشده است"
+
+#: gio/gio-tool-set.c:180
+#, fuzzy, c-format
+#| msgid "Invalid attribute type (string expected)"
+msgid "Invalid attribute type “%sâ€"
+msgstr "نوع مشخصه نامعتبر است (رشته مورد انتظار بود)"
+
+#: gio/gio-tool-trash.c:34
+msgid "Empty the trash"
+msgstr ""
+
+#: gio/gio-tool-trash.c:35
+msgid "List files in the trash with their original locations"
+msgstr ""
+
+#: gio/gio-tool-trash.c:36
+msgid "Restore a file from trash to its original location (possibly recreating the directory)"
+msgstr ""
+
+#: gio/gio-tool-trash.c:106
+#, fuzzy
+#| msgid "Unable to find terminal required for application"
+msgid "Unable to find original path"
+msgstr "نمی‌توان پایانه‌ی لازم برای این برنامه را پیدا کرد"
+
+#: gio/gio-tool-trash.c:123
+#, fuzzy
+#| msgid "Unable to create socket: %s"
+msgid "Unable to recreate original location: "
+msgstr "نمی‌توان سوکت را ساخت: %s"
+
+#: gio/gio-tool-trash.c:136
+msgid "Unable to move file to its original location: "
+msgstr ""
+
+#: gio/gio-tool-trash.c:225
+msgid "Move/Restore files or directories to the trash."
+msgstr ""
+
+#: gio/gio-tool-trash.c:227
+msgid ""
+"Note: for --restore switch, if the original location of the trashed file \n"
+"already exists, it will not be overwritten unless --force is set."
+msgstr ""
+
+#: gio/gio-tool-trash.c:258
+msgid "Location given doesn't start with trash:///"
+msgstr ""
+
+#: gio/gio-tool-tree.c:33
+msgid "Follow symbolic links, mounts and shortcuts"
+msgstr ""
+
+#: gio/gio-tool-tree.c:244
+msgid "List contents of directories in a tree-like format."
+msgstr ""
+
+#: gio/glib-compile-resources.c:140 gio/glib-compile-schemas.c:1514
+#, c-format
+msgid "Element <%s> not allowed inside <%s>"
+msgstr ""
+
+#: gio/glib-compile-resources.c:144
+#, c-format
+msgid "Element <%s> not allowed at toplevel"
+msgstr ""
+
+#: gio/glib-compile-resources.c:234
+#, c-format
+msgid "File %s appears multiple times in the resource"
+msgstr ""
+
+#: gio/glib-compile-resources.c:245
+#, fuzzy, c-format
+msgid "Failed to locate “%s†in any source directory"
+msgstr "تغییر به شاخهٔ «%s» شکست خورد (%s)"
+
+#: gio/glib-compile-resources.c:256
+#, fuzzy, c-format
+msgid "Failed to locate “%s†in current directory"
+msgstr "تغییر به شاخهٔ «%s» شکست خورد (%s)"
+
+#: gio/glib-compile-resources.c:290
+#, fuzzy, c-format
+msgid "Unknown processing option “%sâ€"
+msgstr "گزینهٔ نامعلوم %s"
+
+#. Translators: the first %s is a gresource XML attribute,
+#. * the second %s is an environment variable, and the third
+#. * %s is a command line tool
+#.
+#: gio/glib-compile-resources.c:310 gio/glib-compile-resources.c:367 gio/glib-compile-resources.c:424
+#, c-format
+msgid "%s preprocessing requested, but %s is not set, and %s is not in PATH"
+msgstr ""
+
+#: gio/glib-compile-resources.c:457
#, c-format
msgid "Error reading file %s: %s"
msgstr "خطا در خواندن پرونده %s: %s"
-#: ../gio/glib-compile-resources.c:423
+#: gio/glib-compile-resources.c:477
#, c-format
msgid "Error compressing file %s"
msgstr "خطا در هنگام Ùشرده‌سازی پرونده %s"
-#: ../gio/glib-compile-resources.c:487
-#: ../gio/glib-compile-schemas.c:1561
+#: gio/glib-compile-resources.c:541
#, c-format
msgid "text may not appear inside <%s>"
msgstr ""
-#: ../gio/glib-compile-resources.c:610
-msgid "name of the output file"
-msgstr "نام پرونده خروجی"
+#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+msgid "Show program version and exit"
+msgstr ""
-#: ../gio/glib-compile-resources.c:610
-#: ../gio/glib-compile-resources.c:643
-msgid "FILE"
-msgstr "FILE"
+#: gio/glib-compile-resources.c:738
+#, fuzzy
+#| msgid "name of the output file"
+msgid "Name of the output file"
+msgstr "نام پرونده خروجی"
-#: ../gio/glib-compile-resources.c:611
-msgid "The directories where files are to be read from (default to current directory)"
+#: gio/glib-compile-resources.c:739
+msgid "The directories to load files referenced in FILE from (default: current directory)"
msgstr ""
-#: ../gio/glib-compile-resources.c:611
-#: ../gio/glib-compile-schemas.c:1989
-#: ../gio/glib-compile-schemas.c:2019
+#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173 gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "DIRECTORY"
-#: ../gio/glib-compile-resources.c:612
+#: gio/glib-compile-resources.c:740
msgid "Generate output in the format selected for by the target filename extension"
msgstr ""
-#: ../gio/glib-compile-resources.c:613
+#: gio/glib-compile-resources.c:741
msgid "Generate source header"
msgstr ""
-#: ../gio/glib-compile-resources.c:614
-msgid "Generate sourcecode used to link in the resource file into your code"
+#: gio/glib-compile-resources.c:742
+msgid "Generate source code used to link in the resource file into your code"
msgstr ""
-#: ../gio/glib-compile-resources.c:615
+#: gio/glib-compile-resources.c:743
msgid "Generate dependency list"
msgstr ""
-#: ../gio/glib-compile-resources.c:616
-msgid "Don't automatically create and register resource"
+#: gio/glib-compile-resources.c:744
+msgid "Name of the dependency file to generate"
+msgstr ""
+
+#: gio/glib-compile-resources.c:745
+msgid "Include phony targets in the generated dependency file"
+msgstr ""
+
+#: gio/glib-compile-resources.c:746
+msgid "Don’t automatically create and register resource"
+msgstr ""
+
+#: gio/glib-compile-resources.c:747
+msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr ""
-#: ../gio/glib-compile-resources.c:617
+#: gio/glib-compile-resources.c:748
+msgid "Don’t embed resource data in the C file; assume it's linked externally instead"
+msgstr ""
+
+#: gio/glib-compile-resources.c:749
msgid "C identifier name used for the generated source code"
msgstr ""
-#: ../gio/glib-compile-resources.c:646
+#: gio/glib-compile-resources.c:775
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
"and the resource file have the extension called .gresource."
msgstr ""
-#: ../gio/glib-compile-resources.c:662
-#, c-format
+#: gio/glib-compile-resources.c:797
msgid "You should give exactly one file name\n"
msgstr ""
-#: ../gio/glib-compile-schemas.c:774
-msgid "empty names are not permitted"
+#: gio/glib-compile-schemas.c:92
+#, c-format
+msgid "nick must be a minimum of 2 characters"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:103
+#, fuzzy, c-format
+#| msgid "Invalid filename %s"
+msgid "Invalid numeric value"
+msgstr "نام‌پرونده نامعتبر: %s"
+
+#: gio/glib-compile-schemas.c:111
+#, fuzzy, c-format
+#| msgid "<%s id='%s'> already specified"
+msgid "<value nick='%s'/> already specified"
+msgstr "<%s id='%s'> از قبل مشخص شده است"
+
+#: gio/glib-compile-schemas.c:119
+#, fuzzy, c-format
+#| msgid "<%s id='%s'> already specified"
+msgid "value='%s' already specified"
+msgstr "<%s id='%s'> از قبل مشخص شده است"
+
+#: gio/glib-compile-schemas.c:133
+#, c-format
+msgid "flags values must have at most 1 bit set"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:158
+#, c-format
+msgid "<%s> must contain at least one <value>"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:314
+#, c-format
+msgid "<%s> is not contained in the specified range"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:326
+#, c-format
+msgid "<%s> is not a valid member of the specified enumerated type"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:332
+#, c-format
+msgid "<%s> contains string not in the specified flags type"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:338
+#, c-format
+msgid "<%s> contains a string not in <choices>"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:372
+msgid "<range/> already specified for this key"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:390
+#, c-format
+msgid "<range> not allowed for keys of type “%sâ€"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:407
+#, c-format
+msgid "<range> specified minimum is greater than maximum"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:432
+#, c-format
+msgid "unsupported l10n category: %s"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:440
+msgid "l10n requested, but no gettext domain given"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:452
+msgid "translation context given for value without l10n enabled"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:474
+#, c-format
+msgid "Failed to parse <default> value of type “%sâ€: "
+msgstr ""
+
+#: gio/glib-compile-schemas.c:491
+msgid "<choices> cannot be specified for keys tagged as having an enumerated type"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:500
+#, fuzzy
+#| msgid "<%s id='%s'> already specified"
+msgid "<choices> already specified for this key"
+msgstr "<%s id='%s'> از قبل مشخص شده است"
+
+#: gio/glib-compile-schemas.c:512
+#, c-format
+msgid "<choices> not allowed for keys of type “%sâ€"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:528
+#, c-format
+msgid "<choice value='%s'/> already given"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:543
+#, c-format
+msgid "<choices> must contain at least one <choice>"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:557
+#, fuzzy
+#| msgid "<%s id='%s'> already specified"
+msgid "<aliases> already specified for this key"
+msgstr "<%s id='%s'> از قبل مشخص شده است"
+
+#: gio/glib-compile-schemas.c:561
+msgid "<aliases> can only be specified for keys with enumerated or flags types or after <choices>"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:580
+#, c-format
+msgid "<alias value='%s'/> given when “%s†is already a member of the enumerated type"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:586
+#, c-format
+msgid "<alias value='%s'/> given when <choice value='%s'/> was already given"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:594
+#, fuzzy, c-format
+#| msgid "<%s id='%s'> already specified"
+msgid "<alias value='%s'/> already specified"
+msgstr "<%s id='%s'> از قبل مشخص شده است"
+
+#: gio/glib-compile-schemas.c:604
+#, c-format
+msgid "alias target “%s†is not in enumerated type"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:605
+#, c-format
+msgid "alias target “%s†is not in <choices>"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:620
+#, c-format
+msgid "<aliases> must contain at least one <alias>"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:797
+#, fuzzy
+#| msgid "empty names are not permitted"
+msgid "Empty names are not permitted"
msgstr "نام‌های خالی مجاز نیستند"
-#: ../gio/glib-compile-schemas.c:784
+#: gio/glib-compile-schemas.c:807
#, c-format
-msgid "invalid name '%s': names must begin with a lowercase letter"
+msgid "Invalid name “%sâ€: names must begin with a lowercase letter"
msgstr ""
-#: ../gio/glib-compile-schemas.c:796
+#: gio/glib-compile-schemas.c:819
#, c-format
-msgid "invalid name '%s': invalid character '%c'; only lowercase letters, numbers and dash ('-') are permitted."
+msgid ""
+"Invalid name “%sâ€: invalid character “%câ€; only lowercase letters, numbers and hyphen (“-â€) are permitted"
msgstr ""
-#: ../gio/glib-compile-schemas.c:805
+#: gio/glib-compile-schemas.c:828
#, c-format
-msgid "invalid name '%s': two successive dashes ('--') are not permitted."
+msgid "Invalid name “%sâ€: two successive hyphens (“--â€) are not permitted"
msgstr ""
-#: ../gio/glib-compile-schemas.c:814
+#: gio/glib-compile-schemas.c:837
#, c-format
-msgid "invalid name '%s': the last character may not be a dash ('-')."
+msgid "Invalid name “%sâ€: the last character may not be a hyphen (“-â€)"
msgstr ""
-#: ../gio/glib-compile-schemas.c:822
+#: gio/glib-compile-schemas.c:845
#, c-format
-msgid "invalid name '%s': maximum length is 1024"
+msgid "Invalid name “%sâ€: maximum length is 1024"
msgstr ""
-#: ../gio/glib-compile-schemas.c:891
+#: gio/glib-compile-schemas.c:917
#, c-format
msgid "<child name='%s'> already specified"
msgstr ""
-#: ../gio/glib-compile-schemas.c:917
-msgid "cannot add keys to a 'list-of' schema"
+#: gio/glib-compile-schemas.c:943
+msgid "Cannot add keys to a “list-of†schema"
msgstr ""
-#: ../gio/glib-compile-schemas.c:928
+#: gio/glib-compile-schemas.c:954
#, c-format
msgid "<key name='%s'> already specified"
msgstr ""
-#: ../gio/glib-compile-schemas.c:946
+#: gio/glib-compile-schemas.c:972
#, c-format
msgid "<key name='%s'> shadows <key name='%s'> in <schema id='%s'>; use <override> to modify value"
msgstr ""
-#: ../gio/glib-compile-schemas.c:957
+#: gio/glib-compile-schemas.c:983
#, c-format
-msgid "exactly one of 'type', 'enum' or 'flags' must be specified as an attribute to <key>"
+msgid "Exactly one of “typeâ€, “enum†or “flags†must be specified as an attribute to <key>"
msgstr ""
-#: ../gio/glib-compile-schemas.c:976
+#: gio/glib-compile-schemas.c:1002
#, c-format
msgid "<%s id='%s'> not (yet) defined."
msgstr ""
-#: ../gio/glib-compile-schemas.c:991
-#, c-format
-msgid "invalid GVariant type string '%s'"
-msgstr ""
+#: gio/glib-compile-schemas.c:1017
+#, fuzzy, c-format
+#| msgid "Invalid attribute type (string expected)"
+msgid "Invalid GVariant type string “%sâ€"
+msgstr "نوع مشخصه نامعتبر است (رشته مورد انتظار بود)"
-#: ../gio/glib-compile-schemas.c:1021
-msgid "<override> given but schema isn't extending anything"
+#: gio/glib-compile-schemas.c:1047
+msgid "<override> given but schema isn’t extending anything"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1034
+#: gio/glib-compile-schemas.c:1060
#, c-format
-msgid "no <key name='%s'> to override"
+msgid "No <key name='%s'> to override"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1042
+#: gio/glib-compile-schemas.c:1068
#, c-format
msgid "<override name='%s'> already specified"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1113
+#: gio/glib-compile-schemas.c:1141
#, c-format
msgid "<schema id='%s'> already specified"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1125
+#: gio/glib-compile-schemas.c:1153
#, c-format
-msgid "<schema id='%s'> extends not yet existing schema '%s'"
+msgid "<schema id='%s'> extends not yet existing schema “%sâ€"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1141
+#: gio/glib-compile-schemas.c:1169
#, c-format
-msgid "<schema id='%s'> is list of not yet existing schema '%s'"
+msgid "<schema id='%s'> is list of not yet existing schema “%sâ€"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1149
-#, c-format
-msgid "Can not be a list of a schema with a path"
+#: gio/glib-compile-schemas.c:1177
+#, fuzzy, c-format
+#| msgid "Can not be a list of a schema with a path"
+msgid "Cannot be a list of a schema with a path"
msgstr "نمی‌توان با یک مسیر Ùهرست یک Ø´Ùما بود"
-#: ../gio/glib-compile-schemas.c:1159
-#, c-format
-msgid "Can not extend a schema with a path"
-msgstr ""
+#: gio/glib-compile-schemas.c:1187
+#, fuzzy, c-format
+#| msgid "Can not be a list of a schema with a path"
+msgid "Cannot extend a schema with a path"
+msgstr "نمی‌توان با یک مسیر Ùهرست یک Ø´Ùما بود"
-#: ../gio/glib-compile-schemas.c:1169
+#: gio/glib-compile-schemas.c:1197
#, c-format
msgid "<schema id='%s'> is a list, extending <schema id='%s'> which is not a list"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1179
+#: gio/glib-compile-schemas.c:1207
#, c-format
-msgid "<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but '%s' does not extend '%s'"
+msgid "<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but “%s†does not extend “%sâ€"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1196
-#, c-format
-msgid "a path, if given, must begin and end with a slash"
+#: gio/glib-compile-schemas.c:1224
+#, fuzzy, c-format
+#| msgid "a path, if given, must begin and end with a slash"
+msgid "A path, if given, must begin and end with a slash"
msgstr "یک مسیر، اگر داده شود، باید با یک خط مورب شروع و خاتمه یابد"
-#: ../gio/glib-compile-schemas.c:1203
-#, c-format
-msgid "the path of a list must end with ':/'"
+#: gio/glib-compile-schemas.c:1231
+#, fuzzy, c-format
+#| msgid "the path of a list must end with ':/'"
+msgid "The path of a list must end with “:/â€"
msgstr "مسیر یک Ùهرست باید با «:/» خاتمه پیدا کند"
-#: ../gio/glib-compile-schemas.c:1229
+#: gio/glib-compile-schemas.c:1240
+#, c-format
+msgid ""
+"Warning: Schema “%s†has path “%sâ€. Paths starting with “/apps/â€, “/desktop/†or “/system/†are "
+"deprecated."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1270
#, c-format
msgid "<%s id='%s'> already specified"
msgstr "<%s id='%s'> از قبل مشخص شده است"
-#. Translators: Do not translate "--strict".
-#: ../gio/glib-compile-schemas.c:1747
-#: ../gio/glib-compile-schemas.c:1818
-#: ../gio/glib-compile-schemas.c:1894
+#: gio/glib-compile-schemas.c:1420 gio/glib-compile-schemas.c:1436
#, c-format
-msgid "--strict was specified; exiting.\n"
+msgid "Only one <%s> element allowed inside <%s>"
msgstr ""
-#: ../gio/glib-compile-schemas.c:1755
+#: gio/glib-compile-schemas.c:1518
#, c-format
-msgid "This entire file has been ignored.\n"
-msgstr "تمام پرونده نادیده گرÙته شده است.\n"
+msgid "Element <%s> not allowed at the top level"
+msgstr ""
-#: ../gio/glib-compile-schemas.c:1814
+#: gio/glib-compile-schemas.c:1536
+msgid "Element <default> is required in <key>"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1626
#, c-format
-msgid "Ignoring this file.\n"
+msgid "Text may not appear inside <%s>"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1694
+#, c-format
+msgid "Warning: undefined reference to <schema id='%s'/>"
+msgstr ""
+
+#. Translators: Do not translate "--strict".
+#: gio/glib-compile-schemas.c:1833 gio/glib-compile-schemas.c:1912
+msgid "--strict was specified; exiting."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1845
+#, fuzzy
+#| msgid "This entire file has been ignored.\n"
+msgid "This entire file has been ignored."
+msgstr "تمام پرونده نادیده گرÙته شده است.\n"
+
+#: gio/glib-compile-schemas.c:1908
+#, fuzzy
+#| msgid "Ignoring this file.\n"
+msgid "Ignoring this file."
msgstr "نادیده گرÙتن این پرونده.\n"
-#: ../gio/glib-compile-schemas.c:1854
+#: gio/glib-compile-schemas.c:1963
#, c-format
-msgid "No such key '%s' in schema '%s' as specified in override file '%s'"
+msgid "No such key “%s†in schema “%s†as specified in override file “%sâ€; ignoring override for this key."
msgstr ""
-#: ../gio/glib-compile-schemas.c:1860
-#: ../gio/glib-compile-schemas.c:1918
-#: ../gio/glib-compile-schemas.c:1946
+#: gio/glib-compile-schemas.c:1971
#, c-format
-msgid "; ignoring override for this key.\n"
+msgid ""
+"No such key “%s†in schema “%s†as specified in override file “%s†and --strict was specified; exiting."
msgstr ""
-#: ../gio/glib-compile-schemas.c:1864
-#: ../gio/glib-compile-schemas.c:1922
-#: ../gio/glib-compile-schemas.c:1950
+#: gio/glib-compile-schemas.c:1993
#, c-format
-msgid " and --strict was specified; exiting.\n"
+msgid ""
+"Cannot provide per-desktop overrides for localized key “%s†in schema “%s†(override file “%sâ€); ignoring "
+"override for this key."
msgstr ""
-#: ../gio/glib-compile-schemas.c:1880
+#: gio/glib-compile-schemas.c:2002
#, c-format
-msgid "error parsing key '%s' in schema '%s' as specified in override file '%s': %s. "
+msgid ""
+"Cannot provide per-desktop overrides for localized key “%s†in schema “%s†(override file “%sâ€) and --"
+"strict was specified; exiting."
msgstr ""
-#: ../gio/glib-compile-schemas.c:1890
+#: gio/glib-compile-schemas.c:2026
#, c-format
-msgid "Ignoring override for this key.\n"
+msgid ""
+"Error parsing key “%s†in schema “%s†as specified in override file “%sâ€: %s. Ignoring override for this "
+"key."
msgstr ""
-#: ../gio/glib-compile-schemas.c:1908
+#: gio/glib-compile-schemas.c:2038
#, c-format
-msgid "override for key '%s' in schema '%s' in override file '%s' is out of the range given in the schema"
+msgid ""
+"Error parsing key “%s†in schema “%s†as specified in override file “%sâ€: %s. --strict was specified; "
+"exiting."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:2065
+#, c-format
+msgid ""
+"Override for key “%s†in schema “%s†in override file “%s†is outside the range given in the schema; "
+"ignoring override for this key."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:2075
+#, c-format
+msgid ""
+"Override for key “%s†in schema “%s†in override file “%s†is outside the range given in the schema and --"
+"strict was specified; exiting."
msgstr ""
-#: ../gio/glib-compile-schemas.c:1936
+#: gio/glib-compile-schemas.c:2101
#, c-format
-msgid "override for key '%s' in schema '%s' in override file '%s' is not in the list of valid choices"
+msgid ""
+"Override for key “%s†in schema “%s†in override file “%s†is not in the list of valid choices; ignoring "
+"override for this key."
msgstr ""
-#: ../gio/glib-compile-schemas.c:1989
-msgid "where to store the gschemas.compiled file"
+#: gio/glib-compile-schemas.c:2111
+#, c-format
+msgid ""
+"Override for key “%s†in schema “%s†in override file “%s†is not in the list of valid choices and --"
+"strict was specified; exiting."
msgstr ""
-#: ../gio/glib-compile-schemas.c:1990
+#: gio/glib-compile-schemas.c:2173
+#, fuzzy
+#| msgid "Do not write the gschema.compiled file"
+msgid "Where to store the gschemas.compiled file"
+msgstr "بر روی پرونده‌ی gschema.compiled ننویس"
+
+#: gio/glib-compile-schemas.c:2174
msgid "Abort on any errors in schemas"
msgstr "قطع کردن با رخداد٠هر نوع خطا در Ø´Ùماها"
-#: ../gio/glib-compile-schemas.c:1991
+#: gio/glib-compile-schemas.c:2175
msgid "Do not write the gschema.compiled file"
msgstr "بر روی پرونده‌ی gschema.compiled ننویس"
-#: ../gio/glib-compile-schemas.c:1992
+#: gio/glib-compile-schemas.c:2176
msgid "Do not enforce key name restrictions"
msgstr ""
-#: ../gio/glib-compile-schemas.c:2022
+#: gio/glib-compile-schemas.c:2205
msgid ""
"Compile all GSettings schema files into a schema cache.\n"
"Schema files are required to have the extension .gschema.xml,\n"
"and the cache file is called gschemas.compiled."
msgstr ""
-#: ../gio/glib-compile-schemas.c:2038
-#, c-format
-msgid "You should give exactly one directory name\n"
+#: gio/glib-compile-schemas.c:2226
+#, fuzzy
+#| msgid "You should give exactly one directory name\n"
+msgid "You should give exactly one directory name"
msgstr "شما باید دقیقا نام یک دایرکتوری را بدهید\n"
-#: ../gio/glib-compile-schemas.c:2077
-#, c-format
-msgid "No schema files found: "
+#: gio/glib-compile-schemas.c:2269
+#, fuzzy
+#| msgid "No schema files found: "
+msgid "No schema files found: doing nothing."
msgstr "هیچ پرونده شماای پیدا نشد:"
-#: ../gio/glib-compile-schemas.c:2080
-#, c-format
-msgid "doing nothing.\n"
-msgstr "هیچ‌کاری انجام نمی‌شود.\n"
-
-#: ../gio/glib-compile-schemas.c:2083
-#, c-format
-msgid "removed existing output file.\n"
+#: gio/glib-compile-schemas.c:2271
+#, fuzzy
+#| msgid "removed existing output file.\n"
+msgid "No schema files found: removed existing output file."
msgstr "پرونده خروجی Ùعلی حذ٠شد.\n"
-#: ../gio/glocaldirectorymonitor.c:287
-msgid "Unable to find default local directory monitor type"
-msgstr ""
-
-#: ../gio/glocalfile.c:571
-#: ../gio/win32/gwinhttpfile.c:422
+#: gio/glocalfile.c:549 gio/win32/gwinhttpfile.c:436
#, c-format
msgid "Invalid filename %s"
-msgstr "نام‌پرونده نامعتبر: %s"
+msgstr "نام پرونده نامعتبر: %s"
-#: ../gio/glocalfile.c:948
-#, c-format
-msgid "Error getting filesystem info: %s"
+#: gio/glocalfile.c:982
+#, fuzzy, c-format
+#| msgid "Error getting filesystem info: %s"
+msgid "Error getting filesystem info for %s: %s"
msgstr "خطا در دریاÙت اطلاعات سیستم‌پرونده‌: %s"
-#: ../gio/glocalfile.c:1116
-msgid "Can't rename root directory"
+#. Translators: This is an error message when trying to find
+#. * the enclosing (user visible) mount of a file, but none
+#. * exists.
+#.
+#: gio/glocalfile.c:1123
+#, c-format
+msgid "Containing mount for file %s not found"
+msgstr ""
+
+#: gio/glocalfile.c:1146
+#, fuzzy
+#| msgid "Can't rename root directory"
+msgid "Can’t rename root directory"
msgstr "نمی‌توان شاخه ریشه را نام‌گذاری مجدد کرد"
-#: ../gio/glocalfile.c:1136
-#: ../gio/glocalfile.c:1162
-#, c-format
-msgid "Error renaming file: %s"
-msgstr "خطا در تغییر نام پرونده: %s"
+#: gio/glocalfile.c:1164 gio/glocalfile.c:1187
+#, fuzzy, c-format
+#| msgid "Error reading file %s: %s"
+msgid "Error renaming file %s: %s"
+msgstr "خطا در خواندن پرونده %s: %s"
-#: ../gio/glocalfile.c:1145
-msgid "Can't rename file, filename already exists"
+#: gio/glocalfile.c:1171
+#, fuzzy
+#| msgid "Can't rename file, filename already exists"
+msgid "Can’t rename file, filename already exists"
msgstr "نمی‌توان پرونده را مجددا نام‌گذاری کرد، نام پرونده از قبل وجود دارد"
-#: ../gio/glocalfile.c:1158
-#: ../gio/glocalfile.c:2162
-#: ../gio/glocalfile.c:2191
-#: ../gio/glocalfile.c:2351
-#: ../gio/glocalfileoutputstream.c:581
-#: ../gio/glocalfileoutputstream.c:634
-#: ../gio/glocalfileoutputstream.c:679
-#: ../gio/glocalfileoutputstream.c:1167
+#: gio/glocalfile.c:1184 gio/glocalfile.c:2371 gio/glocalfile.c:2399 gio/glocalfile.c:2538
+#: gio/glocalfileoutputstream.c:656
msgid "Invalid filename"
msgstr "نام پرونده نامعتبر"
-#: ../gio/glocalfile.c:1325
-#: ../gio/glocalfile.c:1349
-msgid "Can't open directory"
-msgstr "نمی‌توان شاخه را باز کرد"
-
-#: ../gio/glocalfile.c:1333
-#, c-format
-msgid "Error opening file: %s"
-msgstr "خطا در هنگام باز کردن پرونده: %s"
+#: gio/glocalfile.c:1352 gio/glocalfile.c:1363
+#, fuzzy, c-format
+#| msgid "Error opening file '%s': %s"
+msgid "Error opening file %s: %s"
+msgstr "خطا در هنگام باز کردن پرونده «%s»: %s"
-#: ../gio/glocalfile.c:1474
-#, c-format
-msgid "Error removing file: %s"
+#: gio/glocalfile.c:1488
+#, fuzzy, c-format
+#| msgid "Error removing file: %s"
+msgid "Error removing file %s: %s"
msgstr "خطا در حذ٠پرونده: %s"
-#: ../gio/glocalfile.c:1841
-#, c-format
-msgid "Error trashing file: %s"
+#: gio/glocalfile.c:1982 gio/glocalfile.c:1993
+#, fuzzy, c-format
+#| msgid "Error trashing file: %s"
+msgid "Error trashing file %s: %s"
msgstr "خطا در انتقال پرونده به زباله‌دان: %s"
-#: ../gio/glocalfile.c:1864
-#, c-format
-msgid "Unable to create trash dir %s: %s"
+#: gio/glocalfile.c:2031
+#, fuzzy, c-format
+#| msgid "Unable to create trash dir %s: %s"
+msgid "Unable to create trash directory %s: %s"
msgstr "نمی‌توان شاخه زباله‌دان %s را ساخت: %s"
-#: ../gio/glocalfile.c:1885
-msgid "Unable to find toplevel directory for trash"
-msgstr ""
+#: gio/glocalfile.c:2052
+#, fuzzy, c-format
+#| msgid "Failed to change to directory '%s' (%s)"
+msgid "Unable to find toplevel directory to trash %s"
+msgstr "تغییر به شاخهٔ «%s» شکست خورد (%s)"
-#: ../gio/glocalfile.c:1964
-#: ../gio/glocalfile.c:1984
-msgid "Unable to find or create trash directory"
+#: gio/glocalfile.c:2060
+#, c-format
+msgid "Trashing on system internal mounts is not supported"
msgstr ""
-#: ../gio/glocalfile.c:2018
-#, c-format
-msgid "Unable to create trashing info file: %s"
+#: gio/glocalfile.c:2146 gio/glocalfile.c:2174
+#, fuzzy, c-format
+#| msgid "Unable to create trash dir %s: %s"
+msgid "Unable to find or create trash directory %s to trash %s"
+msgstr "نمی‌توان شاخه زباله‌دان %s را ساخت: %s"
+
+#: gio/glocalfile.c:2220
+#, fuzzy, c-format
+#| msgid "Unable to create trashing info file: %s"
+msgid "Unable to create trashing info file for %s: %s"
msgstr "نمی‌توان پرونده اطلاعات زباله‌دان را ایجاد کرد: %s"
-#: ../gio/glocalfile.c:2047
-#: ../gio/glocalfile.c:2052
-#: ../gio/glocalfile.c:2132
-#: ../gio/glocalfile.c:2139
-#, c-format
-msgid "Unable to trash file: %s"
+#: gio/glocalfile.c:2282
+#, fuzzy, c-format
+#| msgid "Unable to trash file: %s"
+msgid "Unable to trash file %s across filesystem boundaries"
msgstr "نمی‌توان پرونده را به زباله‌دان Ùرستاد: %s"
-#: ../gio/glocalfile.c:2140
-#: ../glib/gregex.c:213
-msgid "internal error"
-msgstr "خطا داخلی"
+#: gio/glocalfile.c:2286 gio/glocalfile.c:2342
+#, fuzzy, c-format
+#| msgid "Unable to trash file: %s"
+msgid "Unable to trash file %s: %s"
+msgstr "نمی‌توان پرونده را به زباله‌دان Ùرستاد: %s"
-#: ../gio/glocalfile.c:2166
-#, c-format
-msgid "Error creating directory: %s"
-msgstr "خطا در هنگام ساخت شاخه: %s"
+#: gio/glocalfile.c:2348
+#, fuzzy, c-format
+#| msgid "Unable to trash file: %s"
+msgid "Unable to trash file %s"
+msgstr "نمی‌توان پرونده را به زباله‌دان Ùرستاد: %s"
+
+#: gio/glocalfile.c:2374
+#, fuzzy, c-format
+#| msgid "Error creating directory '%s': %s"
+msgid "Error creating directory %s: %s"
+msgstr "خطا در هنگام ساخت شاخه «%s»: %s"
-#: ../gio/glocalfile.c:2195
+#: gio/glocalfile.c:2403
#, c-format
msgid "Filesystem does not support symbolic links"
-msgstr "سیستم‌پرونده‌های از پیوندهای نمادین پشتیبانی نمی‌کند"
+msgstr "سیستم‌پرونده از پیوندهای نمادین پشتیبانی نمی‌کند"
-#: ../gio/glocalfile.c:2199
-#, c-format
-msgid "Error making symbolic link: %s"
+#: gio/glocalfile.c:2406
+#, fuzzy, c-format
+#| msgid "Error making symbolic link: %s"
+msgid "Error making symbolic link %s: %s"
msgstr "خطا در در هنگام ساخت پیوند نمادین: %s"
-#: ../gio/glocalfile.c:2261
-#: ../gio/glocalfile.c:2355
-#, c-format
-msgid "Error moving file: %s"
+#: gio/glocalfile.c:2449 gio/glocalfile.c:2484 gio/glocalfile.c:2541
+#, fuzzy, c-format
+#| msgid "Error moving file: %s"
+msgid "Error moving file %s: %s"
msgstr "خطا در هنگام جابجایی پرونده: %s"
-#: ../gio/glocalfile.c:2284
-msgid "Can't move directory over directory"
-msgstr ""
+#: gio/glocalfile.c:2472
+#, fuzzy
+#| msgid "Can't copy directory over directory"
+msgid "Can’t move directory over directory"
+msgstr "نمي‌توان شاخه را بر روی شاخه رونوشت کرد"
-#: ../gio/glocalfile.c:2311
-#: ../gio/glocalfileoutputstream.c:965
-#: ../gio/glocalfileoutputstream.c:979
-#: ../gio/glocalfileoutputstream.c:994
-#: ../gio/glocalfileoutputstream.c:1010
-#: ../gio/glocalfileoutputstream.c:1024
+#: gio/glocalfile.c:2498 gio/glocalfileoutputstream.c:1108 gio/glocalfileoutputstream.c:1122
+#: gio/glocalfileoutputstream.c:1137 gio/glocalfileoutputstream.c:1154 gio/glocalfileoutputstream.c:1168
msgid "Backup file creation failed"
msgstr "ساخت پرونده پشتیبان شکست خورد"
-#: ../gio/glocalfile.c:2330
+#: gio/glocalfile.c:2517
#, c-format
msgid "Error removing target file: %s"
msgstr "خطا در هنگام حذ٠پرونده هدÙ: %s"
-#: ../gio/glocalfile.c:2344
+#: gio/glocalfile.c:2531
msgid "Move between mounts not supported"
msgstr ""
-#: ../gio/glocalfileinfo.c:719
+#: gio/glocalfile.c:2705
+#, fuzzy, c-format
+#| msgid "could not get remote address: %s"
+msgid "Could not determine the disk usage of %s: %s"
+msgstr "نمی‌توان آدرس دوردست را دریاÙت کرد: %s"
+
+#: gio/glocalfileinfo.c:767
+#, fuzzy
msgid "Attribute value must be non-NULL"
msgstr "مقدار مشخصه نباید non-NULL باشد"
-#: ../gio/glocalfileinfo.c:726
+#: gio/glocalfileinfo.c:774
msgid "Invalid attribute type (string expected)"
msgstr "نوع مشخصه نامعتبر است (رشته مورد انتظار بود)"
-#: ../gio/glocalfileinfo.c:733
+#: gio/glocalfileinfo.c:781
#, fuzzy
msgid "Invalid extended attribute name"
msgstr "نوشتار به‌طور غیرمنتظره‌ای داخل نام یک مشخصه به‌پایان رسید"
-#: ../gio/glocalfileinfo.c:773
+#: gio/glocalfileinfo.c:821
#, fuzzy, c-format
-msgid "Error setting extended attribute '%s': %s"
+msgid "Error setting extended attribute “%sâ€: %s"
msgstr "خطا در باز کردن شاخهٔ «‎%s»â€: %s"
-#: ../gio/glocalfileinfo.c:1426
+#: gio/glocalfileinfo.c:1709 gio/win32/gwinhttpfile.c:191
msgid " (invalid encoding)"
msgstr " (کدگذاری نامعتبر)"
-#: ../gio/glocalfileinfo.c:1527
-#: ../gio/glocalfileoutputstream.c:843
+#: gio/glocalfileinfo.c:1868 gio/glocalfileoutputstream.c:943 gio/glocalfileoutputstream.c:995
#, fuzzy, c-format
-msgid "Error when getting information for file '%s': %s"
+msgid "Error when getting information for file “%sâ€: %s"
msgstr "خطا در بازکردن پرونده Ùعلی «‎%s»â€: %s"
-#: ../gio/glocalfileinfo.c:1779
+#: gio/glocalfileinfo.c:2134
#, fuzzy, c-format
msgid "Error when getting information for file descriptor: %s"
msgstr "خطا در هنگام تنظیم توصیÙ‌گر پرونده: %s"
-#: ../gio/glocalfileinfo.c:1824
+#: gio/glocalfileinfo.c:2179
msgid "Invalid attribute type (uint32 expected)"
msgstr "نوع مشخصه نامعتبر (uint32 مورد انتظار بود)"
-#: ../gio/glocalfileinfo.c:1842
+#: gio/glocalfileinfo.c:2197
msgid "Invalid attribute type (uint64 expected)"
msgstr "نوع مشخصه نامعتبر بود (uint64 مورد انتظار بود)"
-#: ../gio/glocalfileinfo.c:1861
-#: ../gio/glocalfileinfo.c:1880
+#: gio/glocalfileinfo.c:2216 gio/glocalfileinfo.c:2235
msgid "Invalid attribute type (byte string expected)"
msgstr "نوع مشخصه نامعتبر (رشته بایتی مورد انتظار بود)"
-#: ../gio/glocalfileinfo.c:1915
+#: gio/glocalfileinfo.c:2282
msgid "Cannot set permissions on symlinks"
msgstr "نمی‌توان اجازه‌های روی پیوند نمادین را تنظیم کرد"
-#: ../gio/glocalfileinfo.c:1931
+#: gio/glocalfileinfo.c:2298
#, c-format
msgid "Error setting permissions: %s"
msgstr "خطا در هنگام تنظیم اجازه‌ها: %s"
-#: ../gio/glocalfileinfo.c:1982
+#: gio/glocalfileinfo.c:2349
#, c-format
msgid "Error setting owner: %s"
msgstr "خطا در هنگام تنظیم مالک: %s"
-#: ../gio/glocalfileinfo.c:2005
+#: gio/glocalfileinfo.c:2372
msgid "symlink must be non-NULL"
msgstr ""
-#: ../gio/glocalfileinfo.c:2015
-#: ../gio/glocalfileinfo.c:2034
-#: ../gio/glocalfileinfo.c:2045
+#: gio/glocalfileinfo.c:2382 gio/glocalfileinfo.c:2401 gio/glocalfileinfo.c:2412
#, c-format
msgid "Error setting symlink: %s"
msgstr "خطا در تنظیم پیوند نمادین: %s"
-#: ../gio/glocalfileinfo.c:2024
+#: gio/glocalfileinfo.c:2391
msgid "Error setting symlink: file is not a symlink"
msgstr ""
-#: ../gio/glocalfileinfo.c:2150
+#: gio/glocalfileinfo.c:2463
+#, c-format
+msgid "Extra nanoseconds %d for UNIX timestamp %lld are negative"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2472
+#, c-format
+msgid "Extra nanoseconds %d for UNIX timestamp %lld reach 1 second"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2482
+#, c-format
+msgid "UNIX timestamp %lld does not fit into 64 bits"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2493
+#, c-format
+msgid "UNIX timestamp %lld is outside of the range supported by Windows"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2570
+#, c-format
+msgid "File name “%s†cannot be converted to UTF-16"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2589
+#, c-format
+msgid "File “%s†cannot be opened: Windows Error %lu"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2602
+#, fuzzy, c-format
+#| msgid "Error setting modification or access time: %s"
+msgid "Error setting modification or access time for file “%sâ€: %lu"
+msgstr "خطا در هنگام تنظیم کردن زمان دسترسی یا تغییر: %s"
+
+#: gio/glocalfileinfo.c:2703
#, c-format
msgid "Error setting modification or access time: %s"
msgstr "خطا در هنگام تنظیم کردن زمان دسترسی یا تغییر: %s"
-#: ../gio/glocalfileinfo.c:2173
+#: gio/glocalfileinfo.c:2726
msgid "SELinux context must be non-NULL"
msgstr ""
-#: ../gio/glocalfileinfo.c:2188
+#: gio/glocalfileinfo.c:2733
+msgid "SELinux is not enabled on this system"
+msgstr "سیستم SELinux بر روی این سیستم Ùعال نشده است"
+
+#: gio/glocalfileinfo.c:2743
#, c-format
msgid "Error setting SELinux context: %s"
msgstr "خطا در تنظیم Ù…Ùاد SELinux: %s"
-#: ../gio/glocalfileinfo.c:2195
-msgid "SELinux is not enabled on this system"
-msgstr "سیستم SELinux بر روی این سیستم Ùعال نشده است"
-
-#: ../gio/glocalfileinfo.c:2287
+#: gio/glocalfileinfo.c:2836
#, c-format
msgid "Setting attribute %s not supported"
msgstr "تنظیم کردن مشخصه %s پشتیبانی نمی‌شود"
-#: ../gio/glocalfileinputstream.c:185
-#: ../gio/glocalfileoutputstream.c:732
+#: gio/glocalfileinputstream.c:163 gio/glocalfileoutputstream.c:801
#, c-format
msgid "Error reading from file: %s"
msgstr "خطا در هنگام خواندن از پرونده: %s"
-#: ../gio/glocalfileinputstream.c:216
-#: ../gio/glocalfileinputstream.c:228
-#: ../gio/glocalfileinputstream.c:340
-#: ../gio/glocalfileoutputstream.c:470
-#: ../gio/glocalfileoutputstream.c:1042
-#, c-format
-msgid "Error seeking in file: %s"
-msgstr "خطا در هنگام جستجو در پرونده: %s"
-
-#: ../gio/glocalfileinputstream.c:261
-#: ../gio/glocalfileoutputstream.c:256
-#: ../gio/glocalfileoutputstream.c:351
+#: gio/glocalfileinputstream.c:194 gio/glocalfileoutputstream.c:353 gio/glocalfileoutputstream.c:447
#, c-format
msgid "Error closing file: %s"
msgstr "خطا در هنگام بستن پرونده: %s"
-#: ../gio/glocalfilemonitor.c:212
+#: gio/glocalfileinputstream.c:272 gio/glocalfileoutputstream.c:563 gio/glocalfileoutputstream.c:1186
+#, c-format
+msgid "Error seeking in file: %s"
+msgstr "خطا در هنگام جستجو در پرونده: %s"
+
+#: gio/glocalfilemonitor.c:866
msgid "Unable to find default local file monitor type"
msgstr ""
-#: ../gio/glocalfileoutputstream.c:202
-#: ../gio/glocalfileoutputstream.c:235
-#: ../gio/glocalfileoutputstream.c:753
+#: gio/glocalfileoutputstream.c:220 gio/glocalfileoutputstream.c:298 gio/glocalfileoutputstream.c:334
+#: gio/glocalfileoutputstream.c:822
#, c-format
msgid "Error writing to file: %s"
msgstr "خطا در هنگام نوشتن در پرونده: %s"
-#: ../gio/glocalfileoutputstream.c:283
+#: gio/glocalfileoutputstream.c:380
#, c-format
msgid "Error removing old backup link: %s"
msgstr "خطا در هنگام حذ٠کردن پیوند پشتیبانی قدیمی: %s"
-#: ../gio/glocalfileoutputstream.c:297
-#: ../gio/glocalfileoutputstream.c:310
+#: gio/glocalfileoutputstream.c:394 gio/glocalfileoutputstream.c:407
#, c-format
msgid "Error creating backup copy: %s"
msgstr "خطا در هنگام رونشت از پشتیبان: %s"
-#: ../gio/glocalfileoutputstream.c:328
+#: gio/glocalfileoutputstream.c:425
#, c-format
msgid "Error renaming temporary file: %s"
msgstr "خطا خطا در تغییر نام پرونده موقت: %s"
-#: ../gio/glocalfileoutputstream.c:516
-#: ../gio/glocalfileoutputstream.c:1093
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
#, c-format
msgid "Error truncating file: %s"
msgstr "خطا در هنگام کوتاه کردن پرونده: %s"
-#: ../gio/glocalfileoutputstream.c:587
-#: ../gio/glocalfileoutputstream.c:640
-#: ../gio/glocalfileoutputstream.c:685
-#: ../gio/glocalfileoutputstream.c:825
-#: ../gio/glocalfileoutputstream.c:1074
-#: ../gio/glocalfileoutputstream.c:1173
-#, c-format
-msgid "Error opening file '%s': %s"
+#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907 gio/glocalfileoutputstream.c:1218
+#: gio/gsubprocess.c:226
+#, fuzzy, c-format
+#| msgid "Error opening file '%s': %s"
+msgid "Error opening file “%sâ€: %s"
msgstr "خطا در هنگام باز کردن پرونده «%s»: %s"
-#: ../gio/glocalfileoutputstream.c:856
+#: gio/glocalfileoutputstream.c:957
msgid "Target file is a directory"
msgstr "پرونده هد٠یک شاخه است"
-#: ../gio/glocalfileoutputstream.c:861
+#: gio/glocalfileoutputstream.c:971
msgid "Target file is not a regular file"
msgstr "پرونده هد٠یک پرونده معمولی نیست"
-#: ../gio/glocalfileoutputstream.c:873
+#: gio/glocalfileoutputstream.c:1013
msgid "The file was externally modified"
msgstr "پرونده از خارج تغییر کرده است"
-#: ../gio/glocalfileoutputstream.c:1058
+#: gio/glocalfileoutputstream.c:1202
#, c-format
msgid "Error removing old file: %s"
msgstr "خطا در هنگام حذ٠پرونده قدیمی: %s"
-#: ../gio/gmemoryinputstream.c:492
-#: ../gio/gmemoryoutputstream.c:750
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
msgid "Invalid GSeekType supplied"
msgstr ""
-#: ../gio/gmemoryinputstream.c:502
+#: gio/gmemoryinputstream.c:484
msgid "Invalid seek request"
msgstr "درخواست جستجو نامعتبر"
-#: ../gio/gmemoryinputstream.c:526
+#: gio/gmemoryinputstream.c:508
msgid "Cannot truncate GMemoryInputStream"
msgstr ""
-#: ../gio/gmemoryoutputstream.c:496
+#: gio/gmemoryoutputstream.c:567
msgid "Memory output stream not resizable"
msgstr ""
-#: ../gio/gmemoryoutputstream.c:512
+#: gio/gmemoryoutputstream.c:583
msgid "Failed to resize memory output stream"
msgstr ""
-#: ../gio/gmemoryoutputstream.c:600
+#: gio/gmemoryoutputstream.c:673
msgid "Amount of memory required to process the write is larger than available address space"
msgstr ""
-#: ../gio/gmemoryoutputstream.c:760
+#: gio/gmemoryoutputstream.c:782
msgid "Requested seek before the beginning of the stream"
msgstr ""
-#: ../gio/gmemoryoutputstream.c:769
+#: gio/gmemoryoutputstream.c:797
msgid "Requested seek beyond the end of the stream"
msgstr ""
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement unmount.
-#: ../gio/gmount.c:363
-msgid "mount doesn't implement \"unmount\""
-msgstr ""
+#: gio/gmount.c:399
+#, fuzzy
+#| msgid "volume doesn't implement eject"
+msgid "mount doesn’t implement “unmountâ€"
+msgstr "جلد قابلیت eject ندارد"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement eject.
-#: ../gio/gmount.c:442
-msgid "mount doesn't implement \"eject\""
-msgstr ""
+#: gio/gmount.c:475
+#, fuzzy
+#| msgid "volume doesn't implement eject"
+msgid "mount doesn’t implement “ejectâ€"
+msgstr "جلد قابلیت eject ندارد"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement any of unmount or unmount_with_operation.
-#: ../gio/gmount.c:523
-msgid "mount doesn't implement \"unmount\" or \"unmount_with_operation\""
-msgstr ""
+#: gio/gmount.c:553
+#, fuzzy
+#| msgid "volume doesn't implement eject or eject_with_operation"
+msgid "mount doesn’t implement “unmount†or “unmount_with_operationâ€"
+msgstr "جلد قابلیت eject یا eject_with_operation را ندارد"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement any of eject or eject_with_operation.
-#: ../gio/gmount.c:611
-msgid "mount doesn't implement \"eject\" or \"eject_with_operation\""
-msgstr ""
+#: gio/gmount.c:638
+#, fuzzy
+#| msgid "volume doesn't implement eject or eject_with_operation"
+msgid "mount doesn’t implement “eject†or “eject_with_operationâ€"
+msgstr "جلد قابلیت eject یا eject_with_operation را ندارد"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement remount.
-#: ../gio/gmount.c:701
-msgid "mount doesn't implement \"remount\""
-msgstr ""
+#: gio/gmount.c:726
+#, fuzzy
+#| msgid "volume doesn't implement eject"
+msgid "mount doesn’t implement “remountâ€"
+msgstr "جلد قابلیت eject ندارد"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement content type guessing.
-#: ../gio/gmount.c:785
-msgid "mount doesn't implement content type guessing"
+#: gio/gmount.c:808
+msgid "mount doesn’t implement content type guessing"
msgstr ""
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement content type guessing.
-#: ../gio/gmount.c:874
-msgid "mount doesn't implement synchronous content type guessing"
+#: gio/gmount.c:895
+msgid "mount doesn’t implement synchronous content type guessing"
msgstr ""
-#: ../gio/gnetworkaddress.c:322
+#: gio/gnetworkaddress.c:415
#, c-format
-msgid "Hostname '%s' contains '[' but not ']'"
+msgid "Hostname “%s†contains “[†but not “]â€"
msgstr ""
-#: ../gio/gnetworkmonitorbase.c:178
+#: gio/gnetworkmonitorbase.c:219 gio/gnetworkmonitorbase.c:323
msgid "Network unreachable"
msgstr "شبکه غیرقابل دسترس است"
-#: ../gio/gnetworkmonitorbase.c:218
+#: gio/gnetworkmonitorbase.c:257 gio/gnetworkmonitorbase.c:287
msgid "Host unreachable"
msgstr "میزبان غیرقابل دسترسی است"
-#: ../gio/gnetworkmonitornetlink.c:97
-#: ../gio/gnetworkmonitornetlink.c:109
-#: ../gio/gnetworkmonitornetlink.c:120
+#: gio/gnetworkmonitornetlink.c:99 gio/gnetworkmonitornetlink.c:111 gio/gnetworkmonitornetlink.c:130
#, c-format
msgid "Could not create network monitor: %s"
msgstr "نمی‌توان پایشگر شبکه را ساخت: %s"
-#: ../gio/gnetworkmonitornetlink.c:129
+#: gio/gnetworkmonitornetlink.c:120
msgid "Could not create network monitor: "
-msgstr "نمی‌توان پایشگر شبکه را ساخت:"
+msgstr "نمی‌توان پایشگر شبکه را ساخت: "
-#: ../gio/gnetworkmonitornetlink.c:177
+#: gio/gnetworkmonitornetlink.c:183
#, fuzzy
msgid "Could not get network status: "
msgstr "نمی‌توان آدرس دوردست را دریاÙت کرد: %s"
-#: ../gio/goutputstream.c:212
-#: ../gio/goutputstream.c:417
-msgid "Output stream doesn't implement write"
+#: gio/gnetworkmonitornm.c:348
+#, c-format
+msgid "NetworkManager not running"
msgstr ""
-#: ../gio/goutputstream.c:378
-#: ../gio/goutputstream.c:876
-msgid "Source stream is already closed"
-msgstr "جریان منبع از قبل بسته شده است"
-
-#: ../gio/gresolver.c:764
+#: gio/gnetworkmonitornm.c:359
#, c-format
-msgid "Error resolving '%s': %s"
-msgstr "خطا در هنگام برطرÙ‌سازی «%s»: %s"
+msgid "NetworkManager version too old"
+msgstr ""
-#: ../gio/gresolver.c:814
-#, c-format
-msgid "Error reverse-resolving '%s': %s"
-msgstr "خطا در هنگام برطرÙ‌سازی معکوس «%s»: %s"
+#: gio/goutputstream.c:232 gio/goutputstream.c:775
+#, fuzzy
+msgid "Output stream doesn’t implement write"
+msgstr "جلد قابلیت eject ندارد"
-#: ../gio/gresolver.c:849
-#: ../gio/gresolver.c:928
+#: gio/goutputstream.c:472 gio/goutputstream.c:1533
#, c-format
-msgid "No service record for '%s'"
+msgid "Sum of vectors passed to %s too large"
msgstr ""
-#: ../gio/gresolver.c:854
-#: ../gio/gresolver.c:933
+#: gio/goutputstream.c:736 gio/goutputstream.c:1761
+msgid "Source stream is already closed"
+msgstr "جریان منبع از قبل بسته شده است"
+
+#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#, fuzzy, c-format
+#| msgid "Error resolving '%s': %s"
+msgid "Error resolving “%sâ€: %s"
+msgstr "خطا در هنگام برطرÙ‌سازی «%s»: %s"
+
+#. Translators: The placeholder is for a function name.
+#: gio/gresolver.c:455 gio/gresolver.c:615
#, c-format
-msgid "Temporarily unable to resolve '%s'"
+msgid "%s not implemented"
msgstr ""
-#: ../gio/gresolver.c:859
-#: ../gio/gresolver.c:938
-#, c-format
-msgid "Error resolving '%s'"
-msgstr "خطا در هنگام برطرÙ‌سازی «%s»"
+#: gio/gresolver.c:984 gio/gresolver.c:1036
+#, fuzzy
+#| msgid "Invalid filename"
+msgid "Invalid domain"
+msgstr "نام پرونده نامعتبر"
-#: ../gio/gresource.c:294
-#: ../gio/gresource.c:539
-#: ../gio/gresource.c:556
-#: ../gio/gresource.c:679
-#: ../gio/gresource.c:748
-#: ../gio/gresource.c:809
-#: ../gio/gresource.c:889
-#: ../gio/gresourcefile.c:452
-#: ../gio/gresourcefile.c:552
-#: ../gio/gresourcefile.c:654
+#: gio/gresource.c:681 gio/gresource.c:943 gio/gresource.c:983 gio/gresource.c:1107 gio/gresource.c:1179
+#: gio/gresource.c:1253 gio/gresource.c:1334 gio/gresourcefile.c:476 gio/gresourcefile.c:599
+#: gio/gresourcefile.c:736
#, c-format
-msgid "The resource at '%s' does not exist"
+msgid "The resource at “%s†does not exist"
msgstr ""
-#: ../gio/gresource.c:456
+#: gio/gresource.c:848
#, c-format
-msgid "The resource at '%s' failed to decompress"
+msgid "The resource at “%s†failed to decompress"
msgstr ""
-#: ../gio/gresourcefile.c:650
+#: gio/gresourcefile.c:732
#, c-format
-msgid "The resource at '%s' is not a directory"
+msgid "The resource at “%s†is not a directory"
msgstr ""
-#: ../gio/gresourcefile.c:858
+#: gio/gresourcefile.c:940
#, fuzzy
-msgid "Input stream doesn't implement seek"
+msgid "Input stream doesn’t implement seek"
msgstr "جلد قابلیت eject ندارد"
-#: ../gio/gresource-tool.c:470
-#: ../gio/gsettings-tool.c:530
-msgid "Print help"
-msgstr "چاپ راهنما"
-
-#: ../gio/gresource-tool.c:476
+#: gio/gresource-tool.c:500
msgid "List sections containing resources in an elf FILE"
msgstr ""
-#: ../gio/gresource-tool.c:482
+#: gio/gresource-tool.c:506
msgid ""
"List resources\n"
"If SECTION is given, only list resources in this section\n"
"If PATH is given, only list matching resources"
msgstr ""
-#: ../gio/gresource-tool.c:486
-#: ../gio/gresource-tool.c:496
-#: ../gio/gresource-tool.c:503
+#: gio/gresource-tool.c:509 gio/gresource-tool.c:519
+msgid "FILE [PATH]"
+msgstr ""
+
+#: gio/gresource-tool.c:510 gio/gresource-tool.c:520 gio/gresource-tool.c:527
msgid "SECTION"
msgstr "SECTION"
-#: ../gio/gresource-tool.c:491
+#: gio/gresource-tool.c:515
msgid ""
"List resources with details\n"
"If SECTION is given, only list resources in this section\n"
@@ -2040,24 +3445,18 @@ msgid ""
"Details include the section, size and compression"
msgstr ""
-#: ../gio/gresource-tool.c:501
+#: gio/gresource-tool.c:525
msgid "Extract a resource file to stdout"
msgstr ""
-#: ../gio/gresource-tool.c:508
-#: ../gio/gsettings-tool.c:610
-#, c-format
-msgid ""
-"Unknown command %s\n"
-"\n"
-msgstr ""
-"Ùرمان ناشناس %s\n"
-"\n"
+#: gio/gresource-tool.c:526
+msgid "FILE PATH"
+msgstr "FILE PATH"
-#: ../gio/gresource-tool.c:516
+#: gio/gresource-tool.c:540
msgid ""
"Usage:\n"
-" gresource [--section SECTION] COMMAND [ARGS...]\n"
+" gresource [--section SECTION] COMMAND [ARGS…]\n"
"\n"
"Commands:\n"
" help Show this information\n"
@@ -2066,11 +3465,11 @@ msgid ""
" details List resources with details\n"
" extract Extract a resource\n"
"\n"
-"Use 'gresource help COMMAND' to get detailed help.\n"
+"Use “gresource help COMMAND†to get detailed help.\n"
"\n"
msgstr ""
-#: ../gio/gresource-tool.c:530
+#: gio/gresource-tool.c:554
#, c-format
msgid ""
"Usage:\n"
@@ -2080,166 +3479,167 @@ msgid ""
"\n"
msgstr ""
-#: ../gio/gresource-tool.c:533
-#: ../gio/gsettings-tool.c:643
-msgid "Arguments:\n"
-msgstr "متغییرها:\n"
-
-#: ../gio/gresource-tool.c:537
+#: gio/gresource-tool.c:561
msgid " SECTION An (optional) elf section name\n"
msgstr ""
-#: ../gio/gresource-tool.c:541
-#: ../gio/gsettings-tool.c:650
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
msgid " COMMAND The (optional) command to explain\n"
msgstr ""
-#: ../gio/gresource-tool.c:547
+#: gio/gresource-tool.c:571
msgid " FILE An elf file (a binary or a shared library)\n"
msgstr ""
-#: ../gio/gresource-tool.c:550
+#: gio/gresource-tool.c:574
msgid ""
" FILE An elf file (a binary or a shared library)\n"
" or a compiled resource file\n"
msgstr ""
-#: ../gio/gresource-tool.c:556
+#: gio/gresource-tool.c:578
+msgid "[PATH]"
+msgstr "[PATH]"
+
+#: gio/gresource-tool.c:580
msgid " PATH An (optional) resource path (may be partial)\n"
msgstr ""
-#: ../gio/gresource-tool.c:559
+#: gio/gresource-tool.c:581
+msgid "PATH"
+msgstr ""
+
+#: gio/gresource-tool.c:583
msgid " PATH A resource path\n"
msgstr ""
-#: ../gio/gsettings-tool.c:53
-#: ../gio/gsettings-tool.c:74
-#, c-format
-msgid "No such schema '%s'\n"
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#, fuzzy, c-format
+#| msgid "No such schema '%s'\n"
+msgid "No such schema “%sâ€\n"
msgstr "همجین Ø´Ùمایی وجود ندارد «%s»\n"
-#: ../gio/gsettings-tool.c:59
-#, c-format
-msgid "Schema '%s' is not relocatable (path must not be specified)\n"
+#: gio/gsettings-tool.c:55
+#, fuzzy, c-format
+#| msgid "Schema '%s' is not relocatable (path must not be specified)\n"
+msgid "Schema “%s†is not relocatable (path must not be specified)\n"
msgstr "Ø´Ùما «%s» قابل جابه‌جایی نیست (مسیر نباید مشخص شود)\n"
-#: ../gio/gsettings-tool.c:80
-#, c-format
-msgid "Schema '%s' is relocatable (path must be specified)\n"
+#: gio/gsettings-tool.c:76
+#, fuzzy, c-format
+#| msgid "Schema '%s' is relocatable (path must be specified)\n"
+msgid "Schema “%s†is relocatable (path must be specified)\n"
msgstr "Ø´Ùما «%s» قابل جابه‌جایی نیست (مسیر باید مشخص شود)\n"
-#: ../gio/gsettings-tool.c:94
-#, c-format
+#: gio/gsettings-tool.c:90
msgid "Empty path given.\n"
msgstr "مسیر خالی داده شده است.\n"
-#: ../gio/gsettings-tool.c:100
-#, c-format
+#: gio/gsettings-tool.c:96
msgid "Path must begin with a slash (/)\n"
msgstr "مسیر با یک خط مورب (/) باید آغاز شود\n"
-#: ../gio/gsettings-tool.c:106
-#, c-format
+#: gio/gsettings-tool.c:102
msgid "Path must end with a slash (/)\n"
msgstr "مسیر با یک خط مورب (/) باید پایان یابد\n"
-#: ../gio/gsettings-tool.c:112
-#, c-format
+#: gio/gsettings-tool.c:108
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr ""
-#: ../gio/gsettings-tool.c:133
-#, c-format
-msgid "No such key '%s'\n"
-msgstr "همچین کلیدی وجود ندارد «%s»\n"
-
-#: ../gio/gsettings-tool.c:503
-#, c-format
+#: gio/gsettings-tool.c:541
msgid "The provided value is outside of the valid range\n"
msgstr "مقدار Ùراهم شده خارج از محدود مجاز است\n"
-#: ../gio/gsettings-tool.c:536
+#: gio/gsettings-tool.c:548
+#, fuzzy
+#| msgid "Property '%s' is not writable"
+msgid "The key is not writable\n"
+msgstr "خصیصه‌ی «%s» قابل نوشتن نیست"
+
+#: gio/gsettings-tool.c:584
msgid "List the installed (non-relocatable) schemas"
msgstr ""
-#: ../gio/gsettings-tool.c:542
+#: gio/gsettings-tool.c:590
msgid "List the installed relocatable schemas"
msgstr ""
-#: ../gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:596
msgid "List the keys in SCHEMA"
msgstr "لیست کلیدها درون SCHEMA"
-#: ../gio/gsettings-tool.c:549
-#: ../gio/gsettings-tool.c:555
-#: ../gio/gsettings-tool.c:592
+#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH]"
msgstr "SCHEMA[:PATH]"
-#: ../gio/gsettings-tool.c:554
+#: gio/gsettings-tool.c:602
msgid "List the children of SCHEMA"
msgstr "Ùهرست کردن Ùرزندان SCHEMA"
-#: ../gio/gsettings-tool.c:560
+#: gio/gsettings-tool.c:608
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
msgstr ""
-#: ../gio/gsettings-tool.c:562
+#: gio/gsettings-tool.c:610
msgid "[SCHEMA[:PATH]]"
msgstr "[SCHEMA[:PATH]]"
-#: ../gio/gsettings-tool.c:567
+#: gio/gsettings-tool.c:615
msgid "Get the value of KEY"
msgstr "گرÙتن مقدار KEY"
-#: ../gio/gsettings-tool.c:568
-#: ../gio/gsettings-tool.c:574
-#: ../gio/gsettings-tool.c:586
-#: ../gio/gsettings-tool.c:598
+#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652
msgid "SCHEMA[:PATH] KEY"
msgstr "SCHEMA[:PATH] KEY"
-#: ../gio/gsettings-tool.c:573
+#: gio/gsettings-tool.c:621
msgid "Query the range of valid values for KEY"
msgstr ""
-#: ../gio/gsettings-tool.c:579
+#: gio/gsettings-tool.c:627
+msgid "Query the description for KEY"
+msgstr ""
+
+#: gio/gsettings-tool.c:633
msgid "Set the value of KEY to VALUE"
msgstr "تنظیم مقدار KEY به VALUE"
-#: ../gio/gsettings-tool.c:580
+#: gio/gsettings-tool.c:634
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SCHEMA[:PATH] KEY VALUE"
-#: ../gio/gsettings-tool.c:585
+#: gio/gsettings-tool.c:639
msgid "Reset KEY to its default value"
msgstr "تنظیم مجدد KEY به مقدار پیش‌Ùرض"
-#: ../gio/gsettings-tool.c:591
+#: gio/gsettings-tool.c:645
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "تنظیم مجدد تمام کلیدها در SCHEMA به مقدار پیش‌Ùرض"
-#: ../gio/gsettings-tool.c:597
+#: gio/gsettings-tool.c:651
msgid "Check if KEY is writable"
msgstr "بررسی اینکه KEY قابل نوشتن است"
-#: ../gio/gsettings-tool.c:603
+#: gio/gsettings-tool.c:657
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
"Use ^C to stop monitoring.\n"
msgstr ""
-#: ../gio/gsettings-tool.c:606
+#: gio/gsettings-tool.c:660
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SCHEMA[:PATH] [KEY]"
-#: ../gio/gsettings-tool.c:618
+#: gio/gsettings-tool.c:672
msgid ""
"Usage:\n"
-" gsettings [--schemadir SCHEMADIR] COMMAND [ARGS...]\n"
+" gsettings --version\n"
+" gsettings [--schemadir SCHEMADIR] COMMAND [ARGS…]\n"
"\n"
"Commands:\n"
" help Show this information\n"
@@ -2249,6 +3649,7 @@ msgid ""
" list-children List children of a schema\n"
" list-recursively List keys and values, recursively\n"
" range Queries the range of a key\n"
+" describe Queries the description of a key\n"
" get Get the value of a key\n"
" set Set the value of a key\n"
" reset Reset the value of a key\n"
@@ -2256,11 +3657,11 @@ msgid ""
" writable Check if a key is writable\n"
" monitor Watch for changes\n"
"\n"
-"Use 'gsettings help COMMAND' to get detailed help.\n"
+"Use “gsettings help COMMAND†to get detailed help.\n"
"\n"
msgstr ""
-#: ../gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:696
#, c-format
msgid ""
"Usage:\n"
@@ -2270,1941 +3671,2551 @@ msgid ""
"\n"
msgstr ""
-#: ../gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:702
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr ""
-#: ../gio/gsettings-tool.c:654
+#: gio/gsettings-tool.c:710
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
msgstr ""
-#: ../gio/gsettings-tool.c:659
+#: gio/gsettings-tool.c:715
msgid " KEY The (optional) key within the schema\n"
msgstr ""
-#: ../gio/gsettings-tool.c:663
+#: gio/gsettings-tool.c:719
msgid " KEY The key within the schema\n"
msgstr ""
-#: ../gio/gsettings-tool.c:667
+#: gio/gsettings-tool.c:723
msgid " VALUE The value to set\n"
msgstr ""
-#: ../gio/gsettings-tool.c:788
-#, c-format
+#: gio/gsettings-tool.c:778
+#, fuzzy, c-format
+#| msgid "Could not open converter from '%s' to '%s'"
+msgid "Could not load schemas from %s: %s\n"
+msgstr "نمی‌توان مبدل «%s» به «%s» را باز کرد"
+
+#: gio/gsettings-tool.c:790
+#, fuzzy
+#| msgid "No schema files found: "
+msgid "No schemas installed\n"
+msgstr "هیچ پرونده شماای پیدا نشد:"
+
+#: gio/gsettings-tool.c:869
msgid "Empty schema name given\n"
msgstr ""
-#: ../gio/gsocket.c:282
+#: gio/gsettings-tool.c:924
+#, fuzzy, c-format
+#| msgid "No such key '%s'\n"
+msgid "No such key “%sâ€\n"
+msgstr "همچین کلیدی وجود ندارد «%s»\n"
+
+#: gio/gsocket.c:413
msgid "Invalid socket, not initialized"
msgstr ""
-#: ../gio/gsocket.c:289
+#: gio/gsocket.c:420
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr ""
-#: ../gio/gsocket.c:297
+#: gio/gsocket.c:428
msgid "Socket is already closed"
msgstr "سوکت از قبل بسته شده است"
-#: ../gio/gsocket.c:305
-#: ../gio/gsocket.c:3467
-#: ../gio/gsocket.c:3511
+#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
msgid "Socket I/O timed out"
msgstr ""
-#: ../gio/gsocket.c:471
+#: gio/gsocket.c:578
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "درحال ساخت GSocket از طریق fd: %s"
-#: ../gio/gsocket.c:505
-#: ../gio/gsocket.c:521
+#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
#, c-format
msgid "Unable to create socket: %s"
msgstr "نمی‌توان سوکت را ساخت: %s"
-#: ../gio/gsocket.c:505
+#: gio/gsocket.c:671
+#, fuzzy
+#| msgid "Unknown protocol was specified"
+msgid "Unknown family was specified"
+msgstr "پروتکل ناشناسی مشخص شده است"
+
+#: gio/gsocket.c:678
msgid "Unknown protocol was specified"
msgstr "پروتکل ناشناسی مشخص شده است"
-#: ../gio/gsocket.c:1712
+#: gio/gsocket.c:1169
+#, c-format
+msgid "Cannot use datagram operations on a non-datagram socket."
+msgstr ""
+
+#: gio/gsocket.c:1186
+#, c-format
+msgid "Cannot use datagram operations on a socket with a timeout set."
+msgstr ""
+
+#: gio/gsocket.c:1993
#, c-format
msgid "could not get local address: %s"
msgstr "نمی‌توان آدرس محلی را دریاÙت کرد: %s"
-#: ../gio/gsocket.c:1755
+#: gio/gsocket.c:2039
#, c-format
msgid "could not get remote address: %s"
msgstr "نمی‌توان آدرس دوردست را دریاÙت کرد: %s"
-#: ../gio/gsocket.c:1816
+#: gio/gsocket.c:2105
#, c-format
msgid "could not listen: %s"
msgstr ""
-#: ../gio/gsocket.c:1890
+#: gio/gsocket.c:2209
#, fuzzy, c-format
-msgid "Error binding to address: %s"
+msgid "Error binding to address %s: %s"
msgstr "خطا در خواندن پروندهٔ «‎%s»â€: %s"
-#: ../gio/gsocket.c:1943
-#: ../gio/gsocket.c:1979
+#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557 gio/gsocket.c:2620
+#: gio/gsocket.c:2678 gio/gsocket.c:2696
#, fuzzy, c-format
msgid "Error joining multicast group: %s"
msgstr "خطا در راه‌اندازی برنامه: %s"
-#: ../gio/gsocket.c:1944
-#: ../gio/gsocket.c:1980
+#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558 gio/gsocket.c:2621
+#: gio/gsocket.c:2679 gio/gsocket.c:2697
#, fuzzy, c-format
msgid "Error leaving multicast group: %s"
msgstr "خطا در راه‌اندازی برنامه: %s"
-#: ../gio/gsocket.c:1945
+#: gio/gsocket.c:2387
msgid "No support for source-specific multicast"
msgstr ""
-#: ../gio/gsocket.c:2164
+#: gio/gsocket.c:2534
+msgid "Unsupported socket family"
+msgstr ""
+
+#: gio/gsocket.c:2559
+msgid "source-specific not an IPv4 address"
+msgstr ""
+
+#: gio/gsocket.c:2583
+#, c-format
+msgid "Interface name too long"
+msgstr ""
+
+#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#, c-format
+msgid "Interface not found: %s"
+msgstr ""
+
+#: gio/gsocket.c:2622
+msgid "No support for IPv4 source-specific multicast"
+msgstr ""
+
+#: gio/gsocket.c:2680
+msgid "No support for IPv6 source-specific multicast"
+msgstr ""
+
+#: gio/gsocket.c:2889
#, c-format
msgid "Error accepting connection: %s"
msgstr "خطا در هنگام پذیرÙتن اتصال: %s"
-#: ../gio/gsocket.c:2285
+#: gio/gsocket.c:3015
msgid "Connection in progress"
msgstr "اتصال در حال پیشروی است"
-#: ../gio/gsocket.c:2337
-#: ../gio/gsocket.c:4253
-#, c-format
-msgid "Unable to get pending error: %s"
+#: gio/gsocket.c:3066
+#, fuzzy
+#| msgid "Unable to get pending error: %s"
+msgid "Unable to get pending error: "
msgstr "ناتوان در دریاÙت خطای درانتظار: %s"
-#: ../gio/gsocket.c:2507
+#: gio/gsocket.c:3255
#, c-format
msgid "Error receiving data: %s"
msgstr "خطا در دریاÙت داده: %s"
-#: ../gio/gsocket.c:2685
+#: gio/gsocket.c:3452
#, c-format
msgid "Error sending data: %s"
msgstr "خطا در ارسال داده: %s"
-#: ../gio/gsocket.c:2799
+#: gio/gsocket.c:3639
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "نمی‌توان سوکت را خاموش کرد: %s"
-#: ../gio/gsocket.c:2878
+#: gio/gsocket.c:3720
#, c-format
msgid "Error closing socket: %s"
msgstr "خط در هنگام بستن سوکت: %s"
-#: ../gio/gsocket.c:3460
+#: gio/gsocket.c:4413
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "در حال انتظار برای وضعیت سوکت: %s"
-#: ../gio/gsocket.c:3727
-#: ../gio/gsocket.c:3808
+#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#, fuzzy, c-format
+#| msgid "Error sending message: %s"
+msgid "Unable to send message: %s"
+msgstr "خطا در هنگام ارسال پیام: %s"
+
+#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#, fuzzy
+#| msgid "regular expression too large"
+msgid "Message vectors too large"
+msgstr "عبارت باقاعده بسیار بلند است"
+
+#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084 gio/gsocket.c:5262
+#: gio/gsocket.c:5302 gio/gsocket.c:5304
#, c-format
msgid "Error sending message: %s"
msgstr "خطا در هنگام ارسال پیام: %s"
-#: ../gio/gsocket.c:3752
-msgid "GSocketControlMessage not supported on windows"
-msgstr ""
+#: gio/gsocket.c:5026
+#, fuzzy
+#| msgid "association changes not supported on win32"
+msgid "GSocketControlMessage not supported on Windows"
+msgstr "تغییر ارتباط در win32 پشتیبانی نمی‌شود"
-#: ../gio/gsocket.c:4032
-#: ../gio/gsocket.c:4168
+#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
#, c-format
msgid "Error receiving message: %s"
msgstr "خطا در هنگام دریاÙت پیام: %s"
-#: ../gio/gsocket.c:4272
+#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#, fuzzy, c-format
+#| msgid "Unable to create socket: %s"
+msgid "Unable to read socket credentials: %s"
+msgstr "نمی‌توان سوکت را ساخت: %s"
+
+#: gio/gsocket.c:6136
msgid "g_socket_get_credentials not implemented for this OS"
msgstr ""
-#: ../gio/gsocketclient.c:174
+#: gio/gsocketclient.c:191
#, c-format
msgid "Could not connect to proxy server %s: "
msgstr ""
-#: ../gio/gsocketclient.c:188
+#: gio/gsocketclient.c:205
#, c-format
msgid "Could not connect to %s: "
-msgstr "نمی‌توان به %s متصل شد:"
+msgstr "نمی‌توان به %s متصل شد: "
-#: ../gio/gsocketclient.c:190
+#: gio/gsocketclient.c:207
msgid "Could not connect: "
msgstr ""
-#: ../gio/gsocketclient.c:976
-#: ../gio/gsocketclient.c:1547
-msgid "Unknown error on connect"
-msgstr "خطا ناشناخته در اتصال"
-
-#: ../gio/gsocketclient.c:1029
-#: ../gio/gsocketclient.c:1486
-msgid "Trying to proxy over non-TCP connection is not supported."
-msgstr ""
+#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#, fuzzy
+#| msgid "Proxy protocol '%s' is not supported."
+msgid "Proxying over a non-TCP connection is not supported."
+msgstr "پروتکل پیشکار «%s» پیشتیبانی نمی‌شود."
-#: ../gio/gsocketclient.c:1055
-#: ../gio/gsocketclient.c:1507
-#, c-format
-msgid "Proxy protocol '%s' is not supported."
+#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#, fuzzy, c-format
+#| msgid "Proxy protocol '%s' is not supported."
+msgid "Proxy protocol “%s†is not supported."
msgstr "پروتکل پیشکار «%s» پیشتیبانی نمی‌شود."
-#: ../gio/gsocketlistener.c:191
+#: gio/gsocketlistener.c:230
msgid "Listener is already closed"
msgstr "شنونده از قبل بسته شده است"
-#: ../gio/gsocketlistener.c:232
+#: gio/gsocketlistener.c:276
msgid "Added socket is closed"
msgstr "سوکت اضاÙÙ‡ شده بسته است"
-#: ../gio/gsocks4aproxy.c:121
-#, c-format
-msgid "SOCKSv4 does not support IPv6 address '%s'"
+#: gio/gsocks4aproxy.c:118
+#, fuzzy, c-format
+#| msgid "SOCKSv4 does not support IPv6 address '%s'"
+msgid "SOCKSv4 does not support IPv6 address “%sâ€"
msgstr "پیشکار SOCKSv4 از آدرس IPv6 «%s» پشتیبانی نمی‌کند"
-#: ../gio/gsocks4aproxy.c:139
+#: gio/gsocks4aproxy.c:136
msgid "Username is too long for SOCKSv4 protocol"
msgstr "نام‌کاربری برای پروتکل SOCKSv4 بسیار بلند است"
-#: ../gio/gsocks4aproxy.c:156
-#, c-format
-msgid "Hostname '%s' is too long for SOCKSv4 protocol"
+#: gio/gsocks4aproxy.c:153
+#, fuzzy, c-format
+#| msgid "Hostname '%s' is too long for SOCKSv4 protocol"
+msgid "Hostname “%s†is too long for SOCKSv4 protocol"
msgstr "نام میزبان «%s» برای پروتکل SOCKSv4 بسیار بلند است"
-#: ../gio/gsocks4aproxy.c:182
+#: gio/gsocks4aproxy.c:179
msgid "The server is not a SOCKSv4 proxy server."
msgstr "این کارگزار، یک کارگزار پیشکار SOCKSv4 نیست."
-#: ../gio/gsocks4aproxy.c:189
+#: gio/gsocks4aproxy.c:186
msgid "Connection through SOCKSv4 server was rejected"
msgstr ""
-#: ../gio/gsocks5proxy.c:155
-#: ../gio/gsocks5proxy.c:326
-#: ../gio/gsocks5proxy.c:336
+#: gio/gsocks5proxy.c:153 gio/gsocks5proxy.c:338 gio/gsocks5proxy.c:348
msgid "The server is not a SOCKSv5 proxy server."
msgstr ""
-#: ../gio/gsocks5proxy.c:169
+#: gio/gsocks5proxy.c:167 gio/gsocks5proxy.c:184
msgid "The SOCKSv5 proxy requires authentication."
msgstr "پیشکار SOCKSv5 به تصدیق هویت نیاز دارد."
-#: ../gio/gsocks5proxy.c:179
+#: gio/gsocks5proxy.c:191
msgid "The SOCKSv5 proxy requires an authentication method that is not supported by GLib."
msgstr "پیشکار SOCKSv5 به نوعی از تصدیق هویت نیاز دارد که در GLib پشتیبانی نمی‌شود."
-#: ../gio/gsocks5proxy.c:208
+#: gio/gsocks5proxy.c:220
msgid "Username or password is too long for SOCKSv5 protocol."
msgstr "نام‌کاربری یا گذرواژه برای پروتکل SOCKSv5 بسیار بزرگ است."
-#: ../gio/gsocks5proxy.c:238
+#: gio/gsocks5proxy.c:250
msgid "SOCKSv5 authentication failed due to wrong username or password."
msgstr "تصدیق هویت SOCKSv5 با توجه به اشتباه بودن گذرواژه و نام‌کاربری شکست خورد."
-#: ../gio/gsocks5proxy.c:288
-#, c-format
-msgid "Hostname '%s' is too long for SOCKSv5 protocol"
+#: gio/gsocks5proxy.c:300
+#, fuzzy, c-format
+#| msgid "Hostname '%s' is too long for SOCKSv5 protocol"
+msgid "Hostname “%s†is too long for SOCKSv5 protocol"
msgstr "نام میزبان «%s» برای پروتکل SOCKSv5 بسیار بزرگ است"
-#: ../gio/gsocks5proxy.c:350
+#: gio/gsocks5proxy.c:362
msgid "The SOCKSv5 proxy server uses unknown address type."
msgstr "کارگزار پیشکار SOCKSv5 از نوعی آدرس ناشناخته استÙاده می‌کند."
-#: ../gio/gsocks5proxy.c:357
+#: gio/gsocks5proxy.c:369
msgid "Internal SOCKSv5 proxy server error."
msgstr "خطای داخلی کارگزار پیشکار SOCKSv5."
-#: ../gio/gsocks5proxy.c:363
+#: gio/gsocks5proxy.c:375
msgid "SOCKSv5 connection not allowed by ruleset."
msgstr ""
-#: ../gio/gsocks5proxy.c:370
+#: gio/gsocks5proxy.c:382
msgid "Host unreachable through SOCKSv5 server."
msgstr "میزبان از طریق کارگزار SOCKSv5 در دسترس نیست."
-#: ../gio/gsocks5proxy.c:376
+#: gio/gsocks5proxy.c:388
msgid "Network unreachable through SOCKSv5 proxy."
msgstr "شبکه از طریق پیشکار SOCKSv5 غیرقابل دسترس است."
-#: ../gio/gsocks5proxy.c:382
+#: gio/gsocks5proxy.c:394
msgid "Connection refused through SOCKSv5 proxy."
msgstr "اتصال از طریق پیشکار SOCKSv5 رد شد."
-#: ../gio/gsocks5proxy.c:388
-msgid "SOCKSv5 proxy does not support 'connect' command."
+#: gio/gsocks5proxy.c:400
+#, fuzzy
+#| msgid "SOCKSv5 proxy does not support 'connect' command."
+msgid "SOCKSv5 proxy does not support “connect†command."
msgstr "پیشکار SOCKSv5 از Ùرمان «connect» پشتیبانی نمی‌کند."
-#: ../gio/gsocks5proxy.c:394
+#: gio/gsocks5proxy.c:406
msgid "SOCKSv5 proxy does not support provided address type."
msgstr "پیشکار SOCKSv5 از نوع آدرس ارائه شده پشتیبانی نمی‌کند."
-#: ../gio/gsocks5proxy.c:400
+#: gio/gsocks5proxy.c:412
msgid "Unknown SOCKSv5 proxy error."
msgstr "خطا ناشناس پیشکار نسخه ۵ SOCKS."
-#: ../gio/gthemedicon.c:498
-#, c-format
-msgid "Can't handle version %d of GThemedIcon encoding"
+#: gio/gthemedicon.c:595
+#, fuzzy, c-format
+#| msgid "Can't handle version %d of GThemedIcon encoding"
+msgid "Can’t handle version %d of GThemedIcon encoding"
msgstr "نمی‌توان با رمزنگاری نسخه %Id GThemedIcon را کار کرد"
-#: ../gio/gtlscertificate.c:249
-#, fuzzy
-msgid "Cannot decrypt PEM-encoded private key"
-msgstr "نمی‌توان کلید خصوصی رمزنگاری شده PEM را تجزیه کرد"
+#: gio/gthreadedresolver.c:152
+msgid "No valid addresses were found"
+msgstr ""
+
+#: gio/gthreadedresolver.c:337
+#, fuzzy, c-format
+#| msgid "Error reverse-resolving '%s': %s"
+msgid "Error reverse-resolving “%sâ€: %s"
+msgstr "خطا در هنگام برطرÙ‌سازی معکوس «%s»: %s"
-#: ../gio/gtlscertificate.c:254
+#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755 gio/gthreadedresolver.c:853
+#: gio/gthreadedresolver.c:903
+#, c-format
+msgid "No DNS record of the requested type for “%sâ€"
+msgstr ""
+
+#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#, c-format
+msgid "Temporarily unable to resolve “%sâ€"
+msgstr ""
+
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863 gio/gthreadedresolver.c:973
+#, fuzzy, c-format
+#| msgid "Error resolving '%s'"
+msgid "Error resolving “%sâ€"
+msgstr "خطا در هنگام برطرÙ‌سازی «%s»"
+
+#: gio/gtlscertificate.c:419
msgid "No PEM-encoded private key found"
msgstr "هیچ کلید خصوصی رمز‌نگاری شده PEM پیدا نشد"
-#: ../gio/gtlscertificate.c:264
+#: gio/gtlscertificate.c:429
+#, fuzzy
+msgid "Cannot decrypt PEM-encoded private key"
+msgstr "نمی‌توان کلید خصوصی رمزنگاری شده PEM را تجزیه کرد"
+
+#: gio/gtlscertificate.c:440
msgid "Could not parse PEM-encoded private key"
msgstr "نمی‌توان کلید خصوصی رمزنگاری شده PEM را تجزیه کرد"
-#: ../gio/gtlscertificate.c:289
+#: gio/gtlscertificate.c:467
msgid "No PEM-encoded certificate found"
msgstr "هیچ گواهینامه رمزنگاری شده PEM پیدا نشد"
-#: ../gio/gtlscertificate.c:298
+#: gio/gtlscertificate.c:476
msgid "Could not parse PEM-encoded certificate"
msgstr "نمی‌توان گواهینامه رمزنگاری شده PEM را پیدا کرد"
-#: ../gio/gtlspassword.c:114
+#: gio/gtlscertificate.c:832
+msgid "This GTlsBackend does not support creating PKCS #11 certificates"
+msgstr ""
+
+#: gio/gtlspassword.c:111
msgid "This is the last chance to enter the password correctly before your access is locked out."
msgstr "این آخرین شانس برای وارد کردن گذرواژه بطور صحیح قبل از Ù‚ÙÙ„ شدن دسترسی شما است."
-#: ../gio/gtlspassword.c:116
-msgid "Several password entered have been incorrect, and your access will be locked out after further failures."
+#. Translators: This is not the 'This is the last chance' string. It is
+#. * displayed when more than one attempt is allowed.
+#: gio/gtlspassword.c:115
+#, fuzzy
+#| msgid ""
+#| "Several password entered have been incorrect, and your access will be locked out after further "
+#| "failures."
+msgid ""
+"Several passwords entered have been incorrect, and your access will be locked out after further failures."
msgstr "تعدادی از گذرواژهای وارد شده نادرست بوده‌اند، و دسترسی شما بعد از اشتباهات بعدی بسته خواهد شد."
-#: ../gio/gtlspassword.c:118
+#: gio/gtlspassword.c:117
msgid "The password entered is incorrect."
msgstr "گذرواژه وارد شده نادرست است."
-#: ../gio/gunixconnection.c:164
-#: ../gio/gunixconnection.c:580
-#, c-format
+#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#, fuzzy, c-format
+#| msgid "Expecting 1 control message, got %d"
msgid "Expecting 1 control message, got %d"
-msgstr "انتظار Û± پیام کنترلی می‌رÙت، %Id مورد دریاÙت شد"
+msgid_plural "Expecting 1 control message, got %d"
+msgstr[0] "انتظار Û± پیام کنترلی می‌رÙت، %Id مورد دریاÙت شد"
+msgstr[1] "انتظار Û± پیام کنترلی می‌رÙت، %Id مورد دریاÙت شد"
-#: ../gio/gunixconnection.c:177
-#: ../gio/gunixconnection.c:590
+#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
msgid "Unexpected type of ancillary data"
msgstr "نوع داده کمکی غیرمنتظره"
-#: ../gio/gunixconnection.c:195
-#, c-format
+#: gio/gunixconnection.c:200
+#, fuzzy, c-format
+#| msgid "Expecting one fd, but got %d\n"
msgid "Expecting one fd, but got %d\n"
-msgstr "انتظار یک fd می‌رÙت، اما %Id مورد دریاÙت شد\n"
+msgid_plural "Expecting one fd, but got %d\n"
+msgstr[0] "انتظار یک fd می‌رÙت، اما %Id مورد دریاÙت شد\n"
+msgstr[1] "انتظار یک fd می‌رÙت، اما %Id مورد دریاÙت شد\n"
-#: ../gio/gunixconnection.c:211
+#: gio/gunixconnection.c:219
msgid "Received invalid fd"
msgstr "یک fd نامعتبر دریاÙت شد"
-#: ../gio/gunixconnection.c:347
+#: gio/gunixconnection.c:363
msgid "Error sending credentials: "
msgstr "خطا در زمان ارسال گواهینامه: "
-#: ../gio/gunixconnection.c:511
+#: gio/gunixconnection.c:520
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "خطا در هنگام بررسی اینکه آیا SO_PASSCRED f برای سوکت Ùعال است یا خیر: %s"
-#: ../gio/gunixconnection.c:520
-#, c-format
-msgid "Unexpected option length while checking if SO_PASSCRED is enabled for socket. Expected %d bytes, got %d"
-msgstr ""
-
-#: ../gio/gunixconnection.c:537
+#: gio/gunixconnection.c:536
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "خطا در هنگام Ùعال کردن SO_PASSCRED: %s"
-#: ../gio/gunixconnection.c:568
+#: gio/gunixconnection.c:565
msgid "Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr "انتظار خواندن یک بایت برای دریاÙت گواهینامه می‌رÙت اما صÙر بایت خوانده شد"
-#: ../gio/gunixconnection.c:604
+#: gio/gunixconnection.c:605
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "انتظار پیام کنترلی نمی‌رÙت، اما %Id دریاÙت شد"
-#: ../gio/gunixconnection.c:630
+#: gio/gunixconnection.c:630
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "خطا در هنگام غیرÙعال‌سازی SO_PASSCRED: %s"
-#: ../gio/gunixinputstream.c:392
-#: ../gio/gunixinputstream.c:413
-#: ../gio/gunixinputstream.c:492
+#: gio/gunixinputstream.c:357 gio/gunixinputstream.c:378
#, fuzzy, c-format
msgid "Error reading from file descriptor: %s"
msgstr "خطا در هنگام تنظیم توصیÙ‌گر پرونده: %s"
-#: ../gio/gunixinputstream.c:447
-#: ../gio/gunixinputstream.c:642
-#: ../gio/gunixoutputstream.c:433
-#: ../gio/gunixoutputstream.c:597
+#: gio/gunixinputstream.c:411 gio/gunixoutputstream.c:520 gio/gwin32inputstream.c:217
+#: gio/gwin32outputstream.c:204
#, fuzzy, c-format
msgid "Error closing file descriptor: %s"
msgstr "خطا در هنگام تنظیم توصیÙ‌گر پرونده: %s"
-#: ../gio/gunixmounts.c:1983
-#: ../gio/gunixmounts.c:2020
+#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
msgid "Filesystem root"
msgstr "ریشه سیستم‌پرونده‌ها"
-#: ../gio/gunixoutputstream.c:378
-#: ../gio/gunixoutputstream.c:399
-#: ../gio/gunixoutputstream.c:478
+#: gio/gunixoutputstream.c:357 gio/gunixoutputstream.c:377 gio/gunixoutputstream.c:464
+#: gio/gunixoutputstream.c:484 gio/gunixoutputstream.c:630
#, fuzzy, c-format
msgid "Error writing to file descriptor: %s"
msgstr "خطا در هنگام تنظیم توصیÙ‌گر پرونده: %s"
-#: ../gio/gunixsocketaddress.c:244
-msgid "Abstract unix domain socket addresses not supported on this system"
+#: gio/gunixsocketaddress.c:244
+msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr ""
-#: ../gio/gvolume.c:408
-msgid "volume doesn't implement eject"
+#: gio/gvolume.c:438
+#, fuzzy
+#| msgid "volume doesn't implement eject"
+msgid "volume doesn’t implement eject"
msgstr "جلد قابلیت eject ندارد"
#. Translators: This is an error
#. * message for volume objects that
#. * don't implement any of eject or eject_with_operation.
-#: ../gio/gvolume.c:488
-msgid "volume doesn't implement eject or eject_with_operation"
+#: gio/gvolume.c:515
+#, fuzzy
+#| msgid "volume doesn't implement eject or eject_with_operation"
+msgid "volume doesn’t implement eject or eject_with_operation"
msgstr "جلد قابلیت eject یا eject_with_operation را ندارد"
-#: ../gio/gwin32appinfo.c:276
-msgid "Can't find application"
-msgstr "نمی‌توان برنامه را پیدا کرد"
-
-#: ../gio/gwin32appinfo.c:308
-#, c-format
-msgid "Error launching application: %s"
-msgstr "خطا در راه‌اندازی برنامه: %s"
-
-#: ../gio/gwin32appinfo.c:344
-msgid "URIs not supported"
-msgstr "آدرس‌ها پشتیبانی نمی‌شود"
-
-#: ../gio/gwin32appinfo.c:366
-msgid "association changes not supported on win32"
-msgstr "تغییر ارتباط در win32 پشتیبانی نمی‌شود"
-
-#: ../gio/gwin32appinfo.c:378
-msgid "Association creation not supported on win32"
-msgstr "ساخت ارتباط بر روی win32 پشتیبانی نمی‌شود"
-
-#: ../gio/gwin32inputstream.c:318
+#: gio/gwin32inputstream.c:185
#, fuzzy, c-format
msgid "Error reading from handle: %s"
msgstr "خطا در خواندن پروندهٔ «‎%s»â€: %s"
-#: ../gio/gwin32inputstream.c:348
-#: ../gio/gwin32outputstream.c:348
+#: gio/gwin32inputstream.c:232 gio/gwin32outputstream.c:219
#, fuzzy, c-format
msgid "Error closing handle: %s"
msgstr "خطا در خواندن پروندهٔ «‎%s»â€: %s"
-#: ../gio/gwin32outputstream.c:318
+#: gio/gwin32outputstream.c:172
#, fuzzy, c-format
msgid "Error writing to handle: %s"
msgstr "خطا در خواندن پروندهٔ «‎%s»â€: %s"
-#: ../gio/gzlibcompressor.c:396
-#: ../gio/gzlibdecompressor.c:349
+#: gio/gzlibcompressor.c:394 gio/gzlibdecompressor.c:347
msgid "Not enough memory"
msgstr "حاÙظه کاÙÛŒ موجود نیست"
-#: ../gio/gzlibcompressor.c:403
-#: ../gio/gzlibdecompressor.c:356
+#: gio/gzlibcompressor.c:401 gio/gzlibdecompressor.c:354
#, c-format
msgid "Internal error: %s"
msgstr "خطا داخلی: %s"
-#: ../gio/gzlibcompressor.c:416
-#: ../gio/gzlibdecompressor.c:370
+#: gio/gzlibcompressor.c:414 gio/gzlibdecompressor.c:368
msgid "Need more input"
msgstr "ورودی بیشتر لازم است"
-#: ../gio/gzlibdecompressor.c:342
+#: gio/gzlibdecompressor.c:340
msgid "Invalid compressed data"
msgstr "داده Ùشرده شده نامعتبر"
-#: ../glib/gbookmarkfile.c:760
-#, c-format
-msgid "Unexpected attribute '%s' for element '%s'"
+#: gio/tests/gdbus-daemon.c:18
+msgid "Address to listen on"
+msgstr ""
+
+#: gio/tests/gdbus-daemon.c:19
+msgid "Ignored, for compat with GTestDbus"
+msgstr ""
+
+#: gio/tests/gdbus-daemon.c:20
+msgid "Print address"
+msgstr "چاپ آدرس"
+
+#: gio/tests/gdbus-daemon.c:21
+msgid "Print address in shell mode"
+msgstr ""
+
+#: gio/tests/gdbus-daemon.c:28
+msgid "Run a dbus service"
+msgstr ""
+
+#: gio/tests/gdbus-daemon.c:42
+msgid "Wrong args\n"
+msgstr ""
+
+#: glib/gbookmarkfile.c:777
+#, fuzzy, c-format
+#| msgid "Unexpected attribute '%s' for element '%s'"
+msgid "Unexpected attribute “%s†for element “%sâ€"
msgstr "مشخصهٔ غیرمنتظرهٔ «%s» برای عنصر «%s»"
-#: ../glib/gbookmarkfile.c:771
-#: ../glib/gbookmarkfile.c:842
-#: ../glib/gbookmarkfile.c:852
-#: ../glib/gbookmarkfile.c:959
-#, c-format
-msgid "Attribute '%s' of element '%s' not found"
+#: glib/gbookmarkfile.c:788 glib/gbookmarkfile.c:868 glib/gbookmarkfile.c:878 glib/gbookmarkfile.c:991
+#, fuzzy, c-format
+#| msgid "Attribute '%s' of element '%s' not found"
+msgid "Attribute “%s†of element “%s†not found"
msgstr "مشخصهٔ «%s» برای عنصر «%s» پیدا نشد"
-#: ../glib/gbookmarkfile.c:1129
-#: ../glib/gbookmarkfile.c:1194
-#: ../glib/gbookmarkfile.c:1258
-#: ../glib/gbookmarkfile.c:1268
-#, c-format
-msgid "Unexpected tag '%s', tag '%s' expected"
+#: glib/gbookmarkfile.c:1200 glib/gbookmarkfile.c:1265 glib/gbookmarkfile.c:1329 glib/gbookmarkfile.c:1339
+#, fuzzy, c-format
+#| msgid "Unexpected tag '%s', tag '%s' expected"
+msgid "Unexpected tag “%sâ€, tag “%s†expected"
msgstr "برچسب غیرمنتظرهٔ «%s»، برچسب «%s» انتظار می‌رÙت"
-#: ../glib/gbookmarkfile.c:1154
-#: ../glib/gbookmarkfile.c:1168
-#: ../glib/gbookmarkfile.c:1236
-#: ../glib/gbookmarkfile.c:1288
-#, c-format
-msgid "Unexpected tag '%s' inside '%s'"
+#: glib/gbookmarkfile.c:1225 glib/gbookmarkfile.c:1239 glib/gbookmarkfile.c:1307 glib/gbookmarkfile.c:1353
+#, fuzzy, c-format
+#| msgid "Unexpected tag '%s' inside '%s'"
+msgid "Unexpected tag “%s†inside “%sâ€"
msgstr "برچسب غیرمنتظرهٔ «%s» داخل «%s»"
-#: ../glib/gbookmarkfile.c:1806
+#: glib/gbookmarkfile.c:1633
+#, c-format
+msgid "Invalid date/time ‘%s’ in bookmark file"
+msgstr ""
+
+#: glib/gbookmarkfile.c:1836
msgid "No valid bookmark file found in data dirs"
msgstr "پروندهٔ چوب‌ال٠معتبری در شاخه‌های داده پیدا نمی‌شود"
-#: ../glib/gbookmarkfile.c:2007
-#, c-format
-msgid "A bookmark for URI '%s' already exists"
+#: glib/gbookmarkfile.c:2037
+#, fuzzy, c-format
+#| msgid "A bookmark for URI '%s' already exists"
+msgid "A bookmark for URI “%s†already exists"
msgstr "چوب‌الÙÛŒ برای نشانی «‎%s» از قبل موجود است"
-#: ../glib/gbookmarkfile.c:2053
-#: ../glib/gbookmarkfile.c:2211
-#: ../glib/gbookmarkfile.c:2296
-#: ../glib/gbookmarkfile.c:2376
-#: ../glib/gbookmarkfile.c:2461
-#: ../glib/gbookmarkfile.c:2544
-#: ../glib/gbookmarkfile.c:2622
-#: ../glib/gbookmarkfile.c:2701
-#: ../glib/gbookmarkfile.c:2743
-#: ../glib/gbookmarkfile.c:2840
-#: ../glib/gbookmarkfile.c:2960
-#: ../glib/gbookmarkfile.c:3150
-#: ../glib/gbookmarkfile.c:3226
-#: ../glib/gbookmarkfile.c:3391
-#: ../glib/gbookmarkfile.c:3480
-#: ../glib/gbookmarkfile.c:3570
-#: ../glib/gbookmarkfile.c:3698
-#, c-format
-msgid "No bookmark found for URI '%s'"
+#: glib/gbookmarkfile.c:2086 glib/gbookmarkfile.c:2244 glib/gbookmarkfile.c:2329 glib/gbookmarkfile.c:2409
+#: glib/gbookmarkfile.c:2494 glib/gbookmarkfile.c:2628 glib/gbookmarkfile.c:2761 glib/gbookmarkfile.c:2896
+#: glib/gbookmarkfile.c:2938 glib/gbookmarkfile.c:3035 glib/gbookmarkfile.c:3156 glib/gbookmarkfile.c:3350
+#: glib/gbookmarkfile.c:3491 glib/gbookmarkfile.c:3710 glib/gbookmarkfile.c:3799 glib/gbookmarkfile.c:3888
+#: glib/gbookmarkfile.c:4007
+#, fuzzy, c-format
+#| msgid "No bookmark found for URI '%s'"
+msgid "No bookmark found for URI “%sâ€"
msgstr "چوب‌الÙÛŒ برای نشانی «‎%s» پیدا نشد"
-#: ../glib/gbookmarkfile.c:2385
-#, c-format
-msgid "No MIME type defined in the bookmark for URI '%s'"
+#: glib/gbookmarkfile.c:2418
+#, fuzzy, c-format
+#| msgid "No MIME type defined in the bookmark for URI '%s'"
+msgid "No MIME type defined in the bookmark for URI “%sâ€"
msgstr "هیچ نوع MIME در چوب‌ال٠برای نشانی «‎%s» تعری٠نشده است"
-#: ../glib/gbookmarkfile.c:2470
-#, c-format
-msgid "No private flag has been defined in bookmark for URI '%s'"
+#: glib/gbookmarkfile.c:2503
+#, fuzzy, c-format
+#| msgid "No private flag has been defined in bookmark for URI '%s'"
+msgid "No private flag has been defined in bookmark for URI “%sâ€"
msgstr "پرچم خصوصی‌ای برای چوب‌ال٠برای نشانی «%s» تعری٠نشده است"
-#: ../glib/gbookmarkfile.c:2849
-#, c-format
-msgid "No groups set in bookmark for URI '%s'"
+#: glib/gbookmarkfile.c:3044
+#, fuzzy, c-format
+#| msgid "No groups set in bookmark for URI '%s'"
+msgid "No groups set in bookmark for URI “%sâ€"
msgstr "گروهی در چوب‌ال٠برای نشانی «‎%s» تعیین نشده است"
-#: ../glib/gbookmarkfile.c:3244
-#: ../glib/gbookmarkfile.c:3401
-#, c-format
-msgid "No application with name '%s' registered a bookmark for '%s'"
+#: glib/gbookmarkfile.c:3512 glib/gbookmarkfile.c:3720
+#, fuzzy, c-format
+#| msgid "No application with name '%s' registered a bookmark for '%s'"
+msgid "No application with name “%s†registered a bookmark for “%sâ€"
msgstr "برنامه‌ای با نام «%s» چوب‌الÙÛŒ برای «‎%s» ثبت نکرده است"
-#: ../glib/gbookmarkfile.c:3424
+#: glib/gbookmarkfile.c:3743
#, fuzzy, c-format
-msgid "Failed to expand exec line '%s' with URI '%s'"
+msgid "Failed to expand exec line “%s†with URI “%sâ€"
msgstr "خواندن پیوند نمادی «‎%s» شکست خورد: %s"
-#: ../glib/gconvert.c:806
-#: ../glib/gutf8.c:837
-#: ../glib/gutf8.c:1047
-#: ../glib/gutf8.c:1184
-#: ../glib/gutf8.c:1288
+#: glib/gconvert.c:468
+#, fuzzy
+#| msgid "Invalid sequence in conversion input"
+msgid "Unrepresentable character in conversion input"
+msgstr "دنبالهٔ نامعتبر در ورودی تبدیل"
+
+#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220 glib/gutf8.c:1324
msgid "Partial character sequence at end of input"
msgstr "دنباله نویسهٔ ناتمام در انتهای ورودی"
-#: ../glib/gconvert.c:1056
-#, c-format
-msgid "Cannot convert fallback '%s' to codeset '%s'"
+#: glib/gconvert.c:764
+#, fuzzy, c-format
+#| msgid "Cannot convert fallback '%s' to codeset '%s'"
+msgid "Cannot convert fallback “%s†to codeset “%sâ€"
msgstr "نمی‌توان عقب‌نشینی «%s» را به مجموعه کد «%s» تبدیل کرد"
-#: ../glib/gconvert.c:1873
-#, c-format
-msgid "The URI '%s' is not an absolute URI using the \"file\" scheme"
+#: glib/gconvert.c:936
+#, fuzzy
+#| msgid "Invalid byte sequence in conversion input"
+msgid "Embedded NUL byte in conversion input"
+msgstr "دنبالهٔ بایتی نامعتبر در ورودی تبدیل"
+
+#: glib/gconvert.c:957
+#, fuzzy
+#| msgid "Invalid byte sequence in conversion input"
+msgid "Embedded NUL byte in conversion output"
+msgstr "دنبالهٔ بایتی نامعتبر در ورودی تبدیل"
+
+#: glib/gconvert.c:1688
+#, fuzzy, c-format
+#| msgid "The URI '%s' is not an absolute URI using the \"file\" scheme"
+msgid "The URI “%s†is not an absolute URI using the “file†scheme"
msgstr "نشانی «‎%s» یک نشانی اینترنتی مطلق با Ø´Ùمای «پرونده» نیست"
-#: ../glib/gconvert.c:1883
-#, c-format
-msgid "The local file URI '%s' may not include a '#'"
+#: glib/gconvert.c:1698
+#, fuzzy, c-format
+#| msgid "The local file URI '%s' may not include a '#'"
+msgid "The local file URI “%s†may not include a “#â€"
msgstr "نشانی پروندهٔ محلی «‎%s» نمی‌تواند «#» داشته باشد"
-#: ../glib/gconvert.c:1900
-#, c-format
-msgid "The URI '%s' is invalid"
+#: glib/gconvert.c:1715
+#, fuzzy, c-format
+#| msgid "The URI '%s' is invalid"
+msgid "The URI “%s†is invalid"
msgstr "نشانی اینترنتی «%s» نامعتبر است"
-#: ../glib/gconvert.c:1912
-#, c-format
-msgid "The hostname of the URI '%s' is invalid"
+#: glib/gconvert.c:1727
+#, fuzzy, c-format
+#| msgid "The hostname of the URI '%s' is invalid"
+msgid "The hostname of the URI “%s†is invalid"
msgstr "نام میزبان نشانی اینترنتی «‎%s» نامعتبر است"
-#: ../glib/gconvert.c:1928
-#, c-format
-msgid "The URI '%s' contains invalidly escaped characters"
+#: glib/gconvert.c:1743
+#, fuzzy, c-format
+#| msgid "The URI '%s' contains invalidly escaped characters"
+msgid "The URI “%s†contains invalidly escaped characters"
msgstr "نشانی اینترنتی «‎%s» نویسه‌های گریختهٔ نامعتبر دارد"
-#: ../glib/gconvert.c:2023
-#, c-format
-msgid "The pathname '%s' is not an absolute path"
+#: glib/gconvert.c:1815
+#, fuzzy, c-format
+#| msgid "The pathname '%s' is not an absolute path"
+msgid "The pathname “%s†is not an absolute path"
msgstr "نام مسیر «‎%s» یک مسیر مطلق نیست"
-#: ../glib/gconvert.c:2033
-msgid "Invalid hostname"
-msgstr "نام میزبان نامعتبر"
-
-#. Translators: 'before midday' indicator
-#: ../glib/gdatetime.c:205
-msgctxt "GDateTime"
-msgid "AM"
-msgstr "ق‌ظ"
-
-#. Translators: 'after midday' indicator
-#: ../glib/gdatetime.c:207
-msgctxt "GDateTime"
-msgid "PM"
-msgstr "ب‌ظ"
-
+# استÙاده از نویسه‌های U+2266 Ùˆ U+2269 برای ایزوله‌کردن زمان، تا به درستی نمایش داده شود.
#. Translators: this is the preferred format for expressing the date and the time
-#: ../glib/gdatetime.c:210
+#: glib/gdatetime.c:226
msgctxt "GDateTime"
msgid "%a %b %e %H:%M:%S %Y"
-msgstr "‫%A %Oe %B %Oy، %OH:%OM:%OS‬"
+msgstr "%A %Oe %B %OyØŒ â¦%OH:%OM:%OSâ©"
+# استÙاده از نویسه‌های U+2266 Ùˆ U+2269 برای ایزوله‌کردن تاریخ، تا به درستی نمایش داده شود.
#. Translators: this is the preferred format for expressing the date
-#: ../glib/gdatetime.c:213
+#: glib/gdatetime.c:229
msgctxt "GDateTime"
msgid "%m/%d/%y"
-msgstr "%Oy/%Om/%Od"
+msgstr "â©%Oy/%Om/%Odâ©"
+# استÙاده از نویسه‌های U+2266 Ùˆ U+2269 برای ایزوله‌کردن زمان، تا به درستی نمایش داده شود.
#. Translators: this is the preferred format for expressing the time
-#: ../glib/gdatetime.c:216
+#: glib/gdatetime.c:232
msgctxt "GDateTime"
msgid "%H:%M:%S"
-msgstr "%OH:%OM:%OS"
+msgstr "â¦%OH:%OM:%OSâ©"
+# استÙاده از نویسه‌های U+2266 Ùˆ U+2269 برای ایزوله‌کردن زمان، تا به درستی نمایش داده شود.
#. Translators: this is the preferred format for expressing 12 hour time
-#: ../glib/gdatetime.c:219
+#: glib/gdatetime.c:235
msgctxt "GDateTime"
msgid "%I:%M:%S %p"
-msgstr "%OI:%OM:%OS %p"
-
-#: ../glib/gdatetime.c:232
+msgstr "â¦%OI:%OM:%OSâ© %p"
+
+#. Translators: Some languages (Baltic, Slavic, Greek, and some more)
+#. * need different grammatical forms of month names depending on whether
+#. * they are standalone or in a complete date context, with the day
+#. * number. Some other languages may prefer starting with uppercase when
+#. * they are standalone and with lowercase when they are in a complete
+#. * date context. Here are full month names in a form appropriate when
+#. * they are used standalone. If your system is Linux with the glibc
+#. * version 2.27 (released Feb 1, 2018) or newer or if it is from the BSD
+#. * family (which includes OS X) then you can refer to the date command
+#. * line utility and see what the command `date +%OB' produces. Also in
+#. * the latest Linux the command `locale alt_mon' in your native locale
+#. * produces a complete list of month names almost ready to copy and
+#. * paste here. Note that in most of the languages (western European,
+#. * non-European) there is no difference between the standalone and
+#. * complete date form.
+#.
+#: glib/gdatetime.c:274
msgctxt "full month name"
msgid "January"
msgstr "ژانویه"
-#: ../glib/gdatetime.c:234
+#: glib/gdatetime.c:276
msgctxt "full month name"
msgid "February"
msgstr "Ùوریه"
-#: ../glib/gdatetime.c:236
+#: glib/gdatetime.c:278
msgctxt "full month name"
msgid "March"
msgstr "مارس"
-#: ../glib/gdatetime.c:238
+#: glib/gdatetime.c:280
msgctxt "full month name"
msgid "April"
msgstr "آوریل"
-#: ../glib/gdatetime.c:240
+#: glib/gdatetime.c:282
msgctxt "full month name"
msgid "May"
msgstr "مه"
-#: ../glib/gdatetime.c:242
+#: glib/gdatetime.c:284
msgctxt "full month name"
msgid "June"
msgstr "ژوئن"
-#: ../glib/gdatetime.c:244
+#: glib/gdatetime.c:286
msgctxt "full month name"
msgid "July"
msgstr "ژوئیه"
-#: ../glib/gdatetime.c:246
+#: glib/gdatetime.c:288
msgctxt "full month name"
msgid "August"
msgstr "آگوست"
-#: ../glib/gdatetime.c:248
+#: glib/gdatetime.c:290
msgctxt "full month name"
msgid "September"
msgstr "سپتامبر"
-#: ../glib/gdatetime.c:250
+#: glib/gdatetime.c:292
msgctxt "full month name"
msgid "October"
msgstr "اکتبر"
-#: ../glib/gdatetime.c:252
+#: glib/gdatetime.c:294
msgctxt "full month name"
msgid "November"
msgstr "نوامبر"
-#: ../glib/gdatetime.c:254
+#: glib/gdatetime.c:296
msgctxt "full month name"
msgid "December"
msgstr "دسامبر"
-#: ../glib/gdatetime.c:269
+#. Translators: Some languages need different grammatical forms of
+#. * month names depending on whether they are standalone or in a complete
+#. * date context, with the day number. Some may prefer starting with
+#. * uppercase when they are standalone and with lowercase when they are
+#. * in a full date context. However, as these names are abbreviated
+#. * the grammatical difference is visible probably only in Belarusian
+#. * and Russian. In other languages there is no difference between
+#. * the standalone and complete date form when they are abbreviated.
+#. * If your system is Linux with the glibc version 2.27 (released
+#. * Feb 1, 2018) or newer then you can refer to the date command line
+#. * utility and see what the command `date +%Ob' produces. Also in
+#. * the latest Linux the command `locale ab_alt_mon' in your native
+#. * locale produces a complete list of month names almost ready to copy
+#. * and paste here. Note that this feature is not yet supported by any
+#. * other platform. Here are abbreviated month names in a form
+#. * appropriate when they are used standalone.
+#.
+#: glib/gdatetime.c:328
msgctxt "abbreviated month name"
msgid "Jan"
msgstr "ژانویه"
-#: ../glib/gdatetime.c:271
+#: glib/gdatetime.c:330
msgctxt "abbreviated month name"
msgid "Feb"
msgstr "Ùوریه"
-#: ../glib/gdatetime.c:273
+#: glib/gdatetime.c:332
msgctxt "abbreviated month name"
msgid "Mar"
msgstr "مارس"
-#: ../glib/gdatetime.c:275
+#: glib/gdatetime.c:334
msgctxt "abbreviated month name"
msgid "Apr"
msgstr "آوریل"
-#: ../glib/gdatetime.c:277
+#: glib/gdatetime.c:336
msgctxt "abbreviated month name"
msgid "May"
msgstr "مه"
-#: ../glib/gdatetime.c:279
+#: glib/gdatetime.c:338
msgctxt "abbreviated month name"
msgid "Jun"
msgstr "ژوئن"
-#: ../glib/gdatetime.c:281
+#: glib/gdatetime.c:340
msgctxt "abbreviated month name"
msgid "Jul"
msgstr "ژوئیه"
-#: ../glib/gdatetime.c:283
+#: glib/gdatetime.c:342
msgctxt "abbreviated month name"
msgid "Aug"
msgstr "آگوست"
-#: ../glib/gdatetime.c:285
+#: glib/gdatetime.c:344
msgctxt "abbreviated month name"
msgid "Sep"
msgstr "سپتامبر"
-#: ../glib/gdatetime.c:287
+#: glib/gdatetime.c:346
msgctxt "abbreviated month name"
msgid "Oct"
msgstr "اکتبر"
-#: ../glib/gdatetime.c:289
+#: glib/gdatetime.c:348
msgctxt "abbreviated month name"
msgid "Nov"
msgstr "نوامبر"
-#: ../glib/gdatetime.c:291
+#: glib/gdatetime.c:350
msgctxt "abbreviated month name"
msgid "Dec"
msgstr "دسامبر"
-#: ../glib/gdatetime.c:306
+#: glib/gdatetime.c:365
msgctxt "full weekday name"
msgid "Monday"
msgstr "دوشنبه"
-#: ../glib/gdatetime.c:308
+#: glib/gdatetime.c:367
msgctxt "full weekday name"
msgid "Tuesday"
msgstr "سه‌شنبه"
-#: ../glib/gdatetime.c:310
+#: glib/gdatetime.c:369
msgctxt "full weekday name"
msgid "Wednesday"
msgstr "چهارشنبه"
-#: ../glib/gdatetime.c:312
+#: glib/gdatetime.c:371
msgctxt "full weekday name"
msgid "Thursday"
msgstr "پنجشنبه"
-#: ../glib/gdatetime.c:314
+#: glib/gdatetime.c:373
msgctxt "full weekday name"
msgid "Friday"
msgstr "جمعه"
-#: ../glib/gdatetime.c:316
+#: glib/gdatetime.c:375
msgctxt "full weekday name"
msgid "Saturday"
msgstr "شنبه"
-#: ../glib/gdatetime.c:318
+#: glib/gdatetime.c:377
msgctxt "full weekday name"
msgid "Sunday"
msgstr "یکشنبه"
-#: ../glib/gdatetime.c:333
+#: glib/gdatetime.c:392
msgctxt "abbreviated weekday name"
msgid "Mon"
msgstr "دوشنبه"
-#: ../glib/gdatetime.c:335
+#: glib/gdatetime.c:394
msgctxt "abbreviated weekday name"
msgid "Tue"
msgstr "سه‌شنبه"
-#: ../glib/gdatetime.c:337
+#: glib/gdatetime.c:396
msgctxt "abbreviated weekday name"
msgid "Wed"
msgstr "چهارشنبه"
-#: ../glib/gdatetime.c:339
+#: glib/gdatetime.c:398
msgctxt "abbreviated weekday name"
msgid "Thu"
msgstr "پنجشنبه"
-#: ../glib/gdatetime.c:341
+#: glib/gdatetime.c:400
msgctxt "abbreviated weekday name"
msgid "Fri"
msgstr "جمعه"
-#: ../glib/gdatetime.c:343
+#: glib/gdatetime.c:402
msgctxt "abbreviated weekday name"
msgid "Sat"
msgstr "شنبه"
-#: ../glib/gdatetime.c:345
+#: glib/gdatetime.c:404
msgctxt "abbreviated weekday name"
msgid "Sun"
msgstr "یکشنبه"
-#: ../glib/gdir.c:121
-#: ../glib/gdir.c:144
-#, c-format
-msgid "Error opening directory '%s': %s"
+#. Translators: Some languages need different grammatical forms of
+#. * month names depending on whether they are standalone or in a full
+#. * date context, with the day number. Some may prefer starting with
+#. * uppercase when they are standalone and with lowercase when they are
+#. * in a full date context. Here are full month names in a form
+#. * appropriate when they are used in a full date context, with the
+#. * day number. If your system is Linux with the glibc version 2.27
+#. * (released Feb 1, 2018) or newer or if it is from the BSD family
+#. * (which includes OS X) then you can refer to the date command line
+#. * utility and see what the command `date +%B' produces. Also in
+#. * the latest Linux the command `locale mon' in your native locale
+#. * produces a complete list of month names almost ready to copy and
+#. * paste here. In older Linux systems due to a bug the result is
+#. * incorrect in some languages. Note that in most of the languages
+#. * (western European, non-European) there is no difference between the
+#. * standalone and complete date form.
+#.
+#: glib/gdatetime.c:468
+msgctxt "full month name with day"
+msgid "January"
+msgstr "ژانویه"
+
+#: glib/gdatetime.c:470
+msgctxt "full month name with day"
+msgid "February"
+msgstr "Ùوریه"
+
+#: glib/gdatetime.c:472
+msgctxt "full month name with day"
+msgid "March"
+msgstr "مارس"
+
+#: glib/gdatetime.c:474
+msgctxt "full month name with day"
+msgid "April"
+msgstr "آوریل"
+
+#: glib/gdatetime.c:476
+msgctxt "full month name with day"
+msgid "May"
+msgstr "مه"
+
+#: glib/gdatetime.c:478
+msgctxt "full month name with day"
+msgid "June"
+msgstr "ژوئن"
+
+#: glib/gdatetime.c:480
+msgctxt "full month name with day"
+msgid "July"
+msgstr "ژوئیه"
+
+#: glib/gdatetime.c:482
+msgctxt "full month name with day"
+msgid "August"
+msgstr "آگوست"
+
+#: glib/gdatetime.c:484
+msgctxt "full month name with day"
+msgid "September"
+msgstr "سپتامبر"
+
+#: glib/gdatetime.c:486
+msgctxt "full month name with day"
+msgid "October"
+msgstr "اکتبر"
+
+#: glib/gdatetime.c:488
+msgctxt "full month name with day"
+msgid "November"
+msgstr "نوامبر"
+
+#: glib/gdatetime.c:490
+msgctxt "full month name with day"
+msgid "December"
+msgstr "دسامبر"
+
+#. Translators: Some languages need different grammatical forms of
+#. * month names depending on whether they are standalone or in a full
+#. * date context, with the day number. Some may prefer starting with
+#. * uppercase when they are standalone and with lowercase when they are
+#. * in a full date context. Here are abbreviated month names in a form
+#. * appropriate when they are used in a full date context, with the
+#. * day number. However, as these names are abbreviated the grammatical
+#. * difference is visible probably only in Belarusian and Russian.
+#. * In other languages there is no difference between the standalone
+#. * and complete date form when they are abbreviated. If your system
+#. * is Linux with the glibc version 2.27 (released Feb 1, 2018) or newer
+#. * then you can refer to the date command line utility and see what the
+#. * command `date +%b' produces. Also in the latest Linux the command
+#. * `locale abmon' in your native locale produces a complete list of
+#. * month names almost ready to copy and paste here. In other systems
+#. * due to a bug the result is incorrect in some languages.
+#.
+#: glib/gdatetime.c:555
+msgctxt "abbreviated month name with day"
+msgid "Jan"
+msgstr "ژانویه"
+
+#: glib/gdatetime.c:557
+msgctxt "abbreviated month name with day"
+msgid "Feb"
+msgstr "Ùوریه"
+
+#: glib/gdatetime.c:559
+msgctxt "abbreviated month name with day"
+msgid "Mar"
+msgstr "مارس"
+
+#: glib/gdatetime.c:561
+msgctxt "abbreviated month name with day"
+msgid "Apr"
+msgstr "آوریل"
+
+#: glib/gdatetime.c:563
+msgctxt "abbreviated month name with day"
+msgid "May"
+msgstr "مه"
+
+#: glib/gdatetime.c:565
+msgctxt "abbreviated month name with day"
+msgid "Jun"
+msgstr "ژوئن"
+
+#: glib/gdatetime.c:567
+msgctxt "abbreviated month name with day"
+msgid "Jul"
+msgstr "ژوئیه"
+
+#: glib/gdatetime.c:569
+msgctxt "abbreviated month name with day"
+msgid "Aug"
+msgstr "آگوست"
+
+#: glib/gdatetime.c:571
+msgctxt "abbreviated month name with day"
+msgid "Sep"
+msgstr "سپتامبر"
+
+#: glib/gdatetime.c:573
+msgctxt "abbreviated month name with day"
+msgid "Oct"
+msgstr "اکتبر"
+
+#: glib/gdatetime.c:575
+msgctxt "abbreviated month name with day"
+msgid "Nov"
+msgstr "نوامبر"
+
+#: glib/gdatetime.c:577
+msgctxt "abbreviated month name with day"
+msgid "Dec"
+msgstr "دسامبر"
+
+#. Translators: 'before midday' indicator
+#: glib/gdatetime.c:594
+msgctxt "GDateTime"
+msgid "AM"
+msgstr "ق‌ظ"
+
+#. Translators: 'after midday' indicator
+#: glib/gdatetime.c:597
+msgctxt "GDateTime"
+msgid "PM"
+msgstr "ب‌ظ"
+
+#: glib/gdir.c:156
+#, fuzzy, c-format
+#| msgid "Error opening directory '%s': %s"
+msgid "Error opening directory “%sâ€: %s"
msgstr "خطا در باز کردن شاخهٔ «‎%s»â€: %s"
-#: ../glib/gfileutils.c:675
-#: ../glib/gfileutils.c:763
-#, c-format
-msgid "Could not allocate %lu bytes to read file \"%s\""
-msgstr "نمی‌توان %Ilu بایت برای خواندن پروندهٔ «‎%s» تخصیص داد"
+#: glib/gfileutils.c:737 glib/gfileutils.c:829
+#, fuzzy, c-format
+#| msgid "Could not allocate %lu bytes to read file \"%s\""
+msgid "Could not allocate %lu byte to read file “%sâ€"
+msgid_plural "Could not allocate %lu bytes to read file “%sâ€"
+msgstr[0] "نمی‌توان %Ilu بایت برای خواندن پروندهٔ «‎%s» تخصیص داد"
+msgstr[1] "نمی‌توان %Ilu بایت برای خواندن پروندهٔ «‎%s» تخصیص داد"
-#: ../glib/gfileutils.c:690
-#, c-format
-msgid "Error reading file '%s': %s"
-msgstr "خطا در خواندن پروندهٔ «‎%s»â€: %s"
+#: glib/gfileutils.c:754
+#, fuzzy, c-format
+#| msgid "Error reading file %s: %s"
+msgid "Error reading file “%sâ€: %s"
+msgstr "خطا در خواندن پرونده %s: %s"
-#: ../glib/gfileutils.c:704
+#: glib/gfileutils.c:790
#, c-format
-msgid "File \"%s\" is too large"
-msgstr "پرونده «%s» بسیار بزرگ است"
+msgid "File “%s†is too large"
+msgstr "پروندهٔ «%s» بسیار بزرگ است"
-#: ../glib/gfileutils.c:787
-#, c-format
-msgid "Failed to read from file '%s': %s"
+#: glib/gfileutils.c:854
+#, fuzzy, c-format
+#| msgid "Failed to read from file '%s': %s"
+msgid "Failed to read from file “%sâ€: %s"
msgstr "خواندن از پروندهٔ «‎%s» شکست خورد: %s"
-#: ../glib/gfileutils.c:838
-#: ../glib/gfileutils.c:925
-#, c-format
-msgid "Failed to open file '%s': %s"
+#: glib/gfileutils.c:904 glib/gfileutils.c:979 glib/gfileutils.c:1468
+#, fuzzy, c-format
+#| msgid "Failed to open file '%s': %s"
+msgid "Failed to open file “%sâ€: %s"
msgstr "باز کردن پروندهٔ «‎%s» شکست خورد: %s"
-#: ../glib/gfileutils.c:855
-#, c-format
-msgid "Failed to get attributes of file '%s': fstat() failed: %s"
+#: glib/gfileutils.c:917
+#, fuzzy, c-format
+#| msgid "Failed to get attributes of file '%s': fstat() failed: %s"
+msgid "Failed to get attributes of file “%sâ€: fstat() failed: %s"
msgstr "گرÙتن مشخصه‌های پروندهٔ «‎%s» شکست خورد: fstat()‎ شکست خورد: %s"
-#: ../glib/gfileutils.c:889
-#, c-format
-msgid "Failed to open file '%s': fdopen() failed: %s"
+#: glib/gfileutils.c:948
+#, fuzzy, c-format
+#| msgid "Failed to open file '%s': fdopen() failed: %s"
+msgid "Failed to open file “%sâ€: fdopen() failed: %s"
msgstr "باز کردن پروندهٔ «‎%s» شکست خورد: fdopen()‎ شکست خورد: %s"
-#: ../glib/gfileutils.c:997
-#, c-format
-msgid "Failed to rename file '%s' to '%s': g_rename() failed: %s"
+#: glib/gfileutils.c:1049
+#, fuzzy, c-format
+#| msgid "Failed to rename file '%s' to '%s': g_rename() failed: %s"
+msgid "Failed to rename file “%s†to “%sâ€: g_rename() failed: %s"
msgstr "تغییر دادن نام پروندهٔ «‎%s» به «‎%s» شکست خورد: g_rename()‎ شکست خورد: %s"
-#: ../glib/gfileutils.c:1039
-#: ../glib/gfileutils.c:1584
-#, c-format
-msgid "Failed to create file '%s': %s"
-msgstr "ایجاد پروندهٔ «‎%s» شکست خورد: %s"
-
-#: ../glib/gfileutils.c:1053
-#, c-format
-msgid "Failed to open file '%s' for writing: fdopen() failed: %s"
-msgstr "باز کردن پروندهٔ «‎%s» برای نوشتن شکست خورد: fdopen()‎ شکست خورد: %s"
-
-#: ../glib/gfileutils.c:1078
-#, c-format
-msgid "Failed to write file '%s': fwrite() failed: %s"
+#: glib/gfileutils.c:1175
+#, fuzzy, c-format
+#| msgid "Failed to write file '%s': fwrite() failed: %s"
+msgid "Failed to write file “%sâ€: write() failed: %s"
msgstr "نوشتن پروندهٔ «‎%s» شکست خورد: fdwrite()‎ شکست خورد: %s"
-#: ../glib/gfileutils.c:1097
-#, c-format
-msgid "Failed to write file '%s': fflush() failed: %s"
-msgstr "نوشتن پروندهٔ «‎%s» شکست خورد: fflush()‎ شکست خورد: %s"
-
-#: ../glib/gfileutils.c:1141
-#, c-format
-msgid "Failed to write file '%s': fsync() failed: %s"
+#: glib/gfileutils.c:1196
+#, fuzzy, c-format
+#| msgid "Failed to write file '%s': fsync() failed: %s"
+msgid "Failed to write file “%sâ€: fsync() failed: %s"
msgstr "نوشتن پروندهٔ «‎%s» شکست خورد: fsync()‎ شکست خورد: %s"
-#: ../glib/gfileutils.c:1165
-#, c-format
-msgid "Failed to close file '%s': fclose() failed: %s"
-msgstr "بستن پروندهٔ «‎%s» شکست خورد: fclose()‎ شکست خورد: %s"
+#: glib/gfileutils.c:1357 glib/gfileutils.c:1772
+#, fuzzy, c-format
+#| msgid "Failed to create file '%s': %s"
+msgid "Failed to create file “%sâ€: %s"
+msgstr "ایجاد پروندهٔ «‎%s» شکست خورد: %s"
-#: ../glib/gfileutils.c:1287
-#, c-format
-msgid "Existing file '%s' could not be removed: g_unlink() failed: %s"
+#: glib/gfileutils.c:1402
+#, fuzzy, c-format
+#| msgid "Existing file '%s' could not be removed: g_unlink() failed: %s"
+msgid "Existing file “%s†could not be removed: g_unlink() failed: %s"
msgstr "نمی‌توان پروندهٔ موجود «‎%s» را جذ٠کرد: g_unlink() شکست خورد: %s"
-#: ../glib/gfileutils.c:1547
-#, c-format
-msgid "Template '%s' invalid, should not contain a '%s'"
+#: glib/gfileutils.c:1737
+#, fuzzy, c-format
+#| msgid "Template '%s' invalid, should not contain a '%s'"
+msgid "Template “%s†invalid, should not contain a “%sâ€"
msgstr "قالب «%s» نامعتبر است، نباید «%s» داشته باشد"
-#: ../glib/gfileutils.c:1560
-#, c-format
-msgid "Template '%s' doesn't contain XXXXXX"
+#: glib/gfileutils.c:1750
+#, fuzzy, c-format
+#| msgid "Template '%s' doesn't contain XXXXXX"
+msgid "Template “%s†doesn’t contain XXXXXX"
msgstr "قالب «%s» حاوی XXXXXX نیست"
-#: ../glib/gfileutils.c:2088
-#, c-format
-msgid "Failed to read the symbolic link '%s': %s"
+#: glib/gfileutils.c:2310 glib/gfileutils.c:2339
+#, fuzzy, c-format
+#| msgid "Failed to read the symbolic link '%s': %s"
+msgid "Failed to read the symbolic link “%sâ€: %s"
msgstr "خواندن پیوند نمادی «‎%s» شکست خورد: %s"
-#: ../glib/gfileutils.c:2109
-msgid "Symbolic links not supported"
-msgstr "پیوندهای نمادی پشتیبانی نمی‌شوند"
-
-#: ../glib/giochannel.c:1415
-#, c-format
-msgid "Could not open converter from '%s' to '%s': %s"
+#: glib/giochannel.c:1405
+#, fuzzy, c-format
+#| msgid "Could not open converter from '%s' to '%s': %s"
+msgid "Could not open converter from “%s†to “%sâ€: %s"
msgstr "نمی‌توان مبدل «%s» به «%s» را باز کرد: %s"
-#: ../glib/giochannel.c:1760
-msgid "Can't do a raw read in g_io_channel_read_line_string"
+#: glib/giochannel.c:1758
+#, fuzzy
+#| msgid "Can't do a raw read in g_io_channel_read_line_string"
+msgid "Can’t do a raw read in g_io_channel_read_line_string"
msgstr "نمی‌توان در g_io_channel_read_line_string خوانش خام انجام داد"
-#: ../glib/giochannel.c:1807
-#: ../glib/giochannel.c:2064
-#: ../glib/giochannel.c:2151
+#: glib/giochannel.c:1805 glib/giochannel.c:2063 glib/giochannel.c:2150
msgid "Leftover unconverted data in read buffer"
msgstr "دادهٔ تبدیل‌نشده در میان‌گیر خواندن باقی مانده است"
-#: ../glib/giochannel.c:1888
-#: ../glib/giochannel.c:1965
+#: glib/giochannel.c:1886 glib/giochannel.c:1963
msgid "Channel terminates in a partial character"
msgstr "کانال با یک نویسهٔ ناتمام پایان می‌یابد"
-#: ../glib/giochannel.c:1951
-msgid "Can't do a raw read in g_io_channel_read_to_end"
+#: glib/giochannel.c:1949
+#, fuzzy
+#| msgid "Can't do a raw read in g_io_channel_read_to_end"
+msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "نمی‌توان در g_io_channel_read_to_end خوانش خام انجام داد"
-#: ../glib/gkeyfile.c:726
+#: glib/gkeyfile.c:790
msgid "Valid key file could not be found in search dirs"
msgstr "پروندهٔ کلید معتبر در شاخه‌های جست‌وجو یاÙت نمی‌شود"
-#: ../glib/gkeyfile.c:762
+#: glib/gkeyfile.c:827
msgid "Not a regular file"
msgstr "پرونده متعار٠نیست"
-#: ../glib/gkeyfile.c:1162
-#, c-format
-msgid "Key file contains line '%s' which is not a key-value pair, group, or comment"
+#: glib/gkeyfile.c:1282
+#, fuzzy, c-format
+#| msgid "Key file contains line '%s' which is not a key-value pair, group, or comment"
+msgid "Key file contains line “%s†which is not a key-value pair, group, or comment"
msgstr "پرونده کلید حاوی خط «%s» است Ú©Ù‡ جÙت کلیدâ€Ù…قدار، گروه یا توضیح نیست"
-#: ../glib/gkeyfile.c:1222
+#: glib/gkeyfile.c:1339
#, c-format
msgid "Invalid group name: %s"
msgstr "نام گروه نامعتبر: %s"
-#: ../glib/gkeyfile.c:1244
+#: glib/gkeyfile.c:1361
msgid "Key file does not start with a group"
msgstr "پروندهٔ کلید با یک گروه آغاز نمی‌شود"
-#: ../glib/gkeyfile.c:1270
+#: glib/gkeyfile.c:1387
#, c-format
msgid "Invalid key name: %s"
msgstr "نام کلید نامعتبر: %s"
-#: ../glib/gkeyfile.c:1297
-#, c-format
-msgid "Key file contains unsupported encoding '%s'"
+#: glib/gkeyfile.c:1414
+#, fuzzy, c-format
+#| msgid "Key file contains unsupported encoding '%s'"
+msgid "Key file contains unsupported encoding “%sâ€"
msgstr "پروندهٔ کلید حاوی کدگذاری پشتیبانی نشدهٔ «%s» است"
-#: ../glib/gkeyfile.c:1541
-#: ../glib/gkeyfile.c:1703
-#: ../glib/gkeyfile.c:3081
-#: ../glib/gkeyfile.c:3147
-#: ../glib/gkeyfile.c:3273
-#: ../glib/gkeyfile.c:3406
-#: ../glib/gkeyfile.c:3548
-#: ../glib/gkeyfile.c:3778
-#: ../glib/gkeyfile.c:3846
-#, c-format
-msgid "Key file does not have group '%s'"
+#: glib/gkeyfile.c:1663 glib/gkeyfile.c:1836 glib/gkeyfile.c:3289 glib/gkeyfile.c:3353 glib/gkeyfile.c:3483
+#: glib/gkeyfile.c:3615 glib/gkeyfile.c:3761 glib/gkeyfile.c:3996 glib/gkeyfile.c:4063
+#, fuzzy, c-format
+#| msgid "Key file does not have group '%s'"
+msgid "Key file does not have group “%sâ€"
msgstr "پروندهٔ کلید گروه «%s» را ندارد"
-#: ../glib/gkeyfile.c:1715
-#, c-format
-msgid "Key file does not have key '%s'"
-msgstr "پروندهٔ کلید، کلید «%s» را ندارد"
+#: glib/gkeyfile.c:1791
+#, fuzzy, c-format
+#| msgid "Key file does not have key '%s' in group '%s'"
+msgid "Key file does not have key “%s†in group “%sâ€"
+msgstr "پروندهٔ کلید، کلید «%s» در گروه «%s» را ندارد"
-#: ../glib/gkeyfile.c:1822
-#: ../glib/gkeyfile.c:1938
-#, c-format
-msgid "Key file contains key '%s' with value '%s' which is not UTF-8"
+#: glib/gkeyfile.c:1953 glib/gkeyfile.c:2069
+#, fuzzy, c-format
+#| msgid "Key file contains key '%s' with value '%s' which is not UTF-8"
+msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "پروندهٔ کلید حاوی کلید «%s» با مقدار «%s» است که UTF-8 نیست"
-#: ../glib/gkeyfile.c:1842
-#: ../glib/gkeyfile.c:1958
-#: ../glib/gkeyfile.c:2327
-#, c-format
-msgid "Key file contains key '%s' which has a value that cannot be interpreted."
+#: glib/gkeyfile.c:1973 glib/gkeyfile.c:2089 glib/gkeyfile.c:2531
+#, fuzzy, c-format
+#| msgid "Key file contains key '%s' which has a value that cannot be interpreted."
+msgid "Key file contains key “%s†which has a value that cannot be interpreted."
msgstr "پروندهٔ کلید حاوی کلید «%s» است Ú©Ù‡ دارای مقداری است Ú©Ù‡ قابل تÙسیر نیست."
-#: ../glib/gkeyfile.c:2544
-#: ../glib/gkeyfile.c:2910
+#: glib/gkeyfile.c:2749 glib/gkeyfile.c:3118
#, fuzzy, c-format
-msgid "Key file contains key '%s' in group '%s' which has a value that cannot be interpreted."
+msgid "Key file contains key “%s†in group “%s†which has a value that cannot be interpreted."
msgstr "پروندهٔ کلید حاوی کلید «%s» در گروه «%s» است Ú©Ù‡ مقداری دارد Ú©Ù‡ قابل تÙسیر نیست"
-#: ../glib/gkeyfile.c:2622
-#: ../glib/gkeyfile.c:2698
+#: glib/gkeyfile.c:2827 glib/gkeyfile.c:2904
#, fuzzy, c-format
-msgid "Key '%s' in group '%s' has value '%s' where %s was expected"
+msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "پروندهٔ کلید حاوی کلید «%s» در گروه «%s» است Ú©Ù‡ مقداری دارد Ú©Ù‡ قابل تÙسیر نیست"
-#: ../glib/gkeyfile.c:3096
-#: ../glib/gkeyfile.c:3288
-#: ../glib/gkeyfile.c:3857
-#, c-format
-msgid "Key file does not have key '%s' in group '%s'"
-msgstr "پروندهٔ کلید، کلید «%s» در گروه «%s» را ندارد"
-
-#: ../glib/gkeyfile.c:4089
+#: glib/gkeyfile.c:4306
msgid "Key file contains escape character at end of line"
msgstr "پرونده کلید شامل نویسهٔ گریز در انتهای خط است"
-#: ../glib/gkeyfile.c:4111
-#, c-format
-msgid "Key file contains invalid escape sequence '%s'"
+#: glib/gkeyfile.c:4328
+#, fuzzy, c-format
+#| msgid "Key file contains invalid escape sequence '%s'"
+msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "پروندهٔ کلید حاوی دنبالهٔ گریز نامعتبر «%s» است"
-#: ../glib/gkeyfile.c:4253
-#, c-format
-msgid "Value '%s' cannot be interpreted as a number."
+#: glib/gkeyfile.c:4472
+#, fuzzy, c-format
+#| msgid "Value '%s' cannot be interpreted as a number."
+msgid "Value “%s†cannot be interpreted as a number."
msgstr "مقدار «%s» را نمی‌توان به عدد تÙسیر کرد"
-#: ../glib/gkeyfile.c:4267
-#, c-format
-msgid "Integer value '%s' out of range"
+#: glib/gkeyfile.c:4486
+#, fuzzy, c-format
+#| msgid "Integer value '%s' out of range"
+msgid "Integer value “%s†out of range"
msgstr "مقدار صحیح «%s» خارج از محدوده است"
-#: ../glib/gkeyfile.c:4300
-#, c-format
-msgid "Value '%s' cannot be interpreted as a float number."
+#: glib/gkeyfile.c:4519
+#, fuzzy, c-format
+#| msgid "Value '%s' cannot be interpreted as a float number."
+msgid "Value “%s†cannot be interpreted as a float number."
msgstr "مقدار «%s» را نمی‌توان به عدد اعشاری تÙسیر کرد"
-#: ../glib/gkeyfile.c:4324
-#, c-format
-msgid "Value '%s' cannot be interpreted as a boolean."
+#: glib/gkeyfile.c:4558
+#, fuzzy, c-format
+#| msgid "Value '%s' cannot be interpreted as a boolean."
+msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "مقدار «%s» را نمی‌توان به مقدار بولی تÙسیر کرد"
-#: ../glib/gmappedfile.c:128
+#: glib/gmappedfile.c:129
#, fuzzy, c-format
-msgid "Failed to get attributes of file '%s%s%s%s': fstat() failed: %s"
+msgid "Failed to get attributes of file “%s%s%s%sâ€: fstat() failed: %s"
msgstr "گرÙتن مشخصه‌های پروندهٔ «‎%s» شکست خورد: fstat()‎ شکست خورد: %s"
-#: ../glib/gmappedfile.c:194
+#: glib/gmappedfile.c:195
#, fuzzy, c-format
msgid "Failed to map %s%s%s%s: mmap() failed: %s"
msgstr "تهیهٔ نقشه از پروندهٔ «‎%s» شکست خورد: mmap()‎ شکست خورد: %s"
-#: ../glib/gmappedfile.c:260
-#, c-format
-msgid "Failed to open file '%s': open() failed: %s"
+#: glib/gmappedfile.c:262
+#, fuzzy, c-format
+#| msgid "Failed to open file '%s': open() failed: %s"
+msgid "Failed to open file “%sâ€: open() failed: %s"
msgstr "باز کردن پروندهٔ «‎%s» شکست خورد: open()‎ شکست خورد: %s"
-#: ../glib/gmarkup.c:356
-#: ../glib/gmarkup.c:397
+#: glib/gmarkup.c:398 glib/gmarkup.c:440
#, c-format
msgid "Error on line %d char %d: "
msgstr "خطا در سطر %Id نویسهٔ %Id:†"
-#: ../glib/gmarkup.c:419
-#: ../glib/gmarkup.c:502
-#, c-format
-msgid "Invalid UTF-8 encoded text in name - not valid '%s'"
+#: glib/gmarkup.c:462 glib/gmarkup.c:545
+#, fuzzy, c-format
+#| msgid "Invalid UTF-8 encoded text in name - not valid '%s'"
+msgid "Invalid UTF-8 encoded text in name — not valid “%sâ€"
msgstr "متن کدگذاری‌شدهٔ UTF-8 نامعتبر در نام - «%s» معتبر نیست"
-#: ../glib/gmarkup.c:430
-#, c-format
-msgid "'%s' is not a valid name "
+#: glib/gmarkup.c:473
+#, fuzzy, c-format
+#| msgid "'%s' is not a valid name "
+msgid "“%s†is not a valid name"
msgstr "نام «%s» معتبر نیست"
-#: ../glib/gmarkup.c:446
-#, c-format
-msgid "'%s' is not a valid name: '%c' "
+#: glib/gmarkup.c:489
+#, fuzzy, c-format
+#| msgid "'%s' is not a valid name: '%c' "
+msgid "“%s†is not a valid name: “%câ€"
msgstr "نام «%s» معتبر نیست: «%c»"
-#: ../glib/gmarkup.c:555
+#: glib/gmarkup.c:613
#, c-format
msgid "Error on line %d: %s"
msgstr "خطا در سطر %Id:†%s"
-#: ../glib/gmarkup.c:639
-#, c-format
-msgid "Failed to parse '%-.*s', which should have been a digit inside a character reference (&#234; for example) - perhaps the digit is too large"
-msgstr "تجزیهٔ «‎%-.*s»، که باید رقمی داخل یک ارجاع نویسه‌ای (مثل ‎&#234;‎) می‌بود شکست خورد - شاید رقم خیلی بزرگ است"
+#: glib/gmarkup.c:690
+#, fuzzy, c-format
+#| msgid ""
+#| "Failed to parse '%-.*s', which should have been a digit inside a character reference (&#234; for "
+#| "example) - perhaps the digit is too large"
+msgid ""
+"Failed to parse “%-.*sâ€, which should have been a digit inside a character reference (&#234; for example) "
+"— perhaps the digit is too large"
+msgstr ""
+"تجزیهٔ «‎%-.*s»، که باید رقمی داخل یک ارجاع نویسه‌ای (مثل ‎&#234;‎) می‌بود شکست خورد - شاید رقم خیلی بزرگ است"
-#: ../glib/gmarkup.c:651
-msgid "Character reference did not end with a semicolon; most likely you used an ampersand character without intending to start an entity - escape ampersand as &amp;"
-msgstr "ارجاع نویسه‌ای با نقطه‌ویرگول تمام نشده است؛ به احتمال زیاد بدون این Ú©Ù‡ بخواهید نهادی را آغاز کنید از نویسهٔ & استÙاده کرده‌اید - برای نوشتن علامت & از ‎&amp;‎ استÙاده کنید"
+#: glib/gmarkup.c:702
+#, fuzzy
+#| msgid ""
+#| "Character reference did not end with a semicolon; most likely you used an ampersand character without "
+#| "intending to start an entity - escape ampersand as &amp;"
+msgid ""
+"Character reference did not end with a semicolon; most likely you used an ampersand character without "
+"intending to start an entity — escape ampersand as &amp;"
+msgstr ""
+"ارجاع نویسه‌ای با نقطه‌ویرگول تمام نشده است؛ به احتمال زیاد بدون این که بخواهید نهادی را آغاز کنید از نویسهٔ "
+"& استÙاده کرده‌اید - برای نوشتن علامت & از ‎&amp;‎ استÙاده کنید"
-#: ../glib/gmarkup.c:677
-#, c-format
-msgid "Character reference '%-.*s' does not encode a permitted character"
+#: glib/gmarkup.c:728
+#, fuzzy, c-format
+#| msgid "Character reference '%-.*s' does not encode a permitted character"
+msgid "Character reference “%-.*s†does not encode a permitted character"
msgstr "ارجاع نویسه‌ای «‎%-.*s» به نویسهٔ مجاز اشاره نمی‌کند"
-#: ../glib/gmarkup.c:715
-msgid "Empty entity '&;' seen; valid entities are: &amp; &quot; &lt; &gt; &apos;"
+#: glib/gmarkup.c:766
+#, fuzzy
+#| msgid "Empty entity '&;' seen; valid entities are: &amp; &quot; &lt; &gt; &apos;"
+msgid "Empty entity “&;†seen; valid entities are: &amp; &quot; &lt; &gt; &apos;"
msgstr "نهاد خالی «‎&;‎» مشاهده شد؛ نهادهای معتبر عبارتند از: ‎&amp; &quot; &lt; &gt; &apos;‎"
-#: ../glib/gmarkup.c:723
-#, c-format
-msgid "Entity name '%-.*s' is not known"
+#: glib/gmarkup.c:774
+#, fuzzy, c-format
+#| msgid "Entity name '%-.*s' is not known"
+msgid "Entity name “%-.*s†is not known"
msgstr "نام نهاد «%-.*s» شناخته شده نیست"
-#: ../glib/gmarkup.c:728
-msgid "Entity did not end with a semicolon; most likely you used an ampersand character without intending to start an entity - escape ampersand as &amp;"
-msgstr "نهاد با یک نقطه‌ویرگول لاتین تمام نشده است؛ به احتمال زیاد بدون این Ú©Ù‡ بخواهید نهادی را آغاز کنید از نویسهٔ & استÙاده کرده‌اید - برای نوشتن علامت & از ‎&amp;‎ استÙاده کنید"
+#: glib/gmarkup.c:779
+#, fuzzy
+#| msgid ""
+#| "Entity did not end with a semicolon; most likely you used an ampersand character without intending to "
+#| "start an entity - escape ampersand as &amp;"
+msgid ""
+"Entity did not end with a semicolon; most likely you used an ampersand character without intending to "
+"start an entity — escape ampersand as &amp;"
+msgstr ""
+"نهاد با یک نقطه‌ویرگول لاتین تمام نشده است؛ به احتمال زیاد بدون این که بخواهید نهادی را آغاز کنید از نویسهٔ "
+"& استÙاده کرده‌اید - برای نوشتن علامت & از ‎&amp;‎ استÙاده کنید"
-#: ../glib/gmarkup.c:1076
+#: glib/gmarkup.c:1193
msgid "Document must begin with an element (e.g. <book>)"
msgstr "نوشتار باید با یک عنصر (مثلاً <book>) شروع شود"
-#: ../glib/gmarkup.c:1116
-#, c-format
-msgid "'%s' is not a valid character following a '<' character; it may not begin an element name"
+#: glib/gmarkup.c:1233
+#, fuzzy, c-format
+#| msgid "'%s' is not a valid character following a '<' character; it may not begin an element name"
+msgid "“%s†is not a valid character following a “<†character; it may not begin an element name"
msgstr "â€Â«%s» پس از یک نویسهٔ '‎<‎' نویسهٔ مجازی نیست؛ نمی‌شود ابتدای نام یک عنصر باشد"
-#: ../glib/gmarkup.c:1184
-#, c-format
-msgid "Odd character '%s', expected a '>' character to end the empty-element tag '%s'"
+#: glib/gmarkup.c:1276
+#, fuzzy, c-format
+#| msgid "Odd character '%s', expected a '>' character to end the empty-element tag '%s'"
+msgid "Odd character “%sâ€, expected a “>†character to end the empty-element tag “%sâ€"
msgstr "نویسهٔ غیرعادی «%s»، برای پایان دادن به برچسب عنصر خالی «%s» انتظار یک نویسهٔ «‎>‎» می‌رÙت"
-#: ../glib/gmarkup.c:1268
+#: glib/gmarkup.c:1346
#, c-format
-msgid "Odd character '%s', expected a '=' after attribute name '%s' of element '%s'"
+msgid "Too many attributes in element “%sâ€"
+msgstr ""
+
+#: glib/gmarkup.c:1366
+#, fuzzy, c-format
+#| msgid "Odd character '%s', expected a '=' after attribute name '%s' of element '%s'"
+msgid "Odd character “%sâ€, expected a “=†after attribute name “%s†of element “%sâ€"
msgstr "نویسهٔ غیرعادی «%s»، بعد از نام مشخصهٔ «%s» عنصر «%s» انتظار یک نویسهٔ «=» می‌رÙت"
-#: ../glib/gmarkup.c:1309
-#, c-format
-msgid "Odd character '%s', expected a '>' or '/' character to end the start tag of element '%s', or optionally an attribute; perhaps you used an invalid character in an attribute name"
-msgstr "نویسهٔ غیرعادی «%s»، برای پایان دادن به برچسب شروع عنصر «%s»، همین‌طور یک مشخصه، انتظار یک نویسهٔ «‎>‎» یا «/» می‌رÙت؛ شاید از یک نویسهٔ نامعتبر در نام مشخصه‌ای استÙاده کرده باشید"
+#: glib/gmarkup.c:1408
+#, fuzzy, c-format
+#| msgid ""
+#| "Odd character '%s', expected a '>' or '/' character to end the start tag of element '%s', or "
+#| "optionally an attribute; perhaps you used an invalid character in an attribute name"
+msgid ""
+"Odd character “%sâ€, expected a “>†or “/†character to end the start tag of element “%sâ€, or optionally "
+"an attribute; perhaps you used an invalid character in an attribute name"
+msgstr ""
+"نویسهٔ غیرعادی «%s»، برای پایان دادن به برچسب شروع عنصر «%s»، همین‌طور یک مشخصه، انتظار یک نویسهٔ «‎>‎» یا «/» "
+"می‌رÙت؛ شاید از یک نویسهٔ نامعتبر در نام مشخصه‌ای استÙاده کرده باشید"
-#: ../glib/gmarkup.c:1353
-#, c-format
-msgid "Odd character '%s', expected an open quote mark after the equals sign when giving value for attribute '%s' of element '%s'"
-msgstr "نویسهٔ غیرعادی «%s»، هنگام مقدار دادن به مشخصهٔ «%s» از عنصر «%s» پس از علامت تساوی انتظار یک علامت نقل قول باز می‌رÙت"
+#: glib/gmarkup.c:1453
+#, fuzzy, c-format
+#| msgid ""
+#| "Odd character '%s', expected an open quote mark after the equals sign when giving value for attribute "
+#| "'%s' of element '%s'"
+msgid ""
+"Odd character “%sâ€, expected an open quote mark after the equals sign when giving value for attribute "
+"“%s†of element “%sâ€"
+msgstr ""
+"نویسهٔ غیرعادی «%s»، هنگام مقدار دادن به مشخصهٔ «%s» از عنصر «%s» پس از علامت تساوی انتظار یک علامت نقل قول "
+"باز می‌رÙت"
-#: ../glib/gmarkup.c:1486
-#, c-format
-msgid "'%s' is not a valid character following the characters '</'; '%s' may not begin an element name"
+#: glib/gmarkup.c:1587
+#, fuzzy, c-format
+#| msgid "'%s' is not a valid character following the characters '</'; '%s' may not begin an element name"
+msgid "“%s†is not a valid character following the characters “</â€; “%s†may not begin an element name"
msgstr "â€Â«%s» بعد از نویسه‌های «‎</‎» نویسهٔ معتبری نیست؛ «%s» نمی‌تواند ابتدای نام عناصر قرار بگیرد"
-#: ../glib/gmarkup.c:1522
-#, c-format
-msgid "'%s' is not a valid character following the close element name '%s'; the allowed character is '>'"
+#: glib/gmarkup.c:1625
+#, fuzzy, c-format
+#| msgid "'%s' is not a valid character following the close element name '%s'; the allowed character is '>'"
+msgid "“%s†is not a valid character following the close element name “%sâ€; the allowed character is “>â€"
msgstr "â€Â«%s» نویسهٔ معتبری برای بستن نام عنصر «%s» نیست؛ نویسهٔ مجاز «‎>» است"
-#: ../glib/gmarkup.c:1533
-#, c-format
-msgid "Element '%s' was closed, no element is currently open"
+#: glib/gmarkup.c:1637
+#, fuzzy, c-format
+#| msgid "Element '%s' was closed, no element is currently open"
+msgid "Element “%s†was closed, no element is currently open"
msgstr "عنصر «%s» بسته بود، در حال حاضر هیچ عنصری باز نیست"
-#: ../glib/gmarkup.c:1542
-#, c-format
-msgid "Element '%s' was closed, but the currently open element is '%s'"
+#: glib/gmarkup.c:1646
+#, fuzzy, c-format
+#| msgid "Element '%s' was closed, but the currently open element is '%s'"
+msgid "Element “%s†was closed, but the currently open element is “%sâ€"
msgstr "عنصر «%s» بسته بود، ولی عنصری که در حال حاضر باز است «%s» است"
-#: ../glib/gmarkup.c:1710
+#: glib/gmarkup.c:1799
msgid "Document was empty or contained only whitespace"
msgstr "نوشتار خالی است یا Ùقط Ùاصلهٔ خالی دارد"
-#: ../glib/gmarkup.c:1724
-msgid "Document ended unexpectedly just after an open angle bracket '<'"
+#: glib/gmarkup.c:1813
+#, fuzzy
+#| msgid "Document ended unexpectedly just after an open angle bracket '<'"
+msgid "Document ended unexpectedly just after an open angle bracket “<â€"
msgstr "نوشتار به‌طور غیرمنتظره‌ای درست بعد از یک علامت کوچکتر '‎<‎' پایان یاÙت"
-#: ../glib/gmarkup.c:1732
-#: ../glib/gmarkup.c:1777
-#, c-format
-msgid "Document ended unexpectedly with elements still open - '%s' was the last element opened"
+#: glib/gmarkup.c:1821 glib/gmarkup.c:1866
+#, fuzzy, c-format
+#| msgid "Document ended unexpectedly with elements still open - '%s' was the last element opened"
+msgid "Document ended unexpectedly with elements still open — “%s†was the last element opened"
msgstr "نوشتار وقتی Ú©Ù‡ هنوز عناصری باز بودند به‌طور غیرمنتظره‌ای پایان یاÙت †آخرین عنصر باز شده «%s» بود"
-#: ../glib/gmarkup.c:1740
+#: glib/gmarkup.c:1829
#, c-format
msgid "Document ended unexpectedly, expected to see a close angle bracket ending the tag <%s/>"
msgstr "نوشتار به‌طور غیرمنتظره‌ای پایان یاÙت، یک علامت بزرگتر برای بستن برچسب ‎<%s/>‎ انتظار می‌رÙت"
-#: ../glib/gmarkup.c:1746
+#: glib/gmarkup.c:1835
msgid "Document ended unexpectedly inside an element name"
msgstr "نوشتار به‌طور غیرمنتظره‌ای داخل نام یک عنصر به‌پایان رسید"
-#: ../glib/gmarkup.c:1752
+#: glib/gmarkup.c:1841
msgid "Document ended unexpectedly inside an attribute name"
msgstr "نوشتار به‌طور غیرمنتظره‌ای داخل نام یک مشخصه به‌پایان رسید"
-#: ../glib/gmarkup.c:1757
+#: glib/gmarkup.c:1846
msgid "Document ended unexpectedly inside an element-opening tag."
msgstr "نوشتار به‌طور غیرمنتظره‌ای داخل یک برچسب عنصربازکن پایان یاÙت."
-#: ../glib/gmarkup.c:1763
+#: glib/gmarkup.c:1852
msgid "Document ended unexpectedly after the equals sign following an attribute name; no attribute value"
-msgstr "نوشتار به‌طور غیرمنتظره‌ای بعد از علامت تساوی‌ای که پس از نام مشخصه‌ای آمده بود تمام شد؛ بدون مقدار برای مشخصه"
+msgstr ""
+"نوشتار به‌طور غیرمنتظره‌ای بعد از علامت تساوی‌ای که پس از نام مشخصه‌ای آمده بود تمام شد؛ بدون مقدار برای مشخصه"
-#: ../glib/gmarkup.c:1770
+#: glib/gmarkup.c:1859
msgid "Document ended unexpectedly while inside an attribute value"
msgstr "نوشتار به‌طور غیرمنتظره‌ای داخل مقدار یک مشخصه به‌پایان رسید"
-#: ../glib/gmarkup.c:1786
-#, c-format
-msgid "Document ended unexpectedly inside the close tag for element '%s'"
+#: glib/gmarkup.c:1876
+#, fuzzy, c-format
+#| msgid "Document ended unexpectedly inside the close tag for element '%s'"
+msgid "Document ended unexpectedly inside the close tag for element “%sâ€"
+msgstr "نوشتار به‌طور غیرمنتظره‌ای داخل برچسب بستن عنصر «%s» پایان یاÙت"
+
+#: glib/gmarkup.c:1880
+#, fuzzy
+#| msgid "Document ended unexpectedly inside the close tag for element '%s'"
+msgid "Document ended unexpectedly inside the close tag for an unopened element"
msgstr "نوشتار به‌طور غیرمنتظره‌ای داخل برچسب بستن عنصر «%s» پایان یاÙت"
-#: ../glib/gmarkup.c:1792
+#: glib/gmarkup.c:1886
msgid "Document ended unexpectedly inside a comment or processing instruction"
msgstr "نوشتار به‌طور غیرمنتظره‌ای داخل یک توضیح یا دستورالعمل پردازشی پایان یاÙت"
-#: ../glib/goption.c:766
-msgid "Usage:"
-msgstr "روش استÙاده:"
-
-#: ../glib/goption.c:766
-msgid "[OPTION...]"
+#: glib/goption.c:873
+#, fuzzy
+#| msgid "[OPTION...]"
+msgid "[OPTION…]"
msgstr "[گزینه...]"
-#: ../glib/goption.c:872
+#: glib/goption.c:989
msgid "Help Options:"
msgstr "گزینه‌های راهنما:"
-#: ../glib/goption.c:873
+#: glib/goption.c:990
msgid "Show help options"
msgstr "نمایش گزینه‌های راهنما"
-#: ../glib/goption.c:879
+#: glib/goption.c:996
msgid "Show all help options"
msgstr "نمایش همهٔ گزینه‌های راهنما"
-#: ../glib/goption.c:941
+#: glib/goption.c:1059
msgid "Application Options:"
msgstr "گزینه‌های برنامه:"
-#: ../glib/goption.c:1003
-#: ../glib/goption.c:1073
-#, c-format
-msgid "Cannot parse integer value '%s' for %s"
+#: glib/goption.c:1061
+#, fuzzy
+#| msgid "Help Options:"
+msgid "Options:"
+msgstr "گزینه‌های راهنما:"
+
+#: glib/goption.c:1125 glib/goption.c:1195
+#, fuzzy, c-format
+#| msgid "Cannot parse integer value '%s' for %s"
+msgid "Cannot parse integer value “%s†for %s"
msgstr "نمی‌توان مقدار صحیح «%s» برای %s را تجزیه کرد"
-#: ../glib/goption.c:1013
-#: ../glib/goption.c:1081
-#, c-format
-msgid "Integer value '%s' for %s out of range"
+#: glib/goption.c:1135 glib/goption.c:1203
+#, fuzzy, c-format
+#| msgid "Integer value '%s' for %s out of range"
+msgid "Integer value “%s†for %s out of range"
msgstr "مقدار صحیح «%s» خارج از محدودهٔ %s است"
-#: ../glib/goption.c:1038
-#, c-format
-msgid "Cannot parse double value '%s' for %s"
+#: glib/goption.c:1160
+#, fuzzy, c-format
+#| msgid "Cannot parse double value '%s' for %s"
+msgid "Cannot parse double value “%s†for %s"
msgstr "نمی‌توان مقدار صحیح با دقت مضاع٠«%s» برای %s را تجزیه کرد"
-#: ../glib/goption.c:1046
-#, c-format
-msgid "Double value '%s' for %s out of range"
+#: glib/goption.c:1168
+#, fuzzy, c-format
+#| msgid "Double value '%s' for %s out of range"
+msgid "Double value “%s†for %s out of range"
msgstr "مقدار صحیح با دقت مضاع٠«%s» خارج از محدودهٔ %s است"
-#: ../glib/goption.c:1309
-#: ../glib/goption.c:1388
+#: glib/goption.c:1460 glib/goption.c:1539
#, c-format
msgid "Error parsing option %s"
msgstr "خطا در تجزیهٔ گزینهٔ %s"
-#: ../glib/goption.c:1419
-#: ../glib/goption.c:1532
+#: glib/goption.c:1561 glib/goption.c:1674
#, c-format
msgid "Missing argument for %s"
msgstr "â€%s یک آرگومان Ú©Ù… دارد"
-#: ../glib/goption.c:1985
+#: glib/goption.c:2185
#, c-format
msgid "Unknown option %s"
msgstr "گزینهٔ نامعلوم %s"
-#: ../glib/gregex.c:190
+#: glib/gregex.c:255
msgid "corrupted object"
msgstr "شیء ناقص"
-#: ../glib/gregex.c:192
+#: glib/gregex.c:257
msgid "internal error or corrupted object"
msgstr "خطا داخلی یا شیء ناقص"
-#: ../glib/gregex.c:194
+#: glib/gregex.c:259
msgid "out of memory"
msgstr "حاÙظه Ú©Ù… است"
-#: ../glib/gregex.c:199
+#: glib/gregex.c:264
msgid "backtracking limit reached"
msgstr "محدودیت backtracking Ùرارسید"
-#: ../glib/gregex.c:211
-#: ../glib/gregex.c:219
+#: glib/gregex.c:276 glib/gregex.c:284
msgid "the pattern contains items not supported for partial matching"
msgstr "الگو حاوی مواردی است که برای مطابقت جزئی مناسب نیست"
-#: ../glib/gregex.c:221
+#: glib/gregex.c:278
+msgid "internal error"
+msgstr "خطا داخلی"
+
+#: glib/gregex.c:286
msgid "back references as conditions are not supported for partial matching"
msgstr ""
-#: ../glib/gregex.c:230
+#: glib/gregex.c:295
msgid "recursion limit reached"
msgstr "محدودیت تکرار Ùرارسید"
-#: ../glib/gregex.c:232
-msgid "workspace limit for empty substrings reached"
-msgstr ""
-
-#: ../glib/gregex.c:234
+#: glib/gregex.c:297
msgid "invalid combination of newline flags"
msgstr "ترکیب نادرست پرچم‌های خط جدید"
-#: ../glib/gregex.c:236
+#: glib/gregex.c:299
+#, fuzzy
msgid "bad offset"
msgstr "اÙست نادرست"
-#: ../glib/gregex.c:238
+#: glib/gregex.c:301
msgid "short utf8"
msgstr "utf8 کوتاه"
-#: ../glib/gregex.c:242
+#: glib/gregex.c:303
+msgid "recursion loop"
+msgstr ""
+
+#: glib/gregex.c:307
msgid "unknown error"
msgstr "خطا نادرست"
-#: ../glib/gregex.c:262
+#: glib/gregex.c:327
msgid "\\ at end of pattern"
msgstr "\\ در پایان الگو"
-#: ../glib/gregex.c:265
+#: glib/gregex.c:330
msgid "\\c at end of pattern"
msgstr "\\c در پایان الگو"
-#: ../glib/gregex.c:268
-msgid "unrecognized character follows \\"
+#: glib/gregex.c:333
+#, fuzzy
+#| msgid "unrecognized character follows \\"
+msgid "unrecognized character following \\"
msgstr "نویسه ناشناخته پس از \\"
-#: ../glib/gregex.c:275
-msgid "case-changing escapes (\\l, \\L, \\u, \\U) are not allowed here"
-msgstr ""
-
-#: ../glib/gregex.c:278
+#: glib/gregex.c:336
msgid "numbers out of order in {} quantifier"
msgstr "اعداد بدون ترتیل در کمیت‌سنج {}"
-#: ../glib/gregex.c:281
+#: glib/gregex.c:339
msgid "number too big in {} quantifier"
msgstr "اعداد در کمیت‌سنج {} بسیار بزرگ هستند"
-#: ../glib/gregex.c:284
+#: glib/gregex.c:342
#, fuzzy
msgid "missing terminating ] for character class"
msgstr "کانال با یک نویسهٔ ناتمام پایان می‌یابد"
-#: ../glib/gregex.c:287
+#: glib/gregex.c:345
#, fuzzy
msgid "invalid escape sequence in character class"
msgstr "دنبالهٔ بایتی نامعتبر در ورودی تبدیل"
-#: ../glib/gregex.c:290
+#: glib/gregex.c:348
msgid "range out of order in character class"
msgstr "محدوده در کلاس نویسه بدون ترتیب است"
-#: ../glib/gregex.c:293
+#: glib/gregex.c:351
msgid "nothing to repeat"
msgstr "چیزی برای تکرار نیست"
-#: ../glib/gregex.c:296
-msgid "unrecognized character after (?"
-msgstr "نویسه ناشناس بعد از (?"
-
-#: ../glib/gregex.c:300
-msgid "unrecognized character after (?<"
-msgstr "نویسه ناشناس بعد از (?<"
+#: glib/gregex.c:355
+msgid "unexpected repeat"
+msgstr "تکرار غیرمنتظره"
-#: ../glib/gregex.c:304
-msgid "unrecognized character after (?P"
-msgstr "نویسه ناشناس بعد از (?P"
+#: glib/gregex.c:358
+#, fuzzy
+#| msgid "unrecognized character after (?"
+msgid "unrecognized character after (? or (?-"
+msgstr "نویسه ناشناس بعد از (?"
-#: ../glib/gregex.c:307
+#: glib/gregex.c:361
msgid "POSIX named classes are supported only within a class"
msgstr ""
-#: ../glib/gregex.c:310
+#: glib/gregex.c:364
msgid "missing terminating )"
msgstr ""
-#: ../glib/gregex.c:314
-msgid ") without opening ("
-msgstr ""
-
-#. translators: '(?R' and '(?[+-]digits' are both meant as (groups of)
-#. * sequences here, '(?-54' would be an example for the second group.
-#.
-#: ../glib/gregex.c:321
-msgid "(?R or (?[+-]digits must be followed by )"
-msgstr ""
-
-#: ../glib/gregex.c:324
+#: glib/gregex.c:367
msgid "reference to non-existent subpattern"
msgstr ""
-#: ../glib/gregex.c:327
+#: glib/gregex.c:370
msgid "missing ) after comment"
msgstr ""
-#: ../glib/gregex.c:330
-msgid "regular expression too large"
+#: glib/gregex.c:373
+#, fuzzy
+#| msgid "regular expression too large"
+msgid "regular expression is too large"
msgstr "عبارت باقاعده بسیار بلند است"
-#: ../glib/gregex.c:333
+#: glib/gregex.c:376
msgid "failed to get memory"
msgstr "گرÙتن حاÙظه شکست خورد"
-#: ../glib/gregex.c:336
+#: glib/gregex.c:380
+msgid ") without opening ("
+msgstr ""
+
+#: glib/gregex.c:384
+msgid "code overflow"
+msgstr ""
+
+#: glib/gregex.c:388
+msgid "unrecognized character after (?<"
+msgstr "نویسه ناشناس بعد از (?<"
+
+#: glib/gregex.c:391
msgid "lookbehind assertion is not fixed length"
msgstr ""
-#: ../glib/gregex.c:339
+#: glib/gregex.c:394
msgid "malformed number or name after (?("
msgstr ""
-#: ../glib/gregex.c:342
+#: glib/gregex.c:397
msgid "conditional group contains more than two branches"
msgstr ""
-#: ../glib/gregex.c:345
+#: glib/gregex.c:400
msgid "assertion expected after (?("
msgstr ""
-#: ../glib/gregex.c:348
+#. translators: '(?R' and '(?[+-]digits' are both meant as (groups of)
+#. * sequences here, '(?-54' would be an example for the second group.
+#.
+#: glib/gregex.c:407
+msgid "(?R or (?[+-]digits must be followed by )"
+msgstr ""
+
+#: glib/gregex.c:410
msgid "unknown POSIX class name"
msgstr "نام کلاس POSIX ناشناخته"
-#: ../glib/gregex.c:351
+#: glib/gregex.c:413
#, fuzzy
msgid "POSIX collating elements are not supported"
msgstr "پیوندهای نمادی پشتیبانی نمی‌شوند"
-#: ../glib/gregex.c:354
+#: glib/gregex.c:416
msgid "character value in \\x{...} sequence is too large"
msgstr ""
-#: ../glib/gregex.c:357
+#: glib/gregex.c:419
msgid "invalid condition (?(0)"
msgstr ""
-#: ../glib/gregex.c:360
+#: glib/gregex.c:422
msgid "\\C not allowed in lookbehind assertion"
msgstr ""
-#: ../glib/gregex.c:363
+#: glib/gregex.c:429
+msgid "escapes \\L, \\l, \\N{name}, \\U, and \\u are not supported"
+msgstr ""
+
+#: glib/gregex.c:432
msgid "recursive call could loop indefinitely"
msgstr ""
-#: ../glib/gregex.c:366
+#: glib/gregex.c:436
+msgid "unrecognized character after (?P"
+msgstr "نویسه ناشناس بعد از (?P"
+
+#: glib/gregex.c:439
msgid "missing terminator in subpattern name"
msgstr ""
-#: ../glib/gregex.c:369
+#: glib/gregex.c:442
msgid "two named subpatterns have the same name"
msgstr ""
-#: ../glib/gregex.c:372
+#: glib/gregex.c:445
msgid "malformed \\P or \\p sequence"
msgstr ""
-#: ../glib/gregex.c:375
+#: glib/gregex.c:448
msgid "unknown property name after \\P or \\p"
msgstr "خصیصه‌ی ناشناس پس از \\P یا \\p"
-#: ../glib/gregex.c:378
+#: glib/gregex.c:451
msgid "subpattern name is too long (maximum 32 characters)"
msgstr ""
-#: ../glib/gregex.c:381
+#: glib/gregex.c:454
msgid "too many named subpatterns (maximum 10,000)"
msgstr ""
-#: ../glib/gregex.c:384
+#: glib/gregex.c:457
msgid "octal value is greater than \\377"
msgstr ""
-#: ../glib/gregex.c:387
-msgid "DEFINE group contains more than one branch"
+#: glib/gregex.c:461
+msgid "overran compiling workspace"
msgstr ""
-#: ../glib/gregex.c:390
-msgid "repeating a DEFINE group is not allowed"
+#: glib/gregex.c:465
+msgid "previously-checked referenced subpattern not found"
msgstr ""
-#: ../glib/gregex.c:393
+#: glib/gregex.c:468
+msgid "DEFINE group contains more than one branch"
+msgstr ""
+
+#: glib/gregex.c:471
msgid "inconsistent NEWLINE options"
msgstr ""
-#: ../glib/gregex.c:396
-msgid "\\g is not followed by a braced name or an optionally braced non-zero number"
+#: glib/gregex.c:474
+msgid "\\g is not followed by a braced, angle-bracketed, or quoted name or number, or by a plain number"
msgstr ""
-#: ../glib/gregex.c:401
-msgid "unexpected repeat"
-msgstr "تکرار غیرمنتظره"
+#: glib/gregex.c:478
+msgid "a numbered reference must not be zero"
+msgstr ""
-#: ../glib/gregex.c:405
-msgid "code overflow"
+#: glib/gregex.c:481
+msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
msgstr ""
-#: ../glib/gregex.c:409
-msgid "overran compiling workspace"
+#: glib/gregex.c:484
+msgid "(*VERB) not recognized"
msgstr ""
-#: ../glib/gregex.c:413
-msgid "previously-checked referenced subpattern not found"
+#: glib/gregex.c:487
+msgid "number is too big"
+msgstr ""
+
+#: glib/gregex.c:490
+msgid "missing subpattern name after (?&"
+msgstr ""
+
+#: glib/gregex.c:493
+#, fuzzy
+#| msgid "digit expected"
+msgid "digit expected after (?+"
+msgstr "انتظار رقم می‌رÙت"
+
+#: glib/gregex.c:496
+msgid "] is an invalid data character in JavaScript compatibility mode"
msgstr ""
-#: ../glib/gregex.c:631
-#: ../glib/gregex.c:1753
+#: glib/gregex.c:499
+msgid "different names for subpatterns of the same number are not allowed"
+msgstr ""
+
+#: glib/gregex.c:502
+msgid "(*MARK) must have an argument"
+msgstr ""
+
+#: glib/gregex.c:505
+msgid "\\c must be followed by an ASCII character"
+msgstr ""
+
+#: glib/gregex.c:508
+msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
+msgstr ""
+
+#: glib/gregex.c:511
+#, fuzzy
+#| msgid "URIs not supported"
+msgid "\\N is not supported in a class"
+msgstr "آدرس‌ها پشتیبانی نمی‌شود"
+
+#: glib/gregex.c:514
+msgid "too many forward references"
+msgstr ""
+
+#: glib/gregex.c:517
+msgid "name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)"
+msgstr ""
+
+#: glib/gregex.c:520
+msgid "character value in \\u.... sequence is too large"
+msgstr ""
+
+#: glib/gregex.c:743 glib/gregex.c:1988
#, c-format
msgid "Error while matching regular expression %s: %s"
msgstr "خطا در هنگام منطبق کردن عبارت باقاعده %s: %s"
-#: ../glib/gregex.c:1206
+#: glib/gregex.c:1321
msgid "PCRE library is compiled without UTF8 support"
msgstr "کتابخانه PCRE بدون پشتیبانی از UTF8 کامپایل شده است"
-#: ../glib/gregex.c:1215
+#: glib/gregex.c:1325
msgid "PCRE library is compiled without UTF8 properties support"
msgstr "کتابخانه PCRE بدون پشتیبانی از گزینه‌های UTF8 کامپایل شده است"
-#: ../glib/gregex.c:1271
-#, c-format
-msgid "Error while compiling regular expression %s at char %d: %s"
-msgstr "خطا در هنگام کامپایل عبارت با قاعده %s در نویسه %Id: %s"
+#: glib/gregex.c:1333
+#, fuzzy
+#| msgid "PCRE library is compiled without UTF8 properties support"
+msgid "PCRE library is compiled with incompatible options"
+msgstr "کتابخانه PCRE بدون پشتیبانی از گزینه‌های UTF8 کامپایل شده است"
-#: ../glib/gregex.c:1307
+#: glib/gregex.c:1362
#, c-format
msgid "Error while optimizing regular expression %s: %s"
msgstr "خطا در هنگام بهینه کردن عبارت باقاعده %s: %s"
-#: ../glib/gregex.c:2182
-msgid "hexadecimal digit or '}' expected"
+#: glib/gregex.c:1442
+#, c-format
+msgid "Error while compiling regular expression %s at char %d: %s"
+msgstr "خطا در هنگام کامپایل عبارت با قاعده %s در نویسه %Id: %s"
+
+#: glib/gregex.c:2427
+#, fuzzy
+#| msgid "hexadecimal digit or '}' expected"
+msgid "hexadecimal digit or “}†expected"
msgstr "رقم هگزادسیمال یا «}» مورد انتظار بود"
-#: ../glib/gregex.c:2198
+#: glib/gregex.c:2443
msgid "hexadecimal digit expected"
msgstr "رقم هگزادسیمال مورد انتظار بود"
-#: ../glib/gregex.c:2238
-msgid "missing '<' in symbolic reference"
-msgstr ""
+#: glib/gregex.c:2483
+#, fuzzy
+#| msgid "unfinished symbolic reference"
+msgid "missing “<†in symbolic reference"
+msgstr "ارجاع نمادین ناتمام"
-#: ../glib/gregex.c:2247
+#: glib/gregex.c:2492
msgid "unfinished symbolic reference"
msgstr "ارجاع نمادین ناتمام"
-#: ../glib/gregex.c:2254
+#: glib/gregex.c:2499
msgid "zero-length symbolic reference"
msgstr ""
-#: ../glib/gregex.c:2265
+#: glib/gregex.c:2510
msgid "digit expected"
msgstr "انتظار رقم می‌رÙت"
-#: ../glib/gregex.c:2283
+#: glib/gregex.c:2528
msgid "illegal symbolic reference"
msgstr "ارجاع نمادین غیرقانونی"
-#: ../glib/gregex.c:2345
-msgid "stray final '\\'"
+#: glib/gregex.c:2591
+#, fuzzy
+#| msgid "stray final '\\'"
+msgid "stray final “\\â€"
msgstr "«\\» پایانی سرگردان"
-#: ../glib/gregex.c:2349
+#: glib/gregex.c:2595
msgid "unknown escape sequence"
msgstr ""
-#: ../glib/gregex.c:2359
-#, c-format
-msgid "Error while parsing replacement text \"%s\" at char %lu: %s"
+#: glib/gregex.c:2605
+#, fuzzy, c-format
+#| msgid "Error while parsing replacement text \"%s\" at char %lu: %s"
+msgid "Error while parsing replacement text “%s†at char %lu: %s"
msgstr "خطا در هنگام تجزیه کردن متن جایگزین «%s» در نویسه %lu: %s"
-#: ../glib/gshell.c:91
-msgid "Quoted text doesn't begin with a quotation mark"
+#: glib/gshell.c:94
+#, fuzzy
+#| msgid "Quoted text doesn't begin with a quotation mark"
+msgid "Quoted text doesn’t begin with a quotation mark"
msgstr "متن نقل شده با علامت نقل قول شروع نمی‌شود"
-#: ../glib/gshell.c:181
+#: glib/gshell.c:184
msgid "Unmatched quotation mark in command line or other shell-quoted text"
msgstr "علامت نقل قول تکی در سطر دستور یا متون داخل پوستهٔ دیگر"
-#: ../glib/gshell.c:559
-#, c-format
-msgid "Text ended just after a '\\' character. (The text was '%s')"
+#: glib/gshell.c:580
+#, fuzzy, c-format
+#| msgid "Text ended just after a '\\' character. (The text was '%s')"
+msgid "Text ended just after a “\\†character. (The text was “%sâ€)"
msgstr "متن دقیقاً پس از یک نویسهٔ «\\» پایان یاÙت. (متن عبارت بود از «%s»)"
-#: ../glib/gshell.c:566
-#, c-format
-msgid "Text ended before matching quote was found for %c. (The text was '%s')"
+#: glib/gshell.c:587
+#, fuzzy, c-format
+#| msgid "Text ended before matching quote was found for %c. (The text was '%s')"
+msgid "Text ended before matching quote was found for %c. (The text was “%sâ€)"
msgstr "متن پیش از آن Ú©Ù‡ علامت نقل قول متناظر برای %c پیدا شود پایان یاÙت. (متن عبارت بود از «%s»)"
-#: ../glib/gshell.c:578
+#: glib/gshell.c:599
msgid "Text was empty (or contained only whitespace)"
msgstr "متن خالی بود (یا Ùقط Ùاصلهٔ خالی داشت)"
-#: ../glib/gspawn.c:208
+#: glib/gspawn.c:308
#, c-format
msgid "Failed to read data from child process (%s)"
msgstr "خواندن داده‌ها از Ùراروند Ùرزند شکست خورد (%s)"
-#: ../glib/gspawn.c:348
-#, c-format
-msgid "Unexpected error in select() reading data from a child process (%s)"
+#: glib/gspawn.c:458
+#, fuzzy, c-format
+#| msgid "Unexpected error in select() reading data from a child process (%s)"
+msgid "Unexpected error in reading data from a child process (%s)"
msgstr "خطای غیرمنتظره در select()‎ هنگام خواندن داده‌ها از یک Ùراروند Ùرزند (%s)"
-#: ../glib/gspawn.c:433
+#: glib/gspawn.c:543
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "خطای غیرمنتظره در waitpid()‎ â€(%s)"
-#: ../glib/gspawn.c:1174
-#: ../glib/gspawn-win32.c:338
-#: ../glib/gspawn-win32.c:346
+#: glib/gspawn.c:1152 glib/gspawn-win32.c:1407
+#, c-format
+msgid "Child process exited with code %ld"
+msgstr ""
+
+#: glib/gspawn.c:1160
+#, c-format
+msgid "Child process killed by signal %ld"
+msgstr ""
+
+#: glib/gspawn.c:1167
+#, c-format
+msgid "Child process stopped by signal %ld"
+msgstr ""
+
+#: glib/gspawn.c:1174
+#, c-format
+msgid "Child process exited abnormally"
+msgstr ""
+
+#: glib/gspawn.c:1793 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "خواندن از لولهٔ Ùرزند شکست خورد (%s)"
-#: ../glib/gspawn.c:1241
+#: glib/gspawn.c:2095
+#, fuzzy, c-format
+#| msgid "Failed to fork child process (%s)"
+msgid "Failed to spawn child process “%s†(%s)"
+msgstr "انشعاب Ùراروند Ùرزند شکست خورد (%s)"
+
+#: glib/gspawn.c:2212
#, c-format
msgid "Failed to fork (%s)"
msgstr "انشعاب شکست خورد (%s)"
-#: ../glib/gspawn.c:1387
-#: ../glib/gspawn-win32.c:369
-#, c-format
-msgid "Failed to change to directory '%s' (%s)"
+#: glib/gspawn.c:2372 glib/gspawn-win32.c:381
+#, fuzzy, c-format
+#| msgid "Failed to change to directory '%s' (%s)"
+msgid "Failed to change to directory “%s†(%s)"
msgstr "تغییر به شاخهٔ «%s» شکست خورد (%s)"
-#: ../glib/gspawn.c:1397
-#, c-format
-msgid "Failed to execute child process \"%s\" (%s)"
+#: glib/gspawn.c:2382
+#, fuzzy, c-format
+#| msgid "Failed to execute child process \"%s\" (%s)"
+msgid "Failed to execute child process “%s†(%s)"
msgstr "اجرای Ùراروند Ùرزند «%s» شکست خورد (%s)"
-#: ../glib/gspawn.c:1407
+#: glib/gspawn.c:2392
#, c-format
msgid "Failed to redirect output or input of child process (%s)"
msgstr "تغییر مسیر خروجی یا ورودی Ùراروند Ùرزند شکست خورد (%s)"
-#: ../glib/gspawn.c:1416
+#: glib/gspawn.c:2401
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "انشعاب Ùراروند Ùرزند شکست خورد (%s)"
-#: ../glib/gspawn.c:1424
-#, c-format
-msgid "Unknown error executing child process \"%s\""
+#: glib/gspawn.c:2409
+#, fuzzy, c-format
+#| msgid "Unknown error executing child process \"%s\""
+msgid "Unknown error executing child process “%sâ€"
msgstr "خطای ناشناخته هنگام اجرای Ùراروند Ùرزند «%s»"
-#: ../glib/gspawn.c:1448
+#: glib/gspawn.c:2433
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "خواندن دادهٔ کاÙÛŒ از لولهٔ pid Ùرزند شکست خورد (%s)"
-#: ../glib/gspawn.c:1521
-#: ../glib/gspawn-win32.c:299
+#: glib/gspawn-win32.c:294
+msgid "Failed to read data from child process"
+msgstr "خواندن داده‌ها از Ùراروند Ùرزند شکست خورد"
+
+#: glib/gspawn-win32.c:311
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr "ایجاد لوله برای ارتباط با Ùراروند Ùرزند شکست خورد (%s)"
-#: ../glib/gspawn-win32.c:282
-msgid "Failed to read data from child process"
-msgstr "خواندن داده‌ها از Ùراروند Ùرزند شکست خورد"
-
-#: ../glib/gspawn-win32.c:375
-#: ../glib/gspawn-win32.c:494
+#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "اجرای Ùراروند Ùرزند شکست خورد (%s)"
-#: ../glib/gspawn-win32.c:444
+#: glib/gspawn-win32.c:461
#, c-format
msgid "Invalid program name: %s"
msgstr "نام برنامهٔ نامعتبر: %s"
-#: ../glib/gspawn-win32.c:454
-#: ../glib/gspawn-win32.c:722
-#: ../glib/gspawn-win32.c:1278
+#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "رشتهٔ نامعتبر در بردار آرگومان درآیهٔ %Id: %s"
-#: ../glib/gspawn-win32.c:465
-#: ../glib/gspawn-win32.c:737
-#: ../glib/gspawn-win32.c:1311
+#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
#, c-format
msgid "Invalid string in environment: %s"
msgstr "رشتهٔ نامعتبر در محیط: %s"
-#: ../glib/gspawn-win32.c:718
-#: ../glib/gspawn-win32.c:1259
+#: glib/gspawn-win32.c:775
#, c-format
msgid "Invalid working directory: %s"
msgstr "شاخهٔ کاری نامعتبرâ€: %s"
-#: ../glib/gspawn-win32.c:783
+#: glib/gspawn-win32.c:837
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "اجرای برنامهٔ راهنما (‎%s) شکست خورد"
-#: ../glib/gspawn-win32.c:997
+#: glib/gspawn-win32.c:1064
msgid "Unexpected error in g_io_channel_win32_poll() reading data from a child process"
msgstr "خطای غیرمنتظره در g_io_channel_win32_poll()‎ هنگام خواندن داده‌ها از یک Ùراروند Ùرزند"
-#: ../glib/gutf8.c:915
+#: glib/gstrfuncs.c:3338 glib/gstrfuncs.c:3440
+msgid "Empty string is not a number"
+msgstr ""
+
+#: glib/gstrfuncs.c:3362
+#, fuzzy, c-format
+#| msgid "'%s' is not a valid name "
+msgid "“%s†is not a signed number"
+msgstr "نام «%s» معتبر نیست"
+
+#: glib/gstrfuncs.c:3372 glib/gstrfuncs.c:3476
+#, c-format
+msgid "Number “%s†is out of bounds [%s, %s]"
+msgstr ""
+
+#: glib/gstrfuncs.c:3466
+#, fuzzy, c-format
+#| msgid "'%s' is not a valid name "
+msgid "“%s†is not an unsigned number"
+msgstr "نام «%s» معتبر نیست"
+
+#: glib/guri.c:315
+#, fuzzy, no-c-format
+#| msgid " (invalid encoding)"
+msgid "Invalid %-encoding in URI"
+msgstr " (کدگذاری نامعتبر)"
+
+#: glib/guri.c:332
+msgid "Illegal character in URI"
+msgstr ""
+
+#: glib/guri.c:366
+msgid "Non-UTF-8 characters in URI"
+msgstr ""
+
+#: glib/guri.c:546
+#, c-format
+msgid "Invalid IPv6 address ‘%.*s’ in URI"
+msgstr ""
+
+#: glib/guri.c:601
+#, c-format
+msgid "Illegal encoded IP address ‘%.*s’ in URI"
+msgstr ""
+
+#: glib/guri.c:613
+#, c-format
+msgid "Illegal internationalized hostname ‘%.*s’ in URI"
+msgstr ""
+
+#: glib/guri.c:645 glib/guri.c:657
+#, c-format
+msgid "Could not parse port ‘%.*s’ in URI"
+msgstr ""
+
+#: glib/guri.c:664
+#, c-format
+msgid "Port ‘%.*s’ in URI is out of range"
+msgstr ""
+
+#: glib/guri.c:1224 glib/guri.c:1288
+#, fuzzy, c-format
+#| msgid "The URI '%s' is not an absolute URI using the \"file\" scheme"
+msgid "URI ‘%s’ is not an absolute URI"
+msgstr "نشانی «‎%s» یک نشانی اینترنتی مطلق با Ø´Ùمای «پرونده» نیست"
+
+#: glib/guri.c:1230
+#, c-format
+msgid "URI ‘%s’ has no host component"
+msgstr ""
+
+#: glib/guri.c:1435
+msgid "URI is not absolute, and no base URI was provided"
+msgstr ""
+
+#: glib/guri.c:2213
+msgid "Missing ‘=’ and parameter value"
+msgstr ""
+
+#: glib/gutf8.c:817
+#, fuzzy
+#| msgid "failed to get memory"
+msgid "Failed to allocate memory"
+msgstr "گرÙتن حاÙظه شکست خورد"
+
+#: glib/gutf8.c:950
msgid "Character out of range for UTF-8"
msgstr "نویسهٔ خارج از محدوده برای UTF-8"
-#: ../glib/gutf8.c:1015
-#: ../glib/gutf8.c:1024
-#: ../glib/gutf8.c:1154
-#: ../glib/gutf8.c:1163
-#: ../glib/gutf8.c:1302
-#: ../glib/gutf8.c:1398
+#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199 glib/gutf8.c:1338
+#: glib/gutf8.c:1435
msgid "Invalid sequence in conversion input"
msgstr "دنبالهٔ نامعتبر در ورودی تبدیل"
-#: ../glib/gutf8.c:1313
-#: ../glib/gutf8.c:1409
+#: glib/gutf8.c:1349 glib/gutf8.c:1446
msgid "Character out of range for UTF-16"
msgstr "نویسهٔ خارج از محدوده برای UTF-16"
-#: ../glib/gutils.c:2166
-#: ../glib/gutils.c:2193
-#: ../glib/gutils.c:2297
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2727
#, c-format
-msgid "%u byte"
-msgid_plural "%u bytes"
-msgstr[0] "%Iu بایت"
-msgstr[1] "%Iu بایت"
+msgid "%.1f kB"
+msgstr "%I.1f کیلوبایت"
-#: ../glib/gutils.c:2172
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2729
#, c-format
-msgid "%.1f KiB"
-msgstr "%I.1f KiB"
+msgid "%.1f MB"
+msgstr "%I.1f مگابایت"
-#: ../glib/gutils.c:2174
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2731
#, c-format
-msgid "%.1f MiB"
-msgstr "%I.1f MiB"
+msgid "%.1f GB"
+msgstr "%I.1f گیگابایت"
-#: ../glib/gutils.c:2177
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2733
#, c-format
-msgid "%.1f GiB"
-msgstr "%I.1f GiB"
+msgid "%.1f TB"
+msgstr "%I.1f ترابایت"
-#: ../glib/gutils.c:2180
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2735
#, c-format
-msgid "%.1f TiB"
-msgstr "%I.1f TiB"
+msgid "%.1f PB"
+msgstr "%I.1f پتابایت"
-#: ../glib/gutils.c:2183
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2737
#, c-format
-msgid "%.1f PiB"
-msgstr "%I.1f PiB"
+msgid "%.1f EB"
+msgstr "%I.1f اگزابایت"
-#: ../glib/gutils.c:2186
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2741
#, c-format
-msgid "%.1f EiB"
-msgstr "%I.1f EiB"
+msgid "%.1f KiB"
+msgstr "%I.1f کیبی‌بایت"
-#: ../glib/gutils.c:2199
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2743
#, c-format
-msgid "%.1f kB"
-msgstr "%I.1f کیلوبایت"
+msgid "%.1f MiB"
+msgstr "%I.1f مبی‌بایت"
-#: ../glib/gutils.c:2202
-#: ../glib/gutils.c:2310
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2745
#, c-format
-msgid "%.1f MB"
-msgstr "%I.1f مگابایت"
+msgid "%.1f GiB"
+msgstr "%I.1f گیبی‌بایت"
-#: ../glib/gutils.c:2205
-#: ../glib/gutils.c:2315
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2747
#, c-format
-msgid "%.1f GB"
-msgstr "%I.1f گیگابایت"
+msgid "%.1f TiB"
+msgstr "%I.1f تبی‌بایت"
-#: ../glib/gutils.c:2207
-#: ../glib/gutils.c:2320
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2749
#, c-format
-msgid "%.1f TB"
-msgstr "%I.1f تترابایت"
+msgid "%.1f PiB"
+msgstr "%I.1f پبی‌بایت"
-#: ../glib/gutils.c:2210
-#: ../glib/gutils.c:2325
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2751
#, c-format
-msgid "%.1f PB"
-msgstr "%I.1f پتابایت"
+msgid "%.1f EiB"
+msgstr "%I.1f اگزبی‌بایت"
-#: ../glib/gutils.c:2213
-#: ../glib/gutils.c:2330
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2755
#, c-format
-msgid "%.1f EB"
-msgstr "%I.1f اگزابایت"
+msgid "%.1f kb"
+msgstr "%I.1f کیلوبیت"
-#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: ../glib/gutils.c:2250
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2757
#, c-format
-msgid "%s byte"
-msgid_plural "%s bytes"
-msgstr[0] "%s بایت"
-msgstr[1] "%s بایت"
+msgid "%.1f Mb"
+msgstr "%I.1f مگابیت"
-#: ../glib/gutils.c:2305
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2759
#, c-format
-msgid "%.1f KB"
-msgstr "%I.1f کیلوبایت"
+msgid "%.1f Gb"
+msgstr "%I.1f گیگابیت"
-msgctxt "full month name with day"
-msgid "January"
-msgstr "ژانویه"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2761
+#, c-format
+msgid "%.1f Tb"
+msgstr "%I.1f ترابیت"
-msgctxt "full month name with day"
-msgid "February"
-msgstr "Ùوریه"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2763
+#, c-format
+msgid "%.1f Pb"
+msgstr "%I.1f پتابیت"
-msgctxt "full month name with day"
-msgid "March"
-msgstr "مارس"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2765
+#, c-format
+msgid "%.1f Eb"
+msgstr "%I.1f اگزابیت"
-msgctxt "full month name with day"
-msgid "April"
-msgstr "آوریل"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2769
+#, c-format
+msgid "%.1f Kib"
+msgstr "%I.1f کیبی‌بیت"
-msgctxt "full month name with day"
-msgid "May"
-msgstr "مه"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2771
+#, c-format
+msgid "%.1f Mib"
+msgstr "%I.1f مبی‌بیت"
-msgctxt "full month name with day"
-msgid "June"
-msgstr "ژوئن"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2773
+#, c-format
+msgid "%.1f Gib"
+msgstr "%I.1f گیبی‌بیت"
-msgctxt "full month name with day"
-msgid "July"
-msgstr "ژوئیه"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2775
+#, c-format
+msgid "%.1f Tib"
+msgstr "%I.1f تبی‌بیت"
-msgctxt "full month name with day"
-msgid "August"
-msgstr "آگوست"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2777
+#, c-format
+msgid "%.1f Pib"
+msgstr "%I.1f پبی‌بیت"
-msgctxt "full month name with day"
-msgid "September"
-msgstr "سپتامبر"
+#. Translators: Keep the no-break space between %.1f and the unit symbol
+#: glib/gutils.c:2779
+#, c-format
+msgid "%.1f Eib"
+msgstr "%I.1f اگزبی‌بیت"
-msgctxt "full month name with day"
-msgid "October"
-msgstr "اکتبر"
+#: glib/gutils.c:2813 glib/gutils.c:2930
+#, c-format
+msgid "%u byte"
+msgid_plural "%u bytes"
+msgstr[0] "%Iu بایت"
+msgstr[1] "%Iu بایت"
-msgctxt "full month name with day"
-msgid "November"
-msgstr "نوامبر"
+#: glib/gutils.c:2817
+#, c-format
+msgid "%u bit"
+msgid_plural "%u bits"
+msgstr[0] "%Iu بیت"
+msgstr[1] "%Iu بیت"
-msgctxt "full month name with day"
-msgid "December"
-msgstr "دسامبر"
+#. Translators: the %s in "%s bytes" will always be replaced by a number.
+#: glib/gutils.c:2884
+#, c-format
+msgid "%s byte"
+msgid_plural "%s bytes"
+msgstr[0] "%s بایت"
+msgstr[1] "%s بایت"
-msgctxt "abbreviated month name with day"
-msgid "Jan"
-msgstr "ژانویه"
+#. Translators: the %s in "%s bits" will always be replaced by a number.
+#: glib/gutils.c:2889
+#, c-format
+msgid "%s bit"
+msgid_plural "%s bits"
+msgstr[0] "%s بیت"
+msgstr[1] "%s بیت"
-msgctxt "abbreviated month name with day"
-msgid "Feb"
-msgstr "Ùوریه"
+#. Translators: this is from the deprecated function g_format_size_for_display() which uses 'KB' to
+#. * mean 1024 bytes. I am aware that 'KB' is not correct, but it has been preserved for reasons of
+#. * compatibility. Users will not see this string unless a program is using this deprecated function.
+#. * Please translate as literally as possible.
+#.
+#: glib/gutils.c:2943
+#, c-format
+msgid "%.1f KB"
+msgstr "%I.1f کیلوبایت"
-msgctxt "abbreviated month name with day"
-msgid "Mar"
-msgstr "مارس"
+#: glib/gutils.c:2948
+#, c-format
+msgid "%.1f MB"
+msgstr "%I.1f مگابایت"
-msgctxt "abbreviated month name with day"
-msgid "Apr"
-msgstr "آوریل"
+#: glib/gutils.c:2953
+#, c-format
+msgid "%.1f GB"
+msgstr "%I.1f گیگابایت"
-msgctxt "abbreviated month name with day"
-msgid "May"
-msgstr "مه"
+#: glib/gutils.c:2958
+#, c-format
+msgid "%.1f TB"
+msgstr "%I.1f ترابایت"
-msgctxt "abbreviated month name with day"
-msgid "Jun"
-msgstr "ژوئن"
+#: glib/gutils.c:2963
+#, c-format
+msgid "%.1f PB"
+msgstr "%I.1f پتابایت"
-msgctxt "abbreviated month name with day"
-msgid "Jul"
-msgstr "ژوئیه"
+#: glib/gutils.c:2968
+#, c-format
+msgid "%.1f EB"
+msgstr "%I.1f اگزابایت"
-msgctxt "abbreviated month name with day"
-msgid "Aug"
-msgstr "آگوست"
+#~ msgid "doing nothing.\n"
+#~ msgstr "هیچ‌کاری انجام نمی‌شود.\n"
-msgctxt "abbreviated month name with day"
-msgid "Sep"
-msgstr "سپتامبر"
+#~ msgid "Error renaming file: %s"
+#~ msgstr "خطا در تغییر نام پرونده: %s"
-msgctxt "abbreviated month name with day"
-msgid "Oct"
-msgstr "اکتبر"
+#~ msgid "Error opening file: %s"
+#~ msgstr "خطا در هنگام باز کردن پرونده: %s"
-msgctxt "abbreviated month name with day"
-msgid "Nov"
-msgstr "نوامبر"
+#~ msgid "Error creating directory: %s"
+#~ msgstr "خطا در هنگام ساخت شاخه: %s"
-msgctxt "abbreviated month name with day"
-msgid "Dec"
-msgstr "دسامبر"
+#~ msgid "Unknown error on connect"
+#~ msgstr "خطا ناشناخته در اتصال"
+
+#~ msgid "Association creation not supported on win32"
+#~ msgstr "ساخت ارتباط بر روی win32 پشتیبانی نمی‌شود"
+
+#~ msgid "Error reading file '%s': %s"
+#~ msgstr "خطا در خواندن پروندهٔ «‎%s»â€: %s"
+
+#~ msgid "Failed to open file '%s' for writing: fdopen() failed: %s"
+#~ msgstr "باز کردن پروندهٔ «‎%s» برای نوشتن شکست خورد: fdopen()‎ شکست خورد: %s"
+
+#~ msgid "Failed to write file '%s': fflush() failed: %s"
+#~ msgstr "نوشتن پروندهٔ «‎%s» شکست خورد: fflush()‎ شکست خورد: %s"
+
+#~ msgid "Failed to close file '%s': fclose() failed: %s"
+#~ msgstr "بستن پروندهٔ «‎%s» شکست خورد: fclose()‎ شکست خورد: %s"
+
+#~ msgid "Key file does not have key '%s'"
+#~ msgstr "پروندهٔ کلید، کلید «%s» را ندارد"
#~ msgid "File is empty"
#~ msgstr "پرونده خالی است"
-#~ msgid ""
-#~ "Key file contains key '%s' which has value that cannot be interpreted."
+#~ msgid "Key file contains key '%s' which has value that cannot be interpreted."
#~ msgstr "پروندهٔ کلید حاوی کلید «%s» است Ú©Ù‡ مقداری دارد Ú©Ù‡ قابل تÙسیر نیست."
#, fuzzy
@@ -4231,12 +6242,11 @@ msgstr "دسامبر"
#~ msgstr "دنبالهٔ نامعتبر در ورودی تبدیل"
#~ msgid ""
-#~ "Character '%s' is not valid at the start of an entity name; the & "
-#~ "character begins an entity; if this ampersand isn't supposed to be an "
-#~ "entity, escape it as &amp;"
+#~ "Character '%s' is not valid at the start of an entity name; the & character begins an entity; if this "
+#~ "ampersand isn't supposed to be an entity, escape it as &amp;"
#~ msgstr ""
-#~ "نویسهٔ «%s» در ابتدای نام نهادها مجاز نیست؛ نویسهٔ & نهاد را آغاز می‌کند؛ "
-#~ "اگر این علامت & قرار نیست نهاد شود، به‌جای آن از ‎&amp;‎ استÙاده کنید"
+#~ "نویسهٔ «%s» در ابتدای نام نهادها مجاز نیست؛ نویسهٔ & نهاد را آغاز می‌کند؛ اگر این علامت & قرار نیست نهاد "
+#~ "شود، به‌جای آن از ‎&amp;‎ استÙاده کنید"
#~ msgid "Empty character reference; should include a digit such as &#454;"
#~ msgstr "ارجاع نویسه‌ای خالی؛ باید یک رقم داشته باشد، مثل ‎&#454;‎"
diff --git a/po/fr.po b/po/fr.po
index f97ba8a99..d7b5f55b1 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -19,8 +19,8 @@ msgid ""
msgstr ""
"Project-Id-Version: glib master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-01-26 14:31+0000\n"
-"PO-Revision-Date: 2022-01-27 11:38+0100\n"
+"POT-Creation-Date: 2022-05-18 14:09+0000\n"
+"PO-Revision-Date: 2022-05-21 23:04+0200\n"
"Last-Translator: Charles Monzat <charles.monzat@free.fr>\n"
"Language-Team: GNOME French Team <gnomefr@traduc.org>\n"
"Language: fr\n"
@@ -30,6 +30,17 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Gtranslator 40.0\n"
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr ""
+"La définition des applications par défaut n’est pas encore prise en charge"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"La définition de l’application comme étant la dernière utilisée pour le type "
+"n’est pas encore prise en charge"
+
#: gio/gapplication.c:500
msgid "GApplication options"
msgstr "Options GApplication"
@@ -53,7 +64,7 @@ msgid "Replace the running instance"
msgstr "Remplacer l’instance en cours"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Afficher l’aide"
@@ -65,7 +76,7 @@ msgstr "[COMMANDE]"
msgid "Print version"
msgstr "Afficher la version"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Afficher les informations de version et quitter"
@@ -130,8 +141,8 @@ msgstr "La commande pour laquelle l’aide détaillée doit être affichée"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Identifiant d’application au format D-Bus (ex. : org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "FICHIER"
@@ -156,7 +167,7 @@ msgstr "PARAMÈTRE"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Paramètre facultatif pour l’invocation de l’action, au format GVariant"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -170,7 +181,7 @@ msgid "Usage:\n"
msgstr "Utilisation :\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Paramètres :\n"
@@ -294,7 +305,7 @@ msgstr "Le flux est déjà fermé"
msgid "Truncate not supported on base stream"
msgstr "La troncature n’est pas prise en charge sur le flux de base"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -315,7 +326,7 @@ msgstr "Espace insuffisant dans la destination"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Séquence d’octets incorrecte en entrée du convertisseur"
@@ -325,7 +336,7 @@ msgstr "Séquence d’octets incorrecte en entrée du convertisseur"
msgid "Error during conversion: %s"
msgstr "Erreur lors de la conversion : %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Initialisation annulable non prise en charge"
@@ -341,39 +352,39 @@ msgstr ""
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Impossible d’ouvrir le convertisseur de « %s » vers « %s »"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "Type %s"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Type inconnu"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "Type de fichier %s"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials contient des données non valables"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials n’est pas implémenté sur ce système d’exploitation"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Il n’y a pas de prise en charge de GCredentials pour votre plate-forme"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr ""
"GCredentials ne contient pas d’identifiant de processus sur ce système "
"d’exploitation"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr ""
"L’usurpation d’identité n’est pas possible sur ce système d’exploitation"
@@ -382,18 +393,18 @@ msgstr ""
msgid "Unexpected early end-of-stream"
msgstr "Fin précoce de flux inattendue"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Clé « %s » non prise en charge dans l’élément d’adresse « %s »"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr ""
"Combinaison clé/valeur sans signification dans l’élément d’adresse « %s »"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -402,30 +413,30 @@ msgstr ""
"L’adresse « %s » n’est pas valide (nécessite exactement une des clés de "
"« path », « dir », « tmpdir » ou « abstract »)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Erreur dans l’adresse « %s » — l’attribut « %s » est mal formé"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Transport « %s » inconnu ou non pris en charge pour l’adresse « %s »"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr ""
"L’élément d’adresse « %s » ne comporte pas de caractère deux-points (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr ""
"Le nom de transport dans l’élément d’adresse « %s » ne doit pas être vide"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -434,7 +445,7 @@ msgstr ""
"Le couple clé/valeur %d, « %s », dans l’élément d’adresse « %s » ne comporte "
"pas de signe égal"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
@@ -442,7 +453,7 @@ msgstr ""
"Le couple clé/valeur %d, « %s », dans l’élément d’adresse « %s » ne doit pas "
"avoir une clé vide"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -451,7 +462,7 @@ msgstr ""
"Erreur lors du décodage de la clé ou de la valeur dans le couple clé/valeur "
"%d, « %s », dans l’élément d’adresse « %s »"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -460,89 +471,89 @@ msgstr ""
"Erreur dans l’adresse « %s » — le transport Unix requiert que soit "
"exactement définie une des clés « path » ou « abstract »"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr ""
"Erreur dans l’adresse « %s » — l’attribut de l’hôte est manquant ou mal formé"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr ""
"Erreur dans l’adresse « %s » — l’attribut du port est manquant ou mal formé"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Erreur dans l’adresse « %s » — l’attribut du fichier à dénomination unique "
"est manquant ou mal formé"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Erreur de lancement automatique :"
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr ""
"Erreur lors de l’ouverture du fichier à dénomination unique « %s » : %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Erreur de lecture du fichier à dénomination unique « %s » : %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"Erreur de lecture du fichier à dénomination unique « %s », 16 octets "
"attendus, %d reçus"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr ""
"Erreur d’écriture du contenu du fichier à numérotation unique « %s » sur le "
"flux :"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "L’adresse indiquée est vide"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
msgstr ""
-"Impossible de générer dynamiquement un bus messages quand le drapeau setuid "
-"est mis"
+"Impossible de générer dynamiquement un bus messages quand AT_SECURE est "
+"défini"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr ""
"Impossible de générer dynamiquement un bus messages sans identifiant "
"machine : "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Impossible de lancer automatiquement D-Bus sans $DISPLAY X11"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Erreur lors de la génération de la ligne de commande « %s » : "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Impossible de déterminer l’adresse du bus de session (non pris en charge "
"pour ce système d’exploitation)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -551,7 +562,7 @@ msgstr ""
"Impossible de déterminer l’adresse du bus à partir de la variable "
"d’environnement DBUS_STARTER_BUS_TYPE — valeur inconnue « %s »"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -559,7 +570,7 @@ msgstr ""
"Impossible de déterminer l’adresse du bus étant donné que la variable "
"d’environnement DBUS_STARTER_BUS_TYPE n’est pas définie"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Type de bus %d inconnu"
@@ -592,13 +603,13 @@ msgstr ""
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Annulé via GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr ""
"Erreur lors de la récupération d’information sur le répertoire « %s » : %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -606,34 +617,34 @@ msgstr ""
"Les droits d’accès au répertoire « %s » sont mal formés. Mode 0700 attendu, "
"0%o obtenu"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Erreur lors de la création du répertoire « %s » : %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Opération non prise en charge"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Erreur lors de l’ouverture du trousseau de clés « %s » en lecture : "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
"La ligne %d du trousseau de clés de « %s » avec le contenu « %s » est mal "
"formée"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -641,7 +652,7 @@ msgstr ""
"Le premier jeton de la ligne %d du trousseau de clés de « %s » avec le "
"contenu « %s » est mal formé"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -649,60 +660,60 @@ msgstr ""
"Le deuxième jeton de la ligne %d du trousseau de clés de « %s » avec le "
"contenu « %s » est mal formé"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr ""
"Impossible de trouver un cookie avec l’identifiant %d dans le trousseau de "
"clés de « %s »"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Erreur lors de la création du fichier verrou « %s » : %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Erreur lors de la destruction de l’ancien fichier verrou « %s » : %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Erreur lors de la fermeture du fichier verrou (non lié) « %s » : %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr ""
"Erreur lors de la suppression du lien avec le fichier verrou « %s » : %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Erreur lors de l’ouverture du trousseau de clés « %s » en écriture : "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(en outre, le relèvement du verrou pour « %s » a aussi échoué : %s) "
-#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "La connexion est fermée"
-#: gio/gdbusconnection.c:1903
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "Le délai d’attente est dépassé"
-#: gio/gdbusconnection.c:2541
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"Marqueurs non pris en charge rencontrés lors de la construction d’une "
"connexion côté client"
-#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
@@ -710,107 +721,107 @@ msgstr ""
"Pas d’interface « org.freedesktop.DBus.Properties » pour l’objet à "
"l’emplacement %s"
-#: gio/gdbusconnection.c:4414
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "La propriété « %s » n’existe pas"
-#: gio/gdbusconnection.c:4426
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "La propriété « %s » ne peut pas être lue"
-#: gio/gdbusconnection.c:4437
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "La propriété « %s » ne peut pas être écrite"
-#: gio/gdbusconnection.c:4457
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
"Erreur lors de la définition de la propriété « %s » : type attendu « %s », "
"« %s » obtenu"
-#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
-#: gio/gdbusconnection.c:6760
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "L’interface « %s » n’existe pas"
-#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "L’interface « %s » n’existe pas pour l’objet à l’emplacement %s"
-#: gio/gdbusconnection.c:5100
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "La méthode « %s » n’existe pas"
-#: gio/gdbusconnection.c:5131
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Le type du message, « %s », ne correspond pas au type attendu « %s »"
-#: gio/gdbusconnection.c:5334
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Un objet est déjà exporté pour l’interface « %s » en « %s »"
-#: gio/gdbusconnection.c:5561
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Impossible d’obtenir la propriété %s.%s"
-#: gio/gdbusconnection.c:5617
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Impossible de définir la propriété %s.%s"
-#: gio/gdbusconnection.c:5796
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "La méthode « %s » a renvoyé le type « %s », mais « %s » était attendu"
-#: gio/gdbusconnection.c:6872
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr ""
"La méthode « %s » sur l’interface « %s » avec la signature « %s » n’existe "
"pas"
-#: gio/gdbusconnection.c:6993
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Une sous-arborescence est déjà exportée pour « %s »"
-#: gio/gdbusconnection.c:7282
+#: gio/gdbusconnection.c:7266
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "L’objet n’existe pas à l’emplacement « %s »"
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "le type est « INVALID »"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "Message de METHOD_CALL : champ d’en-tête PATH ou MEMBER manquant"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "Message de METHOD_RETURN : champ d’en-tête REPLY_SERIAL manquant"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "Message d’ERREUR : champ d’en-tête REPLY_SERIAL ou ERROR_NAME manquant"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "Message de SIGNAL : champ d’en-tête PATH, INTERFACE ou MEMBER manquant"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -818,7 +829,7 @@ msgstr ""
"Message de SIGNAL : le champ d’en-tête PATH utilise la valeur réservée /org/"
"freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -826,21 +837,21 @@ msgstr ""
"Message de SIGNAL : le champ d’en-tête INTERFACE utilise la valeur réservée "
"org.freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "Lecture de %lu octet demandée, mais seulement %lu reçu(s)"
msgstr[1] "Lecture de %lu octets demandée, mais seulement %lu reçu(s)"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr ""
"Octet 00 (NUL) attendu à la fin de la chaîne « %s » mais un octet %d a été "
"trouvé"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -850,23 +861,23 @@ msgstr ""
"rencontrés à la position %d (longueur de la chaîne : %d octets). La chaîne "
"UTF-8 valide jusqu’à cet endroit est « %s »"
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Valeur imbriquée trop profondément"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr ""
"La valeur analysée « %s » n’est pas un chemin vers un objet D-Bus valide"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "La valeur analysée « %s » n’est pas une signature D-Bus valide"
# 2<<26 donne 128 Mo, 2^26 donne 64 Mo, 1<<26 donne 64 Mo
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -879,7 +890,7 @@ msgstr[1] ""
"Un tableau de %u octets de long a été trouvé. La longueur maximale est de "
"2<<26 octets (64 Mo)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -888,18 +899,18 @@ msgstr ""
"Un tableau de type « a%c » a été trouvé, avec une longueur attendue multiple "
"de %u octets, mais la longueur réelle est de %u octets"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
msgstr "Les structures vides (tuples) ne sont pas autorisées dans D-Bus"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr ""
"La valeur « %s » analysée en tant que variant n’est pas une signature valide "
"de D-Bus"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
@@ -907,39 +918,39 @@ msgstr ""
"Erreur en désérialisant le GVariant en chaîne de type « %s » à partir du "
"format de transmission D-Bus"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
"0x%02x"
msgstr ""
-"Valeur de boutisme non valide. 0x6c (« l ») ou 0x42 (« B ») attendus, mais 0x"
-"%02x trouvé"
+"Valeur de boutisme non valide. 0x6c (« l ») ou 0x42 (« B ») attendus, mais "
+"0x%02x trouvé"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Version majeure du protocole non valide. 1 attendu, %d trouvé"
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "En-tête de signature trouvé mais n’est pas de type signature"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"En-tête de signature trouvé avec la signature « %s », mais le corps du "
"message est vide"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr ""
"La valeur analysée « %s » n’est pas une signature valide de D-Bus (pour le "
"corps)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -950,11 +961,11 @@ msgstr[1] ""
"Pas de signature d’en-tête dans le message, mais le corps du message est de "
"%u octets"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Impossible de désérialiser le message : "
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
@@ -962,7 +973,7 @@ msgstr ""
"Erreur en sérialisant le GVariant en chaîne de type « %s » dans le format de "
"transmission D-Bus"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
@@ -970,18 +981,18 @@ msgstr ""
"Le nombre de descripteurs de fichiers dans le message (%d) diffère de celui "
"du champ d’en-tête (%d)"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Impossible de sérialiser le message : "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr ""
"Le corps du message a la signature « %s », mais il n’y a pas d’en-tête de "
"signature"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -990,57 +1001,57 @@ msgstr ""
"Le corps du message a une signature de type « %s », mais celle dans le champ "
"d’en-tête est « %s »"
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr ""
"Le corps du message est vide mais sa signature dans le champ d’en-tête est "
"« (%s) »"
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Retour d’erreur avec un corps de type « %s »"
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Retour d’erreur avec un corps vide"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(saisissez n’importe quel caractère pour fermer cette fenêtre)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr ""
"La session dbus n’est pas lancée et autolaunch (le lancement automatique) a "
"échoué"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Impossible d’obtenir le profil matériel : %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Impossible de charger %s ou %s : "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Erreur lors de l’appel de StartServiceByName pour %s : "
# Guillemets anglais laissés volontairement
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Réponse %d inattendue de la méthode StartServiceByName(\"%s\")"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1099,60 +1110,60 @@ msgstr ""
"\n"
"Utiliser « %s COMMANDE --help » pour obtenir une aide sur chaque commande.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Erreur : %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Erreur lors de l’analyse du XML d’introspection : %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Erreur : %s n’est pas un nom valide\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Erreur : « %s » n’est pas un chemin d’objet valide\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Connexion au bus système"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Connexion au bus de session"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Connexion à l’adresse D-Bus donnée"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Options de connexion au point terminal :"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Options définissant la connexion au point terminal"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Aucun point terminal de connexion défini"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Plusieurs points terminaux de connexion définis"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
@@ -1160,7 +1171,7 @@ msgstr ""
"Avertissement : selon les données de l’examen interne, l’interface « %s » "
"n’existe pas\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1169,163 +1180,167 @@ msgstr ""
"Avertissement : selon les données de l’examen interne, la méthode « %s » "
"n’existe pas sur l’interface « %s »\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Destination facultative pour le signal (nom unique)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Chemin de l’objet sur lequel émettre le signal"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Noms de signal et d’interface"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Émet un signal."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Erreur de connexion : %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Erreur : %s n’est pas un nom unique de bus valide.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Erreur : le chemin pour l’objet n’est pas précisé\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Erreur : le nom du signal n’est pas défini\n"
# c-format
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Erreur : le nom de signal « %s » n’est pas valide\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Erreur : %s n’est pas un nom d’interface valide\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Erreur : %s n’est pas un nom de membre valide\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Erreur lors de l’analyse du paramètre %d : %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Erreur de purge de la connexion : %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Nom de la destination sur laquelle appeler une méthode"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Chemin de l’objet sur lequel appeler une méthode"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Noms de méthode et d’interface"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Délai d’attente en secondes"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Permettre l’autorisation interactive"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Appeler une méthode sur un objet distant."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Erreur : la destination n’est pas précisée\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Erreur : %s n’est pas un nom de bus valide\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Erreur : le nom de la méthode n’est pas défini\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Erreur : le nom de méthode « %s » n’est pas valide\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Erreur d’analyse du paramètre %d de type « %s » : %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Erreur d’ajout de l’identificateur %d : %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Nom de la destination à examiner en interne"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Chemin de l’objet à examiner en interne"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Imprimer le XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Examiner en interne les enfants"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "N’afficher que les propriétés"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Examiner en interne un objet distant."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Nom de la destination à surveiller"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Chemin de l’objet à surveiller"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Surveiller un objet distant."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr ""
"Erreur : impossible de surveiller une connexion qui n’est pas un bus de "
"messages\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Service à activer avant d’attendre l’autre (nom bien connu)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1333,67 +1348,72 @@ msgstr ""
"Délai d’attente avant de quitter avec une erreur (secondes) ; 0 pour aucun "
"délai (par défaut)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[OPTION…] NOM-DE-BUS"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Attend l’apparition d’un nom de bus."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Erreur : un service à activer doit être indiqué.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "Erreur : un service à attendre doit être indiqué.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Erreur : trop de paramètres.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Erreur : %s n’est pas un nom de bus bien connu valide\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Non autorisé à modifier les paramètres de débogage"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Sans nom"
# Un fichier Desktop n’est pas forcément sur le bureau...
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "Le fichier .desktop n’a pas précisé son champ Exec"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Impossible de trouver le terminal requis par l’application"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr ""
"Impossible de créer le dossier de configuration utilisateur d’application "
"%s : %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr ""
"Impossible de créer le dossier de configuration utilisateur MIME %s : %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "Les informations de l’application ne comportent pas d’identifiant"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Impossible de créer le fichier .desktop utilisateur %s"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Définition personnalisée pour %s"
@@ -1423,7 +1443,7 @@ msgstr "le lecteur n’implémente pas le démarrage (« start »)"
msgid "drive doesn’t implement stop"
msgstr "le lecteur n’implémente pas l’arrêt (« stop »)"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr ""
"Le moteur TLS n’implémente pas la récupération du couplage TLS (« TLS "
@@ -1466,76 +1486,76 @@ msgstr "Un GEmblem est attendu pour le GEmblemedIcon"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Le point de montage conteneur n’existe pas"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Impossible d’écraser un répertoire"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Impossible d’écraser un répertoire par un autre répertoire"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Le fichier cible existe"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Impossible de copier récursivement un répertoire"
# http://en.wikipedia.org/wiki/Splice_(system_call)
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "L’opération « splice » n’est pas prise en charge"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Erreur lors de l’opération de « splicing » sur le fichier : %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr ""
"La copie (reflink/clone) entre points de montage n’est pas prise en charge"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "La copie (reflink/clone) n’est pas prise en charge ou n’est pas valide"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr ""
"La copie (reflink/clone) n’est pas prise en charge ou n’a pas fonctionné"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Impossible de copier le fichier spécial"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Valeur de lien symbolique donnée non valide"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Liens symboliques non pris en charge"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "La corbeille n’est pas prise en charge"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Les noms de fichiers ne peuvent comporter de « %c »"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "le volume n’implémente pas le montage"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Aucune application n’est enregistrée pour gérer ce fichier"
@@ -1580,7 +1600,7 @@ msgstr "La troncature n’est pas autorisée sur un flux d’entrée"
msgid "Truncate not supported on stream"
msgstr "La troncature n’est pas prise en charge sur le flux"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Nom d’hôte non valide"
@@ -1669,7 +1689,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Impossible d’analyser « %s » comme masque d’adresse IP"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Espace insuffisant pour une adresse de connecteur réseau"
@@ -1797,7 +1817,7 @@ msgstr "Erreur lors de l’écriture vers stdout"
#: gio/gio-tool-mkdir.c:48 gio/gio-tool-monitor.c:37 gio/gio-tool-monitor.c:39
#: gio/gio-tool-monitor.c:41 gio/gio-tool-monitor.c:43
#: gio/gio-tool-monitor.c:204 gio/gio-tool-mount.c:1199 gio/gio-tool-open.c:70
-#: gio/gio-tool-remove.c:48 gio/gio-tool-rename.c:45 gio/gio-tool-set.c:89
+#: gio/gio-tool-remove.c:48 gio/gio-tool-rename.c:45 gio/gio-tool-set.c:91
#: gio/gio-tool-trash.c:220 gio/gio-tool-tree.c:239
msgid "LOCATION"
msgstr "EMPLACEMENT"
@@ -2037,7 +2057,7 @@ msgstr "Afficher les noms d’affichage"
#: gio/gio-tool-list.c:41
msgid "Print full URIs"
-msgstr "Afficher les URI complets"
+msgstr "Afficher les URI complètes"
#: gio/gio-tool-list.c:177
msgid "List the contents of the locations."
@@ -2313,14 +2333,14 @@ msgstr "Renommer un fichier."
msgid "Missing argument"
msgstr "Paramètre manquant"
-#: gio/gio-tool-rename.c:76 gio/gio-tool-save.c:190 gio/gio-tool-set.c:137
+#: gio/gio-tool-rename.c:76 gio/gio-tool-save.c:190 gio/gio-tool-set.c:139
msgid "Too many arguments"
msgstr "Trop de paramètres"
#: gio/gio-tool-rename.c:95
#, c-format
msgid "Rename successful. New uri: %s\n"
-msgstr "Le renommage a réussi. Nouvel uri : %s\n"
+msgstr "Le renommage a réussi. Nouvelle uri : %s\n"
#: gio/gio-tool-save.c:50
msgid "Only create if not existing"
@@ -2378,31 +2398,31 @@ msgstr "Type de l’attribut"
msgid "TYPE"
msgstr "TYPE"
-#: gio/gio-tool-set.c:89
+#: gio/gio-tool-set.c:91
msgid "ATTRIBUTE"
msgstr "ATTRIBUT"
-#: gio/gio-tool-set.c:89
+#: gio/gio-tool-set.c:91
msgid "VALUE"
msgstr "VALEUR"
-#: gio/gio-tool-set.c:93
+#: gio/gio-tool-set.c:95
msgid "Set a file attribute of LOCATION."
msgstr "Définir un attribut de fichier de l’EMPLACEMENT."
-#: gio/gio-tool-set.c:113
+#: gio/gio-tool-set.c:115
msgid "Location not specified"
msgstr "Emplacement non indiqué"
-#: gio/gio-tool-set.c:120
+#: gio/gio-tool-set.c:122
msgid "Attribute not specified"
msgstr "Attribut non indiqué"
-#: gio/gio-tool-set.c:130
+#: gio/gio-tool-set.c:132
msgid "Value not specified"
msgstr "Valeur non indiquée"
-#: gio/gio-tool-set.c:180
+#: gio/gio-tool-set.c:182
#, c-format
msgid "Invalid attribute type “%sâ€"
msgstr "Type d’attribut « %s » non valide"
@@ -2520,15 +2540,15 @@ msgstr "Erreur à la compression du fichier %s"
msgid "text may not appear inside <%s>"
msgstr "<%s> ne peut pas contenir du texte"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Affiche la version du programme et quitte"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Nom du fichier de sortie"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2536,49 +2556,49 @@ msgstr ""
"Les répertoires à partir desquels charger les fichiers référencés dans "
"FICHIER (par défaut le répertoire actuel)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "RÉPERTOIRE"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
"Générer la sortie dans le format sélectionné par l’extension du nom de "
"fichier cible"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Générer l’en-tête de la source"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr ""
"Générer le code source utilisé pour lier vers le fichier ressource dans "
"votre code"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Générer la liste des dépendances"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Nom du fichier de dépendances à générer"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Inclure les cibles « phony » dans le fichier de dépendances généré"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Ne pas créer et enregistrer automatiquement la ressource"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Ne pas exporter les fonctions ; les déclarer G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2586,11 +2606,15 @@ msgstr ""
"Ne pas inclure les données de ressources dans le fichier C ; on suppose "
"plutôt qu’elles sont liées de façon externe"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "Nom d’identifiant C utilisé pour le code source généré"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "Le compilateur C cible (par défaut : la variable d’environnement CC)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2601,7 +2625,7 @@ msgstr ""
"xml\n"
"et le fichier de ressource possède l’extension .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Vous devez indiquer un et un seul nom de fichier\n"
@@ -3423,13 +3447,13 @@ msgstr "Erreur lors de la création de la copie de sauvegarde : %s"
msgid "Error renaming temporary file: %s"
msgstr "Erreur lors du renommage du fichier temporaire : %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "Erreur lors de la troncature du fichier : %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Erreur lors de l’ouverture du fichier « %s » : %s"
@@ -3451,7 +3475,7 @@ msgstr "Le fichier a été modifié extérieurement"
msgid "Error removing old file: %s"
msgstr "Erreur à la suppression de l’ancien fichier : %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Le type GSeekType fourni n’est pas valide"
@@ -3463,15 +3487,15 @@ msgstr "Requête « seek » non valide"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Impossible de tronquer GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Le flux de sortie mémoire n’est pas redimensionnable"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Le redimensionnement du flux de sortie mémoire a échoué"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3479,11 +3503,11 @@ msgstr ""
"La quantité de mémoire nécessaire pour effectuer l’écriture est plus grande "
"que l’espace d’adressage disponible"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Positionnement demandé avant le début du flux"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Positionnement demandé après la fin du flux"
@@ -3589,18 +3613,22 @@ msgstr "Somme des vecteurs passés à %s trop grande"
msgid "Source stream is already closed"
msgstr "Le flux source est déjà fermé"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Erreur de résolution de « %s » : %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s non implémentée"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Domaine non valide"
@@ -3715,7 +3743,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " SECTION Un nom de section elf (facultatif)\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " COMMANDE La commande (facultative) à expliquer\n"
@@ -3749,7 +3777,7 @@ msgstr "CHEMIN"
msgid " PATH A resource path\n"
msgstr " CHEMIN Un chemin de ressource\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Le schéma « %s » n’existe pas\n"
@@ -3782,35 +3810,35 @@ msgstr "Un chemin doit se terminer par une barre oblique (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Un chemin ne doit pas contenir deux barres obliques à la suite (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "La valeur donnée est en dehors du domaine de validité\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "La clé ne peut pas être écrite\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Lister les schémas (non-réadressables) installés"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Lister les schémas réadressables installés"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Lister les clés du SCHÉMA"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "SCHÉMA[:CHEMIN]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Lister les enfants du SCHÉMA"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3818,48 +3846,48 @@ msgstr ""
"Lister les clés et les valeurs récursivement\n"
"Si aucun SCHÉMA n’est indiqué, lister toutes les clés\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SCHÉMA[:CHEMIN]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Obtenir la valeur de KEY"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "SCHÉMA[:CHEMIN] CLÉ"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Demander la plage de validité des valeurs de la CLÉ"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Demander la description pour la CLÉ"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Définir la valeur de CLÉ à VALEUR"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SCHÉMA[:CHEMIN] CLÉ VALEUR"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Rétablir CLÉ à sa valeur par défaut"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Réinitialiser toutes les clés de SCHÉMA à leurs valeurs par défaut"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Tester si CLÉ est inscriptible"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3869,11 +3897,11 @@ msgstr ""
"Si CLÉ n’est pas défini, contrôle toutes les clés dans SCHÉMA.\n"
"Presser ^C pour mettre fin au contrôle.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SCHÉMA[:CHEMIN] [CLÉ]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3922,7 +3950,7 @@ msgstr ""
"Saisissez « gsettings help COMMANDE » pour une aide détaillée.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3937,12 +3965,12 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr ""
" RÉPERTOIRE2SCHÉMA Un répertoire de recherche de schémas supplémentaires\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3950,215 +3978,215 @@ msgstr ""
" SCHÉMA Le nom du schéma\n"
" CHEMIN Le chemin, pour les schémas réadressables\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " CLÉ La clé (optionnelle) dans le schéma\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " CLÉ La clé dans le schéma\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " VALEUR La valeur à définir\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Impossible de charger les schémas depuis %s : %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Aucun schéma installé\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Nom de schéma fourni vide\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "La clé « %s » n’existe pas\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Connecteur non valide, non initialisé"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Connecteur non valide, l’initialisation a échoué en raison de : %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Le connecteur est déjà fermé"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Entrées/sorties hors délai sur le connecteur"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "création de GSocket à partir du descripteur de fichier : %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Impossible de créer le connecteur : %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Indication d’une famille inconnue"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Indication d’un protocole inconnu"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr ""
"Impossible d’utiliser des opérations datagramme sur un connecteur non "
"datagramme."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Impossible d’utiliser des opérations datagramme sur un connecteur doté d’un "
"délai d’expiration."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "impossible d’obtenir l’adresse locale : %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "impossible d’obtenir l’adresse distante : %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "impossible d’écouter : %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Erreur lors de la liaison à l’adresse %s : %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Erreur lors de la connexion au groupe multicast : %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Erreur lors de la déconnexion du groupe multicast : %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Aucune prise en charge pour le multicast spécifique à la source"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Famille de connecteur réseau non prise en charge"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "source-specific n’est pas une adresse IPv4"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Nom d’interface trop long"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Interface introuvable : %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "Aucune prise en charge pour le multicast IPv4 spécifique à la source"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "Aucune prise en charge pour le multicast IPv6 spécifique à la source"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Erreur d’acceptation de la connexion : %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Connexion en cours"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Impossible d’obtenir l’erreur actuelle : "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Erreur lors de la réception des données : %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Erreur lors de l’envoi des données : %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Impossible de fermer le connecteur : %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Erreur lors de la fermeture du connecteur : %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "En attente de l’état du connecteur : %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Impossible d’envoyer le message : %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Vecteurs de messages trop grands"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Erreur d’envoi de message : %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage n’est pas pris en charge par Windows"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Erreur lors de la réception du message : %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Impossible de lire les données d’authentification du connecteur : %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr ""
"g_socket_get_credentials n’est pas implémenté sur ce système d’exploitation"
@@ -4177,12 +4205,12 @@ msgstr "Impossible de se connecter à %s : "
msgid "Could not connect: "
msgstr "Impossible de se connecter : "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr ""
"L’usage d’un proxy n’est pas pris en charge dans une connexion non-TCP."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Le protocole du proxy « %s » n’est pas pris en charge."
@@ -4289,7 +4317,7 @@ msgstr ""
msgid "Unknown SOCKSv5 proxy error."
msgstr "Erreur inconnue du serveur mandataire SOCKSv5."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr ""
@@ -4314,44 +4342,68 @@ msgstr "Aucune adresse valide n’a été trouvée"
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "Erreur de résolution inverse de « %s » : %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr ""
+"Erreur lors de l’analyse de l’enregistrement DNS %s : paquet DNS mal formé"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "Aucun enregistrement DNS du type demandé pour « %s »"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "Impossible temporairement de résoudre « %s »"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "Erreur de résolution de « %s »"
-#: gio/gtlscertificate.c:431
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Paquet DNS mal formé"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+#| msgid "Failed to read from file “%sâ€: %s"
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "Échec de l’analyse de la réponse DNS pour « %s » : "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Aucune clé privée codée PEM trouvée"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Impossible de déchiffrer la clé privée codée-PEM"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Impossible d’analyser la clé privée codée-PEM"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Aucun certificat codé-PEM trouvé"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Impossible d’analyser le certificat codé-PEM"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "Le moteur TLS actuel ne prend pas en charge PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr ""
"Ce GTlsBackend ne prend pas en charge la création de certificats PKCS #11"
@@ -4378,57 +4430,65 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "Le mot de passe saisi est incorrect."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "L’envoi de descripteur de fichier n’est pas pris en charge"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "1 message de contrôle attendu, %d reçu"
msgstr[1] "1 message de contrôle attendu, %d reçus"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Type de données auxiliaires inattendu"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "Un descripteur de fichier attendu, %d obtenu\n"
msgstr[1] "Un descripteur de fichier attendu, %d obtenus\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Le descripteur de fichier reçu n’est pas valide"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "La réception de descripteur de fichier n’est pas prise en charge"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Erreur lors de l’envoi de l’identification : "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr ""
"Erreur lors de la vérification de l’activation de SO_PASSCRED pour le "
"connecteur : %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Erreur lors de l’activation de SO_PASSCRED : %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Lecture d’un unique octet attendue à la réception de l’identification, mais "
"aucun octet lu"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Pas de message de contrôle attendu, %d reçu(s)"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Erreur lors de la désactivation de SO_PASSCRED : %s"
@@ -4444,7 +4504,7 @@ msgstr "Erreur de lecture à partir du descripteur de fichier : %s"
msgid "Error closing file descriptor: %s"
msgstr "Erreur de fermeture du descripteur de fichier : %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Racine du système de fichiers"
@@ -4455,7 +4515,7 @@ msgstr "Racine du système de fichiers"
msgid "Error writing to file descriptor: %s"
msgstr "Erreur d’écriture vers le descripteur de fichier : %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr ""
"Les adresses abstraites de connecteur réseau de domaine UNIX ne sont pas "
@@ -4579,7 +4639,7 @@ msgstr "Un signet pour l’URI « %s » existe déjà"
#: glib/gbookmarkfile.c:4007
#, c-format
msgid "No bookmark found for URI “%sâ€"
-msgstr "Aucun signet trouvé pour l’URI « %s »"
+msgstr "Aucun signet trouvé pour l’URI « %s »"
#: glib/gbookmarkfile.c:2418
#, c-format
@@ -4611,8 +4671,8 @@ msgstr ""
msgid "Unrepresentable character in conversion input"
msgstr "Caractère non affichable dans l’entrée du convertisseur"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Séquence de caractères incomplète en fin d’entrée"
@@ -4634,7 +4694,7 @@ msgstr "Octet nul imbriqué dans la sortie du convertisseur"
#: glib/gconvert.c:1688
#, c-format
msgid "The URI “%s†is not an absolute URI using the “file†scheme"
-msgstr "L’URI « %s » n’est pas un URI absolu utilisant le protocole « file »"
+msgstr "L’URI « %s » n’est pas une URI absolue utilisant le protocole « file »"
#: glib/gconvert.c:1698
#, c-format
@@ -5184,17 +5244,17 @@ msgstr "La canal se termine avec un caractère partiel"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Lecture de données brutes impossible dans g_io_channel_read_to_end"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr ""
"Impossible de trouver un fichier de clés valide dans les répertoires de "
"recherche"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "N’est pas un fichier standard"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5202,46 +5262,46 @@ msgstr ""
"Le fichier de clés contient la ligne « %s » qui n’est ni une paire de "
"valeurs de clé, ni un groupe, ni un commentaire"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Nom de groupe non valide : %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Le fichier de clés ne débute pas par un groupe"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Nom de clé non valide : %s"
+msgid "Invalid key name: %.*s"
+msgstr "Nom de clé non valide : %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr ""
"Le fichier de clés contient un codage de caractères non pris en charge « %s »"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Le fichier de clés n’a pas de groupe « %s »"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Le fichier de clés ne contient pas de clé « %s » dans le groupe « %s »"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr ""
"Le fichier de clés contient la clé « %s » avec la valeur « %s » qui n’est "
"pas codé en UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
@@ -5249,7 +5309,7 @@ msgstr ""
"Le fichier de clés contient la clé « %s » dont une valeur est impossible à "
"interpréter."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5258,41 +5318,41 @@ msgstr ""
"Le fichier de clés contient la clé « %s » dans le groupe « %s » qui a une "
"valeur impossible à interpréter."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr ""
"La clé « %s » dans le groupe « %s » a une valeur « %s » alors que %s était "
"attendu"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Le fichier de clés contient un caractère d’échappement en fin de ligne"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr ""
"Le fichier de clés contient une séquence d’échappement non valide « %s »"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "La valeur « %s » ne peut pas être interprétée comme un nombre."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "La valeur entière « %s » est hors plage"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr ""
"La valeur « %s » ne peut pas être interprétée comme un nombre à virgule "
"flottante."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "La valeur « %s » ne peut pas être interprétée comme un booléen."
@@ -5604,7 +5664,7 @@ msgstr "Erreur lors de l’analyse de l’option %s"
msgid "Missing argument for %s"
msgstr "Paramètre manquant pour %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Option inconnue %s"
@@ -6025,127 +6085,137 @@ msgstr "Le texte était vide (ou ne contenait que des espaces)"
msgid "Failed to read data from child process (%s)"
msgstr "La lecture des données depuis le processus fils a échoué (%s)"
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr ""
"Erreur inattendue lors de la lecture de données depuis un processus fils (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Erreur inattendue dans waitpid() (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "Le processus fils s’est terminé avec le code %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Le processus fils a été tué par le signal %ld"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Le processus fils a été arrêté par le signal %ld"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Le processus fils s’est terminé anormalement"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "La lecture depuis un tube fils a échoué (%s)"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "L’exécution du processus fils « %s » a échoué (%s)"
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Le clonage a échoué (%s)"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Le changement de répertoire « %s » a échoué (%s)"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "L’exécution du processus fils « %s » a échoué (%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2550
+#, c-format
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr ""
+"L’ouverture du fichier pour réallouer le descripteur de fichier a échoué (%s)"
+
+#: glib/gspawn.c:2558
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
+msgid "Failed to duplicate file descriptor for child process (%s)"
msgstr ""
-"La redirection de la sortie ou de l’entrée du processus fils a échoué (%s)"
+"La duplication du descripteur de fichier pour le processus fils a échoué (%s)"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Le clonage du processus fils a échoué (%s)"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2575
#, c-format
-#| msgid "Failed to read data from child process (%s)"
msgid "Failed to close file descriptor for child process (%s)"
msgstr ""
"La fermeture du descripteur de fichier pour le processus fils a échoué (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Erreur inconnue à l’exécution du processus fils « %s »"
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr ""
"Impossible de lire suffisamment de données depuis le tube du processus fils "
"de pid (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "La lecture des données depuis le processus fils a échoué"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "L’exécution du processus fils a échoué (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "L’appel à dup() dans le processus fils a échoué (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Nom de programme non valide : %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Chaîne non valide dans le vecteur de paramètre à %d : %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Chaîne non valide dans l’environnement : %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Répertoire de travail non valide : %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "L’exécution du programme d’aide a échoué (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -6153,21 +6223,21 @@ msgstr ""
"Erreur inattendue dans g_io_channel_win32_poll() lors de la lecture des "
"données depuis un processus fils"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Une chaîne vide n’est pas un nombre"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "« %s » n’est pas un nom valide"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Le nombre « %s » est hors limites [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "« %s » n’est pas un nombre non signé"
@@ -6228,175 +6298,175 @@ msgstr "L’URI n’est pas absolue, et aucune URI de base n’a été fournie"
msgid "Missing ‘=’ and parameter value"
msgstr "Caractère « = » et paramètre manquants"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Impossible d’allouer de la mémoire"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Caractère hors plage pour UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Séquence non valide dans l’entrée du convertisseur"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Caractère hors plage pour UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f ko"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f Mo"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f Go"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f To"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f Po"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f Eo"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f Kio"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f Mio"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f Gio"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f Tio"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f Pio"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f Eio"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u octet"
msgstr[1] "%u octets"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6404,7 +6474,7 @@ msgstr[0] "%u bit"
msgstr[1] "%u bits"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6412,7 +6482,7 @@ msgstr[0] "%s octet"
msgstr[1] "%s octets"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6424,36 +6494,40 @@ msgstr[1] "%s bits"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f Ko"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f Mo"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f Go"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f To"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f Po"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f Eo"
+#~ msgid "Failed to redirect output or input of child process (%s)"
+#~ msgstr ""
+#~ "La redirection de la sortie ou de l’entrée du processus fils a échoué (%s)"
+
#~ msgid "Unknown error on connect"
#~ msgstr "Erreur inconnue à la connexion"
diff --git a/po/fur.po b/po/fur.po
index 956687797..6a17610f9 100644
--- a/po/fur.po
+++ b/po/fur.po
@@ -7,16 +7,29 @@ msgid ""
msgstr ""
"Project-Id-Version: glib master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2021-01-12 18:10+0000\n"
-"PO-Revision-Date: 2021-01-17 16:07+0100\n"
+"POT-Creation-Date: 2022-03-07 18:49+0000\n"
+"PO-Revision-Date: 2022-03-08 05:00+0000\n"
"Last-Translator: Fabio Tomat <f.t.public@gmail.com>\n"
-"Language-Team: Friulian <fur@li.org>\n"
+"Language-Team: Friulian <f.t.public@gmail.com>\n"
"Language: fur\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Poedit 2.4.2\n"
+"X-Editor: HaiPO 1.0 Release\n"
+"X-Generator: Poedit 3.0\n"
+
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr ""
+"No je ancjemò supuartade la pussibilitât di stabilî lis aplicazions "
+"predefinidis"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"No je ancjemò supuartade la pussibilitât di stabilî la aplicazion come chê "
+"ultime doprade pal gjenar."
#: gio/gapplication.c:500
msgid "GApplication options"
@@ -40,11 +53,12 @@ msgid "Replace the running instance"
msgstr "Sostituìs la istance in esecuzion"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:493 gio/gsettings-tool.c:567
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Stampe jutori"
-#: gio/gapplication-tool.c:47 gio/gresource-tool.c:494 gio/gresource-tool.c:562
+#: gio/gapplication-tool.c:47 gio/gresource-tool.c:495
+#: gio/gresource-tool.c:563
msgid "[COMMAND]"
msgstr "[COMANT]"
@@ -52,97 +66,98 @@ msgstr "[COMANT]"
msgid "Print version"
msgstr "Stampe version"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:573
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Stampe informazions su la version e jes"
-#: gio/gapplication-tool.c:52
+#: gio/gapplication-tool.c:53
msgid "List applications"
msgstr "Liste aplicazions"
-#: gio/gapplication-tool.c:53
+#: gio/gapplication-tool.c:54
msgid "List the installed D-Bus activatable applications (by .desktop files)"
msgstr ""
-"Liste lis aplicazion instaladis che si puedin ativâ di D-Bus (par file ."
-"desktop)"
+"Liste lis aplicazion instaladis che si puedin ativâ di D-Bus (par file "
+".desktop)"
-#: gio/gapplication-tool.c:55
+#: gio/gapplication-tool.c:57
msgid "Launch an application"
msgstr "Invie une aplicazion"
-#: gio/gapplication-tool.c:56
+#: gio/gapplication-tool.c:58
msgid "Launch the application (with optional files to open)"
msgstr "Invie la aplicazion (cun file opzionâi di vierzi)"
-#: gio/gapplication-tool.c:57
+#: gio/gapplication-tool.c:59
msgid "APPID [FILE…]"
msgstr "APPID [FILE…]"
-#: gio/gapplication-tool.c:59
+#: gio/gapplication-tool.c:61
msgid "Activate an action"
msgstr "Ative une azion"
-#: gio/gapplication-tool.c:60
+#: gio/gapplication-tool.c:62
msgid "Invoke an action on the application"
msgstr "Invoche une azion su la aplicazion"
-#: gio/gapplication-tool.c:61
+#: gio/gapplication-tool.c:63
msgid "APPID ACTION [PARAMETER]"
msgstr "APPID AZION [PARAMETRI]"
-#: gio/gapplication-tool.c:63
+#: gio/gapplication-tool.c:65
msgid "List available actions"
msgstr "Liste azions disponibilis"
-#: gio/gapplication-tool.c:64
+#: gio/gapplication-tool.c:66
msgid "List static actions for an application (from .desktop file)"
msgstr "Liste lis azions statichis par une aplicazion (dal file .desktop)"
-#: gio/gapplication-tool.c:65 gio/gapplication-tool.c:71
+#: gio/gapplication-tool.c:67 gio/gapplication-tool.c:73
msgid "APPID"
msgstr "APPID"
-#: gio/gapplication-tool.c:70 gio/gapplication-tool.c:133 gio/gdbus-tool.c:106
+#: gio/gapplication-tool.c:72 gio/gapplication-tool.c:135 gio/gdbus-tool.c:106
#: gio/gio-tool.c:224
msgid "COMMAND"
msgstr "COMANT"
-#: gio/gapplication-tool.c:70
+#: gio/gapplication-tool.c:72
msgid "The command to print detailed help for"
msgstr "Il comant che di chel stampâ il jutori detaiât"
-#: gio/gapplication-tool.c:71
+#: gio/gapplication-tool.c:73
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr ""
"Identificadôr aplicazion tal formât D-Bus (p.e. org.esempli.visualizadôr)"
-#: gio/gapplication-tool.c:72 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
-#: gio/gresource-tool.c:500 gio/gresource-tool.c:566
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
+#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "FILE"
-#: gio/gapplication-tool.c:72
+#: gio/gapplication-tool.c:74
msgid "Optional relative or absolute filenames, or URIs to open"
msgstr "Nons di file assolûts o relatîfs opzionâi opûr URI di vierzi"
-#: gio/gapplication-tool.c:73
+#: gio/gapplication-tool.c:75
msgid "ACTION"
msgstr "AZION"
-#: gio/gapplication-tool.c:73
+#: gio/gapplication-tool.c:75
msgid "The action name to invoke"
msgstr "La azion di invocâ"
-#: gio/gapplication-tool.c:74
+#: gio/gapplication-tool.c:76
msgid "PARAMETER"
msgstr "PARAMETRI"
-#: gio/gapplication-tool.c:74
+#: gio/gapplication-tool.c:76
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Parametri opzionâl pe invocazion de azion, in formât GVariant"
-#: gio/gapplication-tool.c:96 gio/gresource-tool.c:531 gio/gsettings-tool.c:659
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532
+#: gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -151,26 +166,26 @@ msgstr ""
"Comant no cognossût %s\n"
"\n"
-#: gio/gapplication-tool.c:101
+#: gio/gapplication-tool.c:103
msgid "Usage:\n"
msgstr "Ûs:\n"
-#: gio/gapplication-tool.c:114 gio/gresource-tool.c:556
-#: gio/gsettings-tool.c:694
+#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argoments:\n"
-#: gio/gapplication-tool.c:133 gio/gio-tool.c:224
+#: gio/gapplication-tool.c:135 gio/gio-tool.c:224
msgid "[ARGS…]"
msgstr "[ARGS…]"
-#: gio/gapplication-tool.c:134
+#: gio/gapplication-tool.c:136
#, c-format
msgid "Commands:\n"
msgstr "Comants:\n"
#. Translators: do not translate 'help', but please translate 'COMMAND'.
-#: gio/gapplication-tool.c:146
+#: gio/gapplication-tool.c:148
#, c-format
msgid ""
"Use “%s help COMMAND†to get detailed help.\n"
@@ -179,7 +194,7 @@ msgstr ""
"Dopre “%s help COMANT†par vê un jutori detaiât.\n"
"\n"
-#: gio/gapplication-tool.c:165
+#: gio/gapplication-tool.c:167
#, c-format
msgid ""
"%s command requires an application id to directly follow\n"
@@ -188,13 +203,13 @@ msgstr ""
"Il comant %s al domande un id di aplicazion di seguî in maniere direte\n"
"\n"
-#: gio/gapplication-tool.c:171
+#: gio/gapplication-tool.c:173
#, c-format
msgid "invalid application id: “%sâ€\n"
msgstr "id aplicazion no valit: “%sâ€\n"
#. Translators: %s is replaced with a command name like 'list-actions'
-#: gio/gapplication-tool.c:182
+#: gio/gapplication-tool.c:184
#, c-format
msgid ""
"“%s†takes no arguments\n"
@@ -203,21 +218,21 @@ msgstr ""
"“%s†no si spiete nissun argoment\n"
"\n"
-#: gio/gapplication-tool.c:266
+#: gio/gapplication-tool.c:268
#, c-format
msgid "unable to connect to D-Bus: %s\n"
msgstr "impussibil conetisi al D-Bus: %s\n"
-#: gio/gapplication-tool.c:286
+#: gio/gapplication-tool.c:288
#, c-format
msgid "error sending %s message to application: %s\n"
msgstr "erôr tal inviâ il messaç %s ae aplicazion: %s\n"
-#: gio/gapplication-tool.c:317
+#: gio/gapplication-tool.c:319
msgid "action name must be given after application id\n"
msgstr "si scugne furnî il non de azion dopo il id de aplicazion\n"
-#: gio/gapplication-tool.c:325
+#: gio/gapplication-tool.c:327
#, c-format
msgid ""
"invalid action name: “%sâ€\n"
@@ -226,25 +241,25 @@ msgstr ""
"non azion no valit: “%sâ€\n"
"i nons des azions a scugnin consisti nome di alfanumerics, “-†e “.â€\n"
-#: gio/gapplication-tool.c:344
+#: gio/gapplication-tool.c:346
#, c-format
msgid "error parsing action parameter: %s\n"
msgstr "erôr tal analizâ il parametri de azion: %s\n"
-#: gio/gapplication-tool.c:356
+#: gio/gapplication-tool.c:358
msgid "actions accept a maximum of one parameter\n"
msgstr "lis azions a acetin un massim di un parametri\n"
-#: gio/gapplication-tool.c:411
+#: gio/gapplication-tool.c:413
msgid "list-actions command takes only the application id"
msgstr "il comant list-actions al vûl dome il id de aplicazion"
-#: gio/gapplication-tool.c:421
+#: gio/gapplication-tool.c:423
#, c-format
msgid "unable to find desktop file for application %s\n"
msgstr "impussibil cjatâ il file scritori pe aplicazion %s\n"
-#: gio/gapplication-tool.c:466
+#: gio/gapplication-tool.c:468
#, c-format
msgid ""
"unrecognised command: %s\n"
@@ -254,8 +269,8 @@ msgstr ""
"\n"
#: gio/gbufferedinputstream.c:420 gio/gbufferedinputstream.c:498
-#: gio/ginputstream.c:179 gio/ginputstream.c:379 gio/ginputstream.c:617
-#: gio/ginputstream.c:1019 gio/goutputstream.c:223 gio/goutputstream.c:1049
+#: gio/ginputstream.c:179 gio/ginputstream.c:379 gio/ginputstream.c:648
+#: gio/ginputstream.c:1050 gio/goutputstream.c:223 gio/goutputstream.c:1049
#: gio/gpollableinputstream.c:205 gio/gpollableoutputstream.c:277
#, c-format
msgid "Too large count value passed to %s"
@@ -266,11 +281,11 @@ msgstr "Valôr di conte passât a %s masse grant"
msgid "Seek not supported on base stream"
msgstr "Ricercje no supuartade sul flus di base"
-#: gio/gbufferedinputstream.c:937
+#: gio/gbufferedinputstream.c:938
msgid "Cannot truncate GBufferedInputStream"
msgstr "Impussibil cjonçâ GBufferedInputStream"
-#: gio/gbufferedinputstream.c:982 gio/ginputstream.c:1208 gio/giostream.c:300
+#: gio/gbufferedinputstream.c:983 gio/ginputstream.c:1239 gio/giostream.c:300
#: gio/goutputstream.c:2198
msgid "Stream is already closed"
msgstr "Il flus al è za sierât"
@@ -279,7 +294,7 @@ msgstr "Il flus al è za sierât"
msgid "Truncate not supported on base stream"
msgstr "Cjonçâ no supuartât sul flus di base"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1864 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -298,33 +313,33 @@ msgid "Not enough space in destination"
msgstr "No vonde spazi te destinazion"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
-#: gio/gdatainputstream.c:1261 glib/gconvert.c:448 glib/gconvert.c:878
-#: glib/giochannel.c:1564 glib/giochannel.c:1606 glib/giochannel.c:2461
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
+#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Secuence byte no valide tal input di conversion"
-#: gio/gcharsetconverter.c:347 glib/gconvert.c:456 glib/gconvert.c:792
-#: glib/giochannel.c:1571 glib/giochannel.c:2473
+#: gio/gcharsetconverter.c:347 glib/gconvert.c:457 glib/gconvert.c:793
+#: glib/giochannel.c:1580 glib/giochannel.c:2482
#, c-format
msgid "Error during conversion: %s"
msgstr "Erôr dilunc la conversion: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Inizializazion anulabile no supuartade"
-#: gio/gcharsetconverter.c:456 glib/gconvert.c:321 glib/giochannel.c:1392
+#: gio/gcharsetconverter.c:456 glib/gconvert.c:322 glib/giochannel.c:1401
#, c-format
msgid "Conversion from character set “%s†to “%s†is not supported"
msgstr "Conversion de cumbinazion di caratars “%s†a “%s†no je supuartade"
-#: gio/gcharsetconverter.c:460 glib/gconvert.c:325
+#: gio/gcharsetconverter.c:460 glib/gconvert.c:326
#, c-format
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Impussibil vierzi il convertidôr di “%s†a “%sâ€"
-#: gio/gcontenttype.c:452
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "gjenar %s"
@@ -338,23 +353,23 @@ msgstr "Gjenar no cognossût"
msgid "%s filetype"
msgstr "gjenar di file %s"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials al conten dâts no valits"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials nol è implementât in chest SO"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Nol esist il supuart par GCredentials pe tô plateforme"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GCredentials nol conten un ID di procès su chest SO"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Imbroi des credenziâls (spoofing) nol è pussibil su chest SO"
@@ -362,18 +377,18 @@ msgstr "Imbroi des credenziâls (spoofing) nol è pussibil su chest SO"
msgid "Unexpected early end-of-stream"
msgstr "Fin-dal-flus premadûr inspietât"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Clâf “%s†no supuartade inte vôs di direzion “%sâ€"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr ""
"Cumbinazion de cubie clâf/valôr cence significât inte vôs di direzion “%sâ€"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -382,30 +397,29 @@ msgstr ""
"Direzion “%s†no valide (e covente juste un tra une clâf astrate, tmpdir, "
"dir o percors)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
-#, fuzzy, c-format
-#| msgid "Error in address “%s†— the port attribute is malformed"
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
+#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
-msgstr "Erôr inte direzion “%s†— l'atribût puarte al è malformât"
+msgstr "Erôr te direzion “%s†— l'atribût “%s†al è malformât"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Traspuart “%s†no cognossût o no supuartât pe direzion “%sâ€"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "L'element direzion “%s†nol conten un doi ponts (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr ""
"Il non dal traspuart intal element de direzion “%s†nol à di jessi vueit"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -414,22 +428,22 @@ msgstr ""
"Cubie clâf/valôr %d, “%sâ€, intal element direzion “%s†no conten un segn "
"uguâl"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
msgstr ""
-"Cubie clâf/valôr %d, “%sâ€, intal element direzion “%s†nol à di contignî une "
-"clâf vueide"
+"Cubie clâf/valôr %d, “%sâ€, intal element direzion “%s†nol à di contignî une"
+" clâf vueide"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
-"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
-"“%sâ€"
+"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element"
+" “%sâ€"
msgstr ""
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -438,91 +452,92 @@ msgstr ""
"Erôr inte direzion “%s†— il traspuart unix al domande di stabilî juste une "
"des clâfs tra “path†o “abstractâ€"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr "Erôr inte direzion “%s†— l'atribût host al mancje o al è malformât"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "Erôr inte direzion “%s†— l'atribût puarte al mancje o al è malformât"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
-msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
+msgid ""
+"Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Erôr te direzion “%s†— al mancje, o al è malformât, l'atribût dal file dal "
"numar doprât une sole volte"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Erôr tal inviâ in automatic: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Erôr tal vierzi il file dal numar doprât une sole volte “%sâ€: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Erôr tal lei dal file dal numar doprât une sole volte “%sâ€: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"Erôr tal lei dal file dal numar doprât une sole volte “%sâ€, si spietavin 16 "
"byte, si à vût %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr ""
"Erôr tal scrivi sul flus i contignûts dal file dal numar doprât une sole "
"volte “%sâ€:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "La direzion furnide e je vueide"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
msgstr ""
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr ""
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Impussibil inviâ in automatic D-Bus cence $DISPLAY X11"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr ""
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Impussibil determinâ la direzion dal bus di session (no implementade par "
"chest SO)"
-#: gio/gdbusaddress.c:1367 gio/gdbusconnection.c:7224
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7334
#, c-format
msgid ""
-"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
-"— unknown value “%sâ€"
+"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable"
+" — unknown value “%sâ€"
msgstr ""
"Impussibil determinâ la direzion dal bus de variabile di ambient "
"DBUS_STARTER_BUS_TYPE — valôr “%s†no cognossût"
-#: gio/gdbusaddress.c:1376 gio/gdbusconnection.c:7233
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7343
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -530,7 +545,7 @@ msgstr ""
"Impussibil determinâ la direzion dal bus parcè che la variabile di ambient "
"DBUS_STARTER_BUS_TYPE no je stabilide"
-#: gio/gdbusaddress.c:1386
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Gjenar di bus %d no cognossût"
@@ -546,21 +561,26 @@ msgstr "Mancjance di contignût inspietade cirint di lei (in sigurece) une rie"
#: gio/gdbusauth.c:482
#, c-format
msgid ""
-"Exhausted all available authentication mechanisms (tried: %s) (available: %s)"
+"Exhausted all available authentication mechanisms (tried: %s) (available: "
+"%s)"
msgstr ""
"Esaurîts ducj i mecanisims di autenticazion disponibii (provâts: %s) "
"(disponibii: %s)"
-#: gio/gdbusauth.c:1167
+#: gio/gdbusauth.c:1171
+msgid "User IDs must be the same for peer and server"
+msgstr ""
+
+#: gio/gdbusauth.c:1183
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Anulât vie GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Erôr tal vê informazions pe cartele “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -568,32 +588,32 @@ msgstr ""
"I permès su pe cartele “%s†no son valits. Si spietave modalitât 0700, vût "
"0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Erôr tal creâ la cartele “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1048 gio/gfile.c:1286
-#: gio/gfile.c:1424 gio/gfile.c:1662 gio/gfile.c:1717 gio/gfile.c:1775
-#: gio/gfile.c:1859 gio/gfile.c:1916 gio/gfile.c:1980 gio/gfile.c:2035
-#: gio/gfile.c:3749 gio/gfile.c:3804 gio/gfile.c:4097 gio/gfile.c:4567
-#: gio/gfile.c:4978 gio/gfile.c:5063 gio/gfile.c:5153 gio/gfile.c:5250
-#: gio/gfile.c:5337 gio/gfile.c:5438 gio/gfile.c:8148 gio/gfile.c:8238
-#: gio/gfile.c:8322 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Operazion no supuartade"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Erôr tal lei il puarteclâfs “%s†pe leture: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "La rie %d dal puarteclâfs su “%s†cun contignût “%s†e je malformade"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -601,65 +621,66 @@ msgstr ""
"Il prin token de rie %d dal puarteclâfs su “%s†cul contignût “%s†al è "
"malformât"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
-"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
+"Second token of line %d of the keyring at “%s†with content “%s†is "
+"malformed"
msgstr ""
"Il secont token de rie %d dal puarteclâfs su “%s†cul contignût “%s†al è "
"malformât"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "No si à cjatât il cookie cul id %d intal puarteclâfs su “%sâ€"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Erôr tal creâ il file di bloc “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Erôr tal eliminâ il file di bloc passât “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Erôr tal sierâ il file di bloc (cence colegament) “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Erôr tal discolegâ il file di bloc “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Erôr tal vierzi il puarteclâfs “%s†pe scriture: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(In plui no si è rivâts ancje a molâ il bloc par “%sâ€: %s) "
-#: gio/gdbusconnection.c:595 gio/gdbusconnection.c:2397
+#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
msgid "The connection is closed"
msgstr "La conession e je sierade"
-#: gio/gdbusconnection.c:1894
+#: gio/gdbusconnection.c:1903
msgid "Timeout was reached"
msgstr "Si à passât il timp massim"
-#: gio/gdbusconnection.c:2519
+#: gio/gdbusconnection.c:2541
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"Si à intivât opzions no supuartadis cuant che si costruive une conession de "
"bande dal client"
-#: gio/gdbusconnection.c:4170 gio/gdbusconnection.c:4517
+#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
@@ -667,160 +688,167 @@ msgstr ""
"Interface “org.freedesktop.DBus.Properties†inesistente sul ogjet tal "
"percors %s"
-#: gio/gdbusconnection.c:4312
+#: gio/gdbusconnection.c:4414
#, c-format
msgid "No such property “%sâ€"
msgstr "Proprietât “%s†inesistente"
-#: gio/gdbusconnection.c:4324
+#: gio/gdbusconnection.c:4426
#, c-format
msgid "Property “%s†is not readable"
msgstr "No si pues lei la proprietât “%sâ€"
-#: gio/gdbusconnection.c:4335
+#: gio/gdbusconnection.c:4437
#, c-format
msgid "Property “%s†is not writable"
msgstr "No si pues scrivi la proprietât “%sâ€"
-#: gio/gdbusconnection.c:4355
+#: gio/gdbusconnection.c:4457
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
"Erôr tal configurâ la proprietât “%sâ€: si spietave il gjenar “%s†ma si à "
"vût “%sâ€"
-#: gio/gdbusconnection.c:4460 gio/gdbusconnection.c:4668
-#: gio/gdbusconnection.c:6664
+#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
+#: gio/gdbusconnection.c:6760
#, c-format
msgid "No such interface “%sâ€"
msgstr "Interface “%s†inesistente"
-#: gio/gdbusconnection.c:4886 gio/gdbusconnection.c:7173
+#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Interface “%s†inesistente sul ogjet tal percors %s"
-#: gio/gdbusconnection.c:4984
+#: gio/gdbusconnection.c:5100
#, c-format
msgid "No such method “%sâ€"
msgstr "Metodi “%s†inesistent"
-#: gio/gdbusconnection.c:5015
+#: gio/gdbusconnection.c:5131
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Il gjenar di messaç “%sâ€, nol corispuint al gjenar spietât “%sâ€"
-#: gio/gdbusconnection.c:5213
+#: gio/gdbusconnection.c:5334
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Un ogjet al è za espuartât pe interface %s su %s"
-#: gio/gdbusconnection.c:5439
+#: gio/gdbusconnection.c:5561
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Impussibil recuperâ la proprietât %s.%s"
-#: gio/gdbusconnection.c:5495
+#: gio/gdbusconnection.c:5617
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Impussibil stabilî la proprietât %s.%s"
-#: gio/gdbusconnection.c:5673
+#: gio/gdbusconnection.c:5796
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "Il metodi “%s†al à tornât il gjenar “%sâ€, ma si spietave “%sâ€"
-#: gio/gdbusconnection.c:6775
+#: gio/gdbusconnection.c:6872
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "Il metodi “%s†su pe interface “%s†cun firme “%s†nol esist"
-#: gio/gdbusconnection.c:6896
+#: gio/gdbusconnection.c:6993
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Un sot-arbul al è za espuartât par %s"
-#: gio/gdbusmessage.c:1266
+#: gio/gdbusconnection.c:7282
+#, c-format
+msgid "Object does not exist at path “%sâ€"
+msgstr ""
+
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "il gjenar al è NO VALIT"
-#: gio/gdbusmessage.c:1277
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "Messaç METHOD_CALL: il cjamp di intestazion PATH o MEMBER al mancje"
-#: gio/gdbusmessage.c:1288
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "Messaç METHOD_RETURN: il cjamp di intestazion REPLY_SERIAL al mancje"
-#: gio/gdbusmessage.c:1300
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr ""
"Messaç di ERÔR: il cjamp di intestazion REPLY_SERIAL o ERROR_NAME al mancje"
-#: gio/gdbusmessage.c:1313
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr ""
"Messaç SIGNAL: il cjamp di intestazion PATH, INTERFACE o MEMBER al mancje"
-#: gio/gdbusmessage.c:1321
+#: gio/gdbusmessage.c:1356
msgid ""
-"SIGNAL message: The PATH header field is using the reserved value /org/"
-"freedesktop/DBus/Local"
+"SIGNAL message: The PATH header field is using the reserved value "
+"/org/freedesktop/DBus/Local"
msgstr ""
-"Messaç SIGNAL: il cjamp di intestazion PATH al sta doprant il valôr "
-"riservât /org/freedesktop/DBus/Local"
+"Messaç SIGNAL: il cjamp di intestazion PATH al sta doprant il valôr riservât"
+" /org/freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1329
+#: gio/gdbusmessage.c:1364
msgid ""
-"SIGNAL message: The INTERFACE header field is using the reserved value org."
-"freedesktop.DBus.Local"
+"SIGNAL message: The INTERFACE header field is using the reserved value "
+"org.freedesktop.DBus.Local"
msgstr ""
"Messaç SIGNAL: il cjamp di intestazion INTERFACE al sta doprant il valôr "
"riservât org.freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1377 gio/gdbusmessage.c:1437
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "Si voleve lei %lu byte, ma si à vût dome %lu"
msgstr[1] "Si voleve lei %lu byte, ma si à vût dome %lu"
-#: gio/gdbusmessage.c:1391
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr ""
"Si spietave un byte NUL dopo de stringhe “%s†ma si à cjatât il byte %d"
-#: gio/gdbusmessage.c:1410
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
-"(length of string is %d). The valid UTF-8 string up until that point was “%sâ€"
+"(length of string is %d). The valid UTF-8 string up until that point was "
+"“%sâ€"
msgstr ""
"Si spietave une stringhe UTF-8 valide ma si à cjatât byte no valits al byte "
"offset %d (la lungjece de stringhe e je %d). La stringhe UTF-8 valide fin "
"chel pont e jere “%sâ€"
-#: gio/gdbusmessage.c:1474 gio/gdbusmessage.c:1722 gio/gdbusmessage.c:1911
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Valôr nidificât masse in profonditât"
-#: gio/gdbusmessage.c:1620
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Il valôr “%s†analizât nol è un percors di ogjet D-Bus valit"
-#: gio/gdbusmessage.c:1642
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Il valôr “%s†analizât no je une firme D-Bus valide"
-#: gio/gdbusmessage.c:1689
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
msgid_plural ""
-"Encountered array of length %u bytes. Maximum length is 2<<26 bytes (64 MiB)."
+"Encountered array of length %u bytes. Maximum length is 2<<26 bytes (64 "
+"MiB)."
msgstr[0] ""
"Si à intivât un array lunc %u byte. La lungjece massime e je 2<<26 byte (64 "
"MiB)."
@@ -828,7 +856,7 @@ msgstr[1] ""
"Si à intivât un array lunc %u byte. La lungjece massime e je 2<<26 byte (64 "
"MiB)."
-#: gio/gdbusmessage.c:1709
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -837,49 +865,55 @@ msgstr ""
"Si à intivât un array di gjenar “a%câ€, si veve di vê une lungjece multiple "
"di %u byte, ma si à cjatât che e jere di %u byte"
-#: gio/gdbusmessage.c:1895
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
+msgid "Empty structures (tuples) are not allowed in D-Bus"
+msgstr ""
+
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "Il valôr “%s†analizât pal variant no je une firme D-Bus valide"
-#: gio/gdbusmessage.c:1936
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
-"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
+"Error deserializing GVariant with type string “%s†from the D-Bus wire "
+"format"
msgstr ""
"Erôr tal deserializâ GVariant cu la stringhe di gjenar “%s†dal formât fîl "
"di D-Bus"
-#: gio/gdbusmessage.c:2121
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
"0x%02x"
msgstr ""
-"Valôr di endian no valit. Si spietave 0x6c (“lâ€) o 0x42 (“Bâ€) ma si à cjatât "
-"il valôr 0x%02x"
+"Valôr di endian no valit. Si spietave 0x6c (“lâ€) o 0x42 (“Bâ€) ma si à cjatât"
+" il valôr 0x%02x"
-#: gio/gdbusmessage.c:2134
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Version maiôr dal protocol no valide. Si spietave 1 ma si à cjatât %d"
-#: gio/gdbusmessage.c:2188 gio/gdbusmessage.c:2784
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Cjatade intestazion di firme ma no je di gjenar firme"
-#: gio/gdbusmessage.c:2200
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
-"Cjatade intestazion di firme cun firme “%s†ma il cuarp dal messaç al è vueit"
+"Cjatade intestazion di firme cun firme “%s†ma il cuarp dal messaç al è "
+"vueit"
-#: gio/gdbusmessage.c:2215
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "Il valôr “%s†analizât no je une firme D-Bus valide (pal cuarp)"
-#: gio/gdbusmessage.c:2247
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -890,19 +924,19 @@ msgstr[1] ""
"Nissune intestazion di firme tal messaç, ma il cuarp dal messaç al è di %u "
"byte"
-#: gio/gdbusmessage.c:2257
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Impussibil deserializâ il messaç: "
-#: gio/gdbusmessage.c:2601
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
msgstr ""
-"Erôr tal serializâ GVariant cu la stringhe di gjenar “%s†al formât fîl di D-"
-"Bus"
+"Erôr tal serializâ GVariant cu la stringhe di gjenar “%s†al formât fîl di "
+"D-Bus"
-#: gio/gdbusmessage.c:2738
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
@@ -910,16 +944,16 @@ msgstr ""
"Il numar dai descritôrs di file tal messaç (%d) al è diviers dal cjamp di "
"intestazion (%d)"
-#: gio/gdbusmessage.c:2746
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Impussibil serializâ il messaç: "
-#: gio/gdbusmessage.c:2799
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "Il cuarp dal messaç al à firme “%s†ma no je la intestazion de firme"
-#: gio/gdbusmessage.c:2809
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -928,82 +962,84 @@ msgstr ""
"Il cuarp dal messaç al à une firme di gjenar “%sâ€, ma la firme tal cjamp de "
"intestazion e je “%sâ€"
-#: gio/gdbusmessage.c:2825
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr ""
"Il cuarp dal messaç al è vueit ma la firme tal cjamp de intestazion e je "
"“(%s)â€"
-#: gio/gdbusmessage.c:3378
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr ""
-#: gio/gdbusmessage.c:3386
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr ""
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Scrîf cualsisei caratar par sierâ chest barcon)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Session dbus no je in esecuzion e l'inviament automatic al è falît"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Impussibil otignî il profîl Hardware: %s"
-#: gio/gdbusprivate.c:2488
-msgid "Unable to load /var/lib/dbus/machine-id or /etc/machine-id: "
-msgstr "Impussibil cjariâ /var/lib/dbus/machine-id o /etc/machine-id: "
+#. Translators: Both placeholders are file paths
+#: gio/gdbusprivate.c:2445
+#, c-format
+msgid "Unable to load %s or %s: "
+msgstr "Impussibil cjariâ %s o %s: "
-#: gio/gdbusproxy.c:1562
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Erôr tal clamâ StartServiceByName par %s: "
-#: gio/gdbusproxy.c:1585
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Rispueste %d inspietade dal metodi StartServiceByName(\"%s\")"
-#: gio/gdbusproxy.c:2688 gio/gdbusproxy.c:2823
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
"and proxy was constructed with the G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START flag"
msgstr ""
-"Impussibil invocâ il metodi; il proxy al è pal non ben-cognossût %s cence un "
+"Impussibil invocâ il metodi; il proxy al è pal no ben-cognossût %s cence un "
"proprietari e il proxy al jere costruît cu la opzion "
-"G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START "
+"G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START"
-#: gio/gdbusserver.c:755
+#: gio/gdbusserver.c:767
msgid "Abstract namespace not supported"
msgstr "Spazi di non astrat no supuartât"
-#: gio/gdbusserver.c:848
+#: gio/gdbusserver.c:860
msgid "Cannot specify nonce file when creating a server"
msgstr ""
"Impussibil specificâ il file dal numar doprât une sole volte cuant che si "
"creave un servidôr"
-#: gio/gdbusserver.c:930
+#: gio/gdbusserver.c:942
#, c-format
msgid "Error writing nonce file at “%sâ€: %s"
msgstr "Erôr tal scrivi il file dal numar doprât une sole volte su “%sâ€: %s"
-#: gio/gdbusserver.c:1103
+#: gio/gdbusserver.c:1117
#, c-format
msgid "The string “%s†is not a valid D-Bus GUID"
msgstr "La stringhe “%s†no je un valit GUID D-Bus"
-#: gio/gdbusserver.c:1143
+#: gio/gdbusserver.c:1157
#, c-format
msgid "Cannot listen on unsupported transport “%sâ€"
msgstr "Impussibil scoltâ o traspuart “%s†no supuartât"
@@ -1031,299 +1067,304 @@ msgstr ""
"\n"
"Dopre “%s COMANT --help†par vê jutori su ogni comant.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:268 gio/gdbus-tool.c:340
-#: gio/gdbus-tool.c:364 gio/gdbus-tool.c:854 gio/gdbus-tool.c:1231
-#: gio/gdbus-tool.c:1719
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Erôr: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:281 gio/gdbus-tool.c:1735
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Erôr tal analizâ XML di introspezion: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Erôr: %s nol è un non valit\n"
-#: gio/gdbus-tool.c:398
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
+#, c-format
+msgid "Error: %s is not a valid object path\n"
+msgstr "Erôr: %s nol è un percors ogjet valit\n"
+
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Conet al bus di sisteme"
-#: gio/gdbus-tool.c:399
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Conet al bus di session"
-#: gio/gdbus-tool.c:400
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Conet ae direzion D-Bus furnide"
-#: gio/gdbus-tool.c:410
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Opzions dal pont finâl de conession:"
-#: gio/gdbus-tool.c:411
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Opzions che a specifichin il pont finâl (endpoint) de conession"
-#: gio/gdbus-tool.c:434
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Nissun pont finâl (endpoint) di conession specificât"
-#: gio/gdbus-tool.c:444
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Plui ponts finâi (endpoint) di conession specificâts"
-#: gio/gdbus-tool.c:517
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr ""
-"Avertiment: In acuardi cui dâts di introspezion, la interface “%s†no esist\n"
+"Avertiment: In acuardi cui dâts di introspezion, la interface “%s†no "
+"esist\n"
-#: gio/gdbus-tool.c:526
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
"interface “%sâ€\n"
msgstr ""
-"Avertiment: In acuardi cui dâts di introspezion, il metodi “%s†nol esist su "
-"pe interface “%sâ€\n"
+"Avertiment: In acuardi cui dâts di introspezion, il metodi “%s†nol esist su"
+" pe interface “%sâ€\n"
-#: gio/gdbus-tool.c:588
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Destinazion opzionâl pal segnâl (non univoc)"
-#: gio/gdbus-tool.c:589
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Percors ogjet dulà emeti il segnâl"
-#: gio/gdbus-tool.c:590
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Segnâl e non interface"
-#: gio/gdbus-tool.c:623
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Emet un segnâl."
-#: gio/gdbus-tool.c:678 gio/gdbus-tool.c:992 gio/gdbus-tool.c:1822
-#: gio/gdbus-tool.c:2054 gio/gdbus-tool.c:2274
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Erôr tal coneti: %s\n"
-#: gio/gdbus-tool.c:698
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Erôr: %s nol è un non bus univoc valit.\n"
-#: gio/gdbus-tool.c:717 gio/gdbus-tool.c:1035 gio/gdbus-tool.c:1865
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Erôr: il percors ogjet nol è specificât\n"
-#: gio/gdbus-tool.c:740 gio/gdbus-tool.c:1055 gio/gdbus-tool.c:1885
-#: gio/gdbus-tool.c:2125
-#, c-format
-msgid "Error: %s is not a valid object path\n"
-msgstr "Erôr: %s nol è un percors ogjet valit\n"
-
-#: gio/gdbus-tool.c:760
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Erôr: il non dal segnâl nol è specificât\n"
-#: gio/gdbus-tool.c:774
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Erôr: il non segnâl “%s†nol è valit\n"
-#: gio/gdbus-tool.c:786
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Erôr: %s nol è un non interface valit\n"
-#: gio/gdbus-tool.c:792
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Erôr: %s nol è un non membri valit\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:829 gio/gdbus-tool.c:1167
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Erôr tal analizâ il parametri %d: %s\n"
-#: gio/gdbus-tool.c:861
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Erôr tal resentâ la conession: %s\n"
-#: gio/gdbus-tool.c:888
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Il non di destinazion de invocazion dal metodi"
-#: gio/gdbus-tool.c:889
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Percors dal ogjet de invocazion dal metodi"
-#: gio/gdbus-tool.c:890
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Metodi e non interface"
-#: gio/gdbus-tool.c:891
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Timp massim in seconts"
-#: gio/gdbus-tool.c:937
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Permet autorizazion interative"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Invoche un metodi suntun ogjet lontan."
-#: gio/gdbus-tool.c:1009 gio/gdbus-tool.c:1839 gio/gdbus-tool.c:2079
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Erôr: Destinazion no specificade\n"
-#: gio/gdbus-tool.c:1020 gio/gdbus-tool.c:1856 gio/gdbus-tool.c:2090
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Erôr: %s nol è un non bus valit\n"
-#: gio/gdbus-tool.c:1070
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Erôr: il non dal metodi nol è specificât\n"
-#: gio/gdbus-tool.c:1081
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Erôr: il non dal metodi “%s†nol è valit\n"
-#: gio/gdbus-tool.c:1159
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Erôr tal analizâ il parametri %d di gjenar “%sâ€: %s\n"
-#: gio/gdbus-tool.c:1185
-#, fuzzy, c-format
-#| msgid "Error reading file %s: %s"
+#: gio/gdbus-tool.c:1194
+#, c-format
msgid "Error adding handle %d: %s\n"
-msgstr "Erôr tal lei il file %s: %s"
+msgstr "Erôr tal zontâ il gjestôr %d: %s\n"
-#: gio/gdbus-tool.c:1681
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Non di destinazion de introspezion"
-#: gio/gdbus-tool.c:1682
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Percors dal ogjet de introspezion"
-#: gio/gdbus-tool.c:1683
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Stampe XML"
-#: gio/gdbus-tool.c:1684
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Auto-esamine i fîs"
-#: gio/gdbus-tool.c:1685
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Dome stampe proprietâts"
-#: gio/gdbus-tool.c:1774
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Auto-esamine un ogjet lontan."
-#: gio/gdbus-tool.c:1980
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Non di destinazion di monitorâ"
-#: gio/gdbus-tool.c:1981
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Percors dal ogjet di monitorâ"
-#: gio/gdbus-tool.c:2006
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Monitore un ogjet lontan."
-#: gio/gdbus-tool.c:2064
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Erôr: impussibil monitorâ une conession non-message-bus\n"
-#: gio/gdbus-tool.c:2188
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Servizi di ativâ prime di spietâ par chel altri (non ben-cognossût)"
-#: gio/gdbus-tool.c:2191
+#: gio/gdbus-tool.c:2205
msgid ""
-"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
-"(default)"
+"Timeout to wait for before exiting with an error (seconds); 0 for no timeout"
+" (default)"
msgstr ""
"Timp di spietâ prime di jessi cuntun erôr (seconts); 0 par no vê scjadince "
"(predefinît)"
-#: gio/gdbus-tool.c:2239
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[OPZION…] NON-BUS"
-#: gio/gdbus-tool.c:2240
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Spiete che al vegni fûr un non di bus."
-# mah, nonsense
-#: gio/gdbus-tool.c:2316
-#, fuzzy
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
-msgstr "Erôr: si scugne specificâ un servizi che par chel ativâ.\n"
+msgstr "Erôr: si scugne specificâ un servizi che si à di ativâ.\n"
-# mah, nonsense
-#: gio/gdbus-tool.c:2321
-#, fuzzy
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
-msgstr "Erôr: si scugne specificâ un servizi che par chel spietâ.\n"
+msgstr "Erôr: si scugne specificâ un servizi che si à di spietâ.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Erôr: masse argoments.\n"
-#: gio/gdbus-tool.c:2334 gio/gdbus-tool.c:2341
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Erôr: %s nol è un non di bus ben-cognossût valit\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4926
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr ""
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Cence non"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "Il file .desktop nol specifiche il cjamp Exec"
-#: gio/gdesktopappinfo.c:2796
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Impussibil cjatâ il terminâl necessari pe aplicazion"
-#: gio/gdesktopappinfo.c:3447
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr ""
"Impussibil creâ la cartele dal utent pe configurazion de aplicazion %s: %s"
-#: gio/gdesktopappinfo.c:3451
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Impussibil creâ la cartele dal utent pe configurazion MIME %s: %s"
-#: gio/gdesktopappinfo.c:3693 gio/gdesktopappinfo.c:3717
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "La informazion de aplicazion e mancje di un identificadôr"
-#: gio/gdesktopappinfo.c:3953
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Impussibil creâ il file .desktop %s dal utent"
-#: gio/gdesktopappinfo.c:4089
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Definizion personalizade par %s"
@@ -1351,7 +1392,7 @@ msgstr "la unitât no implemente la azion start"
msgid "drive doesn’t implement stop"
msgstr "la unitât no implemente la azion stop"
-#: gio/gdtlsconnection.c:1120 gio/gtlsconnection.c:921
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr ""
@@ -1391,74 +1432,73 @@ msgstr "Si spietave un GEmblem par GEmblemedIcon"
#. Translators: This is an error message when
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
-#.
-#: gio/gfile.c:1547
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Il montaç contignût nol esist"
-#: gio/gfile.c:2594 gio/glocalfile.c:2472
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Impussibil copiâ sore de cartele"
-#: gio/gfile.c:2654
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Impussibil copiâ la cartele sore de cartele"
-#: gio/gfile.c:2662
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Il file di destinazion al esist"
-#: gio/gfile.c:2681
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Impussibil copiâ in maniere ricorsive la cartele"
-#: gio/gfile.c:2982
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr ""
-#: gio/gfile.c:2986 gio/gfile.c:3031
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr ""
-#: gio/gfile.c:3147
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "La copie (reflink/clone) tra i montaçs no je supuartade"
-#: gio/gfile.c:3151
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "La copie (reflink/clone) no je supuartade o no je valide"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "La copie (reflink/clone) no je supuartade o no à funzionât"
-#: gio/gfile.c:3221
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Impussibil copiâ il file speciâl"
-#: gio/gfile.c:4030
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Furnît valôr di colegament simbolic no valit"
-#: gio/gfile.c:4040 glib/gfileutils.c:2362
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Colegaments simbolics no supuartâts"
-#: gio/gfile.c:4208
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Scovacere no supuartade"
-#: gio/gfile.c:4320
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "I nons dai file no puedin contignî “%câ€"
-#: gio/gfile.c:6801 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "il volum nol implemente la azion mount"
-#: gio/gfile.c:6915 gio/gfile.c:6963
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "No je regjistrade nissune aplicazion par gjestî chest file"
@@ -1503,8 +1543,8 @@ msgstr "Cjonçâ no permetût sul flus di jentrade"
msgid "Truncate not supported on stream"
msgstr "Cjonçâ no supuartât sul flus"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
-#: glib/gconvert.c:1778
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
+#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Non dal host no valit"
@@ -1529,9 +1569,14 @@ msgstr "Domandade autenticazion proxy HTTP"
msgid "HTTP proxy connection failed: %i"
msgstr "Conession proxy HTTP falide: %i"
-#: gio/ghttpproxy.c:269
+#: gio/ghttpproxy.c:266
+msgid "HTTP proxy response too big"
+msgstr "Rispueste masse grande dal proxy HTTP"
+
+#: gio/ghttpproxy.c:283
msgid "HTTP proxy server closed connection unexpectedly."
-msgstr "Il servidôr proxy HTTP al à sierât la conession in maniere inspietade."
+msgstr ""
+"Il servidôr proxy HTTP al à sierât la conession in maniere inspietade."
#: gio/gicon.c:298
#, c-format
@@ -1586,7 +1631,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Impussibil analizâ “%s†come mascare de direzion IP"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:220
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "No vonde spazi pe direzion dal socket"
@@ -1604,7 +1649,7 @@ msgstr "Il flus di jentrade nol implemente la leture"
#. Translators: This is an error you get if there is
#. * already an operation running against this stream when
#. * you try to start one
-#: gio/ginputstream.c:1218 gio/giostream.c:310 gio/goutputstream.c:2208
+#: gio/ginputstream.c:1249 gio/giostream.c:310 gio/goutputstream.c:2208
msgid "Stream has outstanding operation"
msgstr "Il flus al à une operazion ecezionâl"
@@ -1645,10 +1690,8 @@ msgid "Show information about locations"
msgstr "Mostre informazions su lis posizions"
#: gio/gio-tool.c:232
-#, fuzzy
-#| msgid "List static actions for an application (from .desktop file)"
msgid "Launch an application from a desktop file"
-msgstr "Liste lis azions statichis par une aplicazion (dal file .desktop)"
+msgstr "Invie une aplicazion di un file “desktopâ€"
#: gio/gio-tool.c:233
msgid "List the contents of locations"
@@ -1715,7 +1758,7 @@ msgstr "Erôr tal scrivi su stdout"
#: gio/gio-tool-cat.c:133 gio/gio-tool-info.c:340 gio/gio-tool-list.c:172
#: gio/gio-tool-mkdir.c:48 gio/gio-tool-monitor.c:37 gio/gio-tool-monitor.c:39
#: gio/gio-tool-monitor.c:41 gio/gio-tool-monitor.c:43
-#: gio/gio-tool-monitor.c:203 gio/gio-tool-mount.c:1199 gio/gio-tool-open.c:70
+#: gio/gio-tool-monitor.c:204 gio/gio-tool-mount.c:1199 gio/gio-tool-open.c:70
#: gio/gio-tool-remove.c:48 gio/gio-tool-rename.c:45 gio/gio-tool-set.c:89
#: gio/gio-tool-trash.c:220 gio/gio-tool-tree.c:239
msgid "LOCATION"
@@ -1737,7 +1780,7 @@ msgstr ""
"alc come smb://servidôr/risorse/file.txt tant che posizion."
#: gio/gio-tool-cat.c:162 gio/gio-tool-info.c:371 gio/gio-tool-mkdir.c:76
-#: gio/gio-tool-monitor.c:228 gio/gio-tool-mount.c:1250 gio/gio-tool-open.c:96
+#: gio/gio-tool-monitor.c:229 gio/gio-tool-mount.c:1250 gio/gio-tool-open.c:96
#: gio/gio-tool-remove.c:72 gio/gio-tool-trash.c:303
msgid "No locations given"
msgstr "Nissune posizion furnide"
@@ -1918,34 +1961,28 @@ msgstr ""
"files opzionâi."
#: gio/gio-tool-launch.c:77
-#, fuzzy
-#| msgid "No destination given"
msgid "No desktop file given"
-msgstr "Nissune destinazion furnide"
+msgstr "Nissun file “desktop†furnît"
#: gio/gio-tool-launch.c:85
-#, fuzzy
-#| msgid "There is no GCredentials support for your platform"
msgid "The launch command is not currently supported on this platform"
-msgstr "Nol esist il supuart par GCredentials pe tô plateforme"
+msgstr ""
+"Il comant di inviament in chest moment nol è supuart su cheste plateforme"
#: gio/gio-tool-launch.c:98
-#, fuzzy, c-format
-#| msgid "Failed to open file “%sâ€: %s"
+#, c-format
msgid "Unable to load ‘%s‘: %s"
-msgstr "No si è rivâts a vierzi il file “%sâ€: %s"
+msgstr "Impussibil cjariâ “%sâ€: %s"
#: gio/gio-tool-launch.c:107
-#, fuzzy, c-format
-#| msgid "Failed to load info for handler “%sâ€"
+#, c-format
msgid "Unable to load application information for ‘%s‘"
-msgstr "No si è rivâts a cjariâ lis informazion pal gjestôr “%sâ€"
+msgstr "Impussibil cjariâ lis informazions de aplicazion par “%sâ€"
#: gio/gio-tool-launch.c:119
-#, fuzzy, c-format
-#| msgid "Default application for “%sâ€: %s\n"
+#, c-format
msgid "Unable to launch application ‘%s’: %s"
-msgstr "Aplicazion predefinide par “%sâ€: %s\n"
+msgstr "Impussibil cjariâ la aplicazion ‘%s’: %s"
#: gio/gio-tool-list.c:37 gio/gio-tool-tree.c:32
msgid "Show hidden files"
@@ -1956,10 +1993,8 @@ msgid "Use a long listing format"
msgstr "Dopre un formât di liste prolìs"
#: gio/gio-tool-list.c:40
-#, fuzzy
-#| msgid "display name: %s\n"
msgid "Print display names"
-msgstr "non di mostrâ: %s\n"
+msgstr "Stampe nons dai visôrs"
#: gio/gio-tool-list.c:41
msgid "Print full URIs"
@@ -2000,10 +2035,8 @@ msgid ""
"for the mimetype. If a handler is given, it is set as the default\n"
"handler for the mimetype."
msgstr ""
-"Se nissun gjestôr al è furnît, al liste lis aplicazions regjistradis e "
-"conseadis\n"
-"par un gjenar di mime. Se un gjestôr al ven furnît, chel al ven stabilît "
-"come gjestôr\n"
+"Se nissun gjestôr al è furnît, al liste lis aplicazions regjistradis e conseadis\n"
+"par un gjenar di mime. Se un gjestôr al ven furnît, chel al ven stabilît come gjestôr\n"
"predefinît pal gjenar mime."
#: gio/gio-tool-mime.c:100
@@ -2075,8 +2108,8 @@ msgstr "Ten di voli un file (predefinît: al dipent dal gjenar)"
#: gio/gio-tool-monitor.c:41
msgid "Monitor a file directly (notices changes made via hardlinks)"
msgstr ""
-"Ten di voli un file in maniere direte (si vise des modifichis fatis par mieç "
-"di colegaments permanents)"
+"Ten di voli un file in maniere direte (si vise des modifichis fatis par mieç"
+" di colegaments permanents)"
#: gio/gio-tool-monitor.c:43
msgid "Monitors a file directly, but doesn’t report changes"
@@ -2091,7 +2124,7 @@ msgstr ""
msgid "Watch for mount events"
msgstr "Ten di voli i events di montaç"
-#: gio/gio-tool-monitor.c:208
+#: gio/gio-tool-monitor.c:209
msgid "Monitor files or directories for changes."
msgstr "Monitore i file o lis cartelis pes modifichis."
@@ -2134,7 +2167,8 @@ msgstr "SCHEME"
#: gio/gio-tool-mount.c:69
msgid "Ignore outstanding file operations when unmounting or ejecting"
msgstr ""
-"Ignore lis operazions ecezionâls sui file cuant che si dismonte o si pare fûr"
+"Ignore lis operazions ecezionâls sui file cuant che si dismonte o si pare "
+"fûr"
#: gio/gio-tool-mount.c:70
msgid "Use an anonymous user when authenticating"
@@ -2201,7 +2235,7 @@ msgid ""
msgstr ""
"gio move al è simil ae utilitât mv tradizionâl, ma e dopre lis\n"
"posizions GIO al puest dai file locâi: par esempli tu puedis doprâ\n"
-"alc come smb://servidôr/risorse/file.txt tant che posizion."
+"alc come smb://servidôr/risorse/file.txt tant che posizion"
#: gio/gio-tool-move.c:143
#, c-format
@@ -2261,12 +2295,14 @@ msgstr "Cuant che si cree, limite l'acès al utent atuâl"
msgid "When replacing, replace as if the destination did not exist"
msgstr "Cuant che si sostituìs, sostituìs come che la destinazion no esisti"
-#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#. Translators: The "etag" is a token allowing to verify whether a file has
+#. been modified
#: gio/gio-tool-save.c:55
msgid "Print new etag at end"
msgstr "Stampe gnûf etag ae fin"
-#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#. Translators: The "etag" is a token allowing to verify whether a file has
+#. been modified
#: gio/gio-tool-save.c:57
msgid "The etag of the file being overwritten"
msgstr "Il etag dal file che si sta par sorescrivi"
@@ -2279,7 +2315,8 @@ msgstr "ETAG"
msgid "Error reading from standard input"
msgstr "Erôr tal lei dal standard input"
-#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#. Translators: The "etag" is a token allowing to verify whether a file has
+#. been modified
#: gio/gio-tool-save.c:139
msgid "Etag not available\n"
msgstr "Etag no disponibil\n"
@@ -2334,10 +2371,8 @@ msgid "Empty the trash"
msgstr "Disvuede la scovacere"
#: gio/gio-tool-trash.c:35
-#, fuzzy
-#| msgid "List the contents of the locations."
msgid "List files in the trash with their original locations"
-msgstr "Liste i contignûts des posizions."
+msgstr "Liste i files te scovacere cu lis lôr posizions origjinâls"
#: gio/gio-tool-trash.c:36
msgid ""
@@ -2348,28 +2383,20 @@ msgstr ""
"tornant a creâ la cartele)"
#: gio/gio-tool-trash.c:106
-#, fuzzy
-#| msgid "Unable to find terminal required for application"
msgid "Unable to find original path"
-msgstr "Impussibil cjatâ il terminâl necessari pe aplicazion"
+msgstr "Impussibil cjatâ il percors origjinâl"
#: gio/gio-tool-trash.c:123
-#, fuzzy
-#| msgid "Unable to create trash dir %s: %s"
msgid "Unable to recreate original location: "
-msgstr "Impussibil creâ la cartele scovacere %s: %s"
+msgstr "Impussibil tornâ a creâ la posizion origjinâl:"
#: gio/gio-tool-trash.c:136
-#, fuzzy
-#| msgid "unable to find desktop file for application %s\n"
msgid "Unable to move file to its original location: "
-msgstr "impussibil cjatâ il file scritori pe aplicazion %s\n"
+msgstr "Impussibil spostâ il file te sô posizion origjinâl:"
#: gio/gio-tool-trash.c:225
-#, fuzzy
-#| msgid "Move files or directories to the trash."
msgid "Move/Restore files or directories to the trash."
-msgstr "Sposte i file o lis cartelis te scovacere."
+msgstr "Sposte/Ripristine i files o lis cartelis te scovacere."
#: gio/gio-tool-trash.c:227
msgid ""
@@ -2422,7 +2449,6 @@ msgstr "Opzion di elaborazion “%s†no cognossude"
#. Translators: the first %s is a gresource XML attribute,
#. * the second %s is an environment variable, and the third
#. * %s is a command line tool
-#.
#: gio/glib-compile-resources.c:310 gio/glib-compile-resources.c:367
#: gio/glib-compile-resources.c:424
#, c-format
@@ -2445,61 +2471,63 @@ msgstr "Erôr tal comprimi il file %s"
msgid "text may not appear inside <%s>"
msgstr "il test al podarès no aparî dentri di <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Mostre la version dal program e jes"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Non dal file di jessude"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
msgstr ""
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "CARTELE"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
"Gjenere la jessude intal formât selezionât pe estension dal non di file di "
"destinazion"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Gjenere intestazion sorzint"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr ""
+"Gjenere il codiç sorzint doprât par colegâ il file des risorsis dentri dal "
+"to codiç"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Gjenere la liste des dipendencis"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Non dal file des dipendencis di gjenerâ"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
-msgstr ""
+msgstr "Inclût lis destinazions falsis tal file des dipendencis gjenerât"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "No sta creâ in automatic e regjistrâ la risorse"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "No sta espuartâ lis funzions; declarilis G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2507,11 +2535,15 @@ msgstr ""
"No sta incorporâ i dâts de risorse intal file C; assum invezit che al sedi "
"colegât par difûr"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "Non identificadôr di C doprât pal codiç sorzint gjenerât"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr ""
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2521,7 +2553,7 @@ msgstr ""
"I file de specifiche di risorse a àn la estension .gresource.xml\n"
"e i file de risorse a àn la estension clamade .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Si scugne dâ juste un non di file\n"
@@ -2568,7 +2600,8 @@ msgstr "<%s> nol è un membri valit dal gjenar enumerât specificât"
#: gio/glib-compile-schemas.c:332
#, c-format
msgid "<%s> contains string not in the specified flags type"
-msgstr "<%s> al conten stringhis che no son tal gjenar di opzions specificadis"
+msgstr ""
+"<%s> al conten stringhis che no son tal gjenar di opzions specificadis"
#: gio/glib-compile-schemas.c:338
#, c-format
@@ -2677,12 +2710,12 @@ msgstr ""
#: gio/glib-compile-schemas.c:797
msgid "Empty names are not permitted"
-msgstr ""
+msgstr "No son ametûts nons vueits"
#: gio/glib-compile-schemas.c:807
#, c-format
msgid "Invalid name “%sâ€: names must begin with a lowercase letter"
-msgstr ""
+msgstr "Non “%s†no valit: i nons a scugnin scomençâ cuntune letare minuscule"
#: gio/glib-compile-schemas.c:819
#, c-format
@@ -2690,21 +2723,23 @@ msgid ""
"Invalid name “%sâ€: invalid character “%câ€; only lowercase letters, numbers "
"and hyphen (“-â€) are permitted"
msgstr ""
+"Non “%s†no valit: caratar “%c†no valit; a son permetûts dome letaris "
+"minusculis, numars e il tratut (“-â€)"
#: gio/glib-compile-schemas.c:828
#, c-format
msgid "Invalid name “%sâ€: two successive hyphens (“--â€) are not permitted"
-msgstr ""
+msgstr "Non “%s†no valit: no son ametûts doi tratuts sucessivis (“--â€)"
#: gio/glib-compile-schemas.c:837
#, c-format
msgid "Invalid name “%sâ€: the last character may not be a hyphen (“-â€)"
-msgstr ""
+msgstr "Non “%s†no valit: l'ultin caratar nol pues jessi un tratut (“-â€)"
#: gio/glib-compile-schemas.c:845
#, c-format
msgid "Invalid name “%sâ€: maximum length is 1024"
-msgstr ""
+msgstr "Non “%s†no valit: la lungjece massime e je 1024"
#: gio/glib-compile-schemas.c:917
#, c-format
@@ -2737,7 +2772,7 @@ msgstr ""
#: gio/glib-compile-schemas.c:1002
#, c-format
msgid "<%s id='%s'> not (yet) defined."
-msgstr ""
+msgstr "<%s id='%s'> no (ancjemò) definît."
#: gio/glib-compile-schemas.c:1017
#, c-format
@@ -2792,25 +2827,25 @@ msgstr ""
#: gio/glib-compile-schemas.c:1207
#, c-format
msgid ""
-"<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but “%s†"
-"does not extend “%sâ€"
+"<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but “%sâ€"
+" does not extend “%sâ€"
msgstr ""
#: gio/glib-compile-schemas.c:1224
#, c-format
msgid "A path, if given, must begin and end with a slash"
-msgstr ""
+msgstr "Un percors, se indicât, al scugne scomençâ e finî cuntune sbare"
#: gio/glib-compile-schemas.c:1231
#, c-format
msgid "The path of a list must end with “:/â€"
-msgstr ""
+msgstr "Il percors di une liste al scugne finî cun “:/â€"
#: gio/glib-compile-schemas.c:1240
#, c-format
msgid ""
-"Warning: Schema “%s†has path “%sâ€. Paths starting with “/apps/â€, “/"
-"desktop/†or “/system/†are deprecated."
+"Warning: Schema “%s†has path “%sâ€. Paths starting with “/apps/â€, "
+"“/desktop/†or “/system/†are deprecated."
msgstr ""
#: gio/glib-compile-schemas.c:1270
@@ -2858,29 +2893,29 @@ msgstr "Si ignore chest file."
#: gio/glib-compile-schemas.c:1963
#, c-format
msgid ""
-"No such key “%s†in schema “%s†as specified in override file “%sâ€; ignoring "
-"override for this key."
+"No such key “%s†in schema “%s†as specified in override file “%sâ€; ignoring"
+" override for this key."
msgstr ""
#: gio/glib-compile-schemas.c:1971
#, c-format
msgid ""
-"No such key “%s†in schema “%s†as specified in override file “%s†and --"
-"strict was specified; exiting."
+"No such key “%s†in schema “%s†as specified in override file “%s†and "
+"--strict was specified; exiting."
msgstr ""
#: gio/glib-compile-schemas.c:1993
#, c-format
msgid ""
-"Cannot provide per-desktop overrides for localized key “%s†in schema "
-"“%s†(override file “%sâ€); ignoring override for this key."
+"Cannot provide per-desktop overrides for localized key “%s†in schema “%s†"
+"(override file “%sâ€); ignoring override for this key."
msgstr ""
#: gio/glib-compile-schemas.c:2002
#, c-format
msgid ""
-"Cannot provide per-desktop overrides for localized key “%s†in schema "
-"“%s†(override file “%sâ€) and --strict was specified; exiting."
+"Cannot provide per-desktop overrides for localized key “%s†in schema “%s†"
+"(override file “%sâ€) and --strict was specified; exiting."
msgstr ""
#: gio/glib-compile-schemas.c:2026
@@ -2927,19 +2962,19 @@ msgstr ""
#: gio/glib-compile-schemas.c:2173
msgid "Where to store the gschemas.compiled file"
-msgstr ""
+msgstr "Dulà archiviâ il file gschemas.compiled"
#: gio/glib-compile-schemas.c:2174
msgid "Abort on any errors in schemas"
-msgstr ""
+msgstr "Interomp su cualsisei erôr tai schemis"
#: gio/glib-compile-schemas.c:2175
msgid "Do not write the gschema.compiled file"
-msgstr ""
+msgstr "No sta scrivi il file gschema.compiled"
#: gio/glib-compile-schemas.c:2176
msgid "Do not enforce key name restrictions"
-msgstr ""
+msgstr "No sta sfuarçâ lis restrizions dai nons des clâfs"
#: gio/glib-compile-schemas.c:2205
msgid ""
@@ -2947,6 +2982,9 @@ msgid ""
"Schema files are required to have the extension .gschema.xml,\n"
"and the cache file is called gschemas.compiled."
msgstr ""
+"Compile ducj i file scheme di GSettings intune cache di schemis.\n"
+"I files di scheme a scugnin vê la estension .gschema.xml,\n"
+"e il file cache al ven clamât gschemas.compiled."
#: gio/glib-compile-schemas.c:2226
msgid "You should give exactly one directory name"
@@ -2965,139 +3003,138 @@ msgstr "Nissun file di scheme cjatât: file di jessude esistent gjavât."
msgid "Invalid filename %s"
msgstr "Non file %s no valit"
-#: gio/glocalfile.c:980
+#: gio/glocalfile.c:982
#, c-format
msgid "Error getting filesystem info for %s: %s"
-msgstr ""
+msgstr "Erôr tal otignî lis informazion dal filesystem par %s: %s"
#. Translators: This is an error message when trying to find
#. * the enclosing (user visible) mount of a file, but none
#. * exists.
-#.
-#: gio/glocalfile.c:1121
+#: gio/glocalfile.c:1123
#, c-format
msgid "Containing mount for file %s not found"
-msgstr ""
+msgstr "Il montaç che al conten il file %s nol è stât cjatât"
-#: gio/glocalfile.c:1144
+#: gio/glocalfile.c:1146
msgid "Can’t rename root directory"
-msgstr ""
+msgstr "Impussibil cambiâ il non de cartele lidrîs"
-#: gio/glocalfile.c:1162 gio/glocalfile.c:1185
+#: gio/glocalfile.c:1164 gio/glocalfile.c:1187
#, c-format
msgid "Error renaming file %s: %s"
-msgstr ""
+msgstr "Erôr tal cambiâ non al file %s: %s"
-#: gio/glocalfile.c:1169
+#: gio/glocalfile.c:1171
msgid "Can’t rename file, filename already exists"
msgstr "Impussibil cambiâ non al file, il non dal file al esist za"
-#: gio/glocalfile.c:1182 gio/glocalfile.c:2366 gio/glocalfile.c:2394
-#: gio/glocalfile.c:2533 gio/glocalfileoutputstream.c:650
+#: gio/glocalfile.c:1184 gio/glocalfile.c:2380 gio/glocalfile.c:2408
+#: gio/glocalfile.c:2547 gio/glocalfileoutputstream.c:656
msgid "Invalid filename"
msgstr "Non file no valit"
-#: gio/glocalfile.c:1350 gio/glocalfile.c:1361
+#: gio/glocalfile.c:1352 gio/glocalfile.c:1363
#, c-format
msgid "Error opening file %s: %s"
msgstr "Erôr tal vierzi il file %s: %s"
-#: gio/glocalfile.c:1486
+#: gio/glocalfile.c:1488
#, c-format
msgid "Error removing file %s: %s"
msgstr "Erôr tal gjavâ il file %s: %s"
-#: gio/glocalfile.c:1980 gio/glocalfile.c:1991
+#: gio/glocalfile.c:1982 gio/glocalfile.c:1993 gio/glocalfile.c:2020
#, c-format
msgid "Error trashing file %s: %s"
msgstr "Erôr tal butâ te scovacere il file %s: %s"
-#: gio/glocalfile.c:2029
-#, fuzzy, c-format
-#| msgid "Unable to create trash dir %s: %s"
+#: gio/glocalfile.c:2040
+#, c-format
msgid "Unable to create trash directory %s: %s"
msgstr "Impussibil creâ la cartele scovacere %s: %s"
-#: gio/glocalfile.c:2050
+#: gio/glocalfile.c:2061
#, c-format
msgid "Unable to find toplevel directory to trash %s"
msgstr ""
+"Impussibil cjatâ la cartele di nivel superiôr par butâ tes scovacis %s"
-#: gio/glocalfile.c:2058
-#, fuzzy, c-format
-#| msgid "Copy (reflink/clone) between mounts is not supported"
+#: gio/glocalfile.c:2069
+#, c-format
msgid "Trashing on system internal mounts is not supported"
-msgstr "La copie (reflink/clone) tra i montaçs no je supuartade"
+msgstr "Nol è supuartât il butâ te scovacere su montaçs internis dal sisteme"
-#: gio/glocalfile.c:2141 gio/glocalfile.c:2169
-#, fuzzy, c-format
-#| msgid "Unable to create trash dir %s: %s"
+#: gio/glocalfile.c:2155 gio/glocalfile.c:2183
+#, c-format
msgid "Unable to find or create trash directory %s to trash %s"
-msgstr "Impussibil creâ la cartele scovacere %s: %s"
+msgstr "Impussibil cjatâ o creâ la cartele %s te scovacere %s"
-#: gio/glocalfile.c:2215
+#: gio/glocalfile.c:2229
#, c-format
msgid "Unable to create trashing info file for %s: %s"
msgstr ""
+"Impussibil creâ il file des informazions de butade tes scovacis par %s: %s"
-#: gio/glocalfile.c:2277
+#: gio/glocalfile.c:2291
#, c-format
msgid "Unable to trash file %s across filesystem boundaries"
msgstr ""
+"Impussibil butâ tes scovacis il file %s jenfri i limits dal filesystem"
-#: gio/glocalfile.c:2281 gio/glocalfile.c:2337
+#: gio/glocalfile.c:2295 gio/glocalfile.c:2351
#, c-format
msgid "Unable to trash file %s: %s"
-msgstr ""
+msgstr "Impussibil butâ te scovacere il file %s: %s"
-#: gio/glocalfile.c:2343
+#: gio/glocalfile.c:2357
#, c-format
msgid "Unable to trash file %s"
-msgstr ""
+msgstr "Impussibil butâ te scovacere il file %s"
-#: gio/glocalfile.c:2369
+#: gio/glocalfile.c:2383
#, c-format
msgid "Error creating directory %s: %s"
msgstr "Erôr tal creâ la cartele %s: %s"
-#: gio/glocalfile.c:2398
+#: gio/glocalfile.c:2412
#, c-format
msgid "Filesystem does not support symbolic links"
msgstr "Il filesystem nol supuarte i colegaments simbolics"
-#: gio/glocalfile.c:2401
+#: gio/glocalfile.c:2415
#, c-format
msgid "Error making symbolic link %s: %s"
-msgstr ""
+msgstr "Erôr tal creâ il colegament simbolic %s: %s"
-#: gio/glocalfile.c:2444 gio/glocalfile.c:2479 gio/glocalfile.c:2536
+#: gio/glocalfile.c:2458 gio/glocalfile.c:2493 gio/glocalfile.c:2550
#, c-format
msgid "Error moving file %s: %s"
msgstr "Erôr tal spostâ il file %s: %s"
-#: gio/glocalfile.c:2467
+#: gio/glocalfile.c:2481
msgid "Can’t move directory over directory"
msgstr "Impussibil spostâ la cartele sore de cartele"
-#: gio/glocalfile.c:2493 gio/glocalfileoutputstream.c:1039
-#: gio/glocalfileoutputstream.c:1053 gio/glocalfileoutputstream.c:1068
-#: gio/glocalfileoutputstream.c:1085 gio/glocalfileoutputstream.c:1099
+#: gio/glocalfile.c:2507 gio/glocalfileoutputstream.c:1108
+#: gio/glocalfileoutputstream.c:1122 gio/glocalfileoutputstream.c:1137
+#: gio/glocalfileoutputstream.c:1154 gio/glocalfileoutputstream.c:1168
msgid "Backup file creation failed"
msgstr "Creazion dal file di backup falide"
-#: gio/glocalfile.c:2512
+#: gio/glocalfile.c:2526
#, c-format
msgid "Error removing target file: %s"
msgstr "Erôr tal gjavâ il file di destinazion: %s"
-#: gio/glocalfile.c:2526
+#: gio/glocalfile.c:2540
msgid "Move between mounts not supported"
-msgstr ""
+msgstr "Spostament tra montaçs no supuartât"
-#: gio/glocalfile.c:2700
+#: gio/glocalfile.c:2714
#, c-format
msgid "Could not determine the disk usage of %s: %s"
-msgstr ""
+msgstr "Impussibil determinâ la utilizazion dal disc di %s: %s"
#: gio/glocalfileinfo.c:767
msgid "Attribute value must be non-NULL"
@@ -3120,15 +3157,16 @@ msgstr ""
msgid " (invalid encoding)"
msgstr " (codifiche no valide)"
-#: gio/glocalfileinfo.c:1868 gio/glocalfileoutputstream.c:915
+#: gio/glocalfileinfo.c:1868 gio/glocalfileoutputstream.c:943
+#: gio/glocalfileoutputstream.c:995
#, c-format
msgid "Error when getting information for file “%sâ€: %s"
-msgstr ""
+msgstr "Erôr dilunc il recupar des informazions pal file “%sâ€: %s"
#: gio/glocalfileinfo.c:2134
#, c-format
msgid "Error when getting information for file descriptor: %s"
-msgstr ""
+msgstr "Erôr dilunc il recupar des informazions pal descritôr dal file: %s"
#: gio/glocalfileinfo.c:2179
msgid "Invalid attribute type (uint32 expected)"
@@ -3144,17 +3182,17 @@ msgstr "Gjenar di atribût no valit (si spietave une stringhe di byte)"
#: gio/glocalfileinfo.c:2282
msgid "Cannot set permissions on symlinks"
-msgstr ""
+msgstr "Impussibil stabilî i permès sui colegaments simbolics"
#: gio/glocalfileinfo.c:2298
#, c-format
msgid "Error setting permissions: %s"
-msgstr ""
+msgstr "Erôr tal stabilî i permès: %s"
#: gio/glocalfileinfo.c:2349
#, c-format
msgid "Error setting owner: %s"
-msgstr ""
+msgstr "Erôr tal stabilî il proprietari: %s"
#: gio/glocalfileinfo.c:2372
msgid "symlink must be non-NULL"
@@ -3164,11 +3202,13 @@ msgstr ""
#: gio/glocalfileinfo.c:2412
#, c-format
msgid "Error setting symlink: %s"
-msgstr ""
+msgstr "Erôr tal stabilî il colegament simbolic: %s"
#: gio/glocalfileinfo.c:2391
msgid "Error setting symlink: file is not a symlink"
msgstr ""
+"Erôr tal stabilî il colegament simbolic: il file nol è un colegament "
+"simbolic"
#: gio/glocalfileinfo.c:2463
#, c-format
@@ -3183,124 +3223,123 @@ msgstr ""
#: gio/glocalfileinfo.c:2482
#, c-format
msgid "UNIX timestamp %lld does not fit into 64 bits"
-msgstr ""
+msgstr "La marche temporâl di UNIX %lld no sta tai 64 bits"
#: gio/glocalfileinfo.c:2493
#, c-format
msgid "UNIX timestamp %lld is outside of the range supported by Windows"
msgstr ""
+"La marche temporâl di UNIX %lld e sta fûr dal interval supuartât di Windows"
-#: gio/glocalfileinfo.c:2557
+#: gio/glocalfileinfo.c:2570
#, c-format
msgid "File name “%s†cannot be converted to UTF-16"
-msgstr ""
+msgstr "Nol è pussibil convertî a UTF-16 il non dal file “%sâ€"
-#: gio/glocalfileinfo.c:2576
+#: gio/glocalfileinfo.c:2589
#, c-format
msgid "File “%s†cannot be opened: Windows Error %lu"
-msgstr ""
+msgstr "Nol è pussibil vierzi il file “%sâ€: erôr di Windows %lu"
-#: gio/glocalfileinfo.c:2589
-#, fuzzy, c-format
-#| msgid "Error when getting information for directory “%sâ€: %s"
+#: gio/glocalfileinfo.c:2602
+#, c-format
msgid "Error setting modification or access time for file “%sâ€: %lu"
-msgstr "Erôr tal vê informazions pe cartele “%sâ€: %s"
+msgstr "Erôr tal stabilî la ore di modifiche o di acès pal file “%sâ€: %lu"
-#: gio/glocalfileinfo.c:2690
+#: gio/glocalfileinfo.c:2703
#, c-format
msgid "Error setting modification or access time: %s"
-msgstr ""
+msgstr "Erôr tal stabilî la ore di modifiche o acès: %s"
-#: gio/glocalfileinfo.c:2713
+#: gio/glocalfileinfo.c:2726
msgid "SELinux context must be non-NULL"
msgstr "Il contest SELinux al scugne jessi diviers di NULL"
-#: gio/glocalfileinfo.c:2720
+#: gio/glocalfileinfo.c:2733
msgid "SELinux is not enabled on this system"
msgstr "SELinux nol è abilitât su chest sisteme"
-#: gio/glocalfileinfo.c:2730
+#: gio/glocalfileinfo.c:2743
#, c-format
msgid "Error setting SELinux context: %s"
-msgstr ""
+msgstr "Erôr tal stabilî il contest SELinux: %s"
-#: gio/glocalfileinfo.c:2823
+#: gio/glocalfileinfo.c:2836
#, c-format
msgid "Setting attribute %s not supported"
-msgstr ""
+msgstr "La configurazion dal atribût %s no je supuartade"
-#: gio/glocalfileinputstream.c:168 gio/glocalfileoutputstream.c:795
+#: gio/glocalfileinputstream.c:163 gio/glocalfileoutputstream.c:801
#, c-format
msgid "Error reading from file: %s"
msgstr "Erôr tal lei dal file: %s"
-#: gio/glocalfileinputstream.c:199 gio/glocalfileinputstream.c:211
-#: gio/glocalfileinputstream.c:225 gio/glocalfileinputstream.c:333
-#: gio/glocalfileoutputstream.c:557 gio/glocalfileoutputstream.c:1117
-#, c-format
-msgid "Error seeking in file: %s"
-msgstr "Erôr tal cirî tal file: %s"
-
-#: gio/glocalfileinputstream.c:255 gio/glocalfileoutputstream.c:347
-#: gio/glocalfileoutputstream.c:441
+#: gio/glocalfileinputstream.c:194 gio/glocalfileoutputstream.c:353
+#: gio/glocalfileoutputstream.c:447
#, c-format
msgid "Error closing file: %s"
msgstr "Erôr tal sierâ il file: %s"
-#: gio/glocalfilemonitor.c:865
+#: gio/glocalfileinputstream.c:272 gio/glocalfileoutputstream.c:563
+#: gio/glocalfileoutputstream.c:1186
+#, c-format
+msgid "Error seeking in file: %s"
+msgstr "Erôr tal cirî tal file: %s"
+
+#: gio/glocalfilemonitor.c:866
msgid "Unable to find default local file monitor type"
msgstr ""
-#: gio/glocalfileoutputstream.c:214 gio/glocalfileoutputstream.c:292
-#: gio/glocalfileoutputstream.c:328 gio/glocalfileoutputstream.c:816
+#: gio/glocalfileoutputstream.c:220 gio/glocalfileoutputstream.c:298
+#: gio/glocalfileoutputstream.c:334 gio/glocalfileoutputstream.c:822
#, c-format
msgid "Error writing to file: %s"
msgstr "Erôr tal scrivi sul file: %s"
-#: gio/glocalfileoutputstream.c:374
+#: gio/glocalfileoutputstream.c:380
#, c-format
msgid "Error removing old backup link: %s"
-msgstr ""
+msgstr "Erôr tal gjavâ il colegament dal backup vecjo: %s"
-#: gio/glocalfileoutputstream.c:388 gio/glocalfileoutputstream.c:401
+#: gio/glocalfileoutputstream.c:394 gio/glocalfileoutputstream.c:407
#, c-format
msgid "Error creating backup copy: %s"
msgstr "Erôr tal creâ une copie di backup: %s"
-#: gio/glocalfileoutputstream.c:419
+#: gio/glocalfileoutputstream.c:425
#, c-format
msgid "Error renaming temporary file: %s"
msgstr "Erôr tal cambiâ non al file temporani: %s"
-#: gio/glocalfileoutputstream.c:603 gio/glocalfileoutputstream.c:1168
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
#, c-format
msgid "Error truncating file: %s"
msgstr "Erôr tal cjonçâ il file: %s"
-#: gio/glocalfileoutputstream.c:656 gio/glocalfileoutputstream.c:894
-#: gio/glocalfileoutputstream.c:1149 gio/gsubprocess.c:380
+#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
+#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Erôr tal vierzi il file “%sâ€: %s"
-#: gio/glocalfileoutputstream.c:928
+#: gio/glocalfileoutputstream.c:957
msgid "Target file is a directory"
msgstr "Il file di destinazion al è une cartele"
-#: gio/glocalfileoutputstream.c:933
+#: gio/glocalfileoutputstream.c:971
msgid "Target file is not a regular file"
msgstr "Il file di destinazion nol è un file regolâr"
-#: gio/glocalfileoutputstream.c:945
+#: gio/glocalfileoutputstream.c:1013
msgid "The file was externally modified"
msgstr "Il file al è stât modificât di difûr di chi"
-#: gio/glocalfileoutputstream.c:1133
+#: gio/glocalfileoutputstream.c:1202
#, c-format
msgid "Error removing old file: %s"
msgstr "Erôr tal gjavâ il file vecjo: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Furnît GSeekType no valit"
@@ -3312,41 +3351,43 @@ msgstr "Richieste di ricercje no valide"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Impussibil cjonçâ GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
-msgstr ""
+msgstr "Nol è pussibil ridimensionâ il flus di jessude de memorie"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "No si è rivâts a ridimensionâ il flus di jessude de memorie"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
msgstr ""
+"La cuantitât de memorie necessarie par elaborâ la scriture e je plui grande "
+"dal spazi di indreçament disponibil"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
-msgstr ""
+msgstr "Domandât posizionament prime dal inizi dal flus"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
-msgstr ""
+msgstr "Domandât posizionament plui in là de fin dal flus"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement unmount.
#: gio/gmount.c:399
msgid "mount doesn’t implement “unmountâ€"
-msgstr ""
+msgstr "il montaç nol implemente la azion par dismontâ “unmountâ€"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement eject.
#: gio/gmount.c:475
msgid "mount doesn’t implement “ejectâ€"
-msgstr ""
+msgstr "il montaç nol implemente la azion par parâ fûr “ejectâ€"
#. Translators: This is an error
#. * message for mount objects that
@@ -3410,12 +3451,12 @@ msgstr ""
msgid "Could not get network status: "
msgstr "Impussibil otignî il stât de rêt: "
-#: gio/gnetworkmonitornm.c:348
+#: gio/gnetworkmonitornm.c:311
#, c-format
msgid "NetworkManager not running"
msgstr "NetworkManager nol è in esecuzion"
-#: gio/gnetworkmonitornm.c:359
+#: gio/gnetworkmonitornm.c:322
#, c-format
msgid "NetworkManager version too old"
msgstr "Version di NetworkManager masse vecje"
@@ -3433,18 +3474,18 @@ msgstr ""
msgid "Source stream is already closed"
msgstr "Il flus sorzint al è za sierât"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Erôr tal risolvi “%sâ€: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr ""
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Domini no valit"
@@ -3470,26 +3511,26 @@ msgstr "La risorse lì di “%s†no je une cartele"
msgid "Input stream doesn’t implement seek"
msgstr ""
-#: gio/gresource-tool.c:499
+#: gio/gresource-tool.c:500
msgid "List sections containing resources in an elf FILE"
msgstr ""
-#: gio/gresource-tool.c:505
+#: gio/gresource-tool.c:506
msgid ""
"List resources\n"
"If SECTION is given, only list resources in this section\n"
"If PATH is given, only list matching resources"
msgstr ""
-#: gio/gresource-tool.c:508 gio/gresource-tool.c:518
+#: gio/gresource-tool.c:509 gio/gresource-tool.c:519
msgid "FILE [PATH]"
msgstr "FILE [PERCORS]"
-#: gio/gresource-tool.c:509 gio/gresource-tool.c:519 gio/gresource-tool.c:526
+#: gio/gresource-tool.c:510 gio/gresource-tool.c:520 gio/gresource-tool.c:527
msgid "SECTION"
msgstr "SEZION"
-#: gio/gresource-tool.c:514
+#: gio/gresource-tool.c:515
msgid ""
"List resources with details\n"
"If SECTION is given, only list resources in this section\n"
@@ -3497,15 +3538,15 @@ msgid ""
"Details include the section, size and compression"
msgstr ""
-#: gio/gresource-tool.c:524
+#: gio/gresource-tool.c:525
msgid "Extract a resource file to stdout"
msgstr ""
-#: gio/gresource-tool.c:525
+#: gio/gresource-tool.c:526
msgid "FILE PATH"
msgstr "PERCORS FILE"
-#: gio/gresource-tool.c:539
+#: gio/gresource-tool.c:540
msgid ""
"Usage:\n"
" gresource [--section SECTION] COMMAND [ARGS…]\n"
@@ -3521,7 +3562,7 @@ msgid ""
"\n"
msgstr ""
-#: gio/gresource-tool.c:553
+#: gio/gresource-tool.c:554
#, c-format
msgid ""
"Usage:\n"
@@ -3531,41 +3572,41 @@ msgid ""
"\n"
msgstr ""
-#: gio/gresource-tool.c:560
+#: gio/gresource-tool.c:561
msgid " SECTION An (optional) elf section name\n"
msgstr ""
-#: gio/gresource-tool.c:564 gio/gsettings-tool.c:701
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr ""
-#: gio/gresource-tool.c:570
+#: gio/gresource-tool.c:571
msgid " FILE An elf file (a binary or a shared library)\n"
msgstr ""
-#: gio/gresource-tool.c:573
+#: gio/gresource-tool.c:574
msgid ""
" FILE An elf file (a binary or a shared library)\n"
" or a compiled resource file\n"
msgstr ""
-#: gio/gresource-tool.c:577
+#: gio/gresource-tool.c:578
msgid "[PATH]"
msgstr ""
-#: gio/gresource-tool.c:579
+#: gio/gresource-tool.c:580
msgid " PATH An (optional) resource path (may be partial)\n"
msgstr ""
-#: gio/gresource-tool.c:580
+#: gio/gresource-tool.c:581
msgid "PATH"
msgstr ""
-#: gio/gresource-tool.c:582
+#: gio/gresource-tool.c:583
msgid " PATH A resource path\n"
msgstr ""
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:906
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr ""
@@ -3596,93 +3637,93 @@ msgstr ""
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr ""
-#: gio/gsettings-tool.c:536
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr ""
-#: gio/gsettings-tool.c:543
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr ""
-#: gio/gsettings-tool.c:579
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr ""
-#: gio/gsettings-tool.c:585
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr ""
-#: gio/gsettings-tool.c:591
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr ""
-#: gio/gsettings-tool.c:592 gio/gsettings-tool.c:598 gio/gsettings-tool.c:641
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "SCHEME[:PERCORS]"
-#: gio/gsettings-tool.c:597
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr ""
-#: gio/gsettings-tool.c:603
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
msgstr ""
-#: gio/gsettings-tool.c:605
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SCHEME[:PERCORS]]"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr ""
-#: gio/gsettings-tool.c:611 gio/gsettings-tool.c:617 gio/gsettings-tool.c:623
-#: gio/gsettings-tool.c:635 gio/gsettings-tool.c:647
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "SCHEME[:PERCORS] CLÂF"
-#: gio/gsettings-tool.c:616
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr ""
-#: gio/gsettings-tool.c:622
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr ""
-#: gio/gsettings-tool.c:628
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr ""
-#: gio/gsettings-tool.c:629
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SCHEME[:PERCORS] CLÂF VALÔR"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr ""
-#: gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr ""
-#: gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr ""
-#: gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
"Use ^C to stop monitoring.\n"
msgstr ""
-#: gio/gsettings-tool.c:655
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SCHEME[:PERCORS] [CLÂF]"
-#: gio/gsettings-tool.c:667
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3708,7 +3749,7 @@ msgid ""
"\n"
msgstr ""
-#: gio/gsettings-tool.c:691
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3718,223 +3759,221 @@ msgid ""
"\n"
msgstr ""
-#: gio/gsettings-tool.c:697
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr ""
-#: gio/gsettings-tool.c:705
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
msgstr ""
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr ""
-#: gio/gsettings-tool.c:714
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr ""
-#: gio/gsettings-tool.c:718
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr ""
-#: gio/gsettings-tool.c:773
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr ""
-#: gio/gsettings-tool.c:785
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Nissun scheme instalât\n"
-#: gio/gsettings-tool.c:864
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Furnît non di scheme vueit\n"
-#: gio/gsettings-tool.c:919
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Clâf “%s†inesistente\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr ""
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr ""
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Il socket al è za sierât"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "I/O dal socket scjadût"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr ""
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr ""
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "E je stade specificade une famee no cognossude"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Al è stât specificât un protocol no cognossût"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr ""
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr ""
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr ""
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "impussibil scoltâ: %s"
-#: gio/gsocket.c:2209
-#, fuzzy, c-format
-#| msgid "Error sending data: %s"
+#: gio/gsocket.c:2213
+#, c-format
msgid "Error binding to address %s: %s"
-msgstr "Erôr tal inviâ dâts: %s"
+msgstr "Erôr tal leâ ae direzion %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr ""
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr ""
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr ""
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Famee dal socket no supuartade"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr ""
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Non interface masse lunc"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Interface no cjatade: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr ""
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr ""
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Erôr tal acetâ la conession: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Conession in vore"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr ""
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Erôr tal ricevi dâts: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Erôr tal inviâ dâts: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Impussibil distudâ il socket: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Erôr tal sierâ il socket: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr ""
-#: gio/gsocket.c:4793 gio/gsocket.c:4805
-#, fuzzy, c-format
-#| msgid "Error sending message: %s"
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
+#, c-format
msgid "Unable to send message: %s"
-msgstr "Erôr tal inviâ il messaç: %s"
+msgstr "Impussibil inviâ il messaç: %s"
-#: gio/gsocket.c:4794 gio/gsocket.c:4806
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr ""
-#: gio/gsocket.c:4822 gio/gsocket.c:4824 gio/gsocket.c:4971 gio/gsocket.c:5056
-#: gio/gsocket.c:5234 gio/gsocket.c:5274 gio/gsocket.c:5276
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Erôr tal inviâ il messaç: %s"
-#: gio/gsocket.c:4998
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr ""
-#: gio/gsocket.c:5467 gio/gsocket.c:5540 gio/gsocket.c:5766
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Erôr tal ricevi il messaç: %s"
-#: gio/gsocket.c:6039 gio/gsocket.c:6050 gio/gsocket.c:6096
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr ""
-#: gio/gsocket.c:6105
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr ""
@@ -3952,11 +3991,11 @@ msgstr "Impussibil conetisi a %s: "
msgid "Could not connect: "
msgstr "Impussibil conetisi: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr ""
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr ""
@@ -4001,8 +4040,8 @@ msgstr ""
#: gio/gsocks5proxy.c:191
msgid ""
-"The SOCKSv5 proxy requires an authentication method that is not supported by "
-"GLib."
+"The SOCKSv5 proxy requires an authentication method that is not supported by"
+" GLib."
msgstr ""
#: gio/gsocks5proxy.c:220
@@ -4054,6 +4093,16 @@ msgstr ""
msgid "Unknown SOCKSv5 proxy error."
msgstr ""
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
+#, c-format
+msgid "Failed to create pipe for communicating with child process (%s)"
+msgstr "No si è rivâts a creâ il condot par comunicâ cul procès fi (%s)"
+
+#: gio/gtestdbus.c:619
+#, c-format
+msgid "Pipes are not supported in this platform"
+msgstr "I condots no son supuartâts in cheste plateforme"
+
#: gio/gthemedicon.c:595
#, c-format
msgid "Can’t handle version %d of GThemedIcon encoding"
@@ -4085,27 +4134,31 @@ msgstr ""
msgid "Error resolving “%sâ€"
msgstr ""
-#: gio/gtlscertificate.c:298
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr ""
-#: gio/gtlscertificate.c:308
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr ""
-#: gio/gtlscertificate.c:319
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr ""
-#: gio/gtlscertificate.c:346
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr ""
-#: gio/gtlscertificate.c:355
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr ""
-#: gio/gtlscertificate.c:710
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr ""
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr ""
@@ -4127,80 +4180,89 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr ""
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "L'inviâ FD nol è supuartât"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] ""
msgstr[1] ""
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr ""
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] ""
msgstr[1] ""
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr ""
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "La ricezion di FD no je supuartade"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr ""
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr ""
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr ""
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
-"Expecting to read a single byte for receiving credentials but read zero bytes"
+"Expecting to read a single byte for receiving credentials but read zero "
+"bytes"
msgstr ""
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr ""
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr ""
-#: gio/gunixinputstream.c:362 gio/gunixinputstream.c:383
+#: gio/gunixinputstream.c:357 gio/gunixinputstream.c:378
#, c-format
msgid "Error reading from file descriptor: %s"
msgstr ""
-#: gio/gunixinputstream.c:416 gio/gunixoutputstream.c:525
+#: gio/gunixinputstream.c:411 gio/gunixoutputstream.c:520
#: gio/gwin32inputstream.c:217 gio/gwin32outputstream.c:204
#, c-format
msgid "Error closing file descriptor: %s"
msgstr ""
-#: gio/gunixmounts.c:2755 gio/gunixmounts.c:2808
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Lidrîs dal filesystem"
-#: gio/gunixoutputstream.c:362 gio/gunixoutputstream.c:382
-#: gio/gunixoutputstream.c:469 gio/gunixoutputstream.c:489
-#: gio/gunixoutputstream.c:635
+#: gio/gunixoutputstream.c:357 gio/gunixoutputstream.c:377
+#: gio/gunixoutputstream.c:464 gio/gunixoutputstream.c:484
+#: gio/gunixoutputstream.c:630
#, c-format
msgid "Error writing to file descriptor: %s"
msgstr ""
-#: gio/gunixsocketaddress.c:243
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr ""
@@ -4271,138 +4333,135 @@ msgstr ""
msgid "Wrong args\n"
msgstr ""
-#: glib/gbookmarkfile.c:768
+#: glib/gbookmarkfile.c:777
#, c-format
msgid "Unexpected attribute “%s†for element “%sâ€"
msgstr ""
-#: glib/gbookmarkfile.c:779 glib/gbookmarkfile.c:859 glib/gbookmarkfile.c:869
-#: glib/gbookmarkfile.c:982
+#: glib/gbookmarkfile.c:788 glib/gbookmarkfile.c:868 glib/gbookmarkfile.c:878
+#: glib/gbookmarkfile.c:991
#, c-format
msgid "Attribute “%s†of element “%s†not found"
msgstr ""
-#: glib/gbookmarkfile.c:1191 glib/gbookmarkfile.c:1256
-#: glib/gbookmarkfile.c:1320 glib/gbookmarkfile.c:1330
+#: glib/gbookmarkfile.c:1200 glib/gbookmarkfile.c:1265
+#: glib/gbookmarkfile.c:1329 glib/gbookmarkfile.c:1339
#, c-format
msgid "Unexpected tag “%sâ€, tag “%s†expected"
msgstr ""
-#: glib/gbookmarkfile.c:1216 glib/gbookmarkfile.c:1230
-#: glib/gbookmarkfile.c:1298 glib/gbookmarkfile.c:1344
+#: glib/gbookmarkfile.c:1225 glib/gbookmarkfile.c:1239
+#: glib/gbookmarkfile.c:1307 glib/gbookmarkfile.c:1353
#, c-format
msgid "Unexpected tag “%s†inside “%sâ€"
msgstr ""
-#: glib/gbookmarkfile.c:1624
+#: glib/gbookmarkfile.c:1633
#, c-format
msgid "Invalid date/time ‘%s’ in bookmark file"
msgstr ""
-#: glib/gbookmarkfile.c:1827
+#: glib/gbookmarkfile.c:1836
msgid "No valid bookmark file found in data dirs"
msgstr ""
-#: glib/gbookmarkfile.c:2028
+#: glib/gbookmarkfile.c:2037
#, c-format
msgid "A bookmark for URI “%s†already exists"
msgstr ""
-#: glib/gbookmarkfile.c:2077 glib/gbookmarkfile.c:2235
-#: glib/gbookmarkfile.c:2320 glib/gbookmarkfile.c:2400
-#: glib/gbookmarkfile.c:2485 glib/gbookmarkfile.c:2619
-#: glib/gbookmarkfile.c:2752 glib/gbookmarkfile.c:2887
-#: glib/gbookmarkfile.c:2929 glib/gbookmarkfile.c:3026
-#: glib/gbookmarkfile.c:3147 glib/gbookmarkfile.c:3341
-#: glib/gbookmarkfile.c:3482 glib/gbookmarkfile.c:3701
-#: glib/gbookmarkfile.c:3790 glib/gbookmarkfile.c:3879
-#: glib/gbookmarkfile.c:3998
+#: glib/gbookmarkfile.c:2086 glib/gbookmarkfile.c:2244
+#: glib/gbookmarkfile.c:2329 glib/gbookmarkfile.c:2409
+#: glib/gbookmarkfile.c:2494 glib/gbookmarkfile.c:2628
+#: glib/gbookmarkfile.c:2761 glib/gbookmarkfile.c:2896
+#: glib/gbookmarkfile.c:2938 glib/gbookmarkfile.c:3035
+#: glib/gbookmarkfile.c:3156 glib/gbookmarkfile.c:3350
+#: glib/gbookmarkfile.c:3491 glib/gbookmarkfile.c:3710
+#: glib/gbookmarkfile.c:3799 glib/gbookmarkfile.c:3888
+#: glib/gbookmarkfile.c:4007
#, c-format
msgid "No bookmark found for URI “%sâ€"
msgstr ""
-#: glib/gbookmarkfile.c:2409
+#: glib/gbookmarkfile.c:2418
#, c-format
msgid "No MIME type defined in the bookmark for URI “%sâ€"
msgstr ""
-#: glib/gbookmarkfile.c:2494
+#: glib/gbookmarkfile.c:2503
#, c-format
msgid "No private flag has been defined in bookmark for URI “%sâ€"
msgstr ""
-#: glib/gbookmarkfile.c:3035
+#: glib/gbookmarkfile.c:3044
#, c-format
msgid "No groups set in bookmark for URI “%sâ€"
msgstr ""
-#: glib/gbookmarkfile.c:3503 glib/gbookmarkfile.c:3711
+#: glib/gbookmarkfile.c:3512 glib/gbookmarkfile.c:3720
#, c-format
msgid "No application with name “%s†registered a bookmark for “%sâ€"
msgstr ""
-#: glib/gbookmarkfile.c:3734
+#: glib/gbookmarkfile.c:3743
#, c-format
msgid "Failed to expand exec line “%s†with URI “%sâ€"
msgstr ""
-#: glib/gconvert.c:467
+#: glib/gconvert.c:468
msgid "Unrepresentable character in conversion input"
msgstr "Caratar che no si pues rapresentâ tal input di conversion"
-#: glib/gconvert.c:494 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr ""
-#: glib/gconvert.c:763
+#: glib/gconvert.c:764
#, c-format
msgid "Cannot convert fallback “%s†to codeset “%sâ€"
msgstr ""
-#: glib/gconvert.c:935
-#, fuzzy
-#| msgid "Invalid byte sequence in conversion input"
+#: glib/gconvert.c:936
msgid "Embedded NUL byte in conversion input"
-msgstr "Secuence byte no valide tal input di conversion"
+msgstr "Byte NUL incorporât tal input di conversion"
-#: glib/gconvert.c:956
-#, fuzzy
-#| msgid "Invalid byte sequence in conversion input"
+#: glib/gconvert.c:957
msgid "Embedded NUL byte in conversion output"
-msgstr "Secuence byte no valide tal input di conversion"
+msgstr "Byte NUL incorporât tal output di conversion"
-#: glib/gconvert.c:1641
+#: glib/gconvert.c:1688
#, c-format
msgid "The URI “%s†is not an absolute URI using the “file†scheme"
msgstr ""
-#: glib/gconvert.c:1651
+#: glib/gconvert.c:1698
#, c-format
msgid "The local file URI “%s†may not include a “#â€"
msgstr ""
-#: glib/gconvert.c:1668
+#: glib/gconvert.c:1715
#, c-format
msgid "The URI “%s†is invalid"
msgstr ""
-#: glib/gconvert.c:1680
+#: glib/gconvert.c:1727
#, c-format
msgid "The hostname of the URI “%s†is invalid"
msgstr ""
-#: glib/gconvert.c:1696
+#: glib/gconvert.c:1743
#, c-format
msgid "The URI “%s†contains invalidly escaped characters"
msgstr ""
-#: glib/gconvert.c:1768
+#: glib/gconvert.c:1815
#, c-format
msgid "The pathname “%s†is not an absolute path"
msgstr ""
-#. Translators: this is the preferred format for expressing the date and the time
+#. Translators: this is the preferred format for expressing the date and the
+#. time
#: glib/gdatetime.c:226
msgctxt "GDateTime"
msgid "%a %b %e %H:%M:%S %Y"
@@ -4441,7 +4500,6 @@ msgstr "%I:%M:%S %p"
#. * paste here. Note that in most of the languages (western European,
#. * non-European) there is no difference between the standalone and
#. * complete date form.
-#.
#: glib/gdatetime.c:274
msgctxt "full month name"
msgid "January"
@@ -4518,7 +4576,6 @@ msgstr "Dicembar"
#. * and paste here. Note that this feature is not yet supported by any
#. * other platform. Here are abbreviated month names in a form
#. * appropriate when they are used standalone.
-#.
#: glib/gdatetime.c:328
msgctxt "abbreviated month name"
msgid "Jan"
@@ -4665,7 +4722,6 @@ msgstr "Dom"
#. * incorrect in some languages. Note that in most of the languages
#. * (western European, non-European) there is no difference between the
#. * standalone and complete date form.
-#.
#: glib/gdatetime.c:468
msgctxt "full month name with day"
msgid "January"
@@ -4742,7 +4798,6 @@ msgstr "Dicembar"
#. * `locale abmon' in your native locale produces a complete list of
#. * month names almost ready to copy and paste here. In other systems
#. * due to a bug the result is incorrect in some languages.
-#.
#: glib/gdatetime.c:555
msgctxt "abbreviated month name with day"
msgid "Jan"
@@ -4815,202 +4870,202 @@ msgctxt "GDateTime"
msgid "PM"
msgstr "PM"
-#: glib/gdir.c:154
+#: glib/gdir.c:156
#, c-format
msgid "Error opening directory “%sâ€: %s"
msgstr ""
-#: glib/gfileutils.c:737 glib/gfileutils.c:829
+#: glib/gfileutils.c:733 glib/gfileutils.c:825
#, c-format
msgid "Could not allocate %lu byte to read file “%sâ€"
msgid_plural "Could not allocate %lu bytes to read file “%sâ€"
msgstr[0] ""
msgstr[1] ""
-#: glib/gfileutils.c:754
+#: glib/gfileutils.c:750
#, c-format
msgid "Error reading file “%sâ€: %s"
msgstr "Erôr tal lei il file “%sâ€: %s"
-#: glib/gfileutils.c:790
+#: glib/gfileutils.c:786
#, c-format
msgid "File “%s†is too large"
msgstr "Il file “%s†al è masse larc"
-#: glib/gfileutils.c:854
+#: glib/gfileutils.c:850
#, c-format
msgid "Failed to read from file “%sâ€: %s"
msgstr ""
-#: glib/gfileutils.c:904 glib/gfileutils.c:979 glib/gfileutils.c:1476
+#: glib/gfileutils.c:900 glib/gfileutils.c:975 glib/gfileutils.c:1447
#, c-format
msgid "Failed to open file “%sâ€: %s"
msgstr "No si è rivâts a vierzi il file “%sâ€: %s"
-#: glib/gfileutils.c:917
+#: glib/gfileutils.c:913
#, c-format
msgid "Failed to get attributes of file “%sâ€: fstat() failed: %s"
msgstr ""
-#: glib/gfileutils.c:948
+#: glib/gfileutils.c:944
#, c-format
msgid "Failed to open file “%sâ€: fdopen() failed: %s"
msgstr ""
-#: glib/gfileutils.c:1049
+#: glib/gfileutils.c:1045
#, c-format
msgid "Failed to rename file “%s†to “%sâ€: g_rename() failed: %s"
msgstr ""
-#: glib/gfileutils.c:1175
+#: glib/gfileutils.c:1154
#, c-format
msgid "Failed to write file “%sâ€: write() failed: %s"
msgstr ""
-#: glib/gfileutils.c:1196
+#: glib/gfileutils.c:1175
#, c-format
msgid "Failed to write file “%sâ€: fsync() failed: %s"
msgstr ""
-#: glib/gfileutils.c:1365 glib/gfileutils.c:1780
+#: glib/gfileutils.c:1336 glib/gfileutils.c:1751
#, c-format
msgid "Failed to create file “%sâ€: %s"
msgstr ""
-#: glib/gfileutils.c:1410
+#: glib/gfileutils.c:1381
#, c-format
msgid "Existing file “%s†could not be removed: g_unlink() failed: %s"
msgstr ""
-#: glib/gfileutils.c:1745
+#: glib/gfileutils.c:1716
#, c-format
msgid "Template “%s†invalid, should not contain a “%sâ€"
msgstr ""
-#: glib/gfileutils.c:1758
+#: glib/gfileutils.c:1729
#, c-format
msgid "Template “%s†doesn’t contain XXXXXX"
msgstr ""
-#: glib/gfileutils.c:2318 glib/gfileutils.c:2347
+#: glib/gfileutils.c:2289 glib/gfileutils.c:2318
#, c-format
msgid "Failed to read the symbolic link “%sâ€: %s"
msgstr ""
-#: glib/giochannel.c:1396
+#: glib/giochannel.c:1405
#, c-format
msgid "Could not open converter from “%s†to “%sâ€: %s"
msgstr ""
-#: glib/giochannel.c:1749
+#: glib/giochannel.c:1758
msgid "Can’t do a raw read in g_io_channel_read_line_string"
msgstr ""
-#: glib/giochannel.c:1796 glib/giochannel.c:2054 glib/giochannel.c:2141
+#: glib/giochannel.c:1805 glib/giochannel.c:2063 glib/giochannel.c:2150
msgid "Leftover unconverted data in read buffer"
msgstr ""
-#: glib/giochannel.c:1877 glib/giochannel.c:1954
+#: glib/giochannel.c:1886 glib/giochannel.c:1963
msgid "Channel terminates in a partial character"
msgstr ""
-#: glib/giochannel.c:1940
+#: glib/giochannel.c:1949
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr ""
-#: glib/gkeyfile.c:789
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr ""
-#: glib/gkeyfile.c:826
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Nol è un file regolâr"
-#: glib/gkeyfile.c:1281
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
msgstr ""
-#: glib/gkeyfile.c:1338
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr ""
-#: glib/gkeyfile.c:1360
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr ""
-#: glib/gkeyfile.c:1386
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr ""
+msgid "Invalid key name: %.*s"
+msgstr "Non de clâf no valit: %.*s"
-#: glib/gkeyfile.c:1413
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr ""
-#: glib/gkeyfile.c:1662 glib/gkeyfile.c:1835 glib/gkeyfile.c:3288
-#: glib/gkeyfile.c:3352 glib/gkeyfile.c:3482 glib/gkeyfile.c:3614
-#: glib/gkeyfile.c:3760 glib/gkeyfile.c:3995 glib/gkeyfile.c:4062
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr ""
-#: glib/gkeyfile.c:1790
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr ""
-#: glib/gkeyfile.c:1952 glib/gkeyfile.c:2068
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr ""
-#: glib/gkeyfile.c:1972 glib/gkeyfile.c:2088 glib/gkeyfile.c:2530
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr ""
-#: glib/gkeyfile.c:2748 glib/gkeyfile.c:3117
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
"interpreted."
msgstr ""
-#: glib/gkeyfile.c:2826 glib/gkeyfile.c:2903
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr ""
-#: glib/gkeyfile.c:4305
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr ""
-#: glib/gkeyfile.c:4327
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr ""
-#: glib/gkeyfile.c:4471
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr ""
-#: glib/gkeyfile.c:4485
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr ""
-#: glib/gkeyfile.c:4518
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr ""
-#: glib/gkeyfile.c:4557
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr ""
@@ -5097,8 +5152,8 @@ msgstr ""
#: glib/gmarkup.c:1233
#, c-format
msgid ""
-"“%s†is not a valid character following a “<†character; it may not begin an "
-"element name"
+"“%s†is not a valid character following a “<†character; it may not begin an"
+" element name"
msgstr ""
#: glib/gmarkup.c:1276
@@ -5109,10 +5164,9 @@ msgid ""
msgstr ""
#: glib/gmarkup.c:1346
-#, fuzzy, c-format
-#| msgid "Invalid attribute type “%sâ€"
+#, c-format
msgid "Too many attributes in element “%sâ€"
-msgstr "Gjenar di atribût “%s†no valit"
+msgstr "Masse atribûts tal element “%sâ€"
#: glib/gmarkup.c:1366
#, c-format
@@ -5266,556 +5320,564 @@ msgstr ""
msgid "Error parsing option %s"
msgstr ""
-#: glib/goption.c:1570 glib/goption.c:1683
+#: glib/goption.c:1561 glib/goption.c:1674
#, c-format
msgid "Missing argument for %s"
msgstr ""
-#: glib/goption.c:2194
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Opzion %s no cognossude"
-#: glib/gregex.c:257
+#: glib/gregex.c:255
msgid "corrupted object"
msgstr "ogjet ruvinât"
-#: glib/gregex.c:259
+#: glib/gregex.c:257
msgid "internal error or corrupted object"
msgstr "erôr interni o ogjet ruvinât"
-#: glib/gregex.c:261
+#: glib/gregex.c:259
msgid "out of memory"
msgstr "memorie finide"
-#: glib/gregex.c:266
+#: glib/gregex.c:264
msgid "backtracking limit reached"
msgstr ""
-#: glib/gregex.c:278 glib/gregex.c:286
+#: glib/gregex.c:276 glib/gregex.c:284
msgid "the pattern contains items not supported for partial matching"
msgstr ""
-#: glib/gregex.c:280
+#: glib/gregex.c:278
msgid "internal error"
msgstr "erôr interni"
-#: glib/gregex.c:288
+#: glib/gregex.c:286
msgid "back references as conditions are not supported for partial matching"
msgstr ""
-#: glib/gregex.c:297
+#: glib/gregex.c:295
msgid "recursion limit reached"
msgstr ""
-#: glib/gregex.c:299
+#: glib/gregex.c:297
msgid "invalid combination of newline flags"
msgstr ""
-#: glib/gregex.c:301
+#: glib/gregex.c:299
msgid "bad offset"
msgstr ""
-#: glib/gregex.c:303
+#: glib/gregex.c:301
msgid "short utf8"
msgstr ""
-#: glib/gregex.c:305
+#: glib/gregex.c:303
msgid "recursion loop"
msgstr ""
-#: glib/gregex.c:309
+#: glib/gregex.c:307
msgid "unknown error"
msgstr "erôr no cognossût"
-#: glib/gregex.c:329
+#: glib/gregex.c:327
msgid "\\ at end of pattern"
msgstr ""
-#: glib/gregex.c:332
+#: glib/gregex.c:330
msgid "\\c at end of pattern"
msgstr ""
-#: glib/gregex.c:335
+#: glib/gregex.c:333
msgid "unrecognized character following \\"
msgstr ""
-#: glib/gregex.c:338
+#: glib/gregex.c:336
msgid "numbers out of order in {} quantifier"
msgstr ""
-#: glib/gregex.c:341
+#: glib/gregex.c:339
msgid "number too big in {} quantifier"
msgstr ""
-#: glib/gregex.c:344
+#: glib/gregex.c:342
msgid "missing terminating ] for character class"
msgstr ""
-#: glib/gregex.c:347
+#: glib/gregex.c:345
msgid "invalid escape sequence in character class"
msgstr ""
-#: glib/gregex.c:350
+#: glib/gregex.c:348
msgid "range out of order in character class"
msgstr ""
-#: glib/gregex.c:353
+#: glib/gregex.c:351
msgid "nothing to repeat"
msgstr "nuie di ce ripeti"
-#: glib/gregex.c:357
+#: glib/gregex.c:355
msgid "unexpected repeat"
msgstr ""
-#: glib/gregex.c:360
+#: glib/gregex.c:358
msgid "unrecognized character after (? or (?-"
msgstr ""
-#: glib/gregex.c:363
+#: glib/gregex.c:361
msgid "POSIX named classes are supported only within a class"
msgstr ""
-#: glib/gregex.c:366
+#: glib/gregex.c:364
msgid "missing terminating )"
msgstr ""
-#: glib/gregex.c:369
+#: glib/gregex.c:367
msgid "reference to non-existent subpattern"
msgstr ""
-#: glib/gregex.c:372
+#: glib/gregex.c:370
msgid "missing ) after comment"
msgstr ""
-#: glib/gregex.c:375
+#: glib/gregex.c:373
msgid "regular expression is too large"
msgstr "la espression regolâr e je masse largje"
-#: glib/gregex.c:378
+#: glib/gregex.c:376
msgid "failed to get memory"
msgstr ""
-#: glib/gregex.c:382
+#: glib/gregex.c:380
msgid ") without opening ("
msgstr ""
-#: glib/gregex.c:386
+#: glib/gregex.c:384
msgid "code overflow"
msgstr ""
-#: glib/gregex.c:390
+#: glib/gregex.c:388
msgid "unrecognized character after (?<"
msgstr "caratar no ricognossût dopo (?<"
-#: glib/gregex.c:393
+#: glib/gregex.c:391
msgid "lookbehind assertion is not fixed length"
msgstr ""
-#: glib/gregex.c:396
+#: glib/gregex.c:394
msgid "malformed number or name after (?("
msgstr "non o numar malformât dopo (?("
-#: glib/gregex.c:399
+#: glib/gregex.c:397
msgid "conditional group contains more than two branches"
msgstr ""
-#: glib/gregex.c:402
+#: glib/gregex.c:400
msgid "assertion expected after (?("
msgstr ""
#. translators: '(?R' and '(?[+-]digits' are both meant as (groups of)
#. * sequences here, '(?-54' would be an example for the second group.
-#.
-#: glib/gregex.c:409
+#: glib/gregex.c:407
msgid "(?R or (?[+-]digits must be followed by )"
msgstr ""
-#: glib/gregex.c:412
+#: glib/gregex.c:410
msgid "unknown POSIX class name"
msgstr "non di classe POSIX no cognossût"
-#: glib/gregex.c:415
+#: glib/gregex.c:413
msgid "POSIX collating elements are not supported"
msgstr ""
-#: glib/gregex.c:418
+#: glib/gregex.c:416
msgid "character value in \\x{...} sequence is too large"
msgstr ""
-#: glib/gregex.c:421
+#: glib/gregex.c:419
msgid "invalid condition (?(0)"
msgstr "condizion no valide (?(0)"
-#: glib/gregex.c:424
+#: glib/gregex.c:422
msgid "\\C not allowed in lookbehind assertion"
msgstr ""
-#: glib/gregex.c:431
+#: glib/gregex.c:429
msgid "escapes \\L, \\l, \\N{name}, \\U, and \\u are not supported"
msgstr ""
-#: glib/gregex.c:434
+#: glib/gregex.c:432
msgid "recursive call could loop indefinitely"
msgstr ""
-#: glib/gregex.c:438
+#: glib/gregex.c:436
msgid "unrecognized character after (?P"
msgstr "caratar no ricognossût dopo (?P"
-#: glib/gregex.c:441
+#: glib/gregex.c:439
msgid "missing terminator in subpattern name"
msgstr ""
-#: glib/gregex.c:444
+#: glib/gregex.c:442
msgid "two named subpatterns have the same name"
msgstr ""
-#: glib/gregex.c:447
+#: glib/gregex.c:445
msgid "malformed \\P or \\p sequence"
msgstr "secuence \\P o \\p malformade"
-#: glib/gregex.c:450
+#: glib/gregex.c:448
msgid "unknown property name after \\P or \\p"
msgstr ""
-#: glib/gregex.c:453
+#: glib/gregex.c:451
msgid "subpattern name is too long (maximum 32 characters)"
msgstr ""
-#: glib/gregex.c:456
+#: glib/gregex.c:454
msgid "too many named subpatterns (maximum 10,000)"
msgstr ""
-#: glib/gregex.c:459
+#: glib/gregex.c:457
msgid "octal value is greater than \\377"
msgstr "il valôr otâl al è plui grant di \\377"
-#: glib/gregex.c:463
+#: glib/gregex.c:461
msgid "overran compiling workspace"
msgstr ""
-#: glib/gregex.c:467
+#: glib/gregex.c:465
msgid "previously-checked referenced subpattern not found"
msgstr ""
-#: glib/gregex.c:470
+#: glib/gregex.c:468
msgid "DEFINE group contains more than one branch"
msgstr ""
-#: glib/gregex.c:473
+#: glib/gregex.c:471
msgid "inconsistent NEWLINE options"
msgstr ""
-#: glib/gregex.c:476
+#: glib/gregex.c:474
msgid ""
"\\g is not followed by a braced, angle-bracketed, or quoted name or number, "
"or by a plain number"
msgstr ""
-#: glib/gregex.c:480
+#: glib/gregex.c:478
msgid "a numbered reference must not be zero"
msgstr "un riferiment numerât nol pues jessi zero"
-#: glib/gregex.c:483
+#: glib/gregex.c:481
msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
msgstr ""
-#: glib/gregex.c:486
+#: glib/gregex.c:484
msgid "(*VERB) not recognized"
msgstr ""
-#: glib/gregex.c:489
+#: glib/gregex.c:487
msgid "number is too big"
msgstr "il numar al è masse grant"
-#: glib/gregex.c:492
+#: glib/gregex.c:490
msgid "missing subpattern name after (?&"
msgstr ""
-#: glib/gregex.c:495
+#: glib/gregex.c:493
msgid "digit expected after (?+"
msgstr ""
-#: glib/gregex.c:498
+#: glib/gregex.c:496
msgid "] is an invalid data character in JavaScript compatibility mode"
msgstr ""
-#: glib/gregex.c:501
+#: glib/gregex.c:499
msgid "different names for subpatterns of the same number are not allowed"
msgstr ""
-#: glib/gregex.c:504
+#: glib/gregex.c:502
msgid "(*MARK) must have an argument"
msgstr ""
-#: glib/gregex.c:507
+#: glib/gregex.c:505
msgid "\\c must be followed by an ASCII character"
msgstr ""
-#: glib/gregex.c:510
+#: glib/gregex.c:508
msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
msgstr ""
-#: glib/gregex.c:513
+#: glib/gregex.c:511
msgid "\\N is not supported in a class"
msgstr "\\N nol è supuartât intune classe"
-#: glib/gregex.c:516
+#: glib/gregex.c:514
msgid "too many forward references"
msgstr "masse riferiments intal indenant"
-#: glib/gregex.c:519
+#: glib/gregex.c:517
msgid "name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)"
msgstr "non masse lunc in (*MARK), (*PRUNE), (*SKIP), or (*THEN)"
-#: glib/gregex.c:522
+#: glib/gregex.c:520
msgid "character value in \\u.... sequence is too large"
msgstr "valôr dal caratar inte secuence \\u.... al è masse grant"
-#: glib/gregex.c:745 glib/gregex.c:1983
+#: glib/gregex.c:743 glib/gregex.c:1988
#, c-format
msgid "Error while matching regular expression %s: %s"
msgstr ""
-#: glib/gregex.c:1316
+#: glib/gregex.c:1321
msgid "PCRE library is compiled without UTF8 support"
msgstr ""
-#: glib/gregex.c:1320
+#: glib/gregex.c:1325
msgid "PCRE library is compiled without UTF8 properties support"
msgstr ""
-#: glib/gregex.c:1328
+#: glib/gregex.c:1333
msgid "PCRE library is compiled with incompatible options"
msgstr ""
-#: glib/gregex.c:1357
+#: glib/gregex.c:1362
#, c-format
msgid "Error while optimizing regular expression %s: %s"
msgstr "Erôr intal otimizâ la espression regolâr %s: %s"
-#: glib/gregex.c:1437
+#: glib/gregex.c:1442
#, c-format
msgid "Error while compiling regular expression %s at char %d: %s"
msgstr "Erôr intal compilâ la espression regolâr %s al caratar %d: %s"
-#: glib/gregex.c:2419
+#: glib/gregex.c:2427
msgid "hexadecimal digit or “}†expected"
msgstr ""
-#: glib/gregex.c:2435
+#: glib/gregex.c:2443
msgid "hexadecimal digit expected"
msgstr ""
-#: glib/gregex.c:2475
+#: glib/gregex.c:2483
msgid "missing “<†in symbolic reference"
msgstr "al mancje “%†intal riferiment simbolic"
-#: glib/gregex.c:2484
+#: glib/gregex.c:2492
msgid "unfinished symbolic reference"
msgstr "riferiment simbolic no finît"
-#: glib/gregex.c:2491
+#: glib/gregex.c:2499
msgid "zero-length symbolic reference"
msgstr "riferiment simbolic di lungjece zero"
-#: glib/gregex.c:2502
+#: glib/gregex.c:2510
msgid "digit expected"
msgstr ""
-#: glib/gregex.c:2520
+#: glib/gregex.c:2528
msgid "illegal symbolic reference"
msgstr "riferiment simbolic ilegâl"
-#: glib/gregex.c:2583
+#: glib/gregex.c:2591
msgid "stray final “\\â€"
msgstr ""
-#: glib/gregex.c:2587
+#: glib/gregex.c:2595
msgid "unknown escape sequence"
msgstr "secuence di escape no cognossude"
-#: glib/gregex.c:2597
+#: glib/gregex.c:2605
#, c-format
msgid "Error while parsing replacement text “%s†at char %lu: %s"
msgstr "Erôr tal analizâ il test di sostituzion “%s†al caratar %lu: %s"
-#: glib/gshell.c:94
+#: glib/gshell.c:96
msgid "Quoted text doesn’t begin with a quotation mark"
msgstr "Il test citât nol tache cuntun segn di citazion"
-#: glib/gshell.c:184
+#: glib/gshell.c:186
msgid "Unmatched quotation mark in command line or other shell-quoted text"
msgstr ""
"Segn di citazion no cubiât inte rie di comant o altri test citât de shell"
-#: glib/gshell.c:580
+#: glib/gshell.c:592
#, c-format
msgid "Text ended just after a “\\†character. (The text was “%sâ€)"
msgstr "Il test al è finît juste dopo un caratar “/â€. (Il test al jere “%sâ€)"
-#: glib/gshell.c:587
+#: glib/gshell.c:599
#, c-format
msgid "Text ended before matching quote was found for %c. (The text was “%sâ€)"
msgstr ""
"Test finît prime di cjatâ la citazion corispondent par %c. (Il test al jere "
"“%sâ€)"
-#: glib/gshell.c:599
+#: glib/gshell.c:611
msgid "Text was empty (or contained only whitespace)"
msgstr "Il test al jere vueit (o al contignive dome spazis vueits)"
-#: glib/gspawn.c:323
+#: glib/gspawn.c:310
#, c-format
msgid "Failed to read data from child process (%s)"
msgstr "No si è rivâts a lei dâts dal procès fi (%s)"
-#: glib/gspawn.c:468
-#, fuzzy, c-format
-#| msgid "Unexpected error in select() reading data from a child process (%s)"
+#: glib/gspawn.c:462
+#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
-msgstr "Erôr inspietât in select() leint i dâts dal procès fi (%s)"
+msgstr "Erôr inspietât tai dâts di leture di un procès fi (%s)"
-#: glib/gspawn.c:553
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Erôr inspietât in waitpid() (%s)"
-#: glib/gspawn.c:1061 glib/gspawn-win32.c:1329
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "Procès fi jessût cul codiç %ld"
-#: glib/gspawn.c:1069
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Procès fi copât dal segnâl %ld"
-#: glib/gspawn.c:1076
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Procès fi fermât dal segnâl %ld"
-#: glib/gspawn.c:1083
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Il procès fi al è jessût in maniere anormâl"
-#: glib/gspawn.c:1548 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "No si è rivâts a lei dal condot dal fi (%s)"
-#: glib/gspawn.c:1804
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "No si è rivâts a creâ il procès fi “%s†(%s)"
-#: glib/gspawn.c:1887
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "No si è rivâts a inglovâ (%s)"
-#: glib/gspawn.c:2042 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "No si è rivâts a lâ ae cartele “%s†(%s)"
-#: glib/gspawn.c:2052
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "No si è rivâts a eseguî il procès fi “%s†(%s)"
-#: glib/gspawn.c:2062
+#: glib/gspawn.c:2550
+#, c-format
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Impussibil vierzi il file par tornâ a mapâ il descritôr dal file (%s)"
+
+#: glib/gspawn.c:2558
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "No si è rivâts a indreçâ la jessude o la jentrade dal procès fi (%s)"
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Impussibil duplicâ il descritôr dal file pal procès fi (%s)"
-#: glib/gspawn.c:2071
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "No si è rivâts a inglovâ il procès fi (%s)"
-#: glib/gspawn.c:2079
+#: glib/gspawn.c:2575
+#, c-format
+msgid "Failed to close file descriptor for child process (%s)"
+msgstr "Impussibil sierâ il descritôr dal file pal procès fi (%s)"
+
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Erôr no cognossût tal eseguî il procès fi “%sâ€"
-#: glib/gspawn.c:2103
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "No si è rivâts a lei vonde dâts dal condot dal pid dal fi (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "No si è rivâts a lei dâts dal procès fi"
-#: glib/gspawn-win32.c:311
-#, c-format
-msgid "Failed to create pipe for communicating with child process (%s)"
-msgstr "No si è rivâts a creâ il condot par comunicâ cul procès fi (%s)"
-
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "No si è rivâts a eseguî il procès fi (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Impussibil fâ il dup() tal procès fi (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Non dal program no valit: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:725
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Stringhe no valide intal vetôr dal argoment su %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:740
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Stringhe no valide intal ambient: %s"
-#: glib/gspawn-win32.c:721
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Cartele di lavôr no valide: %s"
-#: glib/gspawn-win32.c:783
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "No si è rivâts a eseguî il program judant (%s)"
-#: glib/gspawn-win32.c:1056
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
-msgstr "Erôr inspietât in g_io_channel_win32_poll() leint dâts di un procès fi"
+msgstr ""
+"Erôr inspietât in g_io_channel_win32_poll() leint dâts di un procès fi"
-#: glib/gstrfuncs.c:3303 glib/gstrfuncs.c:3405
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "La stringhe vueide no je un numar"
-#: glib/gstrfuncs.c:3327
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "“%s†nol è un numar cun segn"
-#: glib/gstrfuncs.c:3337 glib/gstrfuncs.c:3441
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Il numar “%s†al è fûr dai limits [%s, %s]"
-#: glib/gstrfuncs.c:3431
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "“%s†nol è un numar cence segn"
#: glib/guri.c:315
-#, fuzzy, no-c-format
-#| msgid " (invalid encoding)"
+#, no-c-format
msgid "Invalid %-encoding in URI"
-msgstr " (codifiche no valide)"
+msgstr "%-encoding no valit tal URI"
#: glib/guri.c:332
msgid "Illegal character in URI"
@@ -5836,16 +5898,14 @@ msgid "Illegal encoded IP address ‘%.*s’ in URI"
msgstr ""
#: glib/guri.c:613
-#, fuzzy, c-format
-#| msgid "Could not parse “%s†as IP address mask"
+#, c-format
msgid "Illegal internationalized hostname ‘%.*s’ in URI"
-msgstr "Impussibil analizâ “%s†come mascare de direzion IP"
+msgstr "Non ilegjitim dal host internazionalizât ‘%.*s’ tal URI"
#: glib/guri.c:645 glib/guri.c:657
-#, fuzzy, c-format
-#| msgid "Could not parse “%s†as IP address mask"
+#, c-format
msgid "Could not parse port ‘%.*s’ in URI"
-msgstr "Impussibil analizâ “%s†come mascare de direzion IP"
+msgstr "Impussibil analizâ la puarte ‘%.*s’ tal URI"
#: glib/guri.c:664
#, c-format
@@ -5853,193 +5913,192 @@ msgid "Port ‘%.*s’ in URI is out of range"
msgstr ""
#: glib/guri.c:1224 glib/guri.c:1288
-#, fuzzy, c-format
-#| msgid "“%s†is not a valid name"
+#, c-format
msgid "URI ‘%s’ is not an absolute URI"
-msgstr "“%s†nol è un non valit"
+msgstr "L'URI ‘%s’ nol è un URI assolût"
#: glib/guri.c:1230
#, c-format
msgid "URI ‘%s’ has no host component"
msgstr ""
-#: glib/guri.c:1435
+#: glib/guri.c:1460
msgid "URI is not absolute, and no base URI was provided"
msgstr ""
-#: glib/guri.c:2209
+#: glib/guri.c:2238
msgid "Missing ‘=’ and parameter value"
msgstr ""
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "No si è rivâts a assegnâ la memorie"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Caratar fûr dal limit par UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Secuence no valide intal input di conversion"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Caratar fûr dal limit par UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2747
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2749
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2751
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2753
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2755
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2757
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2761
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2763
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2765
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2767
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2769
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2771
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2775
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2777
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2779
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2781
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2783
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2785
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2789
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2791
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2793
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2795
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2797
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2799
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2833 glib/gutils.c:2950
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u byte"
msgstr[1] "%u byte"
-#: glib/gutils.c:2837
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6047,7 +6106,7 @@ msgstr[0] "%u bit"
msgstr[1] "%u bit"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2904
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6055,48 +6114,53 @@ msgstr[0] "%s byte"
msgstr[1] "%s byte"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2909
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
msgstr[0] "%s bit"
msgstr[1] "%s bit"
-#. Translators: this is from the deprecated function g_format_size_for_display() which uses 'KB' to
-#. * mean 1024 bytes. I am aware that 'KB' is not correct, but it has been preserved for reasons of
-#. * compatibility. Users will not see this string unless a program is using this deprecated function.
+#. Translators: this is from the deprecated function
+#. g_format_size_for_display() which uses 'KB' to
+#. * mean 1024 bytes. I am aware that 'KB' is not correct, but it has been
+#. preserved for reasons of
+#. * compatibility. Users will not see this string unless a program is using
+#. this deprecated function.
#. * Please translate as literally as possible.
-#.
-#: glib/gutils.c:2963
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2968
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2973
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:2978
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:2983
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:2988
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
+#~ msgid "Unable to load /var/lib/dbus/machine-id or /etc/machine-id: "
+#~ msgstr "Impussibil cjariâ /var/lib/dbus/machine-id o /etc/machine-id: "
+
#~ msgid "Unknown error on connect"
#~ msgstr "Erôr no cognossût tal coneti"
@@ -6110,8 +6174,8 @@ msgstr "%.1f EB"
#~ msgstr "no si fâs nuie.\n"
#~ msgid ""
-#~ "Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment "
-#~ "variable - unknown value '%s'"
+#~ "Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable"
+#~ " - unknown value '%s'"
#~ msgstr ""
#~ "Impussibil determinâ la direzion dal bus de variabile di ambient "
#~ "DBUS_STARTER_BUS_TYPE — valôr '%s' no cognossût"
@@ -6119,18 +6183,14 @@ msgstr "%.1f EB"
#~ msgid "[ARGS...]"
#~ msgstr "[ARGS...]"
-#~ msgid "Failed to create temp file: %s"
-#~ msgstr "No si è rivâts a creâ il file temp: %s"
-
#~ msgid "Error: object path not specified.\n"
#~ msgstr "Erôr: percors ogjet no specificât.\n"
#~ msgid "Error: signal not specified.\n"
#~ msgstr "Erôr: segnâl no specificât.\n"
-#, fuzzy
#~ msgid "Error: signal must be the fully-qualified name.\n"
-#~ msgstr "Erôr: il segnâl al scugne jessi il non cualificât-in-plen.\n"
+#~ msgstr "Erôr: il segnâl al scugne jessi il non cualificât ad implen.\n"
#~ msgid "No files to open"
#~ msgstr "Nissun file di vierzi"
diff --git a/po/gl.po b/po/gl.po
index 16c3211a8..4228c59c7 100644
--- a/po/gl.po
+++ b/po/gl.po
@@ -10,16 +10,16 @@
# Mancomún - Centro de Referencia e Servizos de Software Libre <g11n@mancomun.org>, 2009.
# Suso Baleato <suso.baleato@xunta.es>,2009.
# Antón Méixome <meixome@mancomun.org>, 2009.
-# Fran Diéguez <frandieguez@gnome.org>, 2009, 2010, 2011, 2012.
# Leandro Regueiro <leandro.regueiro@gmail.com>, 2012.
-# Fran Dieguez <frandieguez@gnome.org>, 2012-2021.
+# Fran Diéguez <frandieguez@gnome.org>, 2009-2022.
+# Fran Dieguez <frandieguez@gnome.org>, 2012-2022.
#
msgid ""
msgstr ""
"Project-Id-Version: glib.master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2021-07-19 15:52+0000\n"
-"PO-Revision-Date: 2021-08-25 07:58+0200\n"
+"POT-Creation-Date: 2022-04-18 17:24+0000\n"
+"PO-Revision-Date: 2022-04-19 08:02+0200\n"
"Last-Translator: Fran Dieguez <frandieguez@gnome.org>\n"
"Language-Team: Galician <Proxecto Trasno <proxecto@trasno.gal>>\n"
"Language: gl\n"
@@ -31,10 +31,19 @@ msgstr ""
"X-Project-Style: gnome\n"
"X-DL-Team: gl\n"
"X-DL-Module: glib\n"
-"X-DL-Branch: main\n"
+"X-DL-Branch: glib-2-72\n"
"X-DL-Domain: po\n"
"X-DL-State: Translating\n"
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Estabelecer as aplicacións predeterminadas non se soporta aínda"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"Establecer aplicación como última usada para o tipo non se soporta aínda"
+
#: gio/gapplication.c:500
msgid "GApplication options"
msgstr "Opcións de GApplication"
@@ -58,7 +67,7 @@ msgid "Replace the running instance"
msgstr "Substituír a instancia en execución"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Imprimir axuda"
@@ -70,7 +79,7 @@ msgstr "[ORDE]"
msgid "Print version"
msgstr "Mostrar versión"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Mostrar información da versión e saír"
@@ -134,8 +143,8 @@ msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr ""
"Identificador de aplicacións en formato D-Bus (p.ex.: org.exemplo.visor)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "FICHEIRO"
@@ -160,7 +169,7 @@ msgstr "PARÃMETRO"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Parámetro opcional para a invocación da acción, en formato GVariant"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -174,7 +183,7 @@ msgid "Usage:\n"
msgstr "Uso:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argumentos:\n"
@@ -297,7 +306,7 @@ msgstr "O fluxo xa se pechou"
msgid "Truncate not supported on base stream"
msgstr "Non se permite truncar no fluxo base"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1872 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -318,7 +327,7 @@ msgstr "Non hai espazo abondo para o enderezo do socket"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "A secuencia de bytes non é válida na entrada da conversión"
@@ -328,7 +337,7 @@ msgstr "A secuencia de bytes non é válida na entrada da conversión"
msgid "Error during conversion: %s"
msgstr "Produciuse un erro durante a conversión: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Non se permite a inicialización cancelábel"
@@ -342,37 +351,37 @@ msgstr "Non se admite a conversión do conxunto de caracteres «%s» a «%s»"
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Non foi posíbel abrir o conversor de «%s» a «%s»"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "tipo %s"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Tipo descoñecido"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "tipo de ficheiro %s"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials contén datos non válidos"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials non está implementado neste SO"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "A súa plataforma non ten compatibilidade con GCredentials"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GCredentials non contén un ID de proceso para este SO"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Non é posíbel burlar as credenciais neste SO"
@@ -380,17 +389,17 @@ msgstr "Non é posíbel burlar as credenciais neste SO"
msgid "Unexpected early end-of-stream"
msgstr "Final de fluxo inesperadamente prematuro"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Clave «%s» non admitida na entrada do enderezo «%s»"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Combinación de par clave/valor sen sentido na entrada do enderezo «%s»"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -399,29 +408,29 @@ msgstr ""
"O enderezo «%s» non é válido (necesítase exactamente unha ruta, directorio, "
"directorio temporal ou claves abstractas)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Erro no enderezo «%s» — o atributo «%s» está mal formado"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Transporte «%s» descoñecido ou non compatíbel para o enderezo «%s»"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "O elemento do enderezo «%s» non contén un carácter dous puntos (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr ""
"O nome de transporte do elemento de enderezo «%s» non pode estar baleiro"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -430,7 +439,7 @@ msgstr ""
"O par clave/valor %d, «%s» no elemento do enderezo «%s» non contén un signo "
"de igual"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
@@ -438,7 +447,7 @@ msgstr ""
"O par clave/valor %d, «%s» no elemento do enderezo «%s» non debe ter unha "
"chave baleira"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -447,7 +456,7 @@ msgstr ""
"Produciuse un erro ao desescapar a clave ou o valor no par clave/valor %d, "
"«%s», no elemento de enderezo «%s»"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -456,83 +465,85 @@ msgstr ""
"Erro no enderezo «%s» — o transporte unix require que se estabeleza "
"exactamente unha das claves «path» ou «abstract»"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr "Erro no enderezo «%s» — falta o atributo do equipo ou está mal formado"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "Erro no enderezo «%s» — falta o atributo do porto ou está mal formado"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Erro no enderezo «%s» — falta o atributo do ficheiro de uso de unha vez ou "
"está mal formado"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Produciuse un erro ao autoiniciar: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Produciuse un erro ao abrir o ficheiro de uso de unha vez «%s»: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Produciuse un erro ao ler o ficheiro de uso de unha vez «%s»: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"Produciuse un erro ao ler o ficheiro de uso de unha vez «%s»:, esperábanse "
"16 bytes, obtivéronse %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr ""
"Produciuse un erro ao gravar os contidos do ficheiro de uso de unha vez «%s» "
"ao fluxo:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "O enderezo fornecido está baleiro"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Non é posíbel iniciar («spawn») unha bus de mensaxe sen setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr ""
+"Non é posíbel iniciar («spawn») unha bus de mensaxe cando AT_SECURE está "
+"estabelecido"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr ""
"Non é posíbel iniciar («spawn») unha mensaxe ao bus sen un ID de máquina: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Non é posíbel autoiniciar D-Bus sen un $DISPLAY X11"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Produciuse un erro ao iniciar («spawn») a orde «%s»: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Non é posíbel determinar o enderezo do bus de sesión (non está implementado "
"para este SO)"
-#: gio/gdbusaddress.c:1397 gio/gdbusconnection.c:7261
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -541,7 +552,7 @@ msgstr ""
"Non é posíbel determinar o enderezo do bus desde a variábel de ambiente "
"DBUS_STARTER_BUS_TYPE - valor descoñecido «%s»"
-#: gio/gdbusaddress.c:1406 gio/gdbusconnection.c:7270
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -549,7 +560,7 @@ msgstr ""
"Non é posíbel determinar o enderezo do bus xa que a variábel de ambiente "
"DBUS_STARTER_BUS_TYPE non está estabelecida"
-#: gio/gdbusaddress.c:1416
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Tipo de bus %d descoñecido"
@@ -578,12 +589,12 @@ msgstr "Os IDs de usuario deben ser os mesmos para o par e o servidor"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Cancelando mediante GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Produciuse un erro ao obter a información do directorio «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -591,32 +602,32 @@ msgstr ""
"Os permisos no directorio «%s» están malformados. Esperábase o modo 0700 e "
"obtívose 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Produciuse un erro ao crear o directorio %s: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Operación non permitida"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Produciuse un erro ao abrir o anel de chaves «%s» para a súa lectura: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "A liña %d do anel de chaves en «%s» con contido «%s» está malformada"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -624,7 +635,7 @@ msgstr ""
"O primeiro token da liña %d no anel de chaves en «%s» co contido «%s» está "
"malformado"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -632,56 +643,56 @@ msgstr ""
"O segundo token da liña %d no anel de chaves en «%s» co contido «%s» estaÌ "
"malformado"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Non foi posíbel atopar a cookie co id %d no anel de chave en «%s»"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Produciuse un erro ao crear o ficheiro de bloqueo «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Produciuse un erro ao eliminar o ficheiro de bloqueo antigo «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Produciuse un erro ao pechar o ficheiro de bloqueo «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Produciuse un erro ao abrir o ficheiro de bloqueo «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Produciuse un erro ao abrir o anel de chaves «%s» para escribir: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Ademais, a liberación do bloqueo para «%s» tamén fallou: %s) "
-#: gio/gdbusconnection.c:603 gio/gdbusconnection.c:2417
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "A conexión está pechado"
-#: gio/gdbusconnection.c:1902
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "Tempo de espera máximo alcanzado"
-#: gio/gdbusconnection.c:2540
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"Atopáronse opcións non compatíbeis ao construír a conexión da parte cliente"
-#: gio/gdbusconnection.c:4189 gio/gdbusconnection.c:4536
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
@@ -689,106 +700,105 @@ msgstr ""
"Non existe a interface «org.freedesktop.DBus.Properties» no obxecto coa ruta "
"%s"
-#: gio/gdbusconnection.c:4331
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "Non existe a propiedade «%s»"
-#: gio/gdbusconnection.c:4343
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "Non é posíbel escribir a propiedade «%s»"
-#: gio/gdbusconnection.c:4354
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "Non é posíbel escribir a propiedade «%s»"
-#: gio/gdbusconnection.c:4374
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
"Produciuse un erro ao estabelecer a propiedade «%s»: Esperábase o tipo «%s» "
"pero obtívose «%s»"
-#: gio/gdbusconnection.c:4479 gio/gdbusconnection.c:4687
-#: gio/gdbusconnection.c:6689
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "Non existe a interface «%s»"
-#: gio/gdbusconnection.c:4905 gio/gdbusconnection.c:7201
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Non existe a interface «%s» no obxecto coa ruta %s"
-#: gio/gdbusconnection.c:5003
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "Non existe a clave «%s»"
-#: gio/gdbusconnection.c:5034
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "O tipo da mensaxe, «%s», non coincide co tipo «%s» esperado"
-#: gio/gdbusconnection.c:5237
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Xa hai un obxecto exportado para a interface %s en %s"
-#: gio/gdbusconnection.c:5463
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Non é posíbel obter a propiedade %s.%s"
-#: gio/gdbusconnection.c:5519
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Non é posíbel estabelecer a propiedade %s.%s"
-#: gio/gdbusconnection.c:5698
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "O método «%s» devolveu un tipo «%s» máis esperábase «%s»"
-#: gio/gdbusconnection.c:6800
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "O método «%s» na interface «%s» coa sinatura «%s» non existe"
-#: gio/gdbusconnection.c:6921
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Xa se exportou un subárbore para %s"
-#: gio/gdbusconnection.c:7209
+#: gio/gdbusconnection.c:7266
#, c-format
-#| msgid "Key file does not have group “%sâ€"
msgid "Object does not exist at path “%sâ€"
msgstr "O obxecto non existe na ruta «%s»"
-#: gio/gdbusmessage.c:1266
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "o tipo é INVALID"
-#: gio/gdbusmessage.c:1277
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "Mensaxe METHOD_CALL: falta o campo da cabeceira PATH ou MEMBER"
-#: gio/gdbusmessage.c:1288
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "Mensaxe METHOD_RETURN: falta o campo da cabeceira REPLY_SERIAL"
-#: gio/gdbusmessage.c:1300
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "Mensaxe ERROR: falta o campo da cabeceira REPLY_SERIAL ou ERROR_NAME"
-#: gio/gdbusmessage.c:1313
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "Mensaxe SIGNAL: falta o campo da cabeceira PATH, INTERFACE ou MEMBER"
-#: gio/gdbusmessage.c:1321
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -796,7 +806,7 @@ msgstr ""
"Mensaxe SIGNAL: o campo da cabeceira PATH está usando un valor reservado /"
"org/freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1329
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -804,19 +814,19 @@ msgstr ""
"Mensaxe SIGNAL: O campo da cabeceira INTERFACE está usando un valor "
"reservado org.freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1377 gio/gdbusmessage.c:1437
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "Quíxose ler %lu byte pero obtívose un %lu"
msgstr[1] "Quixéronse ler %lu bytes pero obtívose un %lu"
-#: gio/gdbusmessage.c:1391
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "Esperábase un byte NUL despois da cadea «%s» pero atopouse o byte %d"
-#: gio/gdbusmessage.c:1410
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -826,21 +836,21 @@ msgstr ""
"byte desvío %d (a lonxitude da cadea é %d). A cadea UTF-8 correcta até ese "
"punto foi «%s»"
-#: gio/gdbusmessage.c:1474 gio/gdbusmessage.c:1722 gio/gdbusmessage.c:1911
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Valor aniñado demasiado profundo"
-#: gio/gdbusmessage.c:1620
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "O valor analizado «%s» non é unha ruta de obxecto D-Bus correcta"
-#: gio/gdbusmessage.c:1642
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "O valor analizado «%s» non é unha sinatura D-Bus correcta"
-#: gio/gdbusmessage.c:1689
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -853,7 +863,7 @@ msgstr[1] ""
"Atopouse unha matriz cunha lonxitude de %u bytes. A lonxitude máxima é 2<<26 "
"bytes (64 MiB)."
-#: gio/gdbusmessage.c:1709
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -862,13 +872,17 @@ msgstr ""
"Atopouse unha matriz de tipo «a%c», agardábase ter unha de lonxitude de "
"varios %u bytes, aínda que se atopou unha de %u bytes"
-#: gio/gdbusmessage.c:1895
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
+msgid "Empty structures (tuples) are not allowed in D-Bus"
+msgstr "Non se permiten as estruturas baleiras (tuplas) en D-Bus"
+
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr ""
"O valor «%s» analizado para a variante non é unha sinatura de D-Bus correcta"
-#: gio/gdbusmessage.c:1936
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
@@ -876,7 +890,7 @@ msgstr ""
"Produciuse un erro ao deserializar o GVariant co tipo cadea «%s» desde o "
"formato ligado D-Bus"
-#: gio/gdbusmessage.c:2121
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -885,30 +899,30 @@ msgstr ""
"Valor de «endianness» non válido. Esperábase 0x6c («|») ou 0x42 («B») pero "
"atopouse 0x%02x"
-#: gio/gdbusmessage.c:2134
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr ""
"A versión maior do protocolo non é válida. Esperábase 1 pero atopouse a %d"
-#: gio/gdbusmessage.c:2188 gio/gdbusmessage.c:2784
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Atopouse a cabeceira da sinatura pero non é do tipo sinatura"
-#: gio/gdbusmessage.c:2200
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"Atopouse a cabeceira de sinatura coa sinatura «%s» máis o corpo da mensaxe "
"está baleiro"
-#: gio/gdbusmessage.c:2215
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr ""
"O valor analizado «%s» non é unha sinatura D-Bus correcta (para o corpo)"
-#: gio/gdbusmessage.c:2247
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -919,11 +933,11 @@ msgstr[1] ""
"Non hai unha cabeceira da sinatura na mensaxe pero o corpo da mensaxe ten %u "
"bytes"
-#: gio/gdbusmessage.c:2257
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Non foi posíbel deserializar a mensaxe: "
-#: gio/gdbusmessage.c:2601
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
@@ -931,7 +945,7 @@ msgstr ""
"Produciuse un erro ao serializar o GVariant co tipo cadea «%s» desde o "
"formato ligado D-Bus"
-#: gio/gdbusmessage.c:2738
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
@@ -939,18 +953,18 @@ msgstr ""
"O número de descritores de ficheiro no mensaxe (%d) difire do campo "
"cabeceira (%d)"
-#: gio/gdbusmessage.c:2746
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Non foi posíbel serializar a mensaxe: "
-#: gio/gdbusmessage.c:2799
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr ""
"O corpo da mensaxe ten a sinatura «%s» máis non está presente a cabeceira de "
"sinatura"
-#: gio/gdbusmessage.c:2809
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -959,54 +973,54 @@ msgstr ""
"O corpo da mensaxe ten a sinatura de tipo «%s» pero a sinatura no campo da "
"cabeceira é «%s»"
-#: gio/gdbusmessage.c:2825
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr ""
"O corpo da mensaxe está baleiro máis a sinatura do campo da cabeceira é "
"«(%s)»"
-#: gio/gdbusmessage.c:3380
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Produciuse un erro ao devolver co corpo de tipo «%s»"
-#: gio/gdbusmessage.c:3388
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Produciuse un erro ao devolver co corpo baleiro"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Prema calquera carácter para pechar esta xanela)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "O DBus de sesión non está executándose e o autoiniciado fallou"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Non é posíbel obter o perfil de hardware: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Non foi posíbel cargar %s ou %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Produciuse un erro ao chamar a StartServiceByName para %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Resposta %d non esperada desde o método StartServiceByName(«%s»)"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1063,66 +1077,66 @@ msgstr ""
"\n"
"Use '%s ORDE --help' para obter axuda sobre cada orde.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Erro: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Produciuse un erro ao analizar o XML de introspección: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Erro: %s non é un nome válido\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Erro: %s non é unha ruta a un obxecto correcta\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Conectar ao bus do sistema"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Conectar ao bus de sesión"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Conectar a un enderezo D-Bus fornecido"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Opcións da conexión do extremo:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Opción para especificar a conexión do extremo"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Non se especificou o punto final da conexión"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Especificáronse varios puntos finais da conexión"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr "Aviso: segundo os datos de introspección a interface «%s» non existe\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1131,160 +1145,164 @@ msgstr ""
"Aviso: segundo os datos de introspección o método «%s» non existe na "
"interface «%s»\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Destino opcional para o sinal (nome único)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Ruta do obxecto sobre o que emitir o sinal"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Nomes da interface e sinal"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Emitir un sinal."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Produciuse un erro ao conectar: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Erro: %s non é un nome de bus único correcto.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Erro: non se especificou unha ruta de obxecto\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Erro: non se especificou o nome do sinal\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Erro: o nome do sinal «%s» non é válido\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Erro: %s non é un nome de interface correcto\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Erro: %s non é un nome de membro correcto\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Produciuse un erro ao analizar a opción %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Produciuse un erro ao limpar a conexión: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Nome do destino onde invocar o método"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Ruta ao obxecto onde invocar o método"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Método e nome da interface"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Tempo de expiración en segundos"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Permitir autorización interactiva"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Invocar un método nun obxecto remoto."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Erro: non se especificou un destino\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Erro: %s non é un nome de bus válido\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Erro: non se especificou o nome do método\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Erro: o nome do método «%s» non é válido\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Produciuse un erro ao analizar o parámetro %d do tipo «%s»: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Produciuse un erro ao engadir o manexador %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Nome de destino a introspeccionar"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Ruta do obxecto a introspeccionar"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Imprimir XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Introspeccionar fillo"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Só mostrar propiedades"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Introspecciona un obxecto remoto."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Nome de destino a monitorizar"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Ruta do obxecto a monitorizar"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Monitoriza un obxecto remoto."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Erro: non é posíbel monitorizar unha conexión non-message-bus\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Servizo a activar antes de agardar polo outro (nome coñecido)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1292,66 +1310,71 @@ msgstr ""
"Tempo de espera máximo a agardar antes de saír con un erro (segundos); 0 "
"para non ter tempo de espera (valor por omisión)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[OPCIÓN…] NOME-BUS"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Agardar que apareza un nome de bus."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Erro: Debe especificar un servizo a activar.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "Erro: Debe especificar un servizo a agardar.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Erro: Demasiados argumentos.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Erro: %s non é un nome de bus válido e coñecido.\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4932
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Non está autorizado para cambiar as preferencias de depuración"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Sen nome"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "O ficheiro de escritorio non especificou o campo Exec"
-#: gio/gdesktopappinfo.c:2801
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Non é posíbel atopar o terminal requirido pola aplicación"
-#: gio/gdesktopappinfo.c:3452
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr ""
"Non é posíbel crear o directorio de configuración da aplicación de usuario "
"%s: %s"
-#: gio/gdesktopappinfo.c:3456
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr ""
"Non é posíbel crear o directorio de configuración MIME %s do usuario: %s"
-#: gio/gdesktopappinfo.c:3698 gio/gdesktopappinfo.c:3722
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "A información da aplicación carece dun identificador"
-#: gio/gdesktopappinfo.c:3958
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Non é posíbel crear o ficheiro de escritorio %s do usuario"
-#: gio/gdesktopappinfo.c:4094
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Definición personalizada para %s"
@@ -1379,7 +1402,7 @@ msgstr "a unidade non implementa o inicio"
msgid "drive doesn’t implement stop"
msgstr "a unidade non implementa a detención"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "A infraestrutura de TLS non implementa a obtención da ligazón TLS"
@@ -1423,73 +1446,73 @@ msgstr "Esperábase un GEmblem para o GEmblemedIcon"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "O punto de montaxe contido non existe"
-#: gio/gfile.c:2608 gio/glocalfile.c:2477
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Non é posíbel copiar sobre o directorio"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Non é posíbel copiar un directorio sobre o directorio"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "O ficheiro de destino xa existe"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Non é posíbel copiar o directorio recursivamente"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Non se admite a unión"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Produciuse un erro ao empalmar o ficheiro: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Copiar (reflink/clonar) entre montaxes non é compatíbel"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Copiar (reflink/clone) non é compatíbel ou non é válido"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Copiar (reflink/clone) non é compatíbel ou non funciona"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Non é posíbel copiar o ficheiro especial"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "O valor da ligazón simbólica dada non é válido"
-#: gio/gfile.c:4045 glib/gfileutils.c:2354
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "As ligazóns simbólicas non se admiten"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "O Lixo non é compatíbel"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Os nomes de ficheiro non poden conter «%c»"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "o volume non implementa o montado"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Non hai ningunha aplicación rexistrado para manexar este ficheiro"
@@ -1534,7 +1557,7 @@ msgstr "Non se permite truncar no fluxo de entrada"
msgid "Truncate not supported on stream"
msgstr "Non se permite truncar no fluxo"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "O nome do host non é válido"
@@ -1621,7 +1644,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Non foi posíbel analizar «%s» como unha máscara dun enderezo IP"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Non hai espazo abondo para o enderezo do socket"
@@ -2466,15 +2489,15 @@ msgstr "Produciuse un erro ao comprimir o ficheiro: %s"
msgid "text may not appear inside <%s>"
msgstr "o texto non debe aparecer dentro de <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Mostrar a versión do programa e saír"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Nome do ficheiro de saída"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2482,48 +2505,48 @@ msgstr ""
"Os directorios dos que ler ficheiros referenciados en FILE (por omisión: o "
"directorio actual)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "DIRECTORIO"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
"Xerar saída no formato seleccionado pola extensión do nome do ficheiro "
"obxectivo"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Xerar unha cabeceira de orixe"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr ""
"Xera o código fonte usado para ligar o ficheiro do recurso no seu código"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Xerar lista de dependencias"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Nome do ficheiro de dependencia a xerar"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Inclúe obxectivos phony no ficheiro de dependencias xerado"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Non crear e rexistrar o recurso automaticamente"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Non exporte as funcións; decláreas en G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2531,11 +2554,16 @@ msgstr ""
"Non incrustar os datos do recurso no ficheiro C; asúmese que é ligado "
"externamente no lugar"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "O nome de identificador C usado para xerar o código fonte"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr ""
+"O compilador de C obxectivo (predetermiando: a variábel de ambiente CC)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2546,7 +2574,7 @@ msgstr ""
"xml,\n"
"e o ficheiro do recurso ten a extensión .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Debería fornecer exactamente un nome de ficheiro\n"
@@ -3066,8 +3094,8 @@ msgstr "Produciuse un erro ao renomear o ficheiro %s: %s"
msgid "Can’t rename file, filename already exists"
msgstr "Non é posíbel renomear o ficheiro, o ficheiro xa existe"
-#: gio/glocalfile.c:1184 gio/glocalfile.c:2371 gio/glocalfile.c:2399
-#: gio/glocalfile.c:2538 gio/glocalfileoutputstream.c:656
+#: gio/glocalfile.c:1184 gio/glocalfile.c:2380 gio/glocalfile.c:2408
+#: gio/glocalfile.c:2547 gio/glocalfileoutputstream.c:656
msgid "Invalid filename"
msgstr "O nome do ficheiro non é válido"
@@ -3081,94 +3109,94 @@ msgstr "Produciuse un erro ao abrir o ficheiro %s: %s"
msgid "Error removing file %s: %s"
msgstr "Produciuse un erro ao eliminar o ficheiro %s: %s"
-#: gio/glocalfile.c:1982 gio/glocalfile.c:1993
+#: gio/glocalfile.c:1982 gio/glocalfile.c:1993 gio/glocalfile.c:2020
#, c-format
msgid "Error trashing file %s: %s"
msgstr "Produciuse un erro ao mover ao lixo o ficheiro %s: %s"
-#: gio/glocalfile.c:2031
+#: gio/glocalfile.c:2040
#, c-format
msgid "Unable to create trash directory %s: %s"
msgstr "Non é posíbel crear o directorio do lixo %s: %s"
-#: gio/glocalfile.c:2052
+#: gio/glocalfile.c:2061
#, c-format
msgid "Unable to find toplevel directory to trash %s"
msgstr ""
"Non é posíbel atopar o directorio de nivel superior para mover ao lixo %s"
-#: gio/glocalfile.c:2060
+#: gio/glocalfile.c:2069
#, c-format
msgid "Trashing on system internal mounts is not supported"
msgstr "Enviar ao lixo en montaxes internos do sistema non se admite"
-#: gio/glocalfile.c:2146 gio/glocalfile.c:2174
+#: gio/glocalfile.c:2155 gio/glocalfile.c:2183
#, c-format
msgid "Unable to find or create trash directory %s to trash %s"
msgstr "Non é posíbel atopar ou crear o directorio do lixo para %s ao lixo %s"
-#: gio/glocalfile.c:2220
+#: gio/glocalfile.c:2229
#, c-format
msgid "Unable to create trashing info file for %s: %s"
msgstr "Non é posíbel crear a información de lixo para o ficheiro %s: %s"
-#: gio/glocalfile.c:2282
+#: gio/glocalfile.c:2291
#, c-format
msgid "Unable to trash file %s across filesystem boundaries"
msgstr ""
"Non é posíbel mover ao lixo o ficheiro %s a través dos límites do sistema de "
"ficheiros"
-#: gio/glocalfile.c:2286 gio/glocalfile.c:2342
+#: gio/glocalfile.c:2295 gio/glocalfile.c:2351
#, c-format
msgid "Unable to trash file %s: %s"
msgstr "Non é posíbel mover ao lixo o ficheiro %s: %s"
-#: gio/glocalfile.c:2348
+#: gio/glocalfile.c:2357
#, c-format
msgid "Unable to trash file %s"
msgstr "Non é posíbel mover ao lixo o ficheiro %s"
-#: gio/glocalfile.c:2374
+#: gio/glocalfile.c:2383
#, c-format
msgid "Error creating directory %s: %s"
msgstr "Produciuse un erro ao crear o directorio %s: %s"
-#: gio/glocalfile.c:2403
+#: gio/glocalfile.c:2412
#, c-format
msgid "Filesystem does not support symbolic links"
msgstr "O sistema de ficheiros non é compatíbel coas ligazóns simbólicas"
-#: gio/glocalfile.c:2406
+#: gio/glocalfile.c:2415
#, c-format
msgid "Error making symbolic link %s: %s"
msgstr "Produciuse un erro ao crear a ligazón simbólica %s: %s"
-#: gio/glocalfile.c:2449 gio/glocalfile.c:2484 gio/glocalfile.c:2541
+#: gio/glocalfile.c:2458 gio/glocalfile.c:2493 gio/glocalfile.c:2550
#, c-format
msgid "Error moving file %s: %s"
msgstr "Produciuse un erro ao mover o ficheiro %s: %s"
-#: gio/glocalfile.c:2472
+#: gio/glocalfile.c:2481
msgid "Can’t move directory over directory"
msgstr "Non é posíbel mover o directorio sobre un directorio"
-#: gio/glocalfile.c:2498 gio/glocalfileoutputstream.c:1108
+#: gio/glocalfile.c:2507 gio/glocalfileoutputstream.c:1108
#: gio/glocalfileoutputstream.c:1122 gio/glocalfileoutputstream.c:1137
#: gio/glocalfileoutputstream.c:1154 gio/glocalfileoutputstream.c:1168
msgid "Backup file creation failed"
msgstr "Fallou a creación do ficheiro de seguranza"
-#: gio/glocalfile.c:2517
+#: gio/glocalfile.c:2526
#, c-format
msgid "Error removing target file: %s"
msgstr "Produciuse un erro ao retirar o ficheiro obxectivo: %s"
-#: gio/glocalfile.c:2531
+#: gio/glocalfile.c:2540
msgid "Move between mounts not supported"
msgstr "Non se permite mover entre puntos de montaxe"
-#: gio/glocalfile.c:2705
+#: gio/glocalfile.c:2714
#, c-format
msgid "Could not determine the disk usage of %s: %s"
msgstr "Non foi posíbel determinar o uso de disco de %s: %s"
@@ -3355,13 +3383,13 @@ msgstr "Produciuse un erro ao crear a copia de seguranza: %s"
msgid "Error renaming temporary file: %s"
msgstr "Produciuse un erro ao renomear o ficheiro temporal: %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "Produciuse un erro ao truncar o ficheiro: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Produciuse un erro ao abrir o ficheiro %s: %s"
@@ -3383,7 +3411,7 @@ msgstr "O ficheiro foi modificado externamente"
msgid "Error removing old file: %s"
msgstr "Produciuse un erro ao retirar o ficheiro antigo: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Proporcionouse un GSeekType non válido"
@@ -3395,15 +3423,15 @@ msgstr "Petición de busca non válida"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Non é posíbel truncar GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "O fluxo de saída da memoria non é redimensionábel"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Produciuse un erro ao redimensionar o fluxo de saída da memoria"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3411,11 +3439,11 @@ msgstr ""
"A cantidade de memoria requirida para procesar a escrita é máis grande que o "
"espazo de enderezos dispoñíbel"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Solicitouse unha busca antes do inicio do fluxo"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Solicitouse unha busca máis aló do final do fluxo"
@@ -3495,12 +3523,12 @@ msgstr "Non foi posíbel crear un monitor de rede: "
msgid "Could not get network status: "
msgstr "Non foi posíbel obter o estado da rede: "
-#: gio/gnetworkmonitornm.c:348
+#: gio/gnetworkmonitornm.c:311
#, c-format
msgid "NetworkManager not running"
msgstr "NetworkManager non está executándose"
-#: gio/gnetworkmonitornm.c:359
+#: gio/gnetworkmonitornm.c:322
#, c-format
msgid "NetworkManager version too old"
msgstr "A versión NetworkManager é demasiado antiga"
@@ -3518,18 +3546,22 @@ msgstr "A suma de vectores pasados a %s é demasiado longa"
msgid "Source stream is already closed"
msgstr "O fluxo de orixe xa está pechado"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Produciuse un erro ao resolver «%s»: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s non implementado"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Dominio non válido"
@@ -3644,7 +3676,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " SECCIÓN Un nome de sección elf (opcional)\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " ORDE A orde que explicar (opcional)\n"
@@ -3677,7 +3709,7 @@ msgstr "CAMIÑO"
msgid " PATH A resource path\n"
msgstr " RUTA Unha ruta dun recurso\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Non existe o esquema «%s»\n"
@@ -3708,35 +3740,35 @@ msgstr "A ruta debe rematar cunha barra (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "A ruta non debe conter dúas barras adxacentes (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "O valor fornecido está fora do intervalo válido\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "Esta chave non é escribíbel\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Lista dos esquemas instalados (non reposicionábeis)"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Lista dos esquemas instalados reposicionábeis"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Lista das claves de ESQUEMA"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "ESQUEMA[:RUTA]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Lista dos fillos do SCHEMA"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3744,49 +3776,49 @@ msgstr ""
"Lista as clave e valores, recursivamente\n"
"Se non se fornece un ESQUEMA, lista todas as claves\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[ESQUEMA[:RUTA]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Obtén o valor de CLAVE"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "ESQUEMA[:RUTA] CLAVE"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Consulta o intervalo de valores válidos de CLAVE"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Consulta a descrición para a CLAVE"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Estabelece o valor de CLAVE a VALOR"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "ESQUEMA[:RUTA] CLAVE VALOR"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Estabelece a CLAVE ao seu valor predeterminado"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr ""
"Restabelecer todas as claves nun ESQUEMA aos seus valores predeterminados"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Comproba se a CLAVE é escribíbel"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3796,11 +3828,11 @@ msgstr ""
"Se non se especifica a CLAVE, monitoriza todos os cambios en ESQUEMA.\n"
"Use ^C para deter a monitorización.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "ESQUEMA[:RUTA] [CLAVE]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3849,7 +3881,7 @@ msgstr ""
"Use 'gsettings help ORDE' para obter máis axuda.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3864,11 +3896,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " CARTAFOL_ESQUEMA: un directorio para buscar esquemas adicionais\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3876,215 +3908,215 @@ msgstr ""
" SCHEMA O nome do esquema\n"
" KEY A ruta, para os esquemas reposicionábeis\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " KEY A clave (opcional) no esquema\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " KEY A clave nun esquema\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " VALUE O valor a estabelecer\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Non foi posíbel cargar os esquemas desde %s a %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Non hai esquemas instalados\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Forneceuse un nome de esquema baleiro\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Non existe a clave «%s»\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "O socket non é válido, non se inicializou"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "O socket non é válido, a inicialización fallou debido a: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "O fluxo de orixe xa está pechado"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Tempo de espera do Socket de E/S superado"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "creando o GSocket a partir de fd: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Non é posíbel crear o socket: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Especificouse unha familia descoñecida"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Especificouse un protocolo descoñecido"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr ""
"Non é posíbel usar as operacións de datagramas nun socket que non é de "
"datagramas."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Non é posíbel usar operacións de datagramas nun socket con un tempo de "
"espera máximo estabelecido."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "non foi posíbel obter un enderezo local: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "non foi posíbel obter un enderezo remoto: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "non foi posíbel escoitar: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Produciuse un erro ao ligar co enderezo %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Produciuse un erro ao unirse ao grupo multicast: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Produciuse un erro ao deixar o grupo multicast: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Non se admite o multicast específico da fonte"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Familia de socket non admitida"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "o source-specific non é un enderezo IPv4"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Nome da interface demasiado larga"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Interface non atopada: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "Non se admite o multicast IPv4 específico da fonte"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "Non se admite o multicast IPv6 específico da fonte"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Produciuse un erro ao aceptar a conexión: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Conexión en marcha"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Non é posíbel obter o erro pendente: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Produciuse un erro ao recibir datos: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Produciuse un erro ao enviar datos: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Non é posíbel desconectar o socket: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Produciuse un erro ao pechar o socket: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Agardando pola situación do socket: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Non foi posíbel enviar a mensaxe: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Os vectores de mensaxes son moi largos"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Produciuse un erro ao enviar a mensaxe: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "O GSocketControlMessage non está permitido en Windows"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Produciuse un erro ao recibir a mensaxe: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Non é posíbel ler as credenciais do socket: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr ""
"g_socket_get_credentials non está implementado para este sistema operativo"
@@ -4103,12 +4135,12 @@ msgstr "Non foi posíbel conectar a %s: "
msgid "Could not connect: "
msgstr "Non foi posíbel conectar: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr ""
"Non se permite a conexión ao proxy mediante unha conexión que non sexa TCP."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Non é posíbel usar o proxy co protocolo «%s»."
@@ -4211,6 +4243,18 @@ msgstr "O proxy SOCKSv5 non é compatíbel co tipo de enderezo fornecido."
msgid "Unknown SOCKSv5 proxy error."
msgstr "Erro no proxy SOCKSv5 descoñecido."
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
+#, c-format
+msgid "Failed to create pipe for communicating with child process (%s)"
+msgstr ""
+"Produciuse un erro ao crear a canalización para comunicarse co proceso fillo "
+"(%s)"
+
+#: gio/gtestdbus.c:619
+#, c-format
+msgid "Pipes are not supported in this platform"
+msgstr "As tuberías non están soportadas nesta plataforma"
+
#: gio/gthemedicon.c:595
#, c-format
msgid "Can’t handle version %d of GThemedIcon encoding"
@@ -4225,44 +4269,68 @@ msgstr "Non se atopou ningún enderezo válido"
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "Produciuse un erro ao resolver inversamente «%s»: %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr ""
+"Produciuse un erro ao analizar o rexistro DNS %s: paquete DNS mal formado"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "Non hai un rexistro de DNS do tipo solicitado para «%s»"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "Non é posíbel resolver temporalmente «%s»"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "Produciuse un erro ao resolver «%s»"
-#: gio/gtlscertificate.c:419
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Paquete DNS mal formado"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+#| msgid "Failed to read from file “%sâ€: %s"
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "Produciuse un erro ao analizar a resposta DNS para «%s»: "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Non se atopou ningún certificado PEM codificado"
-#: gio/gtlscertificate.c:429
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Non foi posíbel descifrar a chave privada codificada con PEM"
-#: gio/gtlscertificate.c:440
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Non foi posíbel analizar a chave privada PEM codificada"
-#: gio/gtlscertificate.c:467
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Non se atopou ningún certificado PEM codificado"
-#: gio/gtlscertificate.c:476
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Non foi posíbel analizar o certificado PEM codificado"
-#: gio/gtlscertificate.c:832
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "O backend TLS actual non é admite PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "Este GTlsBackend non admite a creación de certificados PKCS #11"
@@ -4288,56 +4356,64 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "O contrasinal introducido é incorrecto."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "Non se permite enviar o FD"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "Esperando 1 mensaxe de control, obtívose %d"
msgstr[1] "Esperando 1 mensaxe de control, obtivéronse %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Tipo de datos subsidiarios inesperados"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "Esperando un descritor de ficheiro (fd), pero obtívose %d\n"
msgstr[1] "Esperando un descritor de ficheiro (fd), pero obtivéronse %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Recibiuse un descritor de ficheiro (fd) incorrecto"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "Non se permite a recepción de FD"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Produciuse un erro ao enviar as credenciais: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr ""
"Produciuse un erro ao comprobar se SO_PASSCRED está activado para o socket: "
"%s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Produciuse un erro ao activar SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Esperábase ler un só byte para recibir as credenciais pero léronse creo bytes"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Non se esperaba unha mensaxe de control, pero obtívose %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Produciuse un erro ao desactivar SO_PASSCRED: %s"
@@ -4353,7 +4429,7 @@ msgstr "Produciuse un erro ao ler do descritor do ficheiro: %s"
msgid "Error closing file descriptor: %s"
msgstr "Produciuse un erro ao pechar o descritor do ficheiro: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Raíz do sistema de ficheiros"
@@ -4364,7 +4440,7 @@ msgstr "Raíz do sistema de ficheiros"
msgid "Error writing to file descriptor: %s"
msgstr "Produciuse un erro ao escribir no descritor do ficheiro: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr ""
"Neste sistema non se permiten enderezos de socket de dominios UNIX abstractos"
@@ -4517,8 +4593,8 @@ msgstr "Produciuse un erro ao expandir a liña executábel «%s» co URI «%s»"
msgid "Unrepresentable character in conversion input"
msgstr "Carácter non representábel na entrada da conversión"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Hai unha secuencia de carácter parcial ao final da entrada"
@@ -4985,83 +5061,83 @@ msgstr "PM"
msgid "Error opening directory “%sâ€: %s"
msgstr "Produciuse un erro ao abrir o directorio «%s»: %s"
-#: glib/gfileutils.c:737 glib/gfileutils.c:829
+#: glib/gfileutils.c:733 glib/gfileutils.c:825
#, c-format
msgid "Could not allocate %lu byte to read file “%sâ€"
msgid_plural "Could not allocate %lu bytes to read file “%sâ€"
msgstr[0] "Non foi posíbel asignar %lu byte para ler o ficheiro «%s»"
msgstr[1] "Non foi posíbel asignar %lu bytes para ler o ficheiro «%s»"
-#: glib/gfileutils.c:754
+#: glib/gfileutils.c:750
#, c-format
msgid "Error reading file “%sâ€: %s"
msgstr "Produciuse un erro ao ler o ficheiro «%s»: %s"
-#: glib/gfileutils.c:790
+#: glib/gfileutils.c:786
#, c-format
msgid "File “%s†is too large"
msgstr "O ficheiro «%s» é demasiado grande"
-#: glib/gfileutils.c:854
+#: glib/gfileutils.c:850
#, c-format
msgid "Failed to read from file “%sâ€: %s"
msgstr "Produciuse un erro ao ler desde o ficheiro «%s»: %s"
-#: glib/gfileutils.c:904 glib/gfileutils.c:979 glib/gfileutils.c:1468
+#: glib/gfileutils.c:900 glib/gfileutils.c:975 glib/gfileutils.c:1447
#, c-format
msgid "Failed to open file “%sâ€: %s"
msgstr "Produciuse un erro ao abrir o ficheiro «%s»: %s"
-#: glib/gfileutils.c:917
+#: glib/gfileutils.c:913
#, c-format
msgid "Failed to get attributes of file “%sâ€: fstat() failed: %s"
msgstr ""
"Produciuse un erro ao obter os atributos do ficheiro «%s»: fstat() fallou: %s"
-#: glib/gfileutils.c:948
+#: glib/gfileutils.c:944
#, c-format
msgid "Failed to open file “%sâ€: fdopen() failed: %s"
msgstr "Produciuse un erro ao abrir o ficheiro «%s»: fdopen() fallou: %s"
-#: glib/gfileutils.c:1049
+#: glib/gfileutils.c:1045
#, c-format
msgid "Failed to rename file “%s†to “%sâ€: g_rename() failed: %s"
msgstr ""
"Produciuse un erro ao renomear o ficheiro «%s» como «%s»: g_rename() fallou: "
"%s"
-#: glib/gfileutils.c:1175
+#: glib/gfileutils.c:1154
#, c-format
msgid "Failed to write file “%sâ€: write() failed: %s"
msgstr "Produciuse un erro ao escribir o ficheiro «%s»: write() fallou: %s"
-#: glib/gfileutils.c:1196
+#: glib/gfileutils.c:1175
#, c-format
msgid "Failed to write file “%sâ€: fsync() failed: %s"
msgstr "Produciuse un erro ao escribir o ficheiro «%s»: fsync() fallou: %s"
-#: glib/gfileutils.c:1357 glib/gfileutils.c:1772
+#: glib/gfileutils.c:1336 glib/gfileutils.c:1751
#, c-format
msgid "Failed to create file “%sâ€: %s"
msgstr "Produciuse un erro ao crear o ficheiro «%s»: %s"
-#: glib/gfileutils.c:1402
+#: glib/gfileutils.c:1381
#, c-format
msgid "Existing file “%s†could not be removed: g_unlink() failed: %s"
msgstr ""
"Non foi posíbel retirar o ficheiro existente «%s»: g_unlink() fallou: %s"
-#: glib/gfileutils.c:1737
+#: glib/gfileutils.c:1716
#, c-format
msgid "Template “%s†invalid, should not contain a “%sâ€"
msgstr "O modelo «%s» non é válido, non debería conter «%s»"
-#: glib/gfileutils.c:1750
+#: glib/gfileutils.c:1729
#, c-format
msgid "Template “%s†doesn’t contain XXXXXX"
msgstr "O modelo «%s» non contén XXXXXX"
-#: glib/gfileutils.c:2310 glib/gfileutils.c:2339
+#: glib/gfileutils.c:2289 glib/gfileutils.c:2318
#, c-format
msgid "Failed to read the symbolic link “%sâ€: %s"
msgstr "Produciuse un erro ao ler a ligazón simbólica «%s»: %s"
@@ -5088,16 +5164,16 @@ msgstr "O canal termina nun carácter parcial"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Non é posíbel facer unha lectura en bruto en g_io_channel_read_to_end"
-#: glib/gkeyfile.c:790
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr ""
"Non é posíbel atopar un ficheiro de clave correcto nos directorios de busca"
-#: glib/gkeyfile.c:827
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Non é un ficheiro normal"
-#: glib/gkeyfile.c:1282
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5105,43 +5181,43 @@ msgstr ""
"O ficheiro clave contén a liña «%s» que non é un par valor-clave, grupo ou "
"comentario"
-#: glib/gkeyfile.c:1339
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Nome de grupo non válido: %s"
-#: glib/gkeyfile.c:1361
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "O ficheiro clave non comeza cun grupo"
-#: glib/gkeyfile.c:1387
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Nome de clave non válido: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Nome de chave non válido: %.*s"
-#: glib/gkeyfile.c:1414
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "O ficheiro clave contén unha codificación non permitida «%s»"
-#: glib/gkeyfile.c:1663 glib/gkeyfile.c:1836 glib/gkeyfile.c:3289
-#: glib/gkeyfile.c:3353 glib/gkeyfile.c:3483 glib/gkeyfile.c:3615
-#: glib/gkeyfile.c:3761 glib/gkeyfile.c:3996 glib/gkeyfile.c:4063
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "O ficheiro clave non ten un grupo «%s»"
-#: glib/gkeyfile.c:1791
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "O ficheiro clave non ten a clave «%s» no grupo «%s»"
-#: glib/gkeyfile.c:1953 glib/gkeyfile.c:2069
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "O ficheiro clave contén a clave «%s» co valor «%s» que non é UTF-8"
-#: glib/gkeyfile.c:1973 glib/gkeyfile.c:2089 glib/gkeyfile.c:2531
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
@@ -5149,7 +5225,7 @@ msgstr ""
"O ficheiro clave contén a clave «%s» que ten un valor que non é posíbel "
"interpretar."
-#: glib/gkeyfile.c:2749 glib/gkeyfile.c:3118
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5158,36 +5234,36 @@ msgstr ""
"O ficheiro clave contén a clave «%s» no grupo «%s» que ten un valor que non "
"é posíbel interpretar."
-#: glib/gkeyfile.c:2827 glib/gkeyfile.c:2904
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "A clave «%s» do grupo «%s» ten o valor «%s», pero agardábase %s"
-#: glib/gkeyfile.c:4306
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "O ficheiro clave contén un carácter de escape ao final da liña"
-#: glib/gkeyfile.c:4328
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "O ficheiro clave contén a secuencia de escape non válida «%s»"
-#: glib/gkeyfile.c:4472
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "Non é posíbel interpretar o valor «%s» como un número."
-#: glib/gkeyfile.c:4486
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "O valor enteiro «%s» está fóra do intervalo"
-#: glib/gkeyfile.c:4519
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "Non é posíbel interpretar o valor «%s» como un número flotante."
-#: glib/gkeyfile.c:4558
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "Non é posíbel interpretar o valor «%s» como un booleano."
@@ -5488,7 +5564,7 @@ msgstr "Produciuse un erro ao analizar a opción %s"
msgid "Missing argument for %s"
msgstr "Argumento que falta para %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Opción %s descoñecida"
@@ -5870,155 +5946,168 @@ msgstr ""
"Produciuse un erro ao analizar o texto de substitución «%s» no carácter %lu: "
"%s"
-#: glib/gshell.c:94
+#: glib/gshell.c:96
msgid "Quoted text doesn’t begin with a quotation mark"
msgstr "O texto citado non comeza con comiñas"
-#: glib/gshell.c:184
+#: glib/gshell.c:186
msgid "Unmatched quotation mark in command line or other shell-quoted text"
msgstr ""
"Comiñas non pechadas na liña de ordes ou noutro texto citado nun intérprete "
"de ordes"
-#: glib/gshell.c:580
+#: glib/gshell.c:592
#, c-format
msgid "Text ended just after a “\\†character. (The text was “%sâ€)"
msgstr "O texto rematou despois dun carácter «\\». (O texto era «%s»)"
-#: glib/gshell.c:587
+#: glib/gshell.c:599
#, c-format
msgid "Text ended before matching quote was found for %c. (The text was “%sâ€)"
msgstr ""
"O texto rematou antes de atopar a comiña final para %c. (O texto era «%s»)"
-#: glib/gshell.c:599
+#: glib/gshell.c:611
msgid "Text was empty (or contained only whitespace)"
msgstr "O texto estaba baleiro (ou só contiña espazos en branco)"
-#: glib/gspawn.c:308
+#: glib/gspawn.c:310
#, c-format
msgid "Failed to read data from child process (%s)"
msgstr "Produciuse un erro ao ler datos desde un proceso fillo (%s)"
-#: glib/gspawn.c:458
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "Produciuse un erro ao ler os datos dun proceso fillo (%s)"
-#: glib/gspawn.c:543
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Erro inesperado en waitpid() (%s)"
-#: glib/gspawn.c:1152 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "O proceso fillo rematou co código %ld"
-#: glib/gspawn.c:1160
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "O proceso fillo rematou polo sinal %ld"
-#: glib/gspawn.c:1167
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "O proceso fillo detívose polo sinal %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "O proceso fillo rematou de forma anormal"
-#: glib/gspawn.c:1793 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Produciuse un erro ao ler desde a canalización filla (%s)"
-#: glib/gspawn.c:2095
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Produciuse un erro ao executar o proceso fillo «%s» (%s)"
-#: glib/gspawn.c:2212
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Produciuse un erro ao facer fork (%s)"
-#: glib/gspawn.c:2372 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Produciuse un erro ao cambiar ao directorio «%s» (%s)"
-#: glib/gspawn.c:2382
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Produciuse un erro ao executar o proceso fillo «%s» (%s)"
-#: glib/gspawn.c:2392
+#: glib/gspawn.c:2550
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
+msgid "Failed to open file to remap file descriptor (%s)"
msgstr ""
-"Produciuse un erro ao redireccionar a saída ou entrada do proceso fillo (%s)"
+"Produciuse un erro ao abrir o ficheiro para remapear o descritor de ficheiro "
+"(%s)"
-#: glib/gspawn.c:2401
+#: glib/gspawn.c:2558
+#, c-format
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr ""
+"Produciuse un erro ao duplicar o descritor de ficheiro para o proceso fillo "
+"(%s)"
+
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Produciuse un erro ao facer fork ao proceso fillo (%s)"
-#: glib/gspawn.c:2409
+#: glib/gspawn.c:2575
+#, c-format
+msgid "Failed to close file descriptor for child process (%s)"
+msgstr ""
+"Produciuse un erro ao pechar o descritor de ficheiro para o proceso fillo "
+"(%s)"
+
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Produciuse un erro descoñecido ao executar o proceso fillo «%s»"
-#: glib/gspawn.c:2433
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr ""
"Fallo de lectura de suficientes datos desde a canalización filla co PID (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Produciuse un erro ao ler datos desde un proceso fillo"
-#: glib/gspawn-win32.c:311
-#, c-format
-msgid "Failed to create pipe for communicating with child process (%s)"
-msgstr ""
-"Produciuse un erro ao crear a canalización para comunicarse co proceso fillo "
-"(%s)"
-
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Produciuse un erro ao executar o proceso fillo (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Produciuse un erro ao facer dup() no proceso fillo (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Nome de programa non válido: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Cadea non válida no vector de argumento en %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Cadea non válida no ambiente: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Directorio de traballo non válido: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Produciuse un erro ao executar o programa asistente (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -6026,21 +6115,21 @@ msgstr ""
"Erro inesperado en g_io_channel_win32_poll() ao ler datos desde un proceso "
"fillo"
-#: glib/gstrfuncs.c:3338 glib/gstrfuncs.c:3440
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "A cadea baleira non é un número"
-#: glib/gstrfuncs.c:3362
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "«%s» non é un número con signo"
-#: glib/gstrfuncs.c:3372 glib/gstrfuncs.c:3476
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "O número «%s» está fóra de rango [%s, %s]"
-#: glib/gstrfuncs.c:3466
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "«%s» non é un número sen signo"
@@ -6093,183 +6182,183 @@ msgstr "A URI «%s» non é unha URI absoluta"
msgid "URI ‘%s’ has no host component"
msgstr "A URI «%s» non ten o compoñente de equipo"
-#: glib/guri.c:1435
+#: glib/guri.c:1460
msgid "URI is not absolute, and no base URI was provided"
msgstr "A URI non é absoluta, e non se forneceu unha URI base"
-#: glib/guri.c:2213
+#: glib/guri.c:2238
msgid "Missing ‘=’ and parameter value"
msgstr "Falta «=» e o valor de parámetro"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Produciuse un erro ao reservar memoria"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Carácter fóra do intervalo para UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Secuencia non válida na entrada da conversión"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Carácter fóra de intervalo para UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2727
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2729
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2731
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2733
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2735
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2737
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2741
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2743
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2745
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2747
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2749
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2751
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2755
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2757
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2759
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2761
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2763
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2765
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2769
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2771
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2773
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2775
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2777
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2779
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2813 glib/gutils.c:2930
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u byte"
msgstr[1] "%u bytes"
-#: glib/gutils.c:2817
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6277,7 +6366,7 @@ msgstr[0] "%u bit"
msgstr[1] "%u bit"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2884
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6285,7 +6374,7 @@ msgstr[0] "%s byte"
msgstr[1] "%s bytes"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2889
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6297,32 +6386,32 @@ msgstr[1] "%s bit"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2943
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2948
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2953
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:2958
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:2963
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:2968
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
diff --git a/po/he.po b/po/he.po
index e61d23143..287012596 100644
--- a/po/he.po
+++ b/po/he.po
@@ -8,23 +8,31 @@
# Gil 'Dolfin' Osher <dolfin@rpg.org.il>, 2002.
# Gil Osher <dolfin@rpg.org.il>, 2004.
# Yaron Shahrabani <sh.yaron@gmail.com>, 2010.
-# Yosef Or Boczko <yoseforb@gmail.com>, 2014-2020.
+# Yosef Or Boczko <yoseforb@gmail.com>, 2014-2022.
#
msgid ""
msgstr ""
"Project-Id-Version: glib.HEAD.he\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2021-08-07 05:37+0000\n"
-"PO-Revision-Date: 2021-08-07 19:08+0300\n"
-"Last-Translator: Yaron Shahrabani <sh.yaron@gmail.com>\n"
-"Language-Team: Hebrew <yoseforb@gmail.com>\n"
+"POT-Creation-Date: 2022-03-07 09:24+0000\n"
+"PO-Revision-Date: 2022-03-07 20:46+0200\n"
+"Last-Translator: Yosef Or Boczko <yoseforb@gmail.com>\n"
+"Language-Team: Hebrew <GNOME Hebrew Translation Project>\n"
"Language: he\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : n==2 ? 1 : n>10 && n%10==0 ? "
-"2 : 3);\n"
-"X-Generator: Poedit 3.0\n"
+"2 : 3)\n"
+"X-Generator: Gtranslator 40.0\n"
+
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Setting default applications not supported yet"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr "Setting application as last used for type not supported yet"
#: gio/gapplication.c:500
msgid "GApplication options"
@@ -47,7 +55,7 @@ msgid "Replace the running instance"
msgstr "Replace the running instance"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Print help"
@@ -59,7 +67,7 @@ msgstr "[COMMAND]"
msgid "Print version"
msgstr "Print version"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Print version information and exit"
@@ -120,8 +128,8 @@ msgstr "The command to print detailed help for"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Application identifier in D-Bus format (eg: org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "FILE"
@@ -146,7 +154,7 @@ msgstr "PARAMETER"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Optional parameter to the action invocation, in GVariant format"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -160,7 +168,7 @@ msgid "Usage:\n"
msgstr "Usage:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Arguments:\n"
@@ -283,7 +291,7 @@ msgstr "Stream is already closed"
msgid "Truncate not supported on base stream"
msgstr "Truncate not supported on base stream"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1872 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -304,7 +312,7 @@ msgstr "Not enough space in destination"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Invalid byte sequence in conversion input"
@@ -314,7 +322,7 @@ msgstr "Invalid byte sequence in conversion input"
msgid "Error during conversion: %s"
msgstr "Error during conversion: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Cancellable initialization not supported"
@@ -330,7 +338,7 @@ msgstr "Conversion from character set “%s†to “%s†is not supported"
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Could not open converter from “%s†to “%sâ€"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "%s type"
@@ -344,23 +352,23 @@ msgstr "Unknown type"
msgid "%s filetype"
msgstr "%s filetype"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials contains invalid data"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials is not implemented on this OS"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "There is no GCredentials support for your platform"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GCredentials does not contain a process ID on this OS"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Credentials spoofing is not possible on this OS"
@@ -368,17 +376,17 @@ msgstr "Credentials spoofing is not possible on this OS"
msgid "Unexpected early end-of-stream"
msgstr "Unexpected early end-of-stream"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Unsupported key “%s†in address entry “%sâ€"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Meaningless key/value pair combination in address entry “%sâ€"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -387,28 +395,28 @@ msgstr ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
"keys)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Error in address “%s†— the “%s†attribute is malformed"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Unknown or unsupported transport “%s†for address “%sâ€"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "Address element “%s†does not contain a colon (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "Transport name in address element “%s†must not be empty"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -417,14 +425,14 @@ msgstr ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
"sign"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
msgstr ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -433,7 +441,7 @@ msgstr ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
"“%sâ€"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -442,75 +450,75 @@ msgstr ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
"“path†or “abstract†to be set"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr "Error in address “%s†— the host attribute is missing or malformed"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "Error in address “%s†— the port attribute is missing or malformed"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Error in address “%s†— the noncefile attribute is missing or malformed"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Error auto-launching: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Error opening nonce file “%sâ€: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Error reading from nonce file “%sâ€: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Error writing contents of nonce file “%s†to stream:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "The given address is empty"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Cannot spawn a message bus when setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "×œ× × ×™×ª×Ÿ לפצל ×פיק הודעה כש־AT_SECURE מוגדר"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "Cannot spawn a message bus without a machine-id: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Cannot autolaunch D-Bus without X11 $DISPLAY"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Error spawning command line “%sâ€: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr "Cannot determine session bus address (not implemented for this OS)"
-#: gio/gdbusaddress.c:1397 gio/gdbusconnection.c:7261
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7334
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -519,7 +527,7 @@ msgstr ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
"— unknown value “%sâ€"
-#: gio/gdbusaddress.c:1406 gio/gdbusconnection.c:7270
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7343
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -527,7 +535,7 @@ msgstr ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
-#: gio/gdbusaddress.c:1416
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Unknown bus type %d"
@@ -555,211 +563,210 @@ msgstr "User IDs must be the same for peer and server"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Error when getting information for directory “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
msgstr ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Error creating directory “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Operation not supported"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Error opening keyring “%s†for reading: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "Line %d of the keyring at “%s†with content “%s†is malformed"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Didn’t find cookie with id %d in the keyring at “%sâ€"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Error creating lock file “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Error deleting stale lock file “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Error closing (unlinked) lock file “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Error unlinking lock file “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Error opening keyring “%s†for writing: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Additionally, releasing the lock for “%s†also failed: %s) "
-#: gio/gdbusconnection.c:603 gio/gdbusconnection.c:2417
+#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
msgid "The connection is closed"
msgstr "The connection is closed"
-#: gio/gdbusconnection.c:1902
+#: gio/gdbusconnection.c:1903
msgid "Timeout was reached"
msgstr "Timeout was reached"
-#: gio/gdbusconnection.c:2540
+#: gio/gdbusconnection.c:2541
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"Unsupported flags encountered when constructing a client-side connection"
-#: gio/gdbusconnection.c:4189 gio/gdbusconnection.c:4536
+#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
-#: gio/gdbusconnection.c:4331
+#: gio/gdbusconnection.c:4414
#, c-format
msgid "No such property “%sâ€"
msgstr "No such property “%sâ€"
-#: gio/gdbusconnection.c:4343
+#: gio/gdbusconnection.c:4426
#, c-format
msgid "Property “%s†is not readable"
msgstr "Property “%s†is not readable"
-#: gio/gdbusconnection.c:4354
+#: gio/gdbusconnection.c:4437
#, c-format
msgid "Property “%s†is not writable"
msgstr "Property “%s†is not writable"
-#: gio/gdbusconnection.c:4374
+#: gio/gdbusconnection.c:4457
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
-#: gio/gdbusconnection.c:4479 gio/gdbusconnection.c:4687
-#: gio/gdbusconnection.c:6689
+#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
+#: gio/gdbusconnection.c:6760
#, c-format
msgid "No such interface “%sâ€"
msgstr "No such interface “%sâ€"
-#: gio/gdbusconnection.c:4905 gio/gdbusconnection.c:7201
+#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "No such interface “%s†on object at path %s"
-#: gio/gdbusconnection.c:5003
+#: gio/gdbusconnection.c:5100
#, c-format
msgid "No such method “%sâ€"
msgstr "No such method “%sâ€"
-#: gio/gdbusconnection.c:5034
+#: gio/gdbusconnection.c:5131
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Type of message, “%sâ€, does not match expected type “%sâ€"
-#: gio/gdbusconnection.c:5237
+#: gio/gdbusconnection.c:5334
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "An object is already exported for the interface %s at %s"
-#: gio/gdbusconnection.c:5463
+#: gio/gdbusconnection.c:5561
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Unable to retrieve property %s.%s"
-#: gio/gdbusconnection.c:5519
+#: gio/gdbusconnection.c:5617
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Unable to set property %s.%s"
-#: gio/gdbusconnection.c:5698
+#: gio/gdbusconnection.c:5796
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "Method “%s†returned type “%sâ€, but expected “%sâ€"
-#: gio/gdbusconnection.c:6800
+#: gio/gdbusconnection.c:6872
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "Method “%s†on interface “%s†with signature “%s†does not exist"
-#: gio/gdbusconnection.c:6921
+#: gio/gdbusconnection.c:6993
#, c-format
msgid "A subtree is already exported for %s"
msgstr "A subtree is already exported for %s"
-#: gio/gdbusconnection.c:7209
+#: gio/gdbusconnection.c:7282
#, c-format
-#| msgid "Key file does not have group “%sâ€"
msgid "Object does not exist at path “%sâ€"
msgstr "Object does not exist at path “%sâ€"
-#: gio/gdbusmessage.c:1266
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "type is INVALID"
-#: gio/gdbusmessage.c:1277
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "METHOD_CALL message: PATH or MEMBER header field is missing"
-#: gio/gdbusmessage.c:1288
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "METHOD_RETURN message: REPLY_SERIAL header field is missing"
-#: gio/gdbusmessage.c:1300
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
-#: gio/gdbusmessage.c:1313
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
-#: gio/gdbusmessage.c:1321
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -767,7 +774,7 @@ msgstr ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1329
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -775,7 +782,7 @@ msgstr ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1377 gio/gdbusmessage.c:1437
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
@@ -784,12 +791,12 @@ msgstr[1] "‫Wanted to read %lu bytes but only got %lu"
msgstr[2] "‫Wanted to read %lu bytes but only got %lu"
msgstr[3] "‫Wanted to read %lu bytes but only got %lu"
-#: gio/gdbusmessage.c:1391
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "Expected NUL byte after the string “%s†but found byte %d"
-#: gio/gdbusmessage.c:1410
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -798,21 +805,21 @@ msgstr ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
"(length of string is %d). The valid UTF-8 string up until that point was “%sâ€"
-#: gio/gdbusmessage.c:1474 gio/gdbusmessage.c:1722 gio/gdbusmessage.c:1911
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Value nested too deeply"
-#: gio/gdbusmessage.c:1620
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Parsed value “%s†is not a valid D-Bus object path"
-#: gio/gdbusmessage.c:1642
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Parsed value “%s†is not a valid D-Bus signature"
-#: gio/gdbusmessage.c:1689
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -827,7 +834,7 @@ msgstr[2] ""
msgstr[3] ""
"Encountered array of length %u bytes. Maximum length is 2<<26 bytes (64 MiB)."
-#: gio/gdbusmessage.c:1709
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -836,19 +843,23 @@ msgstr ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
"bytes, but found to be %u bytes in length"
-#: gio/gdbusmessage.c:1895
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
+msgid "Empty structures (tuples) are not allowed in D-Bus"
+msgstr "Empty structures (tuples) are not allowed in D-Bus"
+
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "Parsed value “%s†for variant is not a valid D-Bus signature"
-#: gio/gdbusmessage.c:1936
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
msgstr ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
-#: gio/gdbusmessage.c:2121
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -857,26 +868,26 @@ msgstr ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
"0x%02x"
-#: gio/gdbusmessage.c:2134
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Invalid major protocol version. Expected 1 but found %d"
-#: gio/gdbusmessage.c:2188 gio/gdbusmessage.c:2784
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Signature header found but is not of type signature"
-#: gio/gdbusmessage.c:2200
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr "Signature header with signature “%s†found but message body is empty"
-#: gio/gdbusmessage.c:2215
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "Parsed value “%s†is not a valid D-Bus signature (for body)"
-#: gio/gdbusmessage.c:2247
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -885,34 +896,34 @@ msgstr[1] "‫No signature header in message but the message body is %u bytes"
msgstr[2] "‫No signature header in message but the message body is %u byte"
msgstr[3] "‫No signature header in message but the message body is %u byte"
-#: gio/gdbusmessage.c:2257
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Cannot deserialize message: "
-#: gio/gdbusmessage.c:2601
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
msgstr ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
-#: gio/gdbusmessage.c:2738
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr ""
"Number of file descriptors in message (%d) differs from header field (%d)"
-#: gio/gdbusmessage.c:2746
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Cannot serialize message: "
-#: gio/gdbusmessage.c:2799
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "Message body has signature “%s†but there is no signature header"
-#: gio/gdbusmessage.c:2809
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -921,52 +932,52 @@ msgstr ""
"Message body has type signature “%s†but signature in the header field is "
"“%sâ€"
-#: gio/gdbusmessage.c:2825
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "Message body is empty but signature in the header field is “(%s)â€"
-#: gio/gdbusmessage.c:3380
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Error return with body of type “%sâ€"
-#: gio/gdbusmessage.c:3388
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Error return with empty body"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Type any character to close this window)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Session dbus not running, and autolaunch failed"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Unable to get Hardware profile: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Unable to load %s or %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Error calling StartServiceByName for %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Unexpected reply %d from StartServiceByName(\"%s\") method"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1021,67 +1032,67 @@ msgstr ""
"\n"
"Use “%s COMMAND --help†to get help on each command.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Error: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Error parsing introspection XML: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Error: %s is not a valid name\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Error: %s is not a valid object path\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Connect to the system bus"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Connect to the session bus"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Connect to given D-Bus address"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Connection Endpoint Options:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Options specifying the connection endpoint"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "No connection endpoint specified"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Multiple connection endpoints specified"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr ""
"Warning: According to introspection data, interface “%s†does not exist\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1090,160 +1101,164 @@ msgstr ""
"Warning: According to introspection data, method “%s†does not exist on "
"interface “%sâ€\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Optional destination for signal (unique name)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Object path to emit signal on"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Signal and interface name"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Emit a signal."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Error connecting: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Error: %s is not a valid unique bus name.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Error: Object path is not specified\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Error: Signal name is not specified\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Error: Signal name “%s†is invalid\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Error: %s is not a valid interface name\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Error: %s is not a valid member name\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Error parsing parameter %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Error flushing connection: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Destination name to invoke method on"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Object path to invoke method on"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Method and interface name"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Timeout in seconds"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Allow interactive authorization"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Invoke a method on a remote object."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Error: Destination is not specified\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Error: %s is not a valid bus name\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Error: Method name is not specified\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Error: Method name “%s†is invalid\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Error parsing parameter %d of type “%sâ€: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Error adding handle %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Destination name to introspect"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Object path to introspect"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Print XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Introspect children"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Only print properties"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Introspect a remote object."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Destination name to monitor"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Object path to monitor"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Monitor a remote object."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Error: can’t monitor a non-message-bus connection\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Service to activate before waiting for the other one (well-known name)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1251,63 +1266,68 @@ msgstr ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[OPTION…] BUS-NAME"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Wait for a bus name to appear."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Error: A service to activate for must be specified.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "Error: A service to wait for must be specified.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Error: Too many arguments.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Error: %s is not a valid well-known bus name.\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4932
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Not authorized to change debug settings"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Unnamed"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "Desktop file didn’t specify Exec field"
-#: gio/gdesktopappinfo.c:2801
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Unable to find terminal required for application"
-#: gio/gdesktopappinfo.c:3452
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr "Can’t create user application configuration folder %s: %s"
-#: gio/gdesktopappinfo.c:3456
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Can’t create user MIME configuration folder %s: %s"
-#: gio/gdesktopappinfo.c:3698 gio/gdesktopappinfo.c:3722
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "Application information lacks an identifier"
-#: gio/gdesktopappinfo.c:3958
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Can’t create user desktop file %s"
-#: gio/gdesktopappinfo.c:4094
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Custom definition for %s"
@@ -1335,7 +1355,7 @@ msgstr "drive doesn’t implement start"
msgid "drive doesn’t implement stop"
msgstr "drive doesn’t implement stop"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "TLS backend does not implement TLS binding retrieval"
@@ -1376,73 +1396,73 @@ msgstr "Expected a GEmblem for GEmblemedIcon"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Containing mount does not exist"
-#: gio/gfile.c:2608 gio/glocalfile.c:2477
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Can’t copy over directory"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Can’t copy directory over directory"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Target file exists"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Can’t recursively copy directory"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Symbolic links not supported"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Error opening file: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Copy (reflink/clone) between mounts is not supported"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Copy (reflink/clone) is not supported or invalid"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Copy (reflink/clone) is not supported or didn’t work"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Can’t copy special file"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Invalid symlink value given"
-#: gio/gfile.c:4045 glib/gfileutils.c:2355
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Symbolic links not supported"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Trash not supported"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "File names cannot contain “%câ€"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "volume doesn’t implement mount"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "No application is registered as handling this file"
@@ -1487,7 +1507,7 @@ msgstr "Truncate not allowed on input stream"
msgid "Truncate not supported on stream"
msgstr "Truncate not supported on stream"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Invalid hostname"
@@ -1574,7 +1594,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Could not parse “%s†as IP address mask"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Not enough space for socket address"
@@ -2406,15 +2426,15 @@ msgstr "Error compressing file %s"
msgid "text may not appear inside <%s>"
msgstr "text may not appear inside <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Show program version and exit"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Name of the output file"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2422,46 +2442,46 @@ msgstr ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "DIRECTORY"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
"Generate output in the format selected for by the target filename extension"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Generate source header"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr "Generate source code used to link in the resource file into your code"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Generate dependency list"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Name of the dependency file to generate"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Include phony targets in the generated dependency file"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Don’t automatically create and register resource"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Don’t export functions; declare them G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2469,11 +2489,15 @@ msgstr ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "C identifier name used for the generated source code"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "The target C compiler (default: the CC environment variable)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2483,7 +2507,7 @@ msgstr ""
"Resource specification files have the extension .gresource.xml,\n"
"and the resource file have the extension called .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "You should give exactly one file name\n"
@@ -2991,8 +3015,8 @@ msgstr "Error renaming file %s: %s"
msgid "Can’t rename file, filename already exists"
msgstr "Can’t rename file, filename already exists"
-#: gio/glocalfile.c:1184 gio/glocalfile.c:2371 gio/glocalfile.c:2399
-#: gio/glocalfile.c:2538 gio/glocalfileoutputstream.c:656
+#: gio/glocalfile.c:1184 gio/glocalfile.c:2380 gio/glocalfile.c:2408
+#: gio/glocalfile.c:2547 gio/glocalfileoutputstream.c:656
msgid "Invalid filename"
msgstr "Invalid filename"
@@ -3006,91 +3030,91 @@ msgstr "Error opening file %s: %s"
msgid "Error removing file %s: %s"
msgstr "Error removing file %s: %s"
-#: gio/glocalfile.c:1982 gio/glocalfile.c:1993
+#: gio/glocalfile.c:1982 gio/glocalfile.c:1993 gio/glocalfile.c:2020
#, c-format
msgid "Error trashing file %s: %s"
msgstr "Error trashing file %s: %s"
-#: gio/glocalfile.c:2031
+#: gio/glocalfile.c:2040
#, c-format
msgid "Unable to create trash directory %s: %s"
msgstr "Unable to create trash directory %s: %s"
-#: gio/glocalfile.c:2052
+#: gio/glocalfile.c:2061
#, c-format
msgid "Unable to find toplevel directory to trash %s"
msgstr "Unable to find toplevel directory to trash %s"
-#: gio/glocalfile.c:2060
+#: gio/glocalfile.c:2069
#, c-format
msgid "Trashing on system internal mounts is not supported"
msgstr "Trashing on system internal mounts is not supported"
-#: gio/glocalfile.c:2146 gio/glocalfile.c:2174
+#: gio/glocalfile.c:2155 gio/glocalfile.c:2183
#, c-format
msgid "Unable to find or create trash directory %s to trash %s"
msgstr "Unable to find or create trash directory %s to trash %s"
-#: gio/glocalfile.c:2220
+#: gio/glocalfile.c:2229
#, c-format
msgid "Unable to create trashing info file for %s: %s"
msgstr "Unable to create trashing info file for %s: %s"
-#: gio/glocalfile.c:2282
+#: gio/glocalfile.c:2291
#, c-format
msgid "Unable to trash file %s across filesystem boundaries"
msgstr "Unable to trash file %s across filesystem boundaries"
-#: gio/glocalfile.c:2286 gio/glocalfile.c:2342
+#: gio/glocalfile.c:2295 gio/glocalfile.c:2351
#, c-format
msgid "Unable to trash file %s: %s"
msgstr "Unable to trash file %s: %s"
-#: gio/glocalfile.c:2348
+#: gio/glocalfile.c:2357
#, c-format
msgid "Unable to trash file %s"
msgstr "Unable to trash file %s"
-#: gio/glocalfile.c:2374
+#: gio/glocalfile.c:2383
#, c-format
msgid "Error creating directory %s: %s"
msgstr "Error creating directory %s: %s"
-#: gio/glocalfile.c:2403
+#: gio/glocalfile.c:2412
#, c-format
msgid "Filesystem does not support symbolic links"
msgstr "Filesystem does not support symbolic links"
-#: gio/glocalfile.c:2406
+#: gio/glocalfile.c:2415
#, c-format
msgid "Error making symbolic link %s: %s"
msgstr "Error making symbolic link %s: %s"
-#: gio/glocalfile.c:2449 gio/glocalfile.c:2484 gio/glocalfile.c:2541
+#: gio/glocalfile.c:2458 gio/glocalfile.c:2493 gio/glocalfile.c:2550
#, c-format
msgid "Error moving file %s: %s"
msgstr "Error moving file %s: %s"
-#: gio/glocalfile.c:2472
+#: gio/glocalfile.c:2481
msgid "Can’t move directory over directory"
msgstr "Can’t move directory over directory"
-#: gio/glocalfile.c:2498 gio/glocalfileoutputstream.c:1108
+#: gio/glocalfile.c:2507 gio/glocalfileoutputstream.c:1108
#: gio/glocalfileoutputstream.c:1122 gio/glocalfileoutputstream.c:1137
#: gio/glocalfileoutputstream.c:1154 gio/glocalfileoutputstream.c:1168
msgid "Backup file creation failed"
msgstr "Backup file creation failed"
-#: gio/glocalfile.c:2517
+#: gio/glocalfile.c:2526
#, c-format
msgid "Error removing target file: %s"
msgstr "Error removing target file: %s"
-#: gio/glocalfile.c:2531
+#: gio/glocalfile.c:2540
msgid "Move between mounts not supported"
msgstr "Move between mounts not supported"
-#: gio/glocalfile.c:2705
+#: gio/glocalfile.c:2714
#, c-format
msgid "Could not determine the disk usage of %s: %s"
msgstr "Could not determine the disk usage of %s: %s"
@@ -3274,7 +3298,7 @@ msgid "Error truncating file: %s"
msgstr "Error truncating file: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Error opening file “%sâ€: %s"
@@ -3296,7 +3320,7 @@ msgstr "The file was externally modified"
msgid "Error removing old file: %s"
msgstr "Error removing old file: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Invalid GSeekType supplied"
@@ -3308,15 +3332,15 @@ msgstr "Invalid seek request"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Cannot truncate GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Memory output stream not resizable"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Failed to resize memory output stream"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3324,11 +3348,11 @@ msgstr ""
"Amount of memory required to process the write is larger than available "
"address space"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Requested seek before the beginning of the stream"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Requested seek beyond the end of the stream"
@@ -3408,12 +3432,12 @@ msgstr "Could not create network monitor: "
msgid "Could not get network status: "
msgstr "Could not get network status: "
-#: gio/gnetworkmonitornm.c:348
+#: gio/gnetworkmonitornm.c:311
#, c-format
msgid "NetworkManager not running"
msgstr "NetworkManager not running"
-#: gio/gnetworkmonitornm.c:359
+#: gio/gnetworkmonitornm.c:322
#, c-format
msgid "NetworkManager version too old"
msgstr "NetworkManager version too old"
@@ -3431,18 +3455,18 @@ msgstr "Sum of vectors passed to %s too large"
msgid "Source stream is already closed"
msgstr "Source stream is already closed"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Error resolving “%sâ€: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s not implemented"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Invalid domain"
@@ -3557,7 +3581,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " SECTION An (optional) elf section name\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " COMMAND The (optional) command to explain\n"
@@ -3589,7 +3613,7 @@ msgstr "PATH"
msgid " PATH A resource path\n"
msgstr " PATH A resource path\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "No such schema “%sâ€\n"
@@ -3620,35 +3644,35 @@ msgstr "Path must end with a slash (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Path must not contain two adjacent slashes (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "The provided value is outside of the valid range\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "The key is not writable\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "List the installed (non-relocatable) schemas"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "List the installed relocatable schemas"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "List the keys in SCHEMA"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "SCHEMA[:PATH]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "List the children of SCHEMA"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3656,48 +3680,48 @@ msgstr ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SCHEMA[:PATH]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Get the value of KEY"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "SCHEMA[:PATH] KEY"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Query the range of valid values for KEY"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Query the description for KEY"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Set the value of KEY to VALUE"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SCHEMA[:PATH] KEY VALUE"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Reset KEY to its default value"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Reset all keys in SCHEMA to their defaults"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Check if KEY is writable"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3707,11 +3731,11 @@ msgstr ""
"If no KEY is specified, monitor all keys in SCHEMA.\n"
"Use ^C to stop monitoring.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SCHEMA[:PATH] [KEY]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3759,7 +3783,7 @@ msgstr ""
"Use “gsettings help COMMAND†to get detailed help.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3774,11 +3798,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " SCHEMADIR A directory to search for additional schemas\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3786,211 +3810,211 @@ msgstr ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " KEY The (optional) key within the schema\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " KEY The key within the schema\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " VALUE The value to set\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Could not load schemas from %s: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "No schemas installed\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Empty schema name given\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "No such key “%sâ€\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Invalid socket, not initialized"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Invalid socket, initialization failed due to: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Socket is already closed"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Socket I/O timed out"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "creating GSocket from fd: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Unable to create socket: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Unknown family was specified"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Unknown protocol was specified"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "Cannot use datagram operations on a non-datagram socket."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr "Cannot use datagram operations on a socket with a timeout set."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "could not get local address: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "could not get remote address: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "could not listen: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Error binding to address %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Error joining multicast group: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Error leaving multicast group: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "No support for source-specific multicast"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Unsupported socket family"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "source-specific not an IPv4 address"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Interface name too long"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Interface not found: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "No support for IPv4 source-specific multicast"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "No support for IPv6 source-specific multicast"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Error accepting connection: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Connection in progress"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Unable to get pending error: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Error receiving data: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Error sending data: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Unable to shutdown socket: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Error closing socket: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Waiting for socket condition: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Unable to send message: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Message vectors too large"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Error sending message: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage not supported on Windows"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Error receiving message: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Unable to read socket credentials: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "g_socket_get_credentials not implemented for this OS"
@@ -4008,11 +4032,11 @@ msgstr "Could not connect to %s: "
msgid "Could not connect: "
msgstr "Could not connect: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "Proxying over a non-TCP connection is not supported."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Proxy protocol “%s†is not supported."
@@ -4112,6 +4136,16 @@ msgstr "SOCKSv5 proxy does not support provided address type."
msgid "Unknown SOCKSv5 proxy error."
msgstr "Unknown SOCKSv5 proxy error."
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
+#, c-format
+msgid "Failed to create pipe for communicating with child process (%s)"
+msgstr "Failed to create pipe for communicating with child process (%s)"
+
+#: gio/gtestdbus.c:619
+#, c-format
+msgid "Pipes are not supported in this platform"
+msgstr "Pipes are not supported in this platform"
+
#: gio/gthemedicon.c:595
#, c-format
msgid "Can’t handle version %d of GThemedIcon encoding"
@@ -4143,27 +4177,31 @@ msgstr "Temporarily unable to resolve “%sâ€"
msgid "Error resolving “%sâ€"
msgstr "Error resolving “%sâ€"
-#: gio/gtlscertificate.c:431
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "No PEM-encoded private key found"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Cannot decrypt PEM-encoded private key"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Could not parse PEM-encoded private key"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "No PEM-encoded certificate found"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Could not parse PEM-encoded certificate"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "The current TLS backend does not support PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "This GTlsBackend does not support creating PKCS #11 certificates"
@@ -4189,7 +4227,12 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "The password entered is incorrect."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+#| msgid "Setting attribute %s not supported"
+msgid "Sending FD is not supported"
+msgstr "Sending FD is not supported"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
@@ -4198,11 +4241,11 @@ msgstr[1] "‫Expecting 1 control message, got %d"
msgstr[2] "‫Expecting 1 control message, got %d"
msgstr[3] "‫Expecting 1 control message, got %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Unexpected type of ancillary data"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
@@ -4219,36 +4262,41 @@ msgstr[3] ""
"‫Expecting one fd, but got %d\n"
"‬\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Received invalid fd"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+#| msgid "Setting attribute %s not supported"
+msgid "Receiving FD is not supported"
+msgstr "Receiving FD is not supported"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Error sending credentials: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Error checking if SO_PASSCRED is enabled for socket: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Error enabling SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Not expecting control message, but got %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Error while disabling SO_PASSCRED: %s"
@@ -4264,7 +4312,7 @@ msgstr "Error reading from file descriptor: %s"
msgid "Error closing file descriptor: %s"
msgstr "Error closing file descriptor: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Filesystem root"
@@ -4275,7 +4323,7 @@ msgstr "Filesystem root"
msgid "Error writing to file descriptor: %s"
msgstr "Error writing to file descriptor: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "Abstract UNIX domain socket addresses not supported on this system"
@@ -4425,8 +4473,8 @@ msgstr "Failed to expand exec line “%s†with URI “%sâ€"
msgid "Unrepresentable character in conversion input"
msgstr "Unrepresentable character in conversion input"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Partial character sequence at end of input"
@@ -4891,7 +4939,7 @@ msgstr "PM"
msgid "Error opening directory “%sâ€: %s"
msgstr "Error opening directory “%sâ€: %s"
-#: glib/gfileutils.c:738 glib/gfileutils.c:830
+#: glib/gfileutils.c:733 glib/gfileutils.c:825
#, c-format
msgid "Could not allocate %lu byte to read file “%sâ€"
msgid_plural "Could not allocate %lu bytes to read file “%sâ€"
@@ -4900,72 +4948,72 @@ msgstr[1] "‫Could not allocate %lu bytes to read file “%sâ€"
msgstr[2] "‫Could not allocate %lu bytes to read file “%sâ€"
msgstr[3] "‫Could not allocate %lu bytes to read file “%sâ€"
-#: glib/gfileutils.c:755
+#: glib/gfileutils.c:750
#, c-format
msgid "Error reading file “%sâ€: %s"
msgstr "Error reading file “%sâ€: %s"
-#: glib/gfileutils.c:791
+#: glib/gfileutils.c:786
#, c-format
msgid "File “%s†is too large"
msgstr "File “%s†is too large"
-#: glib/gfileutils.c:855
+#: glib/gfileutils.c:850
#, c-format
msgid "Failed to read from file “%sâ€: %s"
msgstr "Failed to read from file “%sâ€: %s"
-#: glib/gfileutils.c:905 glib/gfileutils.c:980 glib/gfileutils.c:1469
+#: glib/gfileutils.c:900 glib/gfileutils.c:975 glib/gfileutils.c:1447
#, c-format
msgid "Failed to open file “%sâ€: %s"
msgstr "Failed to open file “%sâ€: %s"
-#: glib/gfileutils.c:918
+#: glib/gfileutils.c:913
#, c-format
msgid "Failed to get attributes of file “%sâ€: fstat() failed: %s"
msgstr "Failed to get attributes of file “%sâ€: fstat() failed: %s"
-#: glib/gfileutils.c:949
+#: glib/gfileutils.c:944
#, c-format
msgid "Failed to open file “%sâ€: fdopen() failed: %s"
msgstr "Failed to open file “%sâ€: fdopen() failed: %s"
-#: glib/gfileutils.c:1050
+#: glib/gfileutils.c:1045
#, c-format
msgid "Failed to rename file “%s†to “%sâ€: g_rename() failed: %s"
msgstr "Failed to rename file “%s†to “%sâ€: g_rename() failed: %s"
-#: glib/gfileutils.c:1176
+#: glib/gfileutils.c:1154
#, c-format
msgid "Failed to write file “%sâ€: write() failed: %s"
msgstr "Failed to write file “%sâ€: write() failed: %s"
-#: glib/gfileutils.c:1197
+#: glib/gfileutils.c:1175
#, c-format
msgid "Failed to write file “%sâ€: fsync() failed: %s"
msgstr "Failed to write file “%sâ€: fsync() failed: %s"
-#: glib/gfileutils.c:1358 glib/gfileutils.c:1773
+#: glib/gfileutils.c:1336 glib/gfileutils.c:1751
#, c-format
msgid "Failed to create file “%sâ€: %s"
msgstr "Failed to create file “%sâ€: %s"
-#: glib/gfileutils.c:1403
+#: glib/gfileutils.c:1381
#, c-format
msgid "Existing file “%s†could not be removed: g_unlink() failed: %s"
msgstr "Existing file “%s†could not be removed: g_unlink() failed: %s"
-#: glib/gfileutils.c:1738
+#: glib/gfileutils.c:1716
#, c-format
msgid "Template “%s†invalid, should not contain a “%sâ€"
msgstr "Template “%s†invalid, should not contain a “%sâ€"
-#: glib/gfileutils.c:1751
+#: glib/gfileutils.c:1729
#, c-format
msgid "Template “%s†doesn’t contain XXXXXX"
msgstr "Template “%s†doesn’t contain XXXXXX"
-#: glib/gfileutils.c:2311 glib/gfileutils.c:2340
+#: glib/gfileutils.c:2289 glib/gfileutils.c:2318
#, c-format
msgid "Failed to read the symbolic link “%sâ€: %s"
msgstr "Failed to read the symbolic link “%sâ€: %s"
@@ -4991,65 +5039,65 @@ msgstr "Channel terminates in a partial character"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Can’t do a raw read in g_io_channel_read_to_end"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "Valid key file could not be found in search dirs"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Not a regular file"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
msgstr ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Invalid group name: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Key file does not start with a group"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Invalid key name: %s"
+msgid "Invalid key name: %.*s"
+msgstr "×©× ×”×ž×¤×ª×— שגוי: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Key file contains unsupported encoding “%sâ€"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3290
-#: glib/gkeyfile.c:3354 glib/gkeyfile.c:3484 glib/gkeyfile.c:3616
-#: glib/gkeyfile.c:3762 glib/gkeyfile.c:3997 glib/gkeyfile.c:4064
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Key file does not have group “%sâ€"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Key file does not have key “%s†in group “%sâ€"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "Key file contains key “%s†with value “%s†which is not UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2532
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr ""
"Key file contains key “%s†which has a value that cannot be interpreted."
-#: glib/gkeyfile.c:2750 glib/gkeyfile.c:3119
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5058,36 +5106,36 @@ msgstr ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
"interpreted."
-#: glib/gkeyfile.c:2828 glib/gkeyfile.c:2905
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "Key “%s†in group “%s†has value “%s†where %s was expected"
-#: glib/gkeyfile.c:4307
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Key file contains escape character at end of line"
-#: glib/gkeyfile.c:4329
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Key file contains invalid escape sequence “%sâ€"
-#: glib/gkeyfile.c:4473
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "Value “%s†cannot be interpreted as a number."
-#: glib/gkeyfile.c:4487
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "Integer value “%s†out of range"
-#: glib/gkeyfile.c:4520
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "Value “%s†cannot be interpreted as a float number."
-#: glib/gkeyfile.c:4559
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "Value “%s†cannot be interpreted as a boolean."
@@ -5377,7 +5425,7 @@ msgstr "Error parsing option %s"
msgid "Missing argument for %s"
msgstr "Missing·argument·for·%s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Unknown option %s"
@@ -5776,121 +5824,132 @@ msgstr "Text was empty (or contained only whitespace)"
msgid "Failed to read data from child process (%s)"
msgstr "Failed to read data from child process (%s)"
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "Unexpected error in reading data from a child process (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Unexpected error in waitpid() (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "Child process exited with code %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Child process killed by signal %ld"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Child process stopped by signal %ld"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Child process exited abnormally"
-#: glib/gspawn.c:1855 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Failed to read from child pipe (%s)"
-#: glib/gspawn.c:2157
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Failed to spawn child process “%s†(%s)"
-#: glib/gspawn.c:2274
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Failed to fork (%s)"
-#: glib/gspawn.c:2434 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Failed to change to directory “%s†(%s)"
-#: glib/gspawn.c:2444
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Failed to execute child process “%s†(%s)"
-#: glib/gspawn.c:2454
+#: glib/gspawn.c:2550
+#, c-format
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Failed to open file to remap file descriptor (%s)"
+
+#: glib/gspawn.c:2558
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Failed to redirect output or input of child process (%s)"
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Failed to duplicate file descriptor for child process (%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Failed to fork child process (%s)"
-#: glib/gspawn.c:2471
+#: glib/gspawn.c:2575
+#, c-format
+msgid "Failed to close file descriptor for child process (%s)"
+msgstr "Failed to close file descriptor for child process (%s)"
+
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Unknown error executing child process “%sâ€"
-#: glib/gspawn.c:2495
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "Failed to read enough data from child pid pipe (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Failed to read data from child process"
-#: glib/gspawn-win32.c:311
-#, c-format
-msgid "Failed to create pipe for communicating with child process (%s)"
-msgstr "Failed to create pipe for communicating with child process (%s)"
-
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Failed to execute child process (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+#| msgid "Failed to fork child process (%s)"
+msgid "Failed to dup() in child process (%s)"
+msgstr "Failed to dup() in child process (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Invalid program name: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Invalid string in argument vector at %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Invalid string in environment: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Invalid working directory: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Failed to execute helper program (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -5898,21 +5957,21 @@ msgstr ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Empty string is not a number"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "“%s†is not a signed number"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Number “%s†is out of bounds [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "“%s†is not an unsigned number"
@@ -5965,176 +6024,176 @@ msgstr "URI ‘%s’ is not an absolute URI"
msgid "URI ‘%s’ has no host component"
msgstr "URI ‘%s’ has no host component"
-#: glib/guri.c:1435
+#: glib/guri.c:1460
msgid "URI is not absolute, and no base URI was provided"
msgstr "URI is not absolute, and no base URI was provided"
-#: glib/guri.c:2213
+#: glib/guri.c:2238
msgid "Missing ‘=’ and parameter value"
-msgstr "Missing ‘=’ and parameter value"
+msgstr "×—×¡×¨×™× â€š=’ וערך משתנה"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
-msgstr "Failed to allocate memory"
+msgstr "הקצ×ת זיכרון נכשלה"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
-msgstr "Character out of range for UTF-8"
+msgstr "התו מחוץ לטווח עבור UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
-msgstr "Invalid sequence in conversion input"
+msgstr "רצף שגוי בקלט ההמרה"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
-msgstr "Character out of range for UTF-16"
+msgstr "התו מחוץ לטווח עבור UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2727
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f ק״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2729
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f מ״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2731
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f ג״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2733
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f ט״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2735
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f פ״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2737
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f ×״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2741
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f קי״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2743
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f מבי״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2745
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f גיב״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2747
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f טבי״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2749
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f פבי״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2751
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f ×ק״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2755
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f ק״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2757
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f מ״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2759
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f ג״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2761
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f ט״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2763
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f פ״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2765
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f ×״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2769
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f ק״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2771
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f מ״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2773
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f ג״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2775
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f ט״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2777
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f פ״ב"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2779
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f ×״ב"
-#: glib/gutils.c:2813 glib/gutils.c:2930
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
@@ -6143,7 +6202,7 @@ msgstr[1] "שני בתי×"
msgstr[2] "‫%u בתי×"
msgstr[3] "‫%u בתי×"
-#: glib/gutils.c:2817
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6153,7 +6212,7 @@ msgstr[2] "‫%u סיביות"
msgstr[3] "‫%u סיביות"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2884
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6163,7 +6222,7 @@ msgstr[2] "‫%s בתי×"
msgstr[3] "‫%s בתי×"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2889
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6177,32 +6236,32 @@ msgstr[3] "‫%s סיביות"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2943
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f ק״ב"
-#: glib/gutils.c:2948
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f מ״ב"
-#: glib/gutils.c:2953
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f ג״ב"
-#: glib/gutils.c:2958
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f ט״ב"
-#: glib/gutils.c:2963
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f פ״ב"
-#: glib/gutils.c:2968
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f ×״ב"
diff --git a/po/hr.po b/po/hr.po
index 440193be9..42c66ef24 100644
--- a/po/hr.po
+++ b/po/hr.po
@@ -5,8 +5,8 @@ msgid ""
msgstr ""
"Project-Id-Version: glib 0\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2021-10-25 19:38+0000\n"
-"PO-Revision-Date: 2021-10-25 21:46+0200\n"
+"POT-Creation-Date: 2022-04-19 06:05+0000\n"
+"PO-Revision-Date: 2022-04-20 19:44+0200\n"
"Last-Translator: gogo <trebelnik2@gmail.com>\n"
"Language-Team: Croatian <lokalizacija@linux.hr>\n"
"Language: hr\n"
@@ -15,9 +15,18 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
-"X-Launchpad-Export-Date: 2021-10-25 19:28+0000\n"
+"X-Launchpad-Export-Date: 2021-10-27 14:24+0000\n"
"X-Generator: Poedit 2.3\n"
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Postavljanje zadanih aplikacija još nije podržano"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"Postavljanje aplikacije kao posljednju korištenu za vrstu još nije podržano"
+
#: gio/gapplication.c:500
msgid "GApplication options"
msgstr "Mogućnosti GAplikacije"
@@ -39,7 +48,7 @@ msgid "Replace the running instance"
msgstr "Zamijeni pokrenuti primjerak"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Prikaži pomoć"
@@ -51,7 +60,7 @@ msgstr "[NAREDBA]"
msgid "Print version"
msgstr "Prikaži inaÄicu"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Prikaži informaciju inaÄice i izaÄ‘i"
@@ -95,7 +104,7 @@ msgstr "Prikaži dostupne radnje"
#: gio/gapplication-tool.c:66
msgid "List static actions for an application (from .desktop file)"
-msgstr "Prikazuje nepromjenjive radnje za aplikaciju (iz .desktop datoteke)"
+msgstr "Prikaži nepromjenjive radnje za aplikaciju (iz .desktop datoteke)"
#: gio/gapplication-tool.c:67 gio/gapplication-tool.c:73
msgid "APPID"
@@ -114,8 +123,8 @@ msgstr "Naredba za prikaz opširnije pomoći za"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Identifikator aplikacije u D-Bus formatu (npr: org.primjer.preglednik)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "DATOTEKA"
@@ -141,7 +150,7 @@ msgstr "PARAMETAR"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Neobavezni parametri za pokretanje radnje u GVariant formatu"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -155,7 +164,7 @@ msgid "Usage:\n"
msgstr "Upotreba:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argumenti:\n"
@@ -241,7 +250,8 @@ msgstr "list-actions naredba prihvaća samo id aplikacije"
#: gio/gapplication-tool.c:423
#, c-format
msgid "unable to find desktop file for application %s\n"
-msgstr "nemoguće pronalazak datoteke radne površine za aplikaciju %s\n"
+msgstr ""
+"nemoguće pronalazak datoteke radne površine (.desktop) za aplikaciju %s\n"
#: gio/gapplication-tool.c:468
#, c-format
@@ -278,7 +288,7 @@ msgstr "Strujanje je već zatvoreno"
msgid "Truncate not supported on base stream"
msgstr "Skraćivanje nije podržano na osnovnom strujanju"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1872 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -299,7 +309,7 @@ msgstr "Nedovoljno prostora u odredištu"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1329
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Neispravan niz bajta na ulazu pretvorbe"
@@ -309,7 +319,7 @@ msgstr "Neispravan niz bajta na ulazu pretvorbe"
msgid "Error during conversion: %s"
msgstr "Greška tijekom pretvorbe: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Prekidanje pokretanja nije podržano"
@@ -323,55 +333,55 @@ msgstr "Pretvaranje iz znakovnog skupa “%s†u “%s†nije podržano"
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Nemoguće je otvoriti pretvornik iz “%s†u “%sâ€"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "%s vrsta"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Nepoznata vrsta"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "%s vrsta datoteke"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GVjerodajnice sadrže nevaljane podatke"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GVjerodajnice nisu implementirane na ovom OS-u"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Nema podrške GVjerodajnica za vašu platformu"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GVjerodajnice ne sadrže ID procesa na ovom OS-u"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Podvala vjerodajnica nije moguća na ovom OS-u"
#: gio/gdatainputstream.c:304
msgid "Unexpected early end-of-stream"
-msgstr "NeoÄekivani prerani kraj strujanja"
+msgstr "NeoÄekivani prerani zavrÅ¡etak strujanja"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Nepodržani kljuÄ â€œ%s†u unosu adrese “%sâ€"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Besmislena kombinacija para kljuÄa/vrijednosti u unosu adrese “%sâ€"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -380,28 +390,28 @@ msgstr ""
"Adresa “%s†je nevaljana (potrebna je toÄno jedna putanja, dir, privremeni "
"dir ili apstraktni kljuÄ)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Greška u adresi “%s†— “%s†svojstvo je oštećeno"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Nepoznati ili nepodržani prijenos “%s†za adresu “%sâ€"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "Element adrese “%s†ne sadrži dvotoÄku (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "Naziv prijenosa u elementu adrese “%s†ne može biti prazan"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -410,7 +420,7 @@ msgstr ""
"Par kljuÄa/vrijednosti %d, “%sâ€, u elementu adrese “%s†ne sadrže znak "
"jednakosti"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
@@ -418,7 +428,7 @@ msgstr ""
"Par kljuÄa/vrijednosti %d, “%sâ€, u elementu adrese “%s†ne mogu sadržavati "
"prazan kljuÄ"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -427,88 +437,88 @@ msgstr ""
"GreÅ¡ka neizbjegavanja kljuÄa ili vrijednosti u paru kljuÄa/vrijednosti %d, "
"“%sâ€, u elementu adrese “%sâ€"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
"“path†or “abstract†to be set"
msgstr ""
"GreÅ¡ka u adresi “%s†— unix prijenos zahtijeva toÄno postavljeno jedno "
-"kljuÄevo “putanju†ili “apstraktan†svojstvo"
+"kljuÄevo “path†ili “abstract†svojstvo"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr "Greška u adresi “%s†— svojstvo poslužitelja nedostaje ili je oštećeno"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "Greška u adresi “%s†— svojstvo ulaza nedostaje ili je oštećeno"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Greška u adresi “%s†— svojstvo jednokratne datoteke nedostaje ili je "
"oštećeno"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Greška automatskog pokretanja: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "GreÅ¡ka otvaranja jednokratne datoteke “%sâ€: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "GreÅ¡ka Äitanja iz jednokratne datoteke “%sâ€: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"GreÅ¡ka Äitanja iz jednokratne datoteke “%sâ€, oÄekivano je 16 bajta, dobiveno "
"je %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Greška zapisivanja sadržaja jednokratne datoteke “%s†u strujanje:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "Navedena adresa je prazna"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Nemoguće pokretanje sabirnice poruke pri uid podešavanju"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "Nemoguće pokretanje sabirnice poruke kada je AT_SECURE postavljen"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "Nemoguće pokretanje sabirnice poruke bez id-raÄunala: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Nemoguće automatsko pokretanje bez X11 $DISPLAY"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "GreÅ¡ka pokretanja naredbenog redka “%sâ€: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Nemoguće otkrivanje adrese sabirnice sesije (nije implementirano za ovaj OS)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7261
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -517,7 +527,7 @@ msgstr ""
"Nemoguće otkrivanje adrese sabirnice iz DBUS_STARTER_BUS_TYPE varijable "
"okruženja — nepoznata vrijednost “%sâ€"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7270
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -525,7 +535,7 @@ msgstr ""
"Nemoguće otkrivanje adrese sabirnice zato jer DBUS_STARTER_BUS_TYPE "
"varijabla okruženja nije postavljena"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Nepoznata vrsta sabirnice %d"
@@ -553,212 +563,213 @@ msgstr "KorisniÄki ID mora biti isti za toÄku ili poslužitelj"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Poništeno putem GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "GreÅ¡ka dobivanja informacija za direktorij “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
msgstr ""
-"Dozvole na direktoriju “%s†su oÅ¡tećene. OÄekivano dozvole 0700, dobivene 0%o"
+"Dozvole na direktoriju “%s†su oÅ¡tećene. OÄekivana dozvola 0700, dobivena je "
+"0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "GreÅ¡ka stvaranja direktorija “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1068 gio/gfile.c:1306
-#: gio/gfile.c:1444 gio/gfile.c:1682 gio/gfile.c:1737 gio/gfile.c:1795
-#: gio/gfile.c:1879 gio/gfile.c:1936 gio/gfile.c:2000 gio/gfile.c:2055
-#: gio/gfile.c:3760 gio/gfile.c:3815 gio/gfile.c:4108 gio/gfile.c:4578
-#: gio/gfile.c:4989 gio/gfile.c:5074 gio/gfile.c:5164 gio/gfile.c:5261
-#: gio/gfile.c:5348 gio/gfile.c:5449 gio/gfile.c:8159 gio/gfile.c:8249
-#: gio/gfile.c:8333 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Radnja nije podržana"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "GreÅ¡ka otvaranja skupa kljuÄeva “%s†za Äitanje: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "Redak %d skupa kljuÄeva na “%s†sa sadržajem “%s†je oÅ¡tećen"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
"Prvi token redka %d skupa kljuÄeva na “%s†sa sadržajem “%s†je oÅ¡tećen"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
"Drugi token redka %d skupa kljuÄeva na “%s†sa sadržajem “%s†je oÅ¡tećen"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Nije pronaÄ‘en kolaÄić s ID %d u skupu kljuÄeva na “%sâ€"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "GreÅ¡ka stvaranja datoteke zakljuÄavanja “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "GreÅ¡ka brisanja zaostale datoteke zakljuÄavanja “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "GreÅ¡ka zatvaranja (nepovezane) datoteke zakljuÄavanja “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "GreÅ¡ka uklanjanja poveznice datoteke zakljuÄavanja “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "GreÅ¡ka otvaranja skupa kljuÄeva “%s†za zapisivanje: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Dodatno, oslobaÄ‘anje zakljuÄavanja za “%s†je isto neuspjelo: %s) "
-#: gio/gdbusconnection.c:603 gio/gdbusconnection.c:2417
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "Povezivanje je zatvoreno"
-#: gio/gdbusconnection.c:1902
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "Vrijeme isteka dostignuto"
-#: gio/gdbusconnection.c:2540
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"Nepodržane oznake pronađene pri izgradnje povezivanja od strane klijenta"
-#: gio/gdbusconnection.c:4189 gio/gdbusconnection.c:4536
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr ""
"Nema takvog suÄelja “org.freedesktop.DBus.Properties†na putanji objekta %s"
-#: gio/gdbusconnection.c:4331
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "Nema takvog svojstva “%sâ€"
-#: gio/gdbusconnection.c:4343
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "Svojstvo “%s†nije Äitljivo"
-#: gio/gdbusconnection.c:4354
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "Svojstvo “%s†nije zapisivo"
-#: gio/gdbusconnection.c:4374
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
"GreÅ¡ka postavljanja svojstva “%sâ€: OÄekivana je vrsta “%s†ali je dobivena "
"“%sâ€"
-#: gio/gdbusconnection.c:4479 gio/gdbusconnection.c:4687
-#: gio/gdbusconnection.c:6689
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "Nema takvog suÄelja “%sâ€"
-#: gio/gdbusconnection.c:4905 gio/gdbusconnection.c:7201
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Nema takvog suÄelja “%s†na putanji objekta %s"
-#: gio/gdbusconnection.c:5003
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "Nema takvog naÄina “%sâ€"
-#: gio/gdbusconnection.c:5034
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Vrsta poruke, “%sâ€, ne podudara se s oÄekivanom vrstom “%sâ€"
-#: gio/gdbusconnection.c:5237
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Objekt je već izvezen za suÄelje %s na %s"
-#: gio/gdbusconnection.c:5463
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Nemoguće dobivanju svojstva %s.%s"
-#: gio/gdbusconnection.c:5519
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Nemoguće postavljanje svojstva %s.%s"
-#: gio/gdbusconnection.c:5698
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "NaÄin “%s†je vratio vrstu “%sâ€, ali je oÄekivano “%sâ€"
-#: gio/gdbusconnection.c:6800
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "NaÄin “%s†na suÄelju “%s†s potpisom “%s†ne posoji"
-#: gio/gdbusconnection.c:6921
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Podstablo je već izvezeno za %s"
-#: gio/gdbusconnection.c:7209
+#: gio/gdbusconnection.c:7266
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "Objekt ne postoji na putanji “%sâ€"
-#: gio/gdbusmessage.c:1266
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "vrsta je NEVALJANA"
-#: gio/gdbusmessage.c:1277
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "METHOD_CALL poruka: PATH ili MEMBER polja zaglavlja nedostaju"
-#: gio/gdbusmessage.c:1288
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "METHOD_RETURN poruka: REPLY_SERIAL polja zaglavlja nedostaju"
-#: gio/gdbusmessage.c:1300
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "ERROR poruka: REPLY_SERIAL ili ERROR_NAME polja zaglavlja nedostaju"
-#: gio/gdbusmessage.c:1313
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "SIGNAL poruka: PATH, INTERFACE ili MEMBER polja zaglavlja nedostaju"
-#: gio/gdbusmessage.c:1321
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -766,7 +777,7 @@ msgstr ""
"SIGNAL poruka: PATH polje zaglavlja koristi rezerviranu vrijednost /org/"
"freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1329
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -774,7 +785,7 @@ msgstr ""
"SIGNAL poruka: INTERFACE polje zaglavlja koristi rezerviranu vrijednost org."
"freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1377 gio/gdbusmessage.c:1437
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
@@ -782,12 +793,12 @@ msgstr[0] "PokuÅ¡aj Äitanja %lu bajta, ali je dobiven samo %lu"
msgstr[1] "PokuÅ¡aj Äitanja %lu bajta, ali je dobiven samo %lu"
msgstr[2] "PokuÅ¡aj Äitanja %lu bajta, ali je dobiven samo %lu"
-#: gio/gdbusmessage.c:1391
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "OÄekivan je nula bajt nakon izraza “%sâ€, ali je pronaÄ‘en bajt %d"
-#: gio/gdbusmessage.c:1410
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -796,21 +807,21 @@ msgstr ""
"OÄekivan je valjani UTF-8 niz ali su pronaÄ‘eni nevaljani bajti u pomaku "
"bajta %d (duljina niza je %d). Valjani UTF-8 niz do te toÄke je bio “%sâ€"
-#: gio/gdbusmessage.c:1474 gio/gdbusmessage.c:1722 gio/gdbusmessage.c:1911
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Vrijednost je ugniježđena preduboko"
-#: gio/gdbusmessage.c:1620
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Obrađena vrijednost “%s†nije valjana D-Bus putanja objekta"
-#: gio/gdbusmessage.c:1642
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Obrađena vrijednost “%s†nije valjani D-Bus potpis"
-#: gio/gdbusmessage.c:1689
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -823,7 +834,7 @@ msgstr[1] ""
msgstr[2] ""
"Pronađen je niz duljine %u bajta. Najveća duljina je is 2<<26 bajta (64 MiB)."
-#: gio/gdbusmessage.c:1709
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -832,12 +843,16 @@ msgstr ""
"PronaÄ‘en je niz vrste “a%câ€, oÄekivano je da ima duljinu umnoÅ¡ka od %u "
"bajta, ali je pronađeno da je duljina %u bajta"
-#: gio/gdbusmessage.c:1895
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
+msgid "Empty structures (tuples) are not allowed in D-Bus"
+msgstr "Prazne strukture (tuples) nisu dopuštene u D-Bus-u"
+
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "Obrađena vrijednost “%s†za varijantu nije valjan D-Bus potpis"
-#: gio/gdbusmessage.c:1936
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
@@ -845,7 +860,7 @@ msgstr ""
"Greška pri deserijalizaciji GVariante s nizom vrste \"% s\" iz D-Bus formata "
"provodnika"
-#: gio/gdbusmessage.c:2121
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -854,28 +869,28 @@ msgstr ""
"Nevaljana endian vrijednost. OÄekivana je 0x6c (“lâ€) ili 0x42 (“Bâ€) ali je "
"pronađena vrijednost 0x%02x"
-#: gio/gdbusmessage.c:2134
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr ""
"Nevaljana inaÄica glavnog protokola. OÄekivana je 1 ali je pronaÄ‘ena %d"
-#: gio/gdbusmessage.c:2188 gio/gdbusmessage.c:2784
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Zaglavlje potpisa je pronađeno ali nije prikladna vrsta potpisa"
-#: gio/gdbusmessage.c:2200
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"Zaglavlje potpisa s potpisom “%s†je pronađeno ali tijelo poruke je prazno"
-#: gio/gdbusmessage.c:2215
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "Obrađena vrijednost “%s†nije valjan D-Bus potpis (za tijelo)"
-#: gio/gdbusmessage.c:2247
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -883,34 +898,34 @@ msgstr[0] "Nema zaglavlja potpisa u poruci ali tijelo poruke je %u bajt"
msgstr[1] "Nema zaglavlja potpisa u poruci ali tijelo poruke je %u bajta"
msgstr[2] "Nema zaglavlja potpisa u poruci ali tijelo poruke je %u bajta"
-#: gio/gdbusmessage.c:2257
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Nemoguća deserijalizacija poruke: "
-#: gio/gdbusmessage.c:2601
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
msgstr ""
"Greška serijalizacije GVariante s nizom vrste “%s†u D-Bus formata provodnika"
-#: gio/gdbusmessage.c:2738
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr ""
"Broj opisnika datoteke u poruci (%d) razlikuje se od polja zaglavlja (%d)"
-#: gio/gdbusmessage.c:2746
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Nemoguća serijalizacija poruke: "
-#: gio/gdbusmessage.c:2799
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "Tijelo poruke ima potpis “%sâ€, ali ne sadrži zaglavlje potpisa"
-#: gio/gdbusmessage.c:2809
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -918,52 +933,52 @@ msgid ""
msgstr ""
"Tijelo poruke ima vrstu potpisa “%sâ€, ali potpis u polju zaglavlja je “%sâ€"
-#: gio/gdbusmessage.c:2825
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "Tijelo poruke je prazno, ali potpis u polju zaglavlja je “(%s)â€"
-#: gio/gdbusmessage.c:3380
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Vraćena je greÅ¡ka s tijelom vrste “%sâ€"
-#: gio/gdbusmessage.c:3388
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Vraćena je greška s praznim tijelom"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Upišite bilo kakav znak za zatvaranje ovog prozora)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Dbus sesije nije pokrenut, automatsko pokretanje neuspjelo"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Neuspjelo dobivanje profila hardvera: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Nemoguće uÄitavanje %s ili %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Greška poziva StartServiceByName za %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "NeoÄekivan odgovor %d od StartServiceByName(\"%s\") naÄina"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1018,66 +1033,66 @@ msgstr ""
"\n"
"Koristite “%s NAREDBA --help†za dobivanje pomoći pojedine naredbe.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Greška: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Greška preispitivanja XML-a: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Greška: %s nije valjani naziv\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Greška: %s nije valjana putanja objekta\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Povezivanje sa sabirnicom sustava"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Povezivanje sa sabirnicom sesije"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Povezivanje sa zadanom D-Bus adresom"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Mogućnosti krajnje toÄke povezivanja:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Mogućnosti koje odreÄ‘uju krajnje toÄke povezivanja"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Krajnja toÄka povezivanja nije odreÄ‘ena"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "ViÅ¡e krajnjih toÄka povezivanja je odreÄ‘eno"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr "Upozorenje: Prema podacima preispitivanja, suÄelje “%s†ne postoji\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1086,161 +1101,165 @@ msgstr ""
"Upozorenje: Prema podacima preispitivanja, naÄin “%s†ne postoji na suÄelju "
"“%sâ€\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Dodatno odredište za signal (jedinstveni naziv)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Putanja objekta na koje se emitira signal"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Naziv signala i suÄelja"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Emitiraj signal."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Greška povezivanja: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Greška: %s nije valjan jedinstven naziv sabirnice.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Greška: Putanja objekta nije navedena\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Greška: Naziv signala nije naveden\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Greška: Naziv signala “%s†nije valjan\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "GreÅ¡ka: %s nije valjani naziv suÄelja\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "GreÅ¡ka: %s nije valjani naziv Älana\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Greška obrade parametra %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Greška pražnjenja povezivanja: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Naziv odrediÅ¡ta za poziv naÄina"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Putanja objekta za poziv naÄina"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Naziv naÄina i suÄelja"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Vrijeme Äekanja u sekundama"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Dopusti interaktivnu ovjeru"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Pozovi naÄin na udaljenom objektu."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Greška: Odredište nije navedeno\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Greška: %s nije valjan naziv sabirnice\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "GreÅ¡ka: Naziv naÄina nije naveden\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "GreÅ¡ka: Naziv naÄina “%s†je nevaljan\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "GreÅ¡ka obrade parametra %d vrste “%sâ€: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Greška dodavanja rukovanja %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Naziv odredišta za preispitivanje"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Putanja objekta za preispitivanje"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Prikaži XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Preispitivanje podsadržaja"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Samo prikaži svojstva"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Preispitivanje udaljenog objekta."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Naziv odredišta za nadgledanje"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Putanja objekta za nadgledanje"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Nadgledaj udaljeni objekt."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr ""
"Greška: nemoguće nadgledanje povezivanja sabirnice koja nije za poruke\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Usluga za aktiviranje prije Äekanja druge usluge (dobro poznat naziv)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1248,63 +1267,68 @@ msgstr ""
"Vrijeme Äekanja prije zatvaranja s greÅ¡kom (sekunde), O za vrijeme Äekanja "
"(zadano)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[MOGUĆNOST...] NAZIV-SABIRNICE"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "ÄŒekaj pojavljivanje naziva sabirnice."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Greška: Usluga za aktiviranje mora biti navedena.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "GreÅ¡ka: Usluga koja se Äeka mora biti navedena.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Greška: previše argumenata.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Greška: %s nije valjan dobro poznat naziv sabirnice\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:5031
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Niste ovlašteni za promjenu postavki otklanjanja grešaka"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Neimenovano"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
-msgstr "Datoteka radne površine nema navedeno Exec polje"
+msgstr "Datoteka radne površine (.desktop) nema navedeno Exec polje"
-#: gio/gdesktopappinfo.c:2824
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Nemoguć pronalazak potrebnog terminala za aplikaciju"
-#: gio/gdesktopappinfo.c:3551
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr "Nemoguće stvaranje mape podešavanja aplikacije korisnika %s: %s"
-#: gio/gdesktopappinfo.c:3555
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Nemoguće stvaranje mape MIME podešavanja korisnika %s: %s"
-#: gio/gdesktopappinfo.c:3797 gio/gdesktopappinfo.c:3821
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "Informacijama aplikacije nedostaje identifikator"
-#: gio/gdesktopappinfo.c:4057
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
-msgstr "Nemoguće stvaranje datoteke radne površine korisnika %s"
+msgstr "Nemoguće stvaranje datoteke radne površine (.desktop) korisnika %s"
-#: gio/gdesktopappinfo.c:4193
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Prilagođena definicija za %s"
@@ -1332,7 +1356,7 @@ msgstr "uređaj nema implementirano pokretanje"
msgid "drive doesn’t implement stop"
msgstr "uređaj nema implementirano zaustavljanje"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "TLS pozadinski program nema implementirano primanje TLS povezivanja"
@@ -1373,75 +1397,75 @@ msgstr "OÄekivani GEmblem za GEmblemedIcon"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1567
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Sadržano montiranje ne postoji"
-#: gio/gfile.c:2614 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Nemoguće kopiranje preko direktorija"
-#: gio/gfile.c:2674
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Nemoguće kopiranje direktorija preko direktorija"
-#: gio/gfile.c:2682
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Odredišna datoteka već postoji"
-#: gio/gfile.c:2701
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Nemoguće rekruzivno kopiranje direktorija"
-#: gio/gfile.c:3002
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Spajanje nije podržano"
-#: gio/gfile.c:3006
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Greška spajanja datoteke: %s"
-#: gio/gfile.c:3158
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr ""
"Kopiranje (referentne poveznice/kloniranje) između montiranja nije podržano"
-#: gio/gfile.c:3162
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr ""
"Kopiranje (referentne poveznice/kloniranje) nije podržano ili je nevaljano"
-#: gio/gfile.c:3167
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Kopiranje (referentne poveznice/kloniranje) nije podržano ili ne radi"
-#: gio/gfile.c:3232
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Nemoguće kopiranje posebne datoteke"
-#: gio/gfile.c:4041
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Zadana je nevaljana vrijednost simboliÄke poveznice"
-#: gio/gfile.c:4051 glib/gfileutils.c:2355
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "SimboliÄke poveznice nisu podržane"
-#: gio/gfile.c:4219
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Smeće nije podržano"
-#: gio/gfile.c:4331
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Nazivi datoteka ne mogu sadržavati “%câ€"
-#: gio/gfile.c:6812 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "uređaj nema implementirano montiranje"
-#: gio/gfile.c:6926 gio/gfile.c:6974
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Nema registriranih aplikacija za rukovanje ovom datotekom"
@@ -1486,7 +1510,7 @@ msgstr "SkraÄivanje nije dopuÅ¡teno na ulaznom strujanju"
msgid "Truncate not supported on stream"
msgstr "SkraÄivanje nije podržano na strujanju"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Neispravan naziv raÄunala"
@@ -1501,7 +1525,7 @@ msgstr "HTTP proxy povezivanje nije dopušteno"
#: gio/ghttpproxy.c:164
msgid "HTTP proxy authentication failed"
-msgstr "HTTP proxy ovjera neuspjela"
+msgstr "HTTP proxy ovjera je neuspjela"
#: gio/ghttpproxy.c:167
msgid "HTTP proxy authentication required"
@@ -1510,7 +1534,7 @@ msgstr "HTTP proxy ovjera je potrebna"
#: gio/ghttpproxy.c:171
#, c-format
msgid "HTTP proxy connection failed: %i"
-msgstr "HTTP proxy povezivanje neuspjelo: %i"
+msgstr "HTTP proxy povezivanje je neuspjelo: %i"
#: gio/ghttpproxy.c:266
msgid "HTTP proxy response too big"
@@ -1573,7 +1597,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Nemoguća obrada “%s†kao IP adresne maske"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Nedovoljno prostora za prikljuÄnicu adrese"
@@ -1605,7 +1629,7 @@ msgstr "Zadrži s datotekom kada je premještena"
#: gio/gio-tool.c:205
msgid "“version†takes no arguments"
-msgstr "“version†ne sadrži argumente"
+msgstr "“version†ne prihvaća argumente"
#: gio/gio-tool.c:207 gio/gio-tool.c:223 glib/goption.c:869
msgid "Usage:"
@@ -1633,7 +1657,7 @@ msgstr "Prikaži informacije o lokacijama"
#: gio/gio-tool.c:232
msgid "Launch an application from a desktop file"
-msgstr "Pokreni aplikaciju s desktop datotekom"
+msgstr "Pokreni aplikaciju s datotekom radne površine (.desktop)"
#: gio/gio-tool.c:233
msgid "List the contents of locations"
@@ -1899,12 +1923,12 @@ msgid ""
"Launch an application from a desktop file, passing optional filename "
"arguments to it."
msgstr ""
-"Pokreni datoteku s desktop datoteke, prosljeđujući joj neobavezni naziv "
-"datoteke."
+"Pokreni aplikaciju s datotekom radne površine (.desktop), prosljeđujući joj "
+"neobavezni naziv datoteke."
#: gio/gio-tool-launch.c:77
msgid "No desktop file given"
-msgstr "Nema zadane desktop datoteke"
+msgstr "Nema zadane datoteke radne površine (.desktop)"
#: gio/gio-tool-launch.c:85
msgid "The launch command is not currently supported on this platform"
@@ -2355,7 +2379,7 @@ msgstr "Slijedi simboliÄke poveznice, montiranja i preÄace"
#: gio/gio-tool-tree.c:244
msgid "List contents of directories in a tree-like format."
-msgstr "Prikaži sadržaj direktorija u stablo formatu."
+msgstr "Prikaži sadržaj direktorija u obliku stabla."
#: gio/glib-compile-resources.c:140 gio/glib-compile-schemas.c:1514
#, c-format
@@ -2412,15 +2436,15 @@ msgstr "Greška sažimanja datoteke %s"
msgid "text may not appear inside <%s>"
msgstr "tekst se možda neće pojaviti unutar <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Prikaži inaÄicu programa i izaÄ‘i"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Naziv izlazne datoteke"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2428,47 +2452,47 @@ msgstr ""
"Direktoriji za uÄitavanje datoteka navedenih u DATOTECI (zadano: trenutni "
"direktorij)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "DIREKTORIJ"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
"Stvori izlaz u formatu odabranom od strane proširenja odredišta naziva "
"datoteke"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Stvori zaglavlje izvora"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr "Stvori izvorni kôd korišten za povezivanje datoteke resursa u vaš kôd"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Stvori popis zavisnosti"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Naziv datoteke zavisnosti za stvaranje"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "UkljuÄi lažna odrediÅ¡ta u stvorenu datoteku zavisnosti"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Nemoj automatski stvoriti i registrirati resurs"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Ne izvažaj funkcije; proglasi ih G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2476,11 +2500,15 @@ msgstr ""
"Ne ugrađuj podatak resursa u C datoteku; pretpostavi da je umjesto povezana "
"izvana"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "Naziv C identifikatora korišten za stvoreni izvorni kôd"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "Ciljani C kompilator (zadana: CC varijabla okruženja)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2491,7 +2519,7 @@ msgstr ""
"datoteke .gresource.xml, i datoteka resursa ima\n"
"nastavak vrste datoteke .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Trebali bi zadati najmanje jedan naziv datoteke\n"
@@ -2508,12 +2536,12 @@ msgstr "Nevaljana brojÄana vrijednost"
#: gio/glib-compile-schemas.c:111
#, c-format
msgid "<value nick='%s'/> already specified"
-msgstr "<vrijednost nadimka='%s'/> je već navedena"
+msgstr "<value nick='%s'/> je već naveden"
#: gio/glib-compile-schemas.c:119
#, c-format
msgid "value='%s' already specified"
-msgstr "vrijednost='%s' je već navedena"
+msgstr "value='%s' je već naveden"
#: gio/glib-compile-schemas.c:133
#, c-format
@@ -2523,7 +2551,7 @@ msgstr "vrijednosti oznaka moraju imati najviše postavljen 1 bit"
#: gio/glib-compile-schemas.c:158
#, c-format
msgid "<%s> must contain at least one <value>"
-msgstr "<%s> mora sadržavati najmanje jednu <vrijednost>"
+msgstr "<%s> mora sadržavati najmanje jedan <value>"
#: gio/glib-compile-schemas.c:314
#, c-format
@@ -2543,21 +2571,21 @@ msgstr "<%s> sadrži niz koji nije u navedenoj vrsti oznake"
#: gio/glib-compile-schemas.c:338
#, c-format
msgid "<%s> contains a string not in <choices>"
-msgstr "<%s> sadrži niz koji nije u <odabiru>"
+msgstr "<%s> sadrži niz koji nije u <choices>"
#: gio/glib-compile-schemas.c:372
msgid "<range/> already specified for this key"
-msgstr "<raspon/> je već odreÄ‘en za ovaj kljuÄ"
+msgstr "<range/> je već odreÄ‘en za ovaj kljuÄ"
#: gio/glib-compile-schemas.c:390
#, c-format
msgid "<range> not allowed for keys of type “%sâ€"
-msgstr "<raspon> nije dopuÅ¡ten za kljuÄeve ove vrste “%sâ€"
+msgstr "<range> nije dopuÅ¡ten za kljuÄeve ove vrste “%sâ€"
#: gio/glib-compile-schemas.c:407
#, c-format
msgid "<range> specified minimum is greater than maximum"
-msgstr "<raspon> određeni minimum je veći od maksimuma"
+msgstr "<range> određeni minimum je veći od maksimuma"
#: gio/glib-compile-schemas.c:432
#, c-format
@@ -2575,77 +2603,76 @@ msgstr "sadržaj prijevoda zadan za vrijednosti bez l10n je omogućen"
#: gio/glib-compile-schemas.c:474
#, c-format
msgid "Failed to parse <default> value of type “%sâ€: "
-msgstr "Nemoguća obrada <zadane> vrijednosti vrste “%sâ€: "
+msgstr "Nemoguća obrada <default> vrijednosti vrste “%sâ€: "
#: gio/glib-compile-schemas.c:491
msgid ""
"<choices> cannot be specified for keys tagged as having an enumerated type"
msgstr ""
-"<odabiri> ne mogu biti odreÄ‘eni za kljuÄeve oznaÄene da imaju nabrojanu vrstu"
+"<choices> ne može biti odreÄ‘en za kljuÄeve oznaÄene da imaju popisanu vrstu"
#: gio/glib-compile-schemas.c:500
msgid "<choices> already specified for this key"
-msgstr "<odabiri> su već odreÄ‘eni za ovaj kljuÄ"
+msgstr "<choices> je već odreÄ‘en za ovaj kljuÄ"
#: gio/glib-compile-schemas.c:512
#, c-format
msgid "<choices> not allowed for keys of type “%sâ€"
-msgstr "<odabiri> nisu dopuÅ¡ten za kljuÄ vrste “%sâ€"
+msgstr "<choices> nije dopuÅ¡ten za kljuÄ vrste “%sâ€"
#: gio/glib-compile-schemas.c:528
#, c-format
msgid "<choice value='%s'/> already given"
-msgstr "<vrijednost odabira='%s'/> je već zadana"
+msgstr "<choice value='%s'/> je već zadan"
#: gio/glib-compile-schemas.c:543
#, c-format
msgid "<choices> must contain at least one <choice>"
-msgstr "<odabiri> moraju sadržavati najmanje jedan <odabir>"
+msgstr "<choices> mora sadržavati najmanje jedan <choice>"
#: gio/glib-compile-schemas.c:557
msgid "<aliases> already specified for this key"
-msgstr "<aliasi> su već odreÄ‘eni za ovaj kljuÄ"
+msgstr "<aliases> je već odreÄ‘en za ovaj kljuÄ"
#: gio/glib-compile-schemas.c:561
msgid ""
"<aliases> can only be specified for keys with enumerated or flags types or "
"after <choices>"
msgstr ""
-"<aliasi> mogu biti odreÄ‘eni za nabrojanim kljuÄevima ili vrstama oznake ili "
-"nakon <odabira>"
+"<aliases> može biti odreÄ‘en za kljuÄeve s popisanim ili oznaÄenim vrstama "
+"ili nakon <choices>"
#: gio/glib-compile-schemas.c:580
#, c-format
msgid ""
"<alias value='%s'/> given when “%s†is already a member of the enumerated "
"type"
-msgstr "<vrijednost aliasa='%s'/> zadana kada je “%s†već Älan nabrojane vrste"
+msgstr "<alias value='%s'/> je zadan kada je “%s†već Älan popisane vrste"
#: gio/glib-compile-schemas.c:586
#, c-format
msgid "<alias value='%s'/> given when <choice value='%s'/> was already given"
-msgstr ""
-"<alias vrijednost='%s'/> zadana kada je <vrijednost odabira='%s'/> već zadana"
+msgstr "<alias value='%s'/> je zadan kada je <choice value='%s'/> već zadan"
#: gio/glib-compile-schemas.c:594
#, c-format
msgid "<alias value='%s'/> already specified"
-msgstr "<alias vrijednost='%s'/> je već određena"
+msgstr "<alias value='%s'/> je već određen"
#: gio/glib-compile-schemas.c:604
#, c-format
msgid "alias target “%s†is not in enumerated type"
-msgstr "alias odredište “%s†nije nabrojane vrste"
+msgstr "alias odredište “%s†nije popisana vrste"
#: gio/glib-compile-schemas.c:605
#, c-format
msgid "alias target “%s†is not in <choices>"
-msgstr "alias odredište “%s†nije <odabir>"
+msgstr "alias odredište “%s†nije <choices>"
#: gio/glib-compile-schemas.c:620
#, c-format
msgid "<aliases> must contain at least one <alias>"
-msgstr "<aliasi> moraju sadržavati najmanje jedan <alias>"
+msgstr "<aliases> mora sadržavati najmanje jedan <alias>"
#: gio/glib-compile-schemas.c:797
msgid "Empty names are not permitted"
@@ -2683,16 +2710,16 @@ msgstr "Nevaljani naziv “%sâ€: najveća duljina je 1024"
#: gio/glib-compile-schemas.c:917
#, c-format
msgid "<child name='%s'> already specified"
-msgstr "<sadržani naziv='%s'> je već određen"
+msgstr "<child name='%s'> je već određen"
#: gio/glib-compile-schemas.c:943
msgid "Cannot add keys to a “list-of†schema"
-msgstr "Nemoguće dodavanje kljuÄeva u “popis†shema"
+msgstr "Nemoguće dodavanje kljuÄeva u “list-off†shemu"
#: gio/glib-compile-schemas.c:954
#, c-format
msgid "<key name='%s'> already specified"
-msgstr "<naziv kljuÄa='%s'> je već odreÄ‘en"
+msgstr "<key name='%s'> je već određen"
#: gio/glib-compile-schemas.c:972
#, c-format
@@ -2700,8 +2727,8 @@ msgid ""
"<key name='%s'> shadows <key name='%s'> in <schema id='%s'>; use <override> "
"to modify value"
msgstr ""
-"<naziv kljuÄa='%s'> shadows <naziv kljuÄa='%s'> u <id sheme='%s'>; koristi "
-"<zaobilaženje> za promjenu vrijednosti"
+"<key name='%s'> shadows <key name='%s'> u <schema id='%s'>; koristi "
+"<override> za promjenu vrijednosti"
#: gio/glib-compile-schemas.c:983
#, c-format
@@ -2709,8 +2736,8 @@ msgid ""
"Exactly one of “typeâ€, “enum†or “flags†must be specified as an attribute "
"to <key>"
msgstr ""
-"ToÄno jedan od “vrsteâ€, “nabrajanja†ili “oznake†mora biti odreÄ‘en kao "
-"svojstvo <kljuÄa>"
+"ToÄno jedan od “typeâ€, “enum†ili “flags†mora biti odreÄ‘en kao svojstvo "
+"<key>"
#: gio/glib-compile-schemas.c:1002
#, c-format
@@ -2724,32 +2751,32 @@ msgstr "Nevaljana GVariant vrsta niza “%sâ€"
#: gio/glib-compile-schemas.c:1047
msgid "<override> given but schema isn’t extending anything"
-msgstr "<zaobilaženje> je zadano ali shema ništa ne proširuje"
+msgstr "<override> je zadan ali shema ništa ne proširuje"
#: gio/glib-compile-schemas.c:1060
#, c-format
msgid "No <key name='%s'> to override"
-msgstr "Nema <naziva kljuÄa='%s'> za zaobilaženje"
+msgstr "Nema <key name='%s'> za zaobilaženje"
#: gio/glib-compile-schemas.c:1068
#, c-format
msgid "<override name='%s'> already specified"
-msgstr "<naziv zaobilaženja='%s'> je već određen"
+msgstr "<override name='%s'> je već određen"
#: gio/glib-compile-schemas.c:1141
#, c-format
msgid "<schema id='%s'> already specified"
-msgstr "<id sheme='%s'> je već određen"
+msgstr "<schema id='%s'> je već određen"
#: gio/glib-compile-schemas.c:1153
#, c-format
msgid "<schema id='%s'> extends not yet existing schema “%sâ€"
-msgstr "<id sheme='%s'> proÅ¡irenje joÅ¡ ne proÅ¡iruje postojeću shemu “%sâ€"
+msgstr "<schema id='%s'> joÅ¡ ne proÅ¡iruje postojeću shemu “%sâ€"
#: gio/glib-compile-schemas.c:1169
#, c-format
msgid "<schema id='%s'> is list of not yet existing schema “%sâ€"
-msgstr "<id sheme='%s'> je popis joÅ¡ nepostojeće sheme “%sâ€"
+msgstr "<schema id='%s'> je popis joÅ¡ nepostojeće sheme “%sâ€"
#: gio/glib-compile-schemas.c:1177
#, c-format
@@ -2765,7 +2792,7 @@ msgstr "Ne može proširiti shemu s putanjom"
#, c-format
msgid ""
"<schema id='%s'> is a list, extending <schema id='%s'> which is not a list"
-msgstr "<id sheme='%s'> je popis, proširuje se <id sheme='%s'> koji nije popis"
+msgstr "<schema id='%s'> je popis, proširuje <schema id='%s'> koji nije popis"
#: gio/glib-compile-schemas.c:1207
#, c-format
@@ -2773,8 +2800,8 @@ msgid ""
"<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but “%s†"
"does not extend “%sâ€"
msgstr ""
-"<id sheme='%s' popis ='%s'> proširuje <id sheme='%s' popis='%s'> ali “%s†ne "
-"proÅ¡iruje “%sâ€"
+"<schema id='%s' list-of='%s'> proširuje <schema id='%s' list-of='%s'> ali "
+"“%s†ne proÅ¡iruje “%sâ€"
#: gio/glib-compile-schemas.c:1224
#, c-format
@@ -2812,7 +2839,7 @@ msgstr "Element <%s> nije dopušten na najvišoj razini"
#: gio/glib-compile-schemas.c:1536
msgid "Element <default> is required in <key>"
-msgstr "Element <zadan> je potreban u <kljuÄu>"
+msgstr "Element <default> je potreban u <key>"
#: gio/glib-compile-schemas.c:1626
#, c-format
@@ -2822,7 +2849,7 @@ msgstr "Tekst se možda neće pojaviti unutar <%s>"
#: gio/glib-compile-schemas.c:1694
#, c-format
msgid "Warning: undefined reference to <schema id='%s'/>"
-msgstr "Upozorenje: neodređena napomena na <id sheme='%s'/>"
+msgstr "Upozorenje: neodređena napomena u <schema id='%s'/>"
#. Translators: Do not translate "--strict".
#: gio/glib-compile-schemas.c:1833 gio/glib-compile-schemas.c:1912
@@ -3280,13 +3307,13 @@ msgstr "Greška stvaranja kopije sigurnosnog kopiranja: %s"
msgid "Error renaming temporary file: %s"
msgstr "Greška preimenovanja privremene datoteke: %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "Greška skraćivanja datoteke: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "GreÅ¡ka otvaranja datoteke “%sâ€: %s"
@@ -3308,7 +3335,7 @@ msgstr "Datoteka je promijenjena izvana"
msgid "Error removing old file: %s"
msgstr "Greška uklanjanja stare datoteke: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Nevaljana GSeekType je pružana"
@@ -3320,15 +3347,15 @@ msgstr "Neispravan zahtjev premotavanja"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Nemoguće je skratiti GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Memoriji izlaznog strujanja ne može se mijenjati veliÄina"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Nemoguća promjena veliÄine memorije izlaznog strujanja"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3336,11 +3363,11 @@ msgstr ""
"KoliÄina memorije potrebna za obradu zapisa većeg od dostupnog adresiranog "
"prostora"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Zatraženo premotavanje prije poÄetka strujanja"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Zatraženo premotavanje izvan završetka strujanja"
@@ -3349,36 +3376,35 @@ msgstr "Zatraženo premotavanje izvan završetka strujanja"
#. * don't implement unmount.
#: gio/gmount.c:399
msgid "mount doesn’t implement “unmountâ€"
-msgstr "montiranje nema implementirano “odmontiravanjeâ€"
+msgstr "montiranje nema implementirano “unmountâ€"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement eject.
#: gio/gmount.c:475
msgid "mount doesn’t implement “ejectâ€"
-msgstr "montiranje nema implementirano “izbacivanjeâ€"
+msgstr "montiranje nema implementirano “ejectâ€"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement any of unmount or unmount_with_operation.
#: gio/gmount.c:553
msgid "mount doesn’t implement “unmount†or “unmount_with_operationâ€"
-msgstr ""
-"montiranje nema implementirano “odmontiravanje†ili “odmotiraj_s_radnjomâ€"
+msgstr "montiranje nema implementirano “unmount†ili “unmount_with_operationâ€"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement any of eject or eject_with_operation.
#: gio/gmount.c:638
msgid "mount doesn’t implement “eject†or “eject_with_operationâ€"
-msgstr "montiranje nema implementirano “izbacivanje†ili “izbaci_s_radnjomâ€"
+msgstr "montiranje nema implementirano “eject†ili “eject_with_operationâ€"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement remount.
#: gio/gmount.c:726
msgid "mount doesn’t implement “remountâ€"
-msgstr "montiranje nema implementirano “ponovno montiranjeâ€"
+msgstr "montiranje nema implementirano “remountâ€"
#. Translators: This is an error
#. * message for mount objects that
@@ -3397,7 +3423,7 @@ msgstr "montiranje nema implementirano sinkrono pogađanje vrste sadržaja"
#: gio/gnetworkaddress.c:415
#, c-format
msgid "Hostname “%s†contains “[†but not “]â€"
-msgstr "Naziv raÄunala “%s†sadrži “[†ali ne “]â€"
+msgstr "Naziv raÄunala “%s†sadrži “[†ali ne i “]â€"
#: gio/gnetworkmonitorbase.c:219 gio/gnetworkmonitorbase.c:323
msgid "Network unreachable"
@@ -3444,18 +3470,22 @@ msgstr "Zbroj vektora proslijeđenih u %s je prevelik"
msgid "Source stream is already closed"
msgstr "Izvor strujanja je već zatvoren"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "GreÅ¡ka razrjeÅ¡avanja “%sâ€: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s nije impelmentiran"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Neispravna domena"
@@ -3570,7 +3600,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " ODJELJAK (Neobavezni) elf naziv odjeljka\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " Naredba (Neobavezna) naredba objašnjenja\n"
@@ -3602,7 +3632,7 @@ msgstr "PUTANJA"
msgid " PATH A resource path\n"
msgstr " PUTANJA Putanja resursa\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Nema takve sheme “%sâ€\n"
@@ -3633,35 +3663,35 @@ msgstr "Putanja mora završavati s kosom crtom (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Putanja ne smije sadržavati dvije uzastopne kose crte (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
-msgstr "Pružene vrijednosti su izvan valjanog raspona\n"
+msgstr "Navedene vrijednosti su izvan valjanog raspona\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "KljuÄ nije zapisiv\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Prikaži instalirane (nepremjestive) sheme"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Prikaži instalirane premjestive sheme"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Prikaži kljuÄeve U SHEMI"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "SHEMA[:PUTANJA]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Prikaži podsadržaj SHEME"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3669,48 +3699,48 @@ msgstr ""
"Prikaži kljuÄeve i vrijednosti, rekruzivno\n"
"Ako nema zadane SHEME, prikaži sve kljuÄeve\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SHEMA[:PUTANJA]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Nabavi vrijednost KLJUÄŒA"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "SHEMA[:PUTANJA] KLJUČ"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Upitaj za raspon valjanih vrijednosti KLJUÄŒA"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Upitaj za opis KLJUÄŒA"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Postavi vrijednost KLJUÄŒA u VRIJEDNOST"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SHEMA[:PUTANJA] VRIJEDNOST KLJUÄŒA"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Vrati KLJUČ na njegovu zadanu vrijednost"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Vrati sve kljuÄeve u SHEMI na njihove zadane vrijednosti"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Provjeri je li KLJUČ zapisiv"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3720,11 +3750,11 @@ msgstr ""
"Ako KLJUÄŒ nije naveden, nadgledaj sve kljuÄeve u SHEMI.\n"
"Koristite ^C za zaustavljanje nadgledanja.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SHEMA[:PUTANJA] [KLJUČ]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3772,7 +3802,7 @@ msgstr ""
"Koristite “gsettings help NAREDBA†za opširniju pomoć.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3787,11 +3817,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " DIREKTORIJ SHEME Direktorij za pretragu dodatnih shema\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3799,213 +3829,213 @@ msgstr ""
" SHEMA Naziv sheme\n"
" PUTANJA Putanja, za premjestive sheme\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " KLJUÄŒ (Neobavezno) kljuÄ sadržan unutar sheme\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " KLJUÄŒ KljuÄ sadržan unutar sheme\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " VRIJEDNOST Vrijednost za postaviti\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Nemoguće uÄitavanje sheme iz %s: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Nema instaliranih shema\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Zadan je prazan naziv sheme\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Nema takvog kljuÄa “%sâ€\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Nevaljana prikljuÄnica, nije pokrenuto"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Nevaljana prikljuÄnica, neuspjelo pokretanje zbog: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "PrikljuÄnica je već zatvorena"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Istek vremena U/I prikljuÄnice"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "stvaranje GSocketa iz fd: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Nemoguće stvaranje prikljuÄnice: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Navedena je nepoznata obitelj"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Naveden je nepoznat protokol"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "Nemoguće koriÅ¡tenje datagram radnji na ne-datagram prikljuÄnici."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Nemoguće koriÅ¡tenje datagram radnji na prikljuÄnici s postavljenim istekom "
"vremena."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "nemoguće dobivanje lokalne adrese: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "nemoguće dobivanje udaljene adrese: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "nemoguće osluškivanje: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Greška povezivanja s adresom %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Greška pridruživanja multicast grupi: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Greška napuštanja multicast grupe: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Nema podrške za izvorom-određeni multicast"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Nepodržana obitelj prikljuÄnice"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "izvorom-određeno nije IPv4 adresa"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Naziv suÄelja je predugaÄak"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "SuÄelje nije pronaÄ‘eno: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "Nema podrške za IPv4 izvorom-određeni multicast"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "Nema podrške za IPv6 izvorom-određeni multicast"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Greška prihvaćanja povezivanja: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Povezivanje u tijeku"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Nemoguće dobivanje greÅ¡ke Äekanja: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Greška primanja podataka: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Greška slanja podataka: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Nemoguće iskljuÄivanje prikljuÄnice: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "GreÅ¡ka zatvaranja prikljuÄnice: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "ÄŒekanje stanja prikljuÄnice: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Nemoguće slanje poruke: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Vektori poruke su preveliki"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Greška slanja poruke: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage nije podržano na Windowsima"
-#: gio/gsocket.c:5499 gio/gsocket.c:5575 gio/gsocket.c:5801
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Greška primanja poruke: %s"
-#: gio/gsocket.c:6074 gio/gsocket.c:6085 gio/gsocket.c:6131
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Nemoguće Äitanje vjerodajnice prikljuÄnice: %s"
-#: gio/gsocket.c:6140
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "g_socket_get_credentials nije implemetirano za ovaj OS"
@@ -4023,11 +4053,11 @@ msgstr "Nemoguće povezivanje sa %s: "
msgid "Could not connect: "
msgstr "Nemoguće povezivanje: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "Proxyiranje putem ne-TCP povezivanja nije podržano."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Proxy protokol “%s†još nije podržan."
@@ -4126,6 +4156,17 @@ msgstr "SOCKSv5 proxy ne podržava navedenu vrstu adrese."
msgid "Unknown SOCKSv5 proxy error."
msgstr "Nepoznata SOCKSv5 proxy greška."
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
+#, c-format
+msgid "Failed to create pipe for communicating with child process (%s)"
+msgstr ""
+"Neuspjelo stvaranje slivnika za komunikaciju s podređenim procesom (%s)"
+
+#: gio/gtestdbus.c:619
+#, c-format
+msgid "Pipes are not supported in this platform"
+msgstr "Slivnici nisu podržani na ovoj platformi"
+
#: gio/gthemedicon.c:595
#, c-format
msgid "Can’t handle version %d of GThemedIcon encoding"
@@ -4140,44 +4181,66 @@ msgstr "Nema pronađenih valjanih adresa"
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "GreÅ¡ka obrnutog razrjeÅ¡avanja “%sâ€: %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr "Greška obrade DNS %s zapisa: oštećen DNS paket"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "Nema DNS zapisa zahtijevane vrste za “%sâ€"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "Privremeno nedostupno za razrjeÅ¡avanje “%sâ€"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "GreÅ¡ka razrjeÅ¡avanja “%sâ€"
-#: gio/gtlscertificate.c:431
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Oštećen DNS paket"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "Neuspjela obrada DNS odgovora za “%sâ€: "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Nema pronaÄ‘enog PEM-kôdiranog privatnog kljuÄa"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Nemoguće deÅ¡ifriranje PEM-kôdiranog privatnog kljuÄa"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Nemoguća obrada PEM-kôdiranog privatnog kljuÄa"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Nema pronađene PEM-kôdirane vjerodajnice"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Nemoguća obrada PEM-kôdirane vjerodajnice"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "Trenutni TLS pozadinski program ne podržava PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "GTlsBackend ne podržava stvaranje PKCS #11 vjerodajnica"
@@ -4203,7 +4266,11 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "Upisana lozinka je neispravna."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "FD slanje nije podržano"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
@@ -4211,11 +4278,11 @@ msgstr[0] "OÄekivana je 1 kontrolna poruka, dobivena je %d"
msgstr[1] "OÄekivana je 1 kontrolna poruka, dobivene su %d"
msgstr[2] "OÄekivana je 1 kontrolna poruka, dobiveno je %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "NeoÄekivana vrsta pomoćnih podataka"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
@@ -4223,37 +4290,41 @@ msgstr[0] "OÄekivan je jedan fd, ali dobiven je %d\n"
msgstr[1] "OÄekivan je jedan fd, ali dobivena su %d\n"
msgstr[2] "OÄekivan je jedan fd, ali dobiveno je %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Primljen je nevaljani fd"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "FD primanje nije podržano"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Greška slanja vjerodajnica: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "GreÅ¡ka provjere je li SO_PASSCRED omogućen za prikljuÄnicu: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Greška omgućavanja SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"OÄekivano Äitanje je jedan bajt primljenih vjerodajnica ali oÄitano je nula "
"bajta"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Ne oÄekuje se kontrolna poruka, ali dobivena je %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Greška onemogućavanja SO_PASSCRED: %s"
@@ -4269,7 +4340,7 @@ msgstr "GreÅ¡ka Äitanja iz opisnika datoteke: %s"
msgid "Error closing file descriptor: %s"
msgstr "Greška zatvaranja opisnika datoteke: %s"
-#: gio/gunixmounts.c:2782 gio/gunixmounts.c:2835
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Korijenski datoteÄni sustav"
@@ -4280,7 +4351,7 @@ msgstr "Korijenski datoteÄni sustav"
msgid "Error writing to file descriptor: %s"
msgstr "Greška zapisivanja u opisnik datoteke: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "Sažeta UNIX domena prikljuÄnice adrese nije podržana na ovom sustavu"
@@ -4430,8 +4501,8 @@ msgstr "Neuspjelo proÅ¡irivanje redka izvrÅ¡avanja “%s†sa URI-jem “%sâ€"
msgid "Unrepresentable character in conversion input"
msgstr "Nereprezentativni znak u ulazu pretvorbe"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1084 glib/gutf8.c:1221
-#: glib/gutf8.c:1325
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Nedovršeni niz znakova na kraju ulaza"
@@ -4745,62 +4816,62 @@ msgstr "Ned"
#: glib/gdatetime.c:468
msgctxt "full month name with day"
msgid "January"
-msgstr "sijeÄnja"
+msgstr "sijeÄanj"
#: glib/gdatetime.c:470
msgctxt "full month name with day"
msgid "February"
-msgstr "veljaÄe"
+msgstr "veljaÄa"
#: glib/gdatetime.c:472
msgctxt "full month name with day"
msgid "March"
-msgstr "ožujka"
+msgstr "ožujak"
#: glib/gdatetime.c:474
msgctxt "full month name with day"
msgid "April"
-msgstr "travnja"
+msgstr "travanj"
#: glib/gdatetime.c:476
msgctxt "full month name with day"
msgid "May"
-msgstr "svibnja"
+msgstr "svibanj"
#: glib/gdatetime.c:478
msgctxt "full month name with day"
msgid "June"
-msgstr "lipnja"
+msgstr "lipanj"
#: glib/gdatetime.c:480
msgctxt "full month name with day"
msgid "July"
-msgstr "srpnja"
+msgstr "srpanj"
#: glib/gdatetime.c:482
msgctxt "full month name with day"
msgid "August"
-msgstr "kolovoza"
+msgstr "kolovoz"
#: glib/gdatetime.c:484
msgctxt "full month name with day"
msgid "September"
-msgstr "rujna"
+msgstr "rujan"
#: glib/gdatetime.c:486
msgctxt "full month name with day"
msgid "October"
-msgstr "listopada"
+msgstr "listopad"
#: glib/gdatetime.c:488
msgctxt "full month name with day"
msgid "November"
-msgstr "studenoga"
+msgstr "studeni"
#: glib/gdatetime.c:490
msgctxt "full month name with day"
msgid "December"
-msgstr "prosinca"
+msgstr "prosinac"
#. Translators: Some languages need different grammatical forms of
#. * month names depending on whether they are standalone or in a full
@@ -4896,7 +4967,7 @@ msgstr "PM"
msgid "Error opening directory “%sâ€: %s"
msgstr "GreÅ¡ka otvaranja direktorija “%sâ€: %s"
-#: glib/gfileutils.c:738 glib/gfileutils.c:830
+#: glib/gfileutils.c:733 glib/gfileutils.c:825
#, c-format
msgid "Could not allocate %lu byte to read file “%sâ€"
msgid_plural "Could not allocate %lu bytes to read file “%sâ€"
@@ -4904,72 +4975,72 @@ msgstr[0] "Nemoguće dodjeljivanje %lu bajta u datoteku Äitanja “%sâ€"
msgstr[1] "Nemoguće dodjeljivanje %lu bajta u datoteku Äitanja “%sâ€"
msgstr[2] "Nemoguće dodjeljivanje %lu bajta u datoteku Äitanja “%sâ€"
-#: glib/gfileutils.c:755
+#: glib/gfileutils.c:750
#, c-format
msgid "Error reading file “%sâ€: %s"
msgstr "GreÅ¡ka Äitanja datoteke “%sâ€: %s"
-#: glib/gfileutils.c:791
+#: glib/gfileutils.c:786
#, c-format
msgid "File “%s†is too large"
msgstr "Datoteka “%s†je prevelika"
-#: glib/gfileutils.c:855
+#: glib/gfileutils.c:850
#, c-format
msgid "Failed to read from file “%sâ€: %s"
msgstr "Neuspjelo Äitanje iz datoteke “%sâ€: %s"
-#: glib/gfileutils.c:905 glib/gfileutils.c:980 glib/gfileutils.c:1469
+#: glib/gfileutils.c:900 glib/gfileutils.c:975 glib/gfileutils.c:1447
#, c-format
msgid "Failed to open file “%sâ€: %s"
msgstr "Nemoguće otvaranje datoteke “%s“: %s"
-#: glib/gfileutils.c:918
+#: glib/gfileutils.c:913
#, c-format
msgid "Failed to get attributes of file “%sâ€: fstat() failed: %s"
msgstr "Neuspjelo dobivanje svojstva datoteke “%sâ€: fstat() neuspio: %s"
-#: glib/gfileutils.c:949
+#: glib/gfileutils.c:944
#, c-format
msgid "Failed to open file “%sâ€: fdopen() failed: %s"
msgstr "Neuspjelo otvaranje datoteke “%sâ€: fdopen() neuspio: %s"
-#: glib/gfileutils.c:1050
+#: glib/gfileutils.c:1045
#, c-format
msgid "Failed to rename file “%s†to “%sâ€: g_rename() failed: %s"
msgstr "Neuspjelo preimenovanje datoteke “%s†u “%sâ€: g_rename() neuspio: %s"
-#: glib/gfileutils.c:1176
+#: glib/gfileutils.c:1154
#, c-format
msgid "Failed to write file “%sâ€: write() failed: %s"
msgstr "Neuspjelo zapisivanje datoteke “%sâ€: write() neuspio: %s"
-#: glib/gfileutils.c:1197
+#: glib/gfileutils.c:1175
#, c-format
msgid "Failed to write file “%sâ€: fsync() failed: %s"
msgstr "Neuspjelo zapisivanje datoteke “%sâ€: fsync() neuspio: %s"
-#: glib/gfileutils.c:1358 glib/gfileutils.c:1773
+#: glib/gfileutils.c:1336 glib/gfileutils.c:1751
#, c-format
msgid "Failed to create file “%sâ€: %s"
msgstr "Neuspjelo stvaranje datoteke \"%s\": %s"
-#: glib/gfileutils.c:1403
+#: glib/gfileutils.c:1381
#, c-format
msgid "Existing file “%s†could not be removed: g_unlink() failed: %s"
msgstr "Postojeća datoteka “%s†se ne može ukloniti: g_unlink() neuspio: %s"
-#: glib/gfileutils.c:1738
+#: glib/gfileutils.c:1716
#, c-format
msgid "Template “%s†invalid, should not contain a “%sâ€"
msgstr "Predložak “%s†je nevaljan, ne smije sadržavati “%sâ€"
-#: glib/gfileutils.c:1751
+#: glib/gfileutils.c:1729
#, c-format
msgid "Template “%s†doesn’t contain XXXXXX"
msgstr "Predložak “%s†ne sadrži XXXXXX"
-#: glib/gfileutils.c:2311 glib/gfileutils.c:2340
+#: glib/gfileutils.c:2289 glib/gfileutils.c:2318
#, c-format
msgid "Failed to read the symbolic link “%sâ€: %s"
msgstr "Neuspjelo Äitanje simboliÄke poveznice “%sâ€: %s"
@@ -4995,15 +5066,15 @@ msgstr "Kanal završava sa nedovršenim znakom"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Neuspjelo neobraÄ‘eno Äitanje u g_io_channel_read_to_end"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "Valjana datoteka kljuÄa se ne može pronaći u direktorijima pretrage"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Nije uobiÄajena datoteka"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5011,43 +5082,43 @@ msgstr ""
"Datoteka kljuÄa sadrži redak “%s†koji nije par kljuÄ-vrijednost, grupa ili "
"komentar"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Nevaljani naziv grupe: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Datoteka kljuÄa ne zapoÄinje s grupom"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Nevaljani naziv kljuÄa: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Nevaljani naziv kljuÄa: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Datoteka kljuÄa sadrži nepodržano kôdiranje “%sâ€"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Datoteka kljuÄa nema grupe “%sâ€"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Datoteka kljuÄa nema kljuÄ â€œ%s†u grupi “%sâ€"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "Datoteka kljuÄa sadrži kljuÄ â€œ%s†s vrijednošću “%s†koja nije UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
@@ -5055,7 +5126,7 @@ msgstr ""
"Datoteka kljuÄa sadrži kljuÄ â€œ%s†s vrijednošću koja se ne može "
"interperetirati."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5064,36 +5135,36 @@ msgstr ""
"Datoteka kljuÄa sadrži kljuÄ â€œ%s†u grupi “%s†s vrijednošću koja se ne može "
"interperetirati."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "KljuÄ â€œ%s†u grupi “%s†ima vrijednost “%s†gdje je %s oÄekivan"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Datoteka kljuÄa sadrži escape znak na kraju redka"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Datoteka kljuÄa sadrži nevaljani escape niz “%sâ€"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "Vrijednost “%s†se ne može tumaÄiti kao broj."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "Cjelobrojna vrijednost \"%s\" je izvan raspona"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "Vrijednost \"%s\" ne može se tumaÄiti kao decimalni broj."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "Vrijednost \"%s\" ne može se tumaÄiti kao bool varijable."
@@ -5313,15 +5384,13 @@ msgstr "Dokument je neoÄekivano zavrÅ¡io unutar vrijednosti svojstva"
#: glib/gmarkup.c:1876
#, c-format
msgid "Document ended unexpectedly inside the close tag for element “%sâ€"
-msgstr ""
-"Dokument je neoÄekivano zavrÅ¡io unutar oznake zatvaranja za element “%sâ€"
+msgstr "Dokument je neoÄekivano zavrÅ¡io unutar zavrÅ¡ne oznake za element “%sâ€"
#: glib/gmarkup.c:1880
msgid ""
"Document ended unexpectedly inside the close tag for an unopened element"
msgstr ""
-"Dokument je neoÄekivano zavrÅ¡io unutar oznake zatvaranja za neotvoreni "
-"element"
+"Dokument je neoÄekivano zavrÅ¡io unutar zavrÅ¡ne oznake za neotvoreni element"
#: glib/gmarkup.c:1886
msgid "Document ended unexpectedly inside a comment or processing instruction"
@@ -5381,7 +5450,7 @@ msgstr "Greška obrade mogućnosti %s"
msgid "Missing argument for %s"
msgstr "Nedostaje parametar za %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Nepoznata mogućnost %s"
@@ -5782,123 +5851,133 @@ msgstr "Tekst je bio prazan (ili je sadržavao samo razmake)"
msgid "Failed to read data from child process (%s)"
msgstr "Neuspjelo Äitanje podataka iz podreÄ‘enog procesa (%s)"
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "NeoÄekivana greÅ¡ka u Äitanju podataka podreÄ‘enog procesa (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "NeoÄekivana greÅ¡ka u waitpid() (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "Podređeni proces se zatvorio s kôdom %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Podređeni proces je ubio signal %ld"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Podređeni proces je zaustavio signal %ld"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Podređeni proces se zatvorio abnormalno"
-#: glib/gspawn.c:1855 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Neuspjelo Äitanje iz podreÄ‘enog slivnika (%s)"
-#: glib/gspawn.c:2157
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Neuspjelo pokretanje podređenog procesa “%s†(%s)"
-#: glib/gspawn.c:2274
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Neuspjelo grananje (%s)"
-#: glib/gspawn.c:2434 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Neuspjela promjena direktorija “%s†(%s)"
-#: glib/gspawn.c:2444
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Neuspjelo pokretanje podređenog procesa “%s†(%s)"
-#: glib/gspawn.c:2454
+#: glib/gspawn.c:2550
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Neuspjelo preusmjeravanje izlaza ili ulaza podređenog procesa (%s)"
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr ""
+"Neuspjelo otvaranje datoteke za ponovno mapiranje opisnika datoteke (%s)"
+
+#: glib/gspawn.c:2558
+#, c-format
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Neuspjelo udvostruÄavanje opisnika datoteke za podreÄ‘eni proces (%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Neuspjelo grananje podređenog procesa (%s)"
-#: glib/gspawn.c:2471
+#: glib/gspawn.c:2575
+#, c-format
+msgid "Failed to close file descriptor for child process (%s)"
+msgstr "Neuspjelo zatvaranje opisnika datoteke za podređeni proces (%s)"
+
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Nepoznata greÅ¡ka pokretanja podreÄ‘enog procesa “%sâ€"
-#: glib/gspawn.c:2495
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr ""
"Neuspjelo Äitanje dovoljno podataka iz id procesa podreÄ‘enog slivnika (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Neuspjelo Äitanje podataka iz podreÄ‘enog procesa"
-#: glib/gspawn-win32.c:311
-#, c-format
-msgid "Failed to create pipe for communicating with child process (%s)"
-msgstr ""
-"Neuspjelo stvaranje slivnika za komunikaciju s podređenim procesom (%s)"
-
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Neuspjelo pokretanje podređenog procesa (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Neuspio dup() u podređenom procesu (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Nevaljani naziv programa: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Nevaljan niz znakova u vektoru argumenta na %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Nevaljan niz znakova u okružju: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Nevaljan radni direktorij: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Neuspjelo pokretanje programa pomoći (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -5906,21 +5985,21 @@ msgstr ""
"NeoÄekivana greÅ¡ka u g_io_channel_win32_poll() Äitanju podataka podreÄ‘enog "
"procesa"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Prazan niz znakova nije broj"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "“%s†nije potpisani broj"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Broj “%s†je izvan granica [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "“%s†nije nepotpisani broj"
@@ -5973,176 +6052,176 @@ msgstr "URI '%s' nije apsolutni URI"
msgid "URI ‘%s’ has no host component"
msgstr "URI ‘%s’ nema komponentu poslužitelja"
-#: glib/guri.c:1435
+#: glib/guri.c:1460
msgid "URI is not absolute, and no base URI was provided"
msgstr "URI nije apsolutan, i nema navednog osnovnog URI-ja"
-#: glib/guri.c:2213
+#: glib/guri.c:2238
msgid "Missing ‘=’ and parameter value"
msgstr "Nedostaje ‘=’ i vrijednost parametra"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Neuspjela preraspodjela memorije"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Znak je izvan raspona za UTF-8"
-#: glib/gutf8.c:1052 glib/gutf8.c:1061 glib/gutf8.c:1191 glib/gutf8.c:1200
-#: glib/gutf8.c:1339 glib/gutf8.c:1436
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Neispravan niz u ulazu pretvorbe"
-#: glib/gutf8.c:1350 glib/gutf8.c:1447
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Znak je izvan raspona za UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2739
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2741
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2743
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2745
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2747
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2749
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2753
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2755
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2757
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2759
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2761
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2763
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2767
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2769
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2771
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2773
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2775
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2777
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2781
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2783
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2785
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2787
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2789
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2791
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2825 glib/gutils.c:2942
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
@@ -6150,7 +6229,7 @@ msgstr[0] "%u bajt"
msgstr[1] "%u bajta"
msgstr[2] "%u bajtova"
-#: glib/gutils.c:2829
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6159,7 +6238,7 @@ msgstr[1] "%u bita"
msgstr[2] "%u bitova"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2896
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6168,7 +6247,7 @@ msgstr[1] "%s bajta"
msgstr[2] "%s bajtova"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2901
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6181,32 +6260,32 @@ msgstr[2] "%s bitova"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2955
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2960
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2965
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:2970
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:2975
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:2980
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
diff --git a/po/hu.po b/po/hu.po
index 1475365bb..78d4504ba 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -10,8 +10,8 @@ msgid ""
msgstr ""
"Project-Id-Version: glib master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-02-01 17:05+0000\n"
-"PO-Revision-Date: 2022-03-10 20:43+0100\n"
+"POT-Creation-Date: 2022-02-14 13:48+0000\n"
+"PO-Revision-Date: 2022-03-10 20:41+0100\n"
"Last-Translator: Balázs Úr <ur.balazs at fsf dot hu>\n"
"Language-Team: Hungarian <gnome-hu-list at gnome dot org>\n"
"Language: hu\n"
@@ -21,30 +21,42 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Lokalize 19.12.3\n"
-#: gio/gapplication.c:500
+#: gio/gappinfo.c:333
+#| msgid "Setting attribute %s not supported"
+msgid "Setting default applications not supported yet"
+msgstr "Az alapértelmezett alkalmazások beállítása még nem támogatott"
+
+#: gio/gappinfo.c:366
+#| msgid "Setting attribute %s not supported"
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"Az alkalmazás legutóbb használtként beállítása egy adott típushoz még nem "
+"támogatott"
+
+#: gio/gapplication.c:497
msgid "GApplication options"
msgstr "GApplication kapcsolói"
-#: gio/gapplication.c:500
+#: gio/gapplication.c:497
msgid "Show GApplication options"
msgstr "A GApplication kapcsolóinak megjelenítése"
-#: gio/gapplication.c:545
+#: gio/gapplication.c:542
msgid "Enter GApplication service mode (use from D-Bus service files)"
msgstr ""
"Belépés GApplication szolgáltatásmódba (használja D-Bus "
"szolgáltatásfájlokból)"
-#: gio/gapplication.c:557
+#: gio/gapplication.c:554
msgid "Override the application’s ID"
msgstr "Alkalmazások azonosítójának felülbírálása"
-#: gio/gapplication.c:569
+#: gio/gapplication.c:566
msgid "Replace the running instance"
msgstr "A futó példány cseréje"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Súgó kiírása"
@@ -56,7 +68,7 @@ msgstr "[PARANCS]"
msgid "Print version"
msgstr "Verzió kiírása"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Verzióinformációk kiírása és kilépés"
@@ -119,8 +131,8 @@ msgstr "Részletes súgó kiírása ezen parancshoz"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Alkalmazásazonosító D-Bus formátumban (például: org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "FÃJL"
@@ -145,7 +157,7 @@ msgstr "PARAMÉTER"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "A művelethívás elhagyható paramétere GVariant formátumban"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -159,7 +171,7 @@ msgid "Usage:\n"
msgstr "Használat:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argumentumok:\n"
@@ -283,7 +295,7 @@ msgstr "Az adatfolyam már le van zárva"
msgid "Truncate not supported on base stream"
msgstr "Az alap adatfolyam csonkítása nem engedélyezett"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -304,7 +316,7 @@ msgstr "Nincs elég hely a célon"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Érvénytelen bájtsorrend az átalakítás bemenetében"
@@ -314,7 +326,7 @@ msgstr "Érvénytelen bájtsorrend az átalakítás bemenetében"
msgid "Error during conversion: %s"
msgstr "Hiba az átalakításkor: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "A megszakítható előkészítés nem támogatott"
@@ -330,7 +342,7 @@ msgstr ""
"A(z) „%s†karakterkészletről „%s†karakterkészletre átalakító nem nyitható "
"meg"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "%s típus"
@@ -344,23 +356,23 @@ msgstr "Ismeretlen típus"
msgid "%s filetype"
msgstr "%s fájltípus"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "A GCredentials érvénytelen adatot tartalmaz"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "A GCredentials nincs megvalósítva ezen a rendszeren"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "A platformhoz nincs GCredentials támogatás"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "A GCredentials nem tartalmaz folyamatazonosítót ezen a rendszeren"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "A hitelesítési adatok hamisítása nincs megvalósítva ezen a rendszeren"
@@ -368,17 +380,17 @@ msgstr "A hitelesítési adatok hamisítása nincs megvalósítva ezen a rendsze
msgid "Unexpected early end-of-stream"
msgstr "Váratlan korai adatfolyam vége"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Nem támogatott „%s†kulcs a(z) „%s†címbejegyzésben"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Értelmetlen kulcs-érték pár kombináció a(z) „%s†címbejegyzésben"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -387,28 +399,28 @@ msgstr ""
"A(z) „%s†cím érvénytelen (csak az útvonal, könyvtár, tmp könyvtár vagy "
"absztrakt kulcsok egyike lehet)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Hiba a(z) „%s†címben – a(z) „%s†attribútum rosszul formázott"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Ismeretlen vagy nem támogatott szállítás („%sâ€) a címhez („%sâ€)"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "A(z) „%s†címelem nem tartalmaz kettőspontot (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "Az átvitel neve a(z) „%s†címelemben nem lehet üres"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -416,14 +428,14 @@ msgid ""
msgstr ""
"%d. kulcs-érték pár: „%s†a(z) „%s†címelemben nem tartalmaz egyenlőségjelet"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
msgstr ""
"%d. kulcs-érték pár: „%s†a(z) „%s†címelemben nem tartalmazhat üres kulcsot"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -432,7 +444,7 @@ msgstr ""
"Hiba a(z) „%3$s†címelemben található a(z) %1$d. kulcs-érték párban lévő "
"„%2$s†kulcs vagy érték értelmezésekor"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -441,81 +453,82 @@ msgstr ""
"Hiba a(z) „%s†címben – a unix szállítás a „path†vagy „abstract†kulcsok "
"pontosan egyikének jelenlétét igényli"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr ""
"Hiba a(z) „%s†címben – a host attribútum hiányzik vagy rosszul formázott"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr ""
"Hiba a(z) „%s†címben – a port attribútum hiányzik vagy rosszul formázott"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Hiba a(z) „%s†címben – a noncefile attribútum hiányzik vagy rosszul "
"formázott"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Hiba az automatikus indításkor: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Hiba a(z) „%s†ideiglenes fájl megnyitásakor: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Hiba a(z) „%s†ideiglenes fájl olvasásakor: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"Hiba a(z) „%s†ideiglenes fájl olvasásakor, a várt 16 bájt helyett %d "
"érkezett"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Hiba az ideiglenes fájl („%sâ€) tartalmának írásakor az adatfolyamba:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "A megadott cím üres"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Nem indítható üzenetbusz setuid módban"
+#| msgid "Cannot spawn a message bus when setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "Nem indítható üzenetbusz, ha az AT_SECURE be van állítva"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "Nem indítható üzenetbusz gépazonosító nélkül: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Nem indítható automatikusan a D-Bus X11 $DISPLAY nélkül"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Hiba a(z) „%s†parancssor indításakor: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Nem határozható meg a munkamenetbusz címe (nincs megvalósítva erre az OS-re)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7334
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -524,7 +537,7 @@ msgstr ""
"Nem határozható meg a busz címe a DBUS_STARTER_BUS_TYPE környezeti "
"változóból – ismeretlen „%s†érték"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7343
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -532,7 +545,7 @@ msgstr ""
"Nem határozható meg a busz címe, mivel a DBUS_STARTER_BUS_TYPE környezeti "
"változó nincs beállítva"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Ismeretlen busztípus: %d"
@@ -564,12 +577,12 @@ msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr ""
"Megszakítva a GDBusAuthObserver::authorize-authenticated-peer használatával"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:299
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Hiba a(z) „%s†könyvtár információinak lekérésekor: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:314
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -577,32 +590,32 @@ msgstr ""
"A(z) „%s†könyvtár jogosultságai rosszul formázottak. A várt 0700 mód "
"helyett 0%o érkezett."
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:347 gio/gdbusauthmechanismsha1.c:358
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Hiba a(z) %s könyvtár létrehozásakor: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:360 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "A művelet nem támogatott"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:403
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Hiba a(z) „%s†kulcstartó megnyitásakor olvasásra: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:426 gio/gdbusauthmechanismsha1.c:748
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "A(z) „%2$s†kulcstartó „%3$s†tartalmú „%1$dâ€. sora rosszul formázott"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:440 gio/gdbusauthmechanismsha1.c:762
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -610,7 +623,7 @@ msgstr ""
"A(z) „%2$s†kulcstartó „%3$s†tartalmú „%1$dâ€. sorának elsÅ‘ egysége rosszul "
"formázott"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:454 gio/gdbusauthmechanismsha1.c:776
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -618,37 +631,37 @@ msgstr ""
"A(z) „%2$s†kulcstartó „%3$s†tartalmú „%1$dâ€. sorának második egysége "
"rosszul formázott"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:478
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Nem található %d azonosítójú süti a kulcstartóban itt: „%s â€"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:524
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Hiba a(z) „%s†zárolási fájl létrehozásakor: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:588
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Hiba az elavult „%s†zárolásfájl törlésekor: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:627
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Hiba a (törölt) „%s†zárolási fájl lezárásakor: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:638
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Hiba a(z) „%s†zárolási fájl törlésekor: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:715
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Hiba a(z) „%s†kulcstartó írásra való megnyitásakor: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:909
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Ezen kívül a(z) „%s†zárolásának feloldása is meghiúsult: %s) "
@@ -753,27 +766,27 @@ msgstr "Egy részfa már exportálva van a következőhöz: %s"
msgid "Object does not exist at path “%sâ€"
msgstr "Az objektum nem létezik a(z) „%s†útvonalon"
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "a típus érvénytelen"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "METHOD_CALL üzenet: a PATH vagy MEMBER fejlécmező hiányzik"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "METHOD_RETURN üzenet: a REPLY_SERIAL fejlécmező hiányzik"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "ERROR üzenet: a REPLY_SERIAL vagy ERROR_NAME fejlécmező hiányzik"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "SIGNAL üzenet: a PATH, INTERFACE vagy MEMBER fejlécmező hiányzik"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -781,7 +794,7 @@ msgstr ""
"SIGNAL üzenet: a PATH fejlécmező a fenntartott /org/freedesktop/DBus/Local "
"értéket használja"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -789,19 +802,19 @@ msgstr ""
"SIGNAL üzenet: az INTERFACE fejlécmező a fenntartott value org.freedesktop."
"DBus.Local értéket használja"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "Az olvasandó %lu bájt helyett csak %lu érkezett"
msgstr[1] "Az olvasandó %lu bájt helyett csak %lu érkezett"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "A(z) „%s†karakterlánc után várt NULL bájt helyett %d bájt található"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -811,21 +824,21 @@ msgstr ""
"a(z) %d bájteltolásnál (a karakterlánc hossza: %d). Az érvényes UTF-8 "
"karakterlánc az adott pontig: „%sâ€"
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Az érték túl mélyen van egymásba ágyazva"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "A feldolgozott „%s†érték nem érvényes D-Bus objektumútvonal"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "A feldolgozott „%s†érték nem érvényes D-Bus aláírás"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -836,7 +849,7 @@ msgstr[0] ""
msgstr[1] ""
"%u bájt hosszú tömb található. A maximális hossz 2<<26 bájt (64 MiB)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -845,23 +858,23 @@ msgstr ""
"Egy „a%c†típusú tömb található, az elvárt hossz a(z) %u bájt többszöröse, "
"de %u bájt hosszú található"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
msgstr "Üres szerkezetek (rekordok) nem engedélyezettek a D-Buson"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "A változat feldolgozott „%s†értéke nem érvényes D-Bus aláírás"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
msgstr ""
"Hiba a(z) „%s†típusú GVariant visszafejtésekor a D-Bus átviteli formátumból"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -870,60 +883,60 @@ msgstr ""
"Érvénytelen bájtsorrend-érték. A várt 0x6c („lâ€) vagy 0x42 („Bâ€) helyett 0x"
"%02x érték található"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Érvénytelen fő protokollverzió. A várt 1 helyett %d található"
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Aláírásfejléc található, de nem aláírás típusú"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr "Aláírásfejléc található „%s†aláírással, de az üzenettörzs üres"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "A feldolgozott „%s†érték nem érvényes D-Bus aláírás (a törzshöz)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
msgstr[0] "Nincs aláírásfejléc az üzenetben, de az üzenettörzs %u bájt"
msgstr[1] "Nincs aláírásfejléc az üzenetben, de az üzenettörzs %u bájt"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Nem fejthető sorba az üzenet: "
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
msgstr ""
"Hiba a(z) „%s†típusú GVariant sorbafejtésekor a D-Bus átviteli formátumba"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr ""
"Az üzenetben található fájlleírók száma (%d) eltér a fejléc mezőtől (%d)"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Az üzenet nem fejthető sorba: "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "Az üzenettörzs „%s†aláírással rendelkezik, de nincs aláírásfejléc"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -932,52 +945,52 @@ msgstr ""
"Az üzenettörzs „%s†típusaláírással rendelkezik, de az aláírásfejlécben lévő "
"aláírás: „%sâ€"
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "Az üzenettörzs üres, de az aláírásfejlécben lévÅ‘ aláírás: „%sâ€"
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Hiba került visszaadásra a(z) „%s†típusú törzzsel"
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Hiba került visszaadásra az üres törzzsel"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Az ablak bezárásához nyomjon le egy gombot)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "A munkamenet D-Bus nem fut, és az automatikus indítás sikertelen"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Nem kérhető le hardverprofil: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "A(z) %s vagy a(z) %s nem tölthető be: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Hiba a StartServiceByName hívásakor ehhez: %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Váratlan válasz (%d) a StartServiceByName(\"%s\") metódustól"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1032,13 +1045,13 @@ msgstr ""
"Az egyes parancsok súgója a „%s PARANCS --help†kiadásával érhető el.\n"
#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1244
+#: gio/gdbus-tool.c:1732
#, c-format
msgid "Error: %s\n"
msgstr "Hiba: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1748
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Hiba a betekintési XML feldolgozásakor: %s\n"
@@ -1048,8 +1061,8 @@ msgstr "Hiba a betekintési XML feldolgozásakor: %s\n"
msgid "Error: %s is not a valid name\n"
msgstr "Hiba: a(z) %s nem érvényes név\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1063
+#: gio/gdbus-tool.c:1898 gio/gdbus-tool.c:2138
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Hiba: a(z) %s nem érvényes objektumútvonal\n"
@@ -1117,8 +1130,8 @@ msgstr "Szignál és interfész neve"
msgid "Emit a signal."
msgstr "Szignál kibocsátása."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:1000 gio/gdbus-tool.c:1835
+#: gio/gdbus-tool.c:2067 gio/gdbus-tool.c:2287
#, c-format
msgid "Error connecting: %s\n"
msgstr "Hiba a csatlakozáskor: %s\n"
@@ -1128,7 +1141,7 @@ msgstr "Hiba a csatlakozáskor: %s\n"
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Hiba: a(z) %s nem érvényes egyedi busznév.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1043 gio/gdbus-tool.c:1878
msgid "Error: Object path is not specified\n"
msgstr "Hiba: az objektumútvonal nincs megadva\n"
@@ -1152,7 +1165,7 @@ msgid "Error: %s is not a valid member name\n"
msgstr "Hiba: a(z) %s nem érvényes tagnév\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1175
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Hiba a(z) %d. paraméter feldolgozásakor: %s\n"
@@ -1162,99 +1175,104 @@ msgstr "Hiba a(z) %d. paraméter feldolgozásakor: %s\n"
msgid "Error flushing connection: %s\n"
msgstr "Hiba a kapcsolat kiürítésekor: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:894
msgid "Destination name to invoke method on"
msgstr "A cél neve a metódushíváshoz"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:895
msgid "Object path to invoke method on"
msgstr "Objektum útvonala a metódushíváshoz"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:896
msgid "Method and interface name"
msgstr "Metódus és interfész neve"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:897
msgid "Timeout in seconds"
msgstr "Időkorlát másodpercben"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:898
+#| msgid "Show information about locations"
+msgid "Allow interactive authorization"
+msgstr "Interaktív engedélyezés bekapcsolása"
+
+#: gio/gdbus-tool.c:945
msgid "Invoke a method on a remote object."
msgstr "Metódus hívása távoli objektumon."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1017 gio/gdbus-tool.c:1852 gio/gdbus-tool.c:2092
msgid "Error: Destination is not specified\n"
msgstr "Hiba: a cél nincs megadva\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1028 gio/gdbus-tool.c:1869 gio/gdbus-tool.c:2103
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Hiba: a(z) %s nem érvényes busznév\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1078
msgid "Error: Method name is not specified\n"
msgstr "Hiba: a metódusnév nincs megadva\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1089
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Hiba: a metódusnév („%sâ€) érvénytelen\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1167
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Hiba a(z) „%2$s†típusú %1$d. paraméter feldolgozásakor: %3$s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1193
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Hiba a(z) „%d†leíró hozzáadásakor: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1694
msgid "Destination name to introspect"
msgstr "A cél neve a betekintéshez"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1695
msgid "Object path to introspect"
msgstr "Az objektumútvonal a betekintéshez"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1696
msgid "Print XML"
msgstr "XML kiírása"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1697
msgid "Introspect children"
msgstr "Betekintés gyermekekbe"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1698
msgid "Only print properties"
msgstr "Csak a tulajdonságok kiírása"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1787
msgid "Introspect a remote object."
msgstr "Betekintés távoli objektumba."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1993
msgid "Destination name to monitor"
msgstr "Megfigyelendő cél neve"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1994
msgid "Object path to monitor"
msgstr "Megfigyelendő objektumútvonal"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2019
msgid "Monitor a remote object."
msgstr "Távoli objektum megfigyelése."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2077
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Hiba: nem figyelhető meg a nem üzenetbusz kapcsolat\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2201
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Az aktiválandó szolgáltatás, mielőtt a másikra várna (ismert név)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2204
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1262,64 +1280,69 @@ msgstr ""
"Az időtúllépés, mielőtt hibával kilépne (másodpercben); 0, ha nincs "
"időtúllépés (alapértelmezett)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2252
msgid "[OPTION…] BUS-NAME"
msgstr "[KAPCSOLÓ…] BUSZNÉV"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2253
msgid "Wait for a bus name to appear."
msgstr "Várakozás egy busznévre."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2329
msgid "Error: A service to activate for must be specified.\n"
msgstr "Hiba: az objektumútvonal nincs megadva.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2334
msgid "Error: A service to wait for must be specified.\n"
msgstr "Hiba: az objektumútvonal nincs megadva.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2339
msgid "Error: Too many arguments.\n"
msgstr "Hiba: Túl sok argumentum.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2347 gio/gdbus-tool.c:2354
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Hiba: a(z) %s nem érvényes busznév\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdebugcontrollerdbus.c:203
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Nincs felhatalmazva a hibakeresési beállítások megváltoztatására"
+
+#: gio/gdesktopappinfo.c:2174 gio/gdesktopappinfo.c:5099
msgid "Unnamed"
msgstr "Névtelen"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2584
msgid "Desktop file didn’t specify Exec field"
msgstr "A desktop fájl nem adta meg az Exec mezőt"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2892
msgid "Unable to find terminal required for application"
msgstr "Nem található az alkalmazáshoz szükséges terminál"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3619
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr ""
"Nem hozható létre a(z) %s felhasználói alkalmazáskonfigurációs mappa: %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3623
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Nem hozható létre a(z) %s felhasználói MIME konfigurációs mappa: %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3865 gio/gdesktopappinfo.c:3889
msgid "Application information lacks an identifier"
msgstr "Az alkalmazásinformációkból hiányzik az azonosító"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4125
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Nem hozható létre a felhasználói desktop fájl (%s)"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4261
#, c-format
msgid "Custom definition for %s"
msgstr "%s egyéni meghatározása"
@@ -1348,7 +1371,7 @@ msgstr "a meghajtó nem valósítja meg a indítást"
msgid "drive doesn’t implement stop"
msgstr "a meghajtó nem valósítja meg a leállítást"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "A TLS háttérszolgáltatás nem valósítja meg a TLS kötéslekérdezést"
@@ -1389,73 +1412,73 @@ msgstr "Egy GEmblem kellene a GEmblemedIconhoz"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "A tartalmazó csatolás nem létezik"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Nem lehet a könyvtárra másolni"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "A könyvtár nem másolható könyvtárba"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "A célfájl létezik"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "A könyvtár nem másolható rekurzívan"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "A fájlillesztés nem támogatott"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Hiba a fájl illesztésekor: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "A csatolások közti másolás (reflink/clone) nem támogatott"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "A másolás (reflink/clone) nem támogatott vagy érvénytelen"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "A másolás (reflink/clone) nem támogatott vagy nem működött"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "A speciális fájl nem másolható"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Érvénytelen szimbolikus link érték került megadásra"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "A szimbolikus linkek használata nem támogatott"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "A Kuka nem támogatott"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "A fájlnevek nem tartalmazhatnak „%c†karaktert"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "a kötet nem valósítja meg a csatolást"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Nincs alkalmazás regisztrálva a fájl kezeléséhez"
@@ -1500,7 +1523,7 @@ msgstr "A bemeneti adatfolyam csonkítása nem engedélyezett"
msgid "Truncate not supported on stream"
msgstr "Az adatfolyam csonkítása nem engedélyezett"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Érvénytelen gépnév"
@@ -1588,7 +1611,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Nem dolgozható fel a(z) „%s†IP-cím maszkként"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Nincs elég hely a foglalat címének"
@@ -2428,15 +2451,15 @@ msgstr "Hiba a fájl tömörítésekor: %s"
msgid "text may not appear inside <%s>"
msgstr "nem jelenhet meg szöveg ezen belül: <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "A programverzió megjelenítése és kilépés"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "A kimeneti fájl neve"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2444,46 +2467,46 @@ msgstr ""
"A FILE-ban megadott fájlok olvasása ebből a könyvtárból (alapértelmezett: "
"aktuális könyvtár)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "KÖNYVTÃR"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
"Kimenet előállítása a célfájl kiterjesztése által kiválasztott formátumban"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Forrásfejléc előállítása"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr "Az erőforrásfájl kódba linkelésére használt forráskód előállítása"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Függőséglista előállítása"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Az előállítandó függőségfájl neve"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "A „phony†célok bevétele a generált függőségi fájlba"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Ne hozza létre és ne regisztrálja automatikusan az erőforrást"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Ne exportáljon függvényeket; deklarálja azokat G_GNUC_INTERNAL-ként"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2491,11 +2514,15 @@ msgstr ""
"Ne ágyazzon be erőforrásadatokat a C fájlba, tekintse inkább úgy, hogy "
"külsőleg hivatkozott"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "Az előállított forráskódhoz használt C azonosító neve"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "A cél C fordító (alapértelmezett: a CC környezeti változó)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2505,7 +2532,7 @@ msgstr ""
"Az erőforrás-specifikációs fájlok kiterjesztése .gresource.xml,\n"
"az erőforrásfájl kiterjesztése pedig .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Pontosan egy fájlnevet kell megadnia\n"
@@ -3310,7 +3337,7 @@ msgid "Error truncating file: %s"
msgstr "Hiba a fájl csonkításakor: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Hiba a(z) %s fájl megnyitásakor: %s"
@@ -3332,7 +3359,7 @@ msgstr "A fájlt külső program módosította"
msgid "Error removing old file: %s"
msgstr "Hiba a régi fájl eltávolításakor: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "A megadott GSeekType nem támogatott"
@@ -3344,15 +3371,15 @@ msgstr "Érvénytelen keresési kérés"
msgid "Cannot truncate GMemoryInputStream"
msgstr "A GMemoryInputStream nem csonkítható"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "A memóriakimeneti adatfolyam nem méretezhető át"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "A memóriakimeneti adatfolyam átméretezése meghiúsult"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3360,11 +3387,11 @@ msgstr ""
"Az írás feldolgozásához szükséges memória mérete nagyobb, mint az elérhető "
"címtér"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Pozicionálási kérés az adatfolyam eleje elé"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Pozicionálási kérés az adatfolyam vége mögé"
@@ -3471,18 +3498,18 @@ msgstr "A(z) %s részére átadott vektorok összege túl nagy"
msgid "Source stream is already closed"
msgstr "A forrás adatfolyam már le van zárva"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Hiba a(z) „%s†feloldásakor: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "A(z) %s nincs megvalósítva"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Érvénytelen tartomány"
@@ -3600,7 +3627,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " SZAKASZ Egy elhagyható elf szakasznév\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " PARANCS A megmagyarázandó (elhagyható) parancs\n"
@@ -3633,7 +3660,7 @@ msgstr "ÚTVONAL"
msgid " PATH A resource path\n"
msgstr " ÚTVONAL Egy erőforrás-útvonal\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Nincs „%s†séma\n"
@@ -3664,35 +3691,35 @@ msgstr "Az útvonalnak osztásjellel (/) kell végződnie\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Az útvonal nem tartalmazhat két szomszédos osztásjelet (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "A megadott érték kívül esik az érvényes tartományon\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "A kulcs nem írható\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "A telepített (át nem helyezhető) sémák felsorolása"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "A telepített áthelyezhető sémák felsorolása"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "A SÉMA kulcsainak felsorolása"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "SÉMA[:ÚTVONAL]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "A SÉMA gyermekeinek felsorolása"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3700,48 +3727,48 @@ msgstr ""
"Kulcsok és értékek rekurzív felsorolása\n"
"Ha nincs megadva SÉMA, az összes kulcs felsorolása\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SÉMA[:ÚTVONAL]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "A KULCS értékének lekérése"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "SÉMA[:ÚTVONAL] KULCS"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "A KULCS érvényes értékei tartományának lekérése"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "A KULCS leírásának lekérése"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "A KULCS értékének beállítása az ÉRTÉKRE"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SÉMA[:ÚTVONAL] KULCS ÉRTÉK"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "A KULCS visszaállítása az alapértékére"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "A SÉMA minden kulcsának visszaállítása az alapértékekre"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "A KULCS írhatóságának ellenőrzése"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3751,11 +3778,11 @@ msgstr ""
"Ha nincs megadva KULCS, akkor a SÉMA összes kulcsának figyelése.\n"
"A figyelés befejezéséhez nyomja meg a ^C kombinációt.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SÉMA[:ÚTVONAL] [KULCS]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3804,7 +3831,7 @@ msgstr ""
"Részletes segítségért adja ki a „gsettings help PARANCS†parancsot.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3819,11 +3846,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " SÉMAKVT További sémák keresése ebben a könyvtárban\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3831,213 +3858,213 @@ msgstr ""
" SÉMA A séma neve\n"
" ÚTVONAL Az áthelyezhető sémák útvonala\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " KULCS A sémán belüli (elhagyható) kulcs\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " KULCS A sémán belüli kulcs\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " ÉRTÉK A beállítandó érték\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Nem lehet sémákat betölteni ebből: %s: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Nincsenek telepítve sémák\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Üres sémanevet adott meg\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Nincs „%s†kulcs\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Érvénytelen foglalat, nincs előkészítve"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Érvénytelen foglalat, az előkészítés meghiúsulásának oka: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "A foglalat már le van zárva"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "A foglalat I/O túllépte az időkorlátot"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "GSocket létrehozása fájlleíróból: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Nem sikerült létrehozni foglalatot: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Ismeretlen családot adtak meg"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Ismeretlen protokollt adtak meg"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "A datagram műveletek nem használhatóak nem-datagram foglalaton."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"A datagram műveletek nem használhatóak olyan foglalaton, amelyre időtúllépés "
"van beállítva."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "nem kérhető le a helyi cím: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "nem kérhető le a távoli cím: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "nem lehet figyelni: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Hiba a(z) %s címhez csatlakozáskor: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Hiba a multicast csoporthoz csatlakozáskor: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Hiba a multicast csoport elhagyásakor: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "A forrásspecifikus multicast nem támogatott"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Nem támogatott foglalatcsalád"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "A forrásspecifikus nem egy IPv4-cím"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Az interfésznév túl hosszú"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Interfész nem található: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "Az IPv4 forrásspecifikus multicast nem támogatott"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "Az IPv6 forrásspecifikus multicast nem támogatott"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Hiba a kapcsolat elfogadásakor: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Csatlakozás folyamatban"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Nem lehet lekérni a függőben lévő hibát: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Hiba az adatok fogadásakor: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Hiba az adatok küldésekor: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Nem sikerült leállítani a foglalatot: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Hiba a foglalat lezárásakor: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Várakozás a foglalat állapotára: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Nem sikerült elküldeni az üzenetet: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Az üzenetvektorok túl nagyok"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Hiba az üzenet küldésekor: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "A GSocketControlMessage nem támogatott Windowson"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Hiba az üzenet fájl eltávolítása fogadásakor: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Nem sikerült olvasni a foglalat hitelesítési adatait: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "a g_socket_get_credentials nincs megvalósítva erre az OS-re"
@@ -4055,11 +4082,11 @@ msgstr "Nem sikerült kapcsolódni a következőhöz: %s: "
msgid "Could not connect: "
msgstr "Nem sikerült kapcsolódni: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "A proxyzás nem TCP kapcsolaton keresztül nem támogatott."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "A proxyprotokoll („%sâ€) nem támogatott."
@@ -4158,7 +4185,7 @@ msgstr "A SOCKSv5 proxy nem támogatja a megadott címtípust."
msgid "Unknown SOCKSv5 proxy error."
msgstr "Ismeretlen SOCKSv5 proxy hiba."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr ""
@@ -4202,27 +4229,32 @@ msgstr "Ideiglenesen nem oldható fel: „%sâ€"
msgid "Error resolving “%sâ€"
msgstr "Hiba a(z) „%s†feloldásakor"
-#: gio/gtlscertificate.c:431
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Nem található PEM-kódolású személyes kulcs"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Nem fejthető vissza a PEM-kódolású személyes kulcs"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Nem dolgozható fel a PEM-kódolású személyes kulcs"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Nem található PEM-kódolású tanúsítvány"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Nem dolgozható fel a PEM-kódolású tanúsítvány"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+#| msgid "This GTlsBackend does not support creating PKCS #11 certificates"
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "A jelenlegi TLS háttérprogram nem támogatja a PKCS #12 tanúsítványokat"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "Ez a GTlsBackend nem támogatja a PKCS #11 tanúsítványok létrehozását"
@@ -4248,56 +4280,66 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "A megadott jelszó helytelen."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+#| msgid "Setting attribute %s not supported"
+msgid "Sending FD is not supported"
+msgstr "Az FL küldése nem támogatott"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "A várt 1 vezérlőüzenet helyett %d érkezett"
msgstr[1] "A várt 1 vezérlőüzenet helyett %d érkezett"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Váratlan típusú kiegészítő adatok"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "A várt egy fájlleíró helyett %d érkezett\n"
msgstr[1] "A várt egy fájlleíró helyett %d érkezett\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Érvénytelen fájlleíró érkezett"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+#| msgid "Setting attribute %s not supported"
+msgid "Receiving FD is not supported"
+msgstr "Az FL fogadása nem támogatott"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Hiba a hitelesítési adatok küldésekor: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr ""
"Hiba a SO_PASSCRED engedélyezettségének ellenőrzésekor a foglalathoz: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Hiba a SO_PASSCRED engedélyezésekor: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"A hitelesítési adatok fogadásához várt egyetlen bájt helyett nulla bájt lett "
"beolvasva"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "A program nem várt vezérlőüzenetet, de %d érkezett"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Hiba a SO_PASSCRED letiltásakor: %s"
@@ -4313,7 +4355,7 @@ msgstr "Hiba a fájlleíróból olvasáskor: %s"
msgid "Error closing file descriptor: %s"
msgstr "Hiba a fájlleíró lezárásakor: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2782 gio/gunixmounts.c:2835
msgid "Filesystem root"
msgstr "Fájlrendszer gyökere"
@@ -4324,7 +4366,7 @@ msgstr "Fájlrendszer gyökere"
msgid "Error writing to file descriptor: %s"
msgstr "Hiba a fájlleíróba íráskor: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr ""
"Az absztrakt UNIX tartományfoglalat-címek nem támogatottak ezen a rendszeren"
@@ -4479,8 +4521,8 @@ msgstr ""
msgid "Unrepresentable character in conversion input"
msgstr "Nem ábrázolható karakter az átalakítási bemenetben"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Részleges karaktersorozat a bemenet végén"
@@ -5048,15 +5090,15 @@ msgstr "A csatorna töredék karakterrel ér véget"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Nem lehet nyers (raw) olvasást végezni a g_io_channel_read_to_end-ben"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "A keresési könyvtárakban nem található érvényes kulcsfájl"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Nem szabályos fájl"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5064,52 +5106,53 @@ msgstr ""
"A kulcsfájl tartalmazza a(z) „%s†sort, amelyik nem egy kulcs-érték pár, "
"csoport, vagy megjegyzés"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Érvénytelen csoportnév: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "A kulcsfájl nem csoporttal kezdődik"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Érvénytelen kulcsnév: %s"
+#| msgid "Invalid key name: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Érvénytelen kulcsnév: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "A kulcsfájl a nem támogatott „%s†kódolást tartalmazza"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "A kulcsfájlból hiányzik a(z) „%s†csoport"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "A kulcsfájl nem tartalmazza a(z) „%s†kulcsot a(z) „%s†csoportban."
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr ""
"A kulcsfájl tartalmazza a(z) „%s†kulcsot „%s†értékkel, amelyik azonban nem "
"UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr ""
"A kulcsfájl tartalmazza a(z) „%s†kulcsot, amelynek értéke nem értelmezhető."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5118,38 +5161,38 @@ msgstr ""
"A kulcsfájl tartalmazza a(z) „%s†kulcsot a(z) „%s†csoportban, amelynek "
"értéke nem értelmezhető."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr ""
"A(z) „%s†kulcs a(z) „%s†csoportban „%s†értékkel rendelkezik a várt %s "
"helyett"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "A kulcsfájl escape sorozattal megadott karaktert tartalmaz a sor végén"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "A kulcsfájl érvénytelen escape sorozatot tartalmaz („%sâ€)"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "A(z) „%s†érték nem értelmezhető számként."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "A(z) „%s†egész érték a tartományon kívülre esik"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "A(z) „%s†érték nem értelmezhető lebegőpontos számként."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "A(z) „%s†érték nem értelmezhető logikai értékként."
@@ -5445,7 +5488,7 @@ msgstr "Hiba a kapcsoló feldolgozásakor: %s"
msgid "Missing argument for %s"
msgstr "Hiányzó paraméter a következőhöz: %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Ismeretlen kapcsoló: %s"
@@ -5866,112 +5909,125 @@ msgstr "Váratlan hiba egy gyermekfolyamatból történő adatolvasás közben (
msgid "Unexpected error in waitpid() (%s)"
msgstr "Váratlan hiba a waitpid()-ben (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1168 glib/gspawn-win32.c:1426
#, c-format
msgid "Child process exited with code %ld"
msgstr "A gyermekfolyamat a következő kóddal lépett ki: %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1176
#, c-format
msgid "Child process killed by signal %ld"
msgstr "A gyermekfolyamat kilőve %ld szignállal"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "A gyermekfolyamat megállítva %ld szignállal"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process exited abnormally"
msgstr "A gyermekfolyamat abnormálisan lépett ki"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1881 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Nem sikerült olvasni a gyermek csővezetékből (%s)"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2241
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Nem sikerült a(z) „%s†gyermekfolyamat végrehajtása (%s)"
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2358
#, c-format
msgid "Failed to fork (%s)"
msgstr "Nem sikerült folyamatot indítani (%s)"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2518 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Nem sikerült átváltani a(z) „%s†könyvtárra (%s)"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2528
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Nem sikerült a gyermekfolyamat („%sâ€) végrehajtása (%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2538
+#, c-format
+#| msgid "Failed to open file “%sâ€: open() failed: %s"
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Nem sikerült megnyitni a fájlt a fájlleíró ismételt leképezéséhez (%s)"
+
+#: glib/gspawn.c:2546
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Nem sikerült a gyermekfolyamat ki- vagy bemenetének átirányítása (%s)"
+#| msgid "Failed to redirect output or input of child process (%s)"
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Nem sikerült kettőzni a gyermekfolyamat fájlleíróját (%s)"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2555
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Nem sikerült a gyermekfolyamat elindítása (%s)"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2563
#, c-format
#| msgid "Failed to read data from child process (%s)"
msgid "Failed to close file descriptor for child process (%s)"
msgstr "Nem sikerült lezárni a gyermekfolyamat fájlleíróját (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2571
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Ismeretlen hiba a gyermekfolyamat („%sâ€) végrehajtásakor"
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2595
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "Nem sikerült elég adatot kiolvasni a gyermek pid csővezetékből (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Nem sikerült adatokat kiolvasni a gyermekfolyamatból"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:519
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Nem sikerült végrehajtani a gyermekfolyamatot (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+#| msgid "Failed to fork child process (%s)"
+msgid "Failed to dup() in child process (%s)"
+msgstr "Nem sikerült a dup() hívás a gyermekfolyamatban (%s)"
+
+#: glib/gspawn-win32.c:469
#, c-format
msgid "Invalid program name: %s"
msgstr "Érvénytelen programnév: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:479 glib/gspawn-win32.c:797
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Érvénytelen karaktersorozat a paraméterben a következő helyen: %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:490 glib/gspawn-win32.c:813
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Érvénytelen karaktersorozat a környezetben: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:793
#, c-format
msgid "Invalid working directory: %s"
msgstr "Érvénytelen munkakönyvtár: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:858
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Nem sikerült végrehajtani a segítő programot (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1086
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -5979,21 +6035,21 @@ msgstr ""
"Váratlan hiba, miközben a g_io_channel_win32_poll() adatokat olvasott egy "
"gyermekfolyamatból"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Az üres karakterlánc nem szám"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "„%s†nem érvényes név"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "A(z) „%s†a(z) [%s, %s] intervallumon kívül esik."
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "„%s†nem érvényes név"
@@ -6054,175 +6110,175 @@ msgstr "Az URI nem abszolút, és alap URI nem lett megadva"
msgid "Missing ‘=’ and parameter value"
msgstr "Hiányzó „=†és paraméterérték"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Nem sikerült memóriát lefoglalni"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "A karakter az UTF-8 tartományon kívülre esik"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Érvénytelen sorozat az átalakítási bemenetben"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "A karakter az UTF-16 tartományon kívülre esik"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u bájt"
msgstr[1] "%u bájt"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6230,7 +6286,7 @@ msgstr[0] "%u bit"
msgstr[1] "%u bit"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6238,7 +6294,7 @@ msgstr[0] "%s bájt"
msgstr[1] "%s bájt"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6250,32 +6306,32 @@ msgstr[1] "%s bit"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
diff --git a/po/id.po b/po/id.po
index c0711abe8..e50baaec5 100644
--- a/po/id.po
+++ b/po/id.po
@@ -4,14 +4,14 @@
#
# Mohammad DAMT <mdamt@bisnisweb.com>, 2005.
# Dirgita <dirgitadevina@yahoo.co.id>, 2010, 2012.
-# Andika Triwidada <andika@gmail.com>, 2010-2013, 2015, 2018, 2021.
+# Andika Triwidada <andika@gmail.com>, 2010-2013, 2015, 2018.
# Kukuh Syafaat <kukuhsyafaat@gnome.org>, 2017-2022.
msgid ""
msgstr ""
-"Project-Id-Version: glib glib-2-70\n"
+"Project-Id-Version: glib main\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-02-09 19:50+0000\n"
-"PO-Revision-Date: 2022-02-10 10:09+0700\n"
+"POT-Creation-Date: 2022-04-09 15:36+0000\n"
+"PO-Revision-Date: 2022-04-11 16:07+0700\n"
"Last-Translator: Kukuh Syafaat <kukuhsyafaat@gnome.org>\n"
"Language-Team: Indonesian <gnome@i15n.org>\n"
"Language: id\n"
@@ -19,7 +19,16 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Poedit 3.0\n"
+"X-Generator: Poedit 3.0.1\n"
+
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Menata aplikasi baku belum didukung"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"Menata aplikasi sebagai yang terakhir digunakan untuk tipe belum didukung"
#: gio/gapplication.c:500
msgid "GApplication options"
@@ -42,7 +51,7 @@ msgid "Replace the running instance"
msgstr "Ganti instance yang berjalan"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Cetak bantuan"
@@ -54,7 +63,7 @@ msgstr "[PERINTAH]"
msgid "Print version"
msgstr "Cetak versi"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Cetak informasi versi dan keluar"
@@ -117,8 +126,8 @@ msgstr "Perintah yang ingin dicetak bantuan terrincinya"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Identifier aplikasi dalam format D-Bus (mis: org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "BERKAS"
@@ -143,7 +152,7 @@ msgstr "PARAMETER"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Parameter opsional untuk pemanggilan aksi, dalam format GVariant"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -157,7 +166,7 @@ msgid "Usage:\n"
msgstr "Cara pakai:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argumen:\n"
@@ -280,7 +289,7 @@ msgstr "Stream telah ditutup"
msgid "Truncate not supported on base stream"
msgstr "Pemenggalan tak didukung pada stream basis"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -301,7 +310,7 @@ msgstr "Tak cukup ruang di tujuan"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Rangkaian bita dalam input konversi tidak benar"
@@ -311,7 +320,7 @@ msgstr "Rangkaian bita dalam input konversi tidak benar"
msgid "Error during conversion: %s"
msgstr "Galat ketika konversi: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Inisialisasi yang dapat dibatalkan tak didukung"
@@ -325,37 +334,37 @@ msgstr "Konversi dari gugus karakter \"%s\" ke \"%s\" tak didukung"
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Tak bisa membuka pengubah dari \"%s\" ke \"%s\""
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "tipe %s"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Tipe tak dikenal"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "tipe berkas %s"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials berisi data yang tidak valid"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials tak diimplementasikan di OS ini"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Tidak ada dukungan GCredentials bagi platform Anda"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GCredentials tak memuat suatu ID proses di OS ini"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Pemalsuan kredensial tak diimplementasikan di OS ini"
@@ -363,17 +372,17 @@ msgstr "Pemalsuan kredensial tak diimplementasikan di OS ini"
msgid "Unexpected early end-of-stream"
msgstr "Akhir stream terlalu dini, tak diharapkan"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Kunci \"%s\" tak didukung pada entri alamat \"%s\""
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Kombinasi pasangan kunci/nilai tanpa arti di entri alamat \"%s\""
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -382,28 +391,28 @@ msgstr ""
"Alamat \"%s\" tak valid (perlu hanya salah satu dari path, dir, tmpdir, atau "
"kunci abstrak)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Galat dalam alamat \"%s\" — atribut \"%s\" salah bentuk"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Transport \"%s\" tak dikenal atau tak didukung bagi alamat \"%s\""
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "Elemen alamat \"%s\" tak memuat titik dua (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "Nama transport dalam elemen alamat “%s†tidak boleh kosong"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -412,7 +421,7 @@ msgstr ""
"Pasangan kunci/nilai %d, \"%s\", dalam elemen alamat \"%s\" tak memuat tanda "
"sama dengan"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
@@ -420,7 +429,7 @@ msgstr ""
"Pasangan kunci/nilai %d, \"%s\", dalam elemen alamat \"%s\" tak boleh "
"memiliki kunci kosong"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -429,7 +438,7 @@ msgstr ""
"Galat saat membongkar kunci atau nilai dalam pasangan Key/Value %d, \"%s\", "
"dalam elemen alamat \"%s\""
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -438,74 +447,74 @@ msgstr ""
"Galat dalam alamat \"%s\" — transport unix memerlukan hanya satu dari kunci "
"\"path\" atau \"abstract\" untuk ditata"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr "Galat dalam alamat \"%s\" — atribut host kurang atau salah bentuk"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "Galat dalam alamat \"%s\" — atribut portt kurang atau salah bentuk"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr "Galat di alamat \"%s\" — atribut berkas nonce kurang atau salah bentuk"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Galat saat meluncurkan otomatis: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Galat saat membuka berkas nonce \"%s\": %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Galat saat membaca berkas nonce \"%s\": %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr "Galat saat membaca berkas nonce \"%s\", berharap 16 bita, mendapat %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Galat saat menulis isi dari berkas nonce \"%s\" ke stream:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "Tidak ada alamat yang diberikan"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Tak bisa spawn suatu bus pesan ketika setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "Tak bisa spawn suatu bus pesan ketika AT_SECURE ditata"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "Tak bisa spawn suatu bus pesan tanpa id-mesin: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Tak bisa meluncurkan mandiri D-Bus tanpa $DISPLAY X11"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Galat saat spawn baris perintah \"%s\": "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr "Tak bisa menentukan alamat bus sesi (tidak diimplementasi bagi OS ini)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -514,7 +523,7 @@ msgstr ""
"Tak bisa menentukan alamat bus dari variabel lingkungan "
"DBUS_STARTER_BUS_TYPE — nilai tak dikenal \"%s\""
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -522,7 +531,7 @@ msgstr ""
"Tak bisa menentukan alamat bus karena variabel lingkungan "
"DBUS_STARTER_BUS_TYPE tak diisi"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Tipe bus %d tak dikenal"
@@ -552,44 +561,44 @@ msgstr "ID Pengguna harus sama untuk rakan (peer) dan peladen"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Dibatalkan melalui GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Galat ketika mengambil informasi untuk direktori \"%s\": %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
msgstr ""
"Izin pada direktori \"%s\" salah bentuk. Diharapkan mode 0700, diperoleh 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Galat saat membuat direktori \"%s\": %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Operasi tak didukung"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Galat saat membuka ring kunci \"%s\" untuk dibaca: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "Baris %d dari ring kunci pada \"%s\" dengan isi \"%s\" salah bentuk"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -597,7 +606,7 @@ msgstr ""
"Token pertama dari baris %d dari ring kunci pada \"%s\" dengan isi \"%s\" "
"salah bentuk"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -605,56 +614,56 @@ msgstr ""
"Token kedua dari baris %d dari ring kunci pada \"%s\" dengan isi \"%s\" "
"salah bentuk"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Tak menemukan cookie dengan id %d dalam gantungan kunci pada \"%s\""
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Galat saat membuat berkas kunci \"%s\": %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Galat saat menghapus berkas kunci yang basi \"%s\": %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Galat saat menutup berkas kunci (tak terkait) \"%s\": %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Galat saat membuka kait berkas kunci \"%s\": %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Galat saat membuka gantungan kunci \"%s\" untuk ditulisi: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Selain itu, melepas kunci bagi \"%s\" juga gagal: %s) "
-#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "Sambungan tertutup"
-#: gio/gdbusconnection.c:1903
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "Kehabisan waktu"
-#: gio/gdbusconnection.c:2541
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"Ditemui tanda yang tak didukung ketika membangun sambungan di sisi klien"
-#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
@@ -662,106 +671,106 @@ msgstr ""
"Tidak ada antarmuka \"org.freedesktop.DBus.Properties\" pada objek pada path "
"%s"
-#: gio/gdbusconnection.c:4414
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "Tak ada properti \"%s\""
-#: gio/gdbusconnection.c:4426
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "Properti \"%s\" tidak dapat dibaca"
-#: gio/gdbusconnection.c:4437
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "Properti \"%s\" tidak dapat ditulisi"
-#: gio/gdbusconnection.c:4457
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
"Galat menata properti \"%s\": Tipe yang diharapkan \"%s\" tapi diperoleh \"%s"
"\""
-#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
-#: gio/gdbusconnection.c:6760
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "Tak ada antarmuka \"%s\""
-#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Tak ada antarmuka \"%s\" pada objek di lokasi %s"
-#: gio/gdbusconnection.c:5100
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "Tidak ada metode seperti \"%s\""
-#: gio/gdbusconnection.c:5131
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Tipe pesan \"%s\" tak cocok dengan tipe yang diharapkan \"%s\""
-#: gio/gdbusconnection.c:5334
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Suatu objek telah diekspor bagi antar muka %s pada %s"
-#: gio/gdbusconnection.c:5561
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Tak bisa mengambil properti %s.%s"
-#: gio/gdbusconnection.c:5617
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Tak bisa menata properti %s.%s"
-#: gio/gdbusconnection.c:5796
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "Metode \"%s\" mengembalikan tipe \"%s\", tapi yang diharapkan \"%s\""
-#: gio/gdbusconnection.c:6872
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr ""
"Metode \"%s\" pada antar muka \"%s\" dengan tanda tangan \"%s\"' tak ada"
-#: gio/gdbusconnection.c:6993
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Subtree telah diekspor bagi %s"
-#: gio/gdbusconnection.c:7282
+#: gio/gdbusconnection.c:7266
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "Objek tidak ada di path \"%s\""
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "jenisnya INVALID"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "Pesan METHOD_CALL: ruas header PATH atau MEMBER hilang"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "Pesan METHOD_RETURN: ruas header REPLY_SERIAL hilang"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "Pesan ERROR: ruas header REPLY_SERIAL atau ERRORN_NAME hilang"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "Pesan SIGNAL: ruas header PATH, INTERFACE, atau MEMBER hilang"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -769,7 +778,7 @@ msgstr ""
"Pesan SIGNAL: ruas header PATH memakai nilai khusus /org/freedesktop/DBus/"
"Local"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -777,18 +786,18 @@ msgstr ""
"Pesan SIGNAL: ruas header INTERFACE memakai nilai khusus org.freedesktop."
"DBus.Local"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "Ingin membaca %lu bita tapi hanya memperoleh %lu"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "Mengharapkan bita NUL setelah string \"%s\" tapi menemui bita %d"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -798,21 +807,21 @@ msgstr ""
"%d (panjang string adalah %d). String UTF-8 yang valid sampai titik itu "
"adalah \"%s\""
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Nilai bersarang terlalu dalam"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Nilai terurai \"%s\" bukan lokasi objek D-Bus yang valid"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Nilai terurai \"%s\" bukan tanda tangan D-Bus yang valid"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -822,7 +831,7 @@ msgstr[0] ""
"Menjumpai larik dengan panjang %u bita. Panjang maksimal adalah 2<<26 bita "
"(64 MiB)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -831,16 +840,16 @@ msgstr ""
"Menemui larik bertipe \"a%c\", mengharapkan punya panjang kelipatan %u bita, "
"tapi menemui panjang %u bita"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
msgstr "Struktur kosong (tuple) tidak diperbolehkan di D-Bus"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "Nilai terurai \"%s\" bagi varian bukan tanda tangan D-Bus yang valid"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
@@ -848,7 +857,7 @@ msgstr ""
"Galat saat deserialisasi GVariant dengan type string \"%s\" dari format "
"kabel D-Bus"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -857,28 +866,28 @@ msgstr ""
"Nilai ke-endian-an tak valid. Berharap 0x6c (\"l\") atau (0x42) \"B\" tapi "
"menemui 0x%02x"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Versi protokol mayor tak valid. Berharap 1 tapi menemui %d"
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Tajuk tanda tangan ditemukan tetapi bukan tipe tanda tangan"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"Header tanda tangan dengan tanda tangan \"%s\" ditemukan tapi body pesan "
"kosong"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "Nilai terurai \"%s\" bukan tanda tangan D-Bus yang valid (bagi body)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -886,11 +895,11 @@ msgstr[0] ""
"Tidak terdapat tajuk tanda tangan pada pesan, tetapi panjang badan pesan "
"adalah %u bita"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Tak bisa men-deserialisasi pesan: "
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
@@ -898,23 +907,23 @@ msgstr ""
"Kesalahan serialisasi GVariant dengan type string \"%s\" ke format kabel D-"
"Bus"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr ""
"Jumlah deskriptor berkas dalam pesan (%d) berbeda dari field header (%d)"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Tak bisa men-serialisasi pesan: "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "Body pesan punya tanda tangan \"%s\" tapi tak ada header tanda tangan"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -923,52 +932,52 @@ msgstr ""
"Tubuh pesan memiliki tanda tangan tipe \"%s\" tapi tanda tangan di ruas "
"header adalah \"(%s)\""
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "Tubuh pesan kosong tapi tanda tangan pada ruas header adalah \"(%s)\""
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Galat balikan dengan tubuh bertipe \"%s\""
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Galat balikan dengan body kosong"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Ketikkan karakter apapun untuk menutup jendela ini)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "dbus sesi tak sedang berjalan, dan peluncuran-otomatis gagal"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Tak bisa mendapat profil perangkat keras: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Tak bisa memuat %s or %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Galat sewaktu memanggil StartServiceByName untuk %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Balasan tak diharapkan %d dari metode StartServiceByName(\"%s\")"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1024,66 +1033,66 @@ msgstr ""
"Gunakan \"%s PERINTAH --help\" untuk memperoleh bantuan pada setiap "
"perintah.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Galat: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Galat saat mengurai XML introspeksi: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Galat: %s bukan nama yang valid\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Galat: '%s' bukan suatu lokasi objek yang valid\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Menyambung ke bus sistem"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Menyambung ke bus sesi"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Menyambung ke alamat D-Bus yang diberikan"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Opsi Titik Ujung Sambungan:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Opsi yang menyatakan titik ujung sambungan"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Titik ujung sambungan tak dinyatakan"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Telah dinyatakan titik ujung sambungan berganda"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr "Peringatan: Menurut data introspeksi, antar muka \"%s\" tak ada\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1092,162 +1101,166 @@ msgstr ""
"Peringatan: Menurut data introspeksi, metode \"%s\" tak ada pada antar muka "
"\"%s\"\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Tujuan opsional bagi sinyal (nama unik)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Path objek untuk dipancari sinyal"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Nama antar muka dan sinyal"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Pancarkan sinyal."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Galat saat menyambung: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Galat: '%s' bukan nama bus unik yang valid\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Galat: Lokasi objek tak dinyatakan\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Galat: Nama sinyal tak dinyatakan\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Galat: Nama sinyal \"%s\" tak valid\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Galat: '%s' bukan nama antar muka yang valid\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Galat: '%s' bukan nama anggota yang valid\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Galat saat mengurai parameter %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Galat saat menggelontor sambungan: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Nama tujuan tempat menjalankan metode"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Lokasi objek tempat menjalankan metode"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Nama metode dan antar muka"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Tenggat waktu dalam detik"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Perbolehkan otorisasi interaktif"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Jalankan suatu metode pada suatu objek jauh."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Galat: Tujuan tak dinyatakan\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Galat: %s bukan nama bus yang valid\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Galat: Nama metode tak dinyatakan\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Galat: Nama metode \"%s\" tak valid\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Galat ketika mengurai parameter ke-%d bertipe \"%s\": %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Galat saat menambahkan %d handle: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Nama tujuan untuk introspeksi"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Lokasi objek untuk introspeksi"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Cetak XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Introspeksi anak"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Hanya cetak properti"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Introspeksi suatu objek jauh."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Nama tujuan untuk dipantau"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Lokasi objek untuk dipantau"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Memantau suatu objek jauh."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Galat: tidak dapat memonitor koneksi non bus pesan\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr ""
"Layanan yang akan diaktifkan sebelum menunggu yang lain (nama yang dikenal "
"baik)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1255,64 +1268,69 @@ msgstr ""
"Tenggat waktu menunggu sebelum keluar dengan suatu kesalahan (detik); 0 "
"untuk tanpa tenggat (baku)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[OPSI…] NAMA-BUS"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Tunggu suatu nama bus muncul."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Galat: Suatu layanan yang akan diaktifkan mesti dinyatakan\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "Galat: Suatu layanan yang mesti ditunggu harus dinyatakan\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Galat: Terlalu banyak argumen.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Galat: %s bukan nama bus yang dikenal baik dan valid\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Tidak berwenang untuk mengubah pengaturan awakutu"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Tanpa nama"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "Berkas desktop tak menyatakan ruas Exec"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Tak bisa temukan terminal yang diperlukan bagi aplikasi"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr ""
"Tak bisa membuat folder %s untuk konfigurasi aplikasi bagi pengguna: %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Tak bisa membuat folder %s untuk konfigurasi MIME bagi pengguna: %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "Informasi aplikasi tak punya identifier"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Tak bisa membuat berkas desktop pengguna %s"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Definisi gubahan bagi %s"
@@ -1340,7 +1358,7 @@ msgstr "kandar tidak mengimplementasi start"
msgid "drive doesn’t implement stop"
msgstr "kandar tidak mengimplementasi stop"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "Backend TLS tidak menerapkan pengambilan pengikatan TLS"
@@ -1381,73 +1399,73 @@ msgstr "Berharap suatu GEmblem bagi GEmblemedIcon"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Kait yang memuat tak ada"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Tak bisa menyalin direktori atas direktori"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Tak bisa menyalin direktori atas direktori"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Berkas tujuan telah ada"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Tak bisa menyalin direktori secara rekursif"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Splice tidak didukung"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Galat saat men-splice berkas: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Menyalin (reflink/clone) antar kait tak didukung"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Menyalin (reflink/clone) tak didukung atau tak valid"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Menyalin (reflink/clone) tak didukung atau tak bekerja"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Tak bisa menyalin berkas spesial"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Diberikan nilai link simbolik yang tak valid"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Taut simbolik tidak didukung"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Tong sampah tak didukung"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Nama berkas tak boleh mengandung \"%c\""
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "volume tak mengimplementasi pengaitan"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Tak ada aplikasi terdaftar yang menangani berkas ini"
@@ -1492,7 +1510,7 @@ msgstr "Pemenggalan tak diijinkan pada stream masukan"
msgid "Truncate not supported on stream"
msgstr "Pemenggalan tak didukung pada stream"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Nama host salah"
@@ -1579,7 +1597,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Tak bisa mengurai \"%s\" sebagai mask alamat IP"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Tak cukup ruang bagi alamat soket"
@@ -2418,15 +2436,15 @@ msgstr "Galat saat memampatkan berkas %s"
msgid "text may not appear inside <%s>"
msgstr "teks tidak boleh muncul di dalam <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Tampilkan versi program dan keluar"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Nama berkas keluaran"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2434,48 +2452,48 @@ msgstr ""
"Direktori untuk memuat berkas yang direferensikan dalam FILE darinya "
"(bawaan: direktori saat ini)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "DIREKTORI"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
"Buat keluaran dalam format yang dipilih bagi ekstensi nama berkas target"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Buat tajuk sumber"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr ""
"Buat kode sumber yang dipakai untutk menaut berkas sumber daya ke dalam kode "
"Anda"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Buat daftar kebergantungan"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Nama berkas kebergantungan yang akan dibuat"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Sertakan target palsu pada berkas dependensi yang dihasilkan"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Jangan buat dan daftarkan sumber daya secara otomatis"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Jangan ekspor fungsi; deklarasikan mereka G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2483,11 +2501,15 @@ msgstr ""
"Jangan menyematkan data sumber daya dalam berkas C; anggap itu terhubung "
"secara eksternal sebagai gantinya"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "Nama identifier C yang dipakai bagi kode sumber yang dibuat"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "Kompiler target C (bawaan: variabel lingkungan CC)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2497,7 +2519,7 @@ msgstr ""
"Berkas spesifikasi sumber daya memiliki ekstensi .gresource.xml,\n"
"dan berkas sumber daya memiliki ekstensi bernama .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Anda mesti memberikan hanya satu nama berkas\n"
@@ -3292,13 +3314,13 @@ msgstr "Galat saat membuat salinan cadangan: %s"
msgid "Error renaming temporary file: %s"
msgstr "Galat saat mengubah nama berkas sementara: %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "Galat saat memenggal berkas: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Galat saat membuka berkas \"%s\": %s"
@@ -3320,7 +3342,7 @@ msgstr "Berkas telah diubah secara eksternal"
msgid "Error removing old file: %s"
msgstr "Galat saat menghapus berkas lama: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "GSeekType yang tak valid diberikan"
@@ -3332,15 +3354,15 @@ msgstr "Permintaan seek yang tak valid"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Tak bisa memenggal GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Memori stream keluaran tak bisa diubah ukuran"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Gagal mengubah ukuran memori stream keluaran"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3348,11 +3370,11 @@ msgstr ""
"Banyaknya memori yang diperlukan untuk memroses penulisan lebih besar "
"daripada ruang tersedia"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Seek yang diminta sebelum awal stream"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Seek yang diminta setelah akhir stream"
@@ -3455,18 +3477,22 @@ msgstr "Jumlah vektor yang dilewatkan ke %s terlalu besar"
msgid "Source stream is already closed"
msgstr "Stream sumber telah ditutup"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Galat saat mengurai \"%s\": %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s tidak diterapkan"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Domain tidak valid"
@@ -3581,7 +3607,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " SEKSI Nama seksi elf (opsional)\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " PERINTAH Perintah (opsional) untuk dijelaskan\n"
@@ -3613,7 +3639,7 @@ msgstr "PATH"
msgid " PATH A resource path\n"
msgstr " PATH Path sumber daya\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Tidak ada skema \"%s\"\n"
@@ -3645,35 +3671,35 @@ msgstr "Path harus diakhiri dengan garis miring (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Path tak boleh memuat dua slash berturutan (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "Nilai yang diberikan diluar rentang yang valid\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "Kunci tidak dapat ditulisi\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Daftar skema (yang tak bisa dipindah) yang terpasang"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Daftar skema yang dapat dipindah yang terpasang"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Daftar kunci di SKEMA"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "SKEMA[:PATH]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Daftar anak dari SKEMA"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3681,48 +3707,48 @@ msgstr ""
"Daftar kunci dan nilai, secara rekursif\n"
"Bila tak ada SKEMA diberikan, daftar semua kunci\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SKEMA[:PATH]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Ambil nilai dari KUNCI"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "SKEMA[:PATH] KUNCI"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Kueri rentang nilai yang valid bagi KUNCI"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Kueri deskripsi bagi KUNCI"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Menata nilai KUNCI ke NILAI"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SKEMA[:PATH] KUNCI NILAI"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Menata KUNCI ke nilai bawaannya"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Tata ulang semua kunci dalam SKEMA ke nilai baku"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Periksa apakah KUNCI dapat ditulisi"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3732,11 +3758,11 @@ msgstr ""
"Bila tak ada KUNCI yang dinyatakan, memantau semua kunci dalam SKEMA.\n"
"Gunakan ^C untuk berhenti memantau.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SKEMA[:PATH] [KUNCI]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3783,7 +3809,7 @@ msgstr ""
"Pakai 'gsettings help PERINTAH' untuk mendapat bantuan terrinci.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3798,11 +3824,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " DIRSKEMA Adalah direktori tempat mencari skema tambahan\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3810,213 +3836,213 @@ msgstr ""
" SKEMA Nama skema\n"
" PATH Path, bagi skema yang dapat dipindah\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " KUNCI Kunci (opsional) dalam skema\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " KUNCI Kunci dalam skema\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " NILAI Tatanan nilai\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Tak bisa memuat skema dari %s: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Tidak ada skema yang terpasang\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Nama skema yang diberikan kosong\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Tidak ada kunci seperti \"%s\"\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Soket tak valid, tak diinisialisasi"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Soket tak valid, inisialisasi gagal karena: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Soket telah ditutup"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "I/O soket kehabisan waktu"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "membuat GSocket dari fd: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Tak bisa membuat soket: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Famili tak dikenal dinyatakan"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Protokol tak dikenal dinyatakan"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "Tak bisa memakai operasi datagram pada suatu soket bukan datagram."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Tak bisa memakai operasi datagram pada suatu soket yang tenggang waktunya "
"ditata."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "tak bisa mendapat alamat lokal: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "tak bisa mendapat alamat jauh: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "tak bisa mendengarkan: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Galat saat mengikat ke alamat %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Galat saat bergabung dengan grup multicast: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Galat saat meninggalkan grup multicast: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Tak ada dukungan bagi multicast spesifik sumber"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Keluarga soket tak didukung"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "spesifik sumber bukan alamat IPv4"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Nama antarmuka terlalu panjang"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Antarmuka tidak ditemukan: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "Tak ada dukungan bagi multicast spesifik sumber IPV4"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "Tak ada dukungan bagi multicast spesifik sumber IPV6"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Galat saat menerima sambungan: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Penyambungan tengah berlangsung"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Tak bisa mendapat kesalahan yang tertunda: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Galat saat menerima data: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Galat saat mengirim data: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Tak bisa mematikan soket: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Galat saat menutup soket: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Menunggu kondisi soket: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Tak bisa mengirim pesan: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Vektor pesan terlalu besar"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Galat saat menerima pesan: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage tak didukung pada Windows"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Galat saat menerima pesan: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Tak bisa membaca kredensial soket: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "g_socket_get_credentials tidak diimplementasikan untuk OS ini"
@@ -4034,11 +4060,11 @@ msgstr "Tak bisa menyambung ke %s: "
msgid "Could not connect: "
msgstr "Tak bisa menyambung: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "Proksi melalui koneksi bukan TCP tidak didukung."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Protokol proksi \"%s\" tidak didukung."
@@ -4136,11 +4162,11 @@ msgstr "Proksi SOCSKv5 tidak mendukung jenis alamat yang diberikan."
msgid "Unknown SOCKSv5 proxy error."
msgstr "Galat tak dikenal pada proksi SOCKSv5."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr ""
-"Gagal saat membuat pipe untuk sarana komunikasi dengan proses child (%s)"
+"Gagal saat membuat pipe untuk sarana komunikasi dengan proses anak (%s)"
#: gio/gtestdbus.c:619
#, c-format
@@ -4161,44 +4187,66 @@ msgstr "Tak ada alamat valid yang ditemukan"
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "Galat saat mengurai balik \"%s\": %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr "Galat saat mengurai record %s DNS: paket DNS salah bentuk"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "Tidak ada record DNS dengan tipe yang diminta bagi \"%s\""
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "Sementara tidak dapat mengurai \"%s\""
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "Galat saat mengurai \"%s\""
-#: gio/gtlscertificate.c:431
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Paket DNS salah bentuk"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "Gagal mengurai respon DNS untuk \"%s\": "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Tak ditemukan sertifikat terenkode-PEM"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Tak bisa mendekripsi kunci privat terenkode-PEM"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Tak bisa mengurai kunci privat terenkode-PEM"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Tak ditemukan sertifika terenkode-PEM"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Tak bisa mengurai sertifikat terenkode-PEM"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "Backend TLS saat ini tidak mendukung PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "GTlsBackend ini tidak mendukung pembuatan sertifikat PKCS #11"
@@ -4224,53 +4272,61 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "Sandi yang dimasukkan salah."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "Mengirim FD tidak didukung"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "Mengharapkan 1 pesan kendali, memperoleh %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Tipe yang tak diharapkan dari data ancillary"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "Mengharapkan satu fd, tapi mendapat %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Menerima fd yang tak valid"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "Menerima FD tidak didukung"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Galat saat mengirim kredensial: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Galat ketika memeriksa apakah SO_PASSCRED diaktifkan bagi soket: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Galat saat mengaktifkan SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Berharap membaca bita tunggal untuk penerimaan kredensial tapi membaca nol "
"bita"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Tak mengharapkan pesan kendali, tapi memperoleh %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Galat ketika mematikan SO_PASSCRED: %s"
@@ -4286,7 +4342,7 @@ msgstr "Galat saat membaca dari descriptor berkas: %s"
msgid "Error closing file descriptor: %s"
msgstr "Galat saat menutup descriptor berkas: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Akar sistem berkas"
@@ -4297,7 +4353,7 @@ msgstr "Akar sistem berkas"
msgid "Error writing to file descriptor: %s"
msgstr "Galat saat menulis ke descriptor berkas: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "Alamat soket domain UNIX abstrak tak didukung pada sistem ini"
@@ -4447,8 +4503,8 @@ msgstr "Gagal mengembangkan baris eksekusi \"%s\" dengan URI \"%s\""
msgid "Unrepresentable character in conversion input"
msgstr "Karakter yang tidak dapat diterima dalam masukan konversi"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Rangkaian karakter sebagian pada akhir input"
@@ -5011,15 +5067,15 @@ msgstr "Kanal terputus pada karakter sebagian"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Tak bisa melakukan pembacaan mentah dalam g_io_channel_read_to_end"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "Berkas kunci yang valid tak ditemukan pada direktori yang dicari"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Bukan berkas biasa"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5027,51 +5083,51 @@ msgstr ""
"Berkas kunci mengandung baris \"%s\" yang bukan suatu pasangan kunci-nilai, "
"kelompok, atau komentar"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Nama grup tak valid: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Berkas kunci tidak mulai dengan sebuah kelompok"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Nama kunci tak valid: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Nama kunci tak valid: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Berkas kunci mengandung enkoding \"%s\" yang tidak didukung"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Berkas kunci tidak memiliki grup \"%s\""
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Berkas kunci tidak memiliki kunci \"%s\" dalam kelompok \"%s\""
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr ""
"Berkas kunci mengandung kunci \"%s\" dengan nilai \"%s\" yang bukan UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr ""
"Berkas kunci mengandung kunci \"%s\" yang nilainya tidak dapat diterjemahkan."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5080,36 +5136,36 @@ msgstr ""
"Berkas kunci mengandung kunci \"%s\" dalam grup \"%s\" yang nilainya tidak "
"dapat diterjemahkan."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "Kunci \"%s\" dalam grup \"%s\" bernilai \"%s\" padahal diharapkan %s"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Berkas kunci mengandung karakter escape pada akhir baris"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Berkas kunci memuat urutan escape \"%s\" yang tidak valid"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "Nilai \"%s\" tidak bisa diterjemahkan sebagai sebuah bilangan."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "Nilai bilangan bulat \"%s\" di luar jangkauan"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "Nilai \"%s\" tidak dapat diterjemahkan sebagai sebuah bilangan float."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "Nilai \"%s\" tidak dapat diterjemahkan sebagai sebuah boolean."
@@ -5406,7 +5462,7 @@ msgstr "Galat saat mengurai opsi %s"
msgid "Missing argument for %s"
msgstr "Argumen untuk %s tidak lengkap"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Pilihan tidak diketahui %s"
@@ -5809,123 +5865,133 @@ msgstr "Teksnya kosong (atau hanya berisi whitespace)"
#: glib/gspawn.c:310
#, c-format
msgid "Failed to read data from child process (%s)"
-msgstr "Gagal saat membaca data dari proses child (%s)"
+msgstr "Gagal saat membaca data dari proses anak (%s)"
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "Galat tak terduga dalam membaca data dari proses anak (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Terjadi galat pada fungsi waitpid() (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "Proses anak keluar dengan kode %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Proses anak dimatikan oleh sinyal %ld"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Proses anak dihentikan oleh sinyal %ld"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Proses anak keluar secara tak normal"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
-msgstr "Gagal saat membaca dari pipe child (%s)"
+msgstr "Gagal saat membaca dari pipe anak (%s)"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Gagal menelurkan proses anak \"%s\" (%s)"
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Gagal saat fork (%s)"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Gagal pindah ke direktori \"%s\" (%s)"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Gagal menjalankan proses anak \"%s\" (%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2550
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Gagal mengarahkan output atau input pada proses child (%s)"
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Gagal membuka berkas untuk memetakan ulang deskriptor berkas (%s)"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2558
+#, c-format
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Gagal menduplikasi deskriptor berkas untuk proses anak (%s)"
+
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
-msgstr "Gagal saat fork proses child (%s)"
+msgstr "Gagal saat fork proses anak (%s)"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2575
#, c-format
msgid "Failed to close file descriptor for child process (%s)"
msgstr "Gagal menutup deskriptor berkas untuk proses anak (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Galat tak dikenal ketika menjalankan proses anak \"%s\""
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
-msgstr "Gagal saat membaca data yang dibutuhkan dai pipe pid child (%s)"
+msgstr "Gagal saat membaca data yang dibutuhkan dai pipe pid anak (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
-msgstr "Gagal untuk membaca data dari proses child"
+msgstr "Gagal untuk membaca data dari proses anak"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
-msgstr "Gagal saat menjalankan proses child (%s)"
+msgstr "Gagal saat menjalankan proses anak (%s)"
+
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Gagal dup() dalam proses anak (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Nama program salah: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "String tidak benar pada vektor argumen pada %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "String tidak benar pada variabel lingkungan: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Direktori aktif salah: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Gagal saat menjalankan program bantuan (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -5933,21 +5999,21 @@ msgstr ""
"Terjadi galat pada g_io_channel_win32_poll() ketika membaca data dari anak "
"proses"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "String kosong bukan angka"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "\"%s\" bukan bilangan bertanda"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Nomor \"%s\" berada di luar batas [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "\"%s\" bukan bilangan tak bertanda"
@@ -6008,188 +6074,188 @@ msgstr "URI tidak absolut, dan tidak ada dasar URI yang disediakan"
msgid "Missing ‘=’ and parameter value"
msgstr "'=' dan nilai parameter tidak ada"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Gagal mengalokasikan memori"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Karakter di luar jangkauan UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Rangkaian input konversi salah"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Karakter di luar jangkauan UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u bita"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
msgstr[0] "%u bita"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
msgstr[0] "%s bita"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6200,32 +6266,32 @@ msgstr[0] "%s bita"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
diff --git a/po/it.po b/po/it.po
index 54c41fd0f..ec582fcd5 100644
--- a/po/it.po
+++ b/po/it.po
@@ -18,8 +18,8 @@ msgid ""
msgstr ""
"Project-Id-Version: glib\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-01-22 16:30+0000\n"
-"PO-Revision-Date: 2022-01-23 15:06+0100\n"
+"POT-Creation-Date: 2022-03-22 15:19+0000\n"
+"PO-Revision-Date: 2022-03-22 17:13+0100\n"
"Last-Translator: Milo Casagrande <milo@milo.name>\n"
"Language-Team: Italian <tp@lists.linux.it>\n"
"Language: it\n"
@@ -27,7 +27,18 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
-"X-Generator: Poedit 2.1.1\n"
+"X-Generator: Poedit 3.0.1\n"
+
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "L'impostazione di applicazioni predefinite non è ancora supportata"
+
+# %s è l'attributo
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"L'impostazione dell'applicazione come ultima utilizzata per tipo non è "
+"ancora supportata"
#: gio/gapplication.c:500
msgid "GApplication options"
@@ -50,7 +61,7 @@ msgid "Replace the running instance"
msgstr "Sostituisce l'istanza in esecuzione"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Stampa l'aiuto"
@@ -62,7 +73,7 @@ msgstr "[COMANDO]"
msgid "Print version"
msgstr "Stampa la versione"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Stampa informazioni di versione ed esce"
@@ -124,8 +135,8 @@ msgstr "Il comando di cui stampare istruzioni dettagliate"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Identificatore dell'applicazione in formato D-Bus (org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "FILE"
@@ -151,7 +162,7 @@ msgstr "PARAMETERO"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Parametro opzioni per l'azione da invocare, in formato GVariant"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -165,7 +176,7 @@ msgid "Usage:\n"
msgstr "Uso:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argomenti:\n"
@@ -290,7 +301,7 @@ msgstr "Lo stream è già chiuso"
msgid "Truncate not supported on base stream"
msgstr "Troncamento non supportato sullo stream di base"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -311,7 +322,7 @@ msgstr "Spazio non sufficiente nella destinazione"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Sequenza di byte non valida nell'ingresso per la conversione"
@@ -321,7 +332,7 @@ msgstr "Sequenza di byte non valida nell'ingresso per la conversione"
msgid "Error during conversion: %s"
msgstr "Errore durante la conversione: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Inizializzazione annullabile non supportata"
@@ -335,37 +346,37 @@ msgstr "La conversione del set di caratteri da «%s» a «%s» non è supportata
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Impossibile aprire il convertitore da «%s» a «%s»"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "Tipo %s"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Tipo sconosciuto"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "Tipo di file %s"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials contiene data non validi"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials non è implementato su questo SO"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Non c'è alcun supporto a GCredentials per la piattaforma in uso"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GCredentials non contiene un ID di processo su questo SO"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr ""
"La falsificazione delle identità non è consentita su questo sistema operativo"
@@ -374,19 +385,19 @@ msgstr ""
msgid "Unexpected early end-of-stream"
msgstr "End-of-stream prematuro inatteso"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "La chiave «%s» non è valida nella voce indirizzo «%s»"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr ""
"Combinazione coppia chiave/valore senza significato nella voce indirizzo «%s»"
# Come chiarito in un messaggio seguente, path, tmpdir e abstract sono nomi chi chiavi (NdT)
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -395,29 +406,29 @@ msgstr ""
"L'indirizzo «%s» non è valido (necessario esattamente una tra le chiavi "
"path, tmpdir o abstract)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Errore nell'indirizzo «%s» — l'attributo «%s» non è valido"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Trasporto «%s» sconosciuto o non supportato per l'indirizzo «%s»"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "L'elemento indirizzo «%s» non contiene due punti (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr ""
"Il nome del trasporto nell'elemento indirizzo «%s» non deve essere vuoto"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -426,7 +437,7 @@ msgstr ""
"La coppia chiave/valore %d, «%s», nell'elemento indirizzo «%s», non contiene "
"un segno di uguale"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
@@ -434,7 +445,7 @@ msgstr ""
"La coppia chiave/valore %d, «%s», nell'elemento indirizzo «%s», non deve "
"avere una chiave vuota"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -443,7 +454,7 @@ msgstr ""
"Errore nell'eseguire l'unescaping sulla chiave o sul valore nella coppia "
"chiave/valore %d, «%s», nell'elemento di indirizzo «%s»"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -452,81 +463,83 @@ msgstr ""
"Errore nell'indirizzo «%s» — il trasporto unix richiede espressamente "
"l'impostazione di una tra le chiavi «path» o «abstract»"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr ""
"Errore nell'indirizzo «%s» — manca l'attributo «host» oppure non è valido"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr ""
"Errore nell'indirizzo «%s» — manca l'attributo «port» oppure non è valido"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Errore nell'indirizzo «%s» — manca l'attributo «noncefile» oppure non è "
"valido"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Errore nell'avvio automatico: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Errore nell'aprire il file nonce «%s»: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Errore nel leggere dal file nonce «%s»: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr "Errore nel leggere dal file nonce «%s»: attesi 16 byte, ottenuti %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Errore nello scrivere i contenuti del file nonce «%s» sullo stream:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "L'indirizzo fornito è vuoto"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Impossibile eseguire lo spawn di un bus di messaggi quando in setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr ""
+"Impossibile eseguire lo spawn di un bus di messaggi quando AT_SECURE è "
+"impostato"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr ""
"Impossibile eseguire lo spawn di un bus di messaggi senza un machine-id: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Impossibile lanciare automaticamente D-Bus senza $DISPLAY X11"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Errore nell'eseguire lo spawn della riga di comando «%s»: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Impossibile determinare l'indirizzo del bus di sessione (non implementato "
"per questo S.O.)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -535,7 +548,7 @@ msgstr ""
"Impossibile determinare l'indirizzo del bus dalla variabile d'ambiente "
"DBUS_STARTER_BUS_TYPE — valore «%s» sconosciuto"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -543,7 +556,7 @@ msgstr ""
"Impossibile determinare l'indirizzo del bus poiché la variabile d'ambiente "
"DBUS_STARTER_BUS_TYPE non è impostata"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Tipo di bus %d sconosciuto"
@@ -574,12 +587,12 @@ msgstr "Gli ID utente devono essere gli stessi per nodo e server"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Annullato attraverso GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Errore nell'ottenere informazioni per la directory «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -587,32 +600,32 @@ msgstr ""
"I permessi sulla directory «%s» non sono validi: attesa la modalità 0700, "
"ottenuta 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Errore nel creare la directory «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Operazione non supportata"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Errore nell'aprire il portachiavi «%s» in lettura: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "La riga %d del portachiavi su «%s» con contenuto «%s» non è corretta"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -620,7 +633,7 @@ msgstr ""
"Il primo token della riga %d del portachiavi su «%s» con contenuto «%s» non "
"è corretto"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -628,60 +641,60 @@ msgstr ""
"Il secondo token della riga %d del portachiavi su «%s» con contenuto «%s» "
"non è corretto"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Non è stato trovato il cookie con ID %d nel portachiavi su «%s»"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Errore nel creare il file di blocco «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Errore nell'eliminare il vecchio file di blocco «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Errore nel chiudere il file di blocco «%s» (unlinked): %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Errore nell'eseguire l'unlink del file di blocco «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Errore nell'aprire il portachiavi «%s» in scrittura: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(inoltre non è riuscito il rilascio del blocco per «%s»: %s) "
-#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "La connessione è chiusa"
# Sarebbe anche "il tempo è scaduto", ma non so
# se la forma in cui l'hanno messo ha un particolare
# senso, per cui la mantengo assieme a timeout
-#: gio/gdbusconnection.c:1903
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "È stato raggiunto il timeout"
-#: gio/gdbusconnection.c:2541
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"Incontrate flag non supportate durante la costruzione di una connessione "
"client-side"
-#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
@@ -689,105 +702,105 @@ msgstr ""
"Interfaccia «org.freedesktop.DBus.Properties» inesistente sull'oggetto nel "
"percorso %s"
-#: gio/gdbusconnection.c:4414
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "Proprietà «%s» inesistente"
-#: gio/gdbusconnection.c:4426
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "La proprietà «%s» non è leggibile"
-#: gio/gdbusconnection.c:4437
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "La proprietà «%s» non è scrivibile"
-#: gio/gdbusconnection.c:4457
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
"Errore nell'impostare la proprietà «%s»: atteso il tipo «%s», ottenuto «%s»"
-#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
-#: gio/gdbusconnection.c:6760
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "Interfaccia «%s» inesistente"
-#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Interfaccia «%s» inesistente sull'oggetto nel percorso %s"
-#: gio/gdbusconnection.c:5100
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "Metodo «%s» inesistente"
-#: gio/gdbusconnection.c:5131
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Il tipo di messaggio «%s» non corrisponde al tipo atteso «%s»"
-#: gio/gdbusconnection.c:5334
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Risulta già esportato un oggetto per l'interfaccia %s su %s"
-#: gio/gdbusconnection.c:5561
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Impossibile recuperare la proprietà %s.%s"
-#: gio/gdbusconnection.c:5617
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Impossibile impostare la proprietà %s.%s"
-#: gio/gdbusconnection.c:5796
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "Il metodo «%s» ha restituito il tipo «%s», ma era atteso «%s»"
-#: gio/gdbusconnection.c:6872
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "Il metodo «%s» sull'interfaccia «%s» con firma «%s» non esiste"
-#: gio/gdbusconnection.c:6993
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Un sottoalbero per %s è già esportato"
-#: gio/gdbusconnection.c:7282
+#: gio/gdbusconnection.c:7266
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "L'oggetto non esiste nel percorso «%s»"
# suppongo INVALID sia parola chiave
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "il tipo è INVALID"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "messaggio METHOD_CALL: manca il campo header PATH o MEMBER"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "messaggio METHOD_RETURN: manca il campo header REPLY_SERIAL"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "messaggio ERROR: manca il campo header REPLY_SERIAL o ERROR_NAME"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "messaggio SIGNAL: manca il campo header PATH, INTERFACE o MEMBER"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -795,7 +808,7 @@ msgstr ""
"messaggio SIGNAL: il campo header PATH sta usando il valore riservato /org/"
"freedestkop/DBus/Local"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -803,7 +816,7 @@ msgstr ""
"messaggio SIGNAL: il campo header INTERFACE sta usando il valore riservato "
"org.freedestkop.DBus.Local"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
@@ -811,12 +824,12 @@ msgstr[0] "Si voleva leggere %lu byte, ma ne sono stati ottenuti %lu"
msgstr[1] "Si volevano leggere %lu byte, ma ne sono stati ottenuti %lu"
# FIXME? plurale?
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "Atteso byte NUL dopo la stringa «%s», ma trovato %d byte"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -826,21 +839,21 @@ msgstr ""
"(la lunghezza della stringa è %d). La stringa UTF-8 valida fino a quel punto "
"era «%s»"
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:1986
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Valori troppo annidati"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Il valore «%s» analizzato non è un percorso oggetto D-Bus valido"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Il valore «%s» analizzato non è una firma D-Bus valida"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -853,7 +866,7 @@ msgstr[1] ""
"Incontrato un array lungo %u byte. La lunghezza massima è 2<<26 byte (64 "
"MiB)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -862,15 +875,19 @@ msgstr ""
"Incontrato un array di tipo «a%c» la cui lunghezza attesa era di %u byte, ma "
"la lunghezza reale era di %u byte"
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
+msgid "Empty structures (tuples) are not allowed in D-Bus"
+msgstr "Le strutture vuote (tuple) non sono ammesse in D-Bus"
+
# VARIANT è uno dei container type di D-Bus
# anche signature sono cose specifiche del protocollo
-#: gio/gdbusmessage.c:1970
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "Il valore «%s» analizzato per il variant non è una firma D-Bus valida"
# eeeehh?????
-#: gio/gdbusmessage.c:2011
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
@@ -878,7 +895,7 @@ msgstr ""
"Errore nel deserializzare il GVariant con la stringa di tipo «%s» dal "
"formato wire D-Bus"
-#: gio/gdbusmessage.c:2196
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -887,26 +904,26 @@ msgstr ""
"Valore endianness non valido. Atteso 0x6c («l») o 0x42 («B»), trovato invece "
"il valore 0x%02x"
-#: gio/gdbusmessage.c:2215
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Versione major del protocollo non valida. Atteso 1, ma trovato %d"
-#: gio/gdbusmessage.c:2273 gio/gdbusmessage.c:2862
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Trovato header firma, ma non è di tipo firma"
-#: gio/gdbusmessage.c:2285
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr "Trovato header firma con firma «%s», ma il corpo del messaggio è vuoto"
-#: gio/gdbusmessage.c:2300
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "Il valore «%s» analizzato non è una firma D-Bus valida (per il corpo)"
-#: gio/gdbusmessage.c:2332
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -915,11 +932,11 @@ msgstr[0] ""
msgstr[1] ""
"Nessun signature header nel messaggio, ma il corpo del messaggio è di %u byte"
-#: gio/gdbusmessage.c:2342
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Impossibile deserializzare il messaggio: "
-#: gio/gdbusmessage.c:2679
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
@@ -927,7 +944,7 @@ msgstr ""
"Errore nel serializzare il GVariant con la stringa di tipo «%s» al formato "
"wire D-Bus"
-#: gio/gdbusmessage.c:2816
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
@@ -935,17 +952,17 @@ msgstr ""
"Il numero di descrittori file nel messaggio (%d) è diverso da quello del "
"campo header (%d)"
-#: gio/gdbusmessage.c:2824
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Impossibile serializzare il messaggio: "
-#: gio/gdbusmessage.c:2877
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr ""
"Il corpo del messaggio presenta la firma «%s», ma non c'è alcun header firma"
-#: gio/gdbusmessage.c:2887
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -954,55 +971,55 @@ msgstr ""
"Il corpo del messaggio presenta la firma «%s», ma la firma nel campo header "
"è «%s»"
-#: gio/gdbusmessage.c:2903
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "Il corpo del messaggio è vuoto, ma la firma nel campo header è «(%s)»"
# non mi convincono "di ritorno" e "corpo"
# ma altrove corpo non ci stava male
-#: gio/gdbusmessage.c:3458
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Errore di ritorno con corpo di tipo «%s»"
# come sopra
-#: gio/gdbusmessage.c:3466
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Errore di ritorno con corpo vuoto"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(digitare un carattere qualsiasi per chiudere questa finestra)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "dbus di sessione non in esecuzione e autolaunch non riuscito"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Impossibile ottenere profilo hardware: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "impossibile caricare %s o %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Errore nel chiamare StartServiceByName per %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Risposta %d inattesa dal metodo StartServiceByName(\"%s\")"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1059,67 +1076,67 @@ msgstr ""
"\n"
"Usare «%s COMANDO --help» per informazioni su ciascun comando.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Errore: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Errore nell'analizzare XML introspection: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Errore: «%s» non è un nome valido\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Errore: «%s» non è un percorso di oggetto valido\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Connette al bus di sistema"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Connette al bus di sessione"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Connette all'indirizzo D-Bus fornito"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Opzioni endpoint connessione:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Opzioni per specificare gli endpoint di connessione"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Nessun endpoint di connessione specificato"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Specificati endpoint di connessione multipli"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr ""
"Attenzione: secondo dati di introspezione, l'interfaccia «%s» non esiste\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1128,163 +1145,167 @@ msgstr ""
"Attenzione: secondi dati di introspezione, il metodo «%s» non esiste "
"sull'interfaccia «%s»\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Destinazione opzionale per il segnale (nome univoco)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Percorso oggetto su cui emettere il segnale"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Segnale e nome dell'interfaccia"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Emette un segnale."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Errore nel connettersi: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Errore: «%s» non è un nome di bus univoco valido.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Errore: non è specificato il percorso dell'oggetto\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Errore: non è specificato il nome del segnale\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Errore: il nome del segnale «%s» non è valido\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Errore: «%s» non è un nome di interfaccia valido\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Errore: «%s» non è un nome di membro valido\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Errore nell'analizzare il parametro %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Errore nell'eseguire il flush della connessione: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Nome della destinazione su cui invocare il metodo"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Percorso dell'oggetto su cui invocare il metodo"
# oppure "Nome del metodo e dell'interfaccia" ???
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Metodo e nome dell'interfaccia"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Timeout in secondi"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Consenti autorizzazione interattiva"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Invoca un metodo su un oggetto remoto."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Errore: non è specificata la destinazione\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Errore: «%s» non è un nome di bus valido\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Errore: non è specificato il nome del metodo\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Errore: il nome di metodo «%s» non è valido\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Errore nell'analizzare il parametro %d di tipo «%s»: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Errore nell'aggiungere l'handle %d: %s\n"
# predicato > sostantivo per introspezione, direi che funziona
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Nome destinazione per l'introspezione"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Percorso oggetto per l'introspezione"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Stampa XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Figli introspezione"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Stampa solo le proprietà"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Esegue l'introspezione su un oggetto remoto."
# predicato > sostantivo per monitor, direi che funziona
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Nome destinazione per il monitoraggio"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Percorso oggetto per il monitoraggio"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Esegue il monitoraggio su un oggetto remoto."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Errore: impossibile monitorare una connessione non-message-bus\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Servizio da attivare prima di attendere l'altro (nome well-known)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1292,49 +1313,54 @@ msgstr ""
"Tempo da attendere prima di terminare con un errore (secondi); 0 per nessun "
"tempo di attesa (predefinito)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[OPZIONE…] NOME-BUS"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Attende la comparsa del nome di un bus"
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Errore: è necessario specificare un servizio da attivare.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr ""
"Errore: è necessario specificare un servizio da attendere.\n"
"\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Errore: troppi argomenti\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Errore: %s non è un nome di bus well-known.\n"
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Non autorizzato a modificare le impostazioni di debug"
+
# NdT: nome di applicazione (quando manca)
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Senza nome"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "Il file .desktop non specifica il campo Exec"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Impossibile trovare il terminale richiesto per l'applicazione"
# NdT il primo %s è il percorso alla cartella .local/share/application
# messo tra parentesi per scelta stilistica...
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr ""
@@ -1342,21 +1368,21 @@ msgstr ""
# NdT il primo %s è il percorso alla cartella .local/share/application
# messo tra parentesi per scelta stilistica...
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Impossibile creare la cartella utente di configurazione MIME (%s): %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "Manca un identificatore nelle informazioni dell'applicazione"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Impossibile creare il file .desktop utente %s"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Definizione personalizzata per %s"
@@ -1384,7 +1410,7 @@ msgstr "l'unità non implementa l'azione start"
msgid "drive doesn’t implement stop"
msgstr "l'unità non implementa l'azione stop"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "il backend TLS non implementa il recupero del binding TLS"
@@ -1425,74 +1451,74 @@ msgstr "Atteso un GEmblem per GEmblemedIcon"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "L'oggetto mount contenuto non esiste"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Impossibile copiare sopra la directory"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Impossibile copiare la directory sopra la directory"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Il file destinazione esiste"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Impossibile copiare la directory ricorsivamente"
# see man splice(2) :)
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Splice non supportato"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Errore nell'eseguire lo splice del file: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Copia (reflink/clone) tra oggetti mount non supportata"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Copia (reflink/clone) non supportata o non valida"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Copia (reflink/clone) non supportata o non ha funzionato"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Impossibile copiare il file speciale"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Fornito valore di collegamento simbolico non valido"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Collegamenti simbolici non supportati"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Cestino non supportato"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "I nomi di file non possono contenere «%c»"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "il volume non implementa l'azione mount"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Non risulta registrata alcuna applicazione per gestire questo file"
@@ -1538,7 +1564,7 @@ msgstr "Troncamento non consentito sullo stream di input"
msgid "Truncate not supported on stream"
msgstr "Troncamento non supportato sullo stream"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Nome host non valido"
@@ -1627,7 +1653,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Impossibile analizzare «%s» come maschera di indirizzo IP"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Spazio non sufficiente per l'indirizzo del socket"
@@ -2471,15 +2497,15 @@ msgstr "Errore nel comprimere il file %s"
msgid "text may not appear inside <%s>"
msgstr "il testo non può apparire all'interno di <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Mostra la versione del programma ed esce"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Nome del file di output"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2487,49 +2513,49 @@ msgstr ""
"Le directory da cui caricare i file indicati in FILE (predefinito: directory "
"corrente)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "DIRECTORY"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
"Genera l'output nel formato selezionato in base all'estensione del nome di "
"file della destinazione"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Genera header sorgente"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr ""
"Genera codice sorgente usato per collegare il file risorsa all'interno del "
"codice"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Genera elenco delle dipendenze"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Nome del file dipendenza da generare"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Include le destinazioni phony nel file delle dipendenze"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Non crea e registra automaticamente la risorsa"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Non esporta le funzioni, le dichiara G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2537,11 +2563,17 @@ msgstr ""
"Non incorpora i dati delle risorse nel file C, assume sia collegato "
"esternamente"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "Nome identificatore C usato per il codice sorgente generato"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr ""
+"Il compilatore C da usare (impostazione predefinita: la variabile di "
+"ambiente CC)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2551,7 +2583,7 @@ msgstr ""
"I file di specifica di risorsa hanno estensione .gresource.xml\n"
"e i file risorsa hanno estensione .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "È necessario indicare esattamente un nome di file\n"
@@ -3368,13 +3400,13 @@ msgstr "Errore nel creare la copia di backup: %s"
msgid "Error renaming temporary file: %s"
msgstr "Errore nel rinominare il file temporaneo: %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "Errore nel troncare il file: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Errore nell'aprire il file «%s»: %s"
@@ -3396,7 +3428,7 @@ msgstr "Il file è stato modificato dall'esterno"
msgid "Error removing old file: %s"
msgstr "Errore nel rimuovere il vecchio file: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Fornito GSeekType non valido"
@@ -3408,16 +3440,16 @@ msgstr "Richiesta di posizionamento non valida"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Impossibile troncare GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Stream di output di memoria non ridimensionabile"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Ridimensionamento dello stream di output di memoria non riuscito"
# spero sia write -> scrittura e non write -> write
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3425,11 +3457,11 @@ msgstr ""
"La quantità di memoria necessaria per elaborare la scrittura è più grande "
"dello spazio di indirizzamento disponibile"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Richiesto posizionamento prima dell'inizio dello stream"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Richiesto posizionamento oltre la fine dello stream"
@@ -3537,18 +3569,22 @@ msgstr "Somma dei vettori troppo grande passata a %s"
msgid "Source stream is already closed"
msgstr "Lo stream sorgente è già chiuso"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Errore nel risolvere «%s»: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s non è implementata"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Dominio non valido"
@@ -3663,7 +3699,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " SEZIONE Un nome sezione elf (opzionale)\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr ""
" COMANDO Il comando (opzionale) da spiegare\n"
@@ -3697,7 +3733,7 @@ msgstr "PERCORSO"
msgid " PATH A resource path\n"
msgstr " PERCORSO Un percorso risorsa\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Schema «%s» inesistente\n"
@@ -3729,35 +3765,35 @@ msgstr "Il percorso deve terminare con uno slash (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Il percorso non deve contenere due slash adiacenti (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "Il valore fornito è fuori dell'intervallo valido\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "La chiave non è scrivibile\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Elenca gli schemi (non rilocabili) installati"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Elenca gli schemi rilocabili installati"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Elenca le chiavi in SCHEMA"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "SCHEMA[:PERCORSO]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Elenca i figli di SCHEMA"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3765,48 +3801,48 @@ msgstr ""
"Elenca chiavi e valori, ricorsivamente\n"
"Se non è fornito alcuno SCHEMA elenca tutte le chiavi\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SCHEMA[:PERCORSO]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Ottiene il valore di CHIAVE"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "SCHEMA[:PERCORSO] CHIAVE"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Interroga l'intervallo di valori ammessi per CHIAVE"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Interroga la descrizione per CHIAVE"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Imposta il valore di CHIAVE a VALORE"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SCHEMA[:PERCORSO] CHIAVE VALORE"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Azzera CHIAVE al suo valore predefinito"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Azzera tutte le chiavi in SCHEMA ai rispettivi valori predefiniti"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Verifica se CHIAVE è scrivibile"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3816,11 +3852,11 @@ msgstr ""
"Se CHIAVE non è specificato, monitorizza tutte le chiavi in SCHEMA.\n"
"Usare ^C per fermare il monitoraggio.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SCHEMA[:PERCORSO] [CHIAVE]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3867,7 +3903,7 @@ msgstr ""
"\n"
"Usare «gsettings help COMANDO» per ottenere un aiuto dettagliato.\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3882,11 +3918,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " DIR_SCHEMA Una directory in cui cercare schemi aggiuntivi\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3894,214 +3930,214 @@ msgstr ""
" SCHEMA Il nome dello schema\n"
" PERCORSO Il percorso, per gli schemi rilocabili\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " CHIAVE La chiave (opzionale) all'interno dello schema\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " CHIAVE La chiave all'interno dello schema\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " VALORE Il valore da impostare\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Impossibile aprire i file schema da %s: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Nessun file schema installato\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Fornito un nome di schema vuoto\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Chiave «%s» inesistente\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Socket non valido, non inizializzato"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Socket non valido, inizializzazione non riuscita a causa di: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Il socket è già chiuso"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "I/O sul socket scaduto"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "creazione di GSocket da FD: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Impossibile creare il socket: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "È stata specificata una famiglia sconosciuta"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "È stato specificato un protocollo sconosciuto"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "Impossibile utilizzare operazioni datagram su un socket non-datagram."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Impossibile utilizzare operazioni datagram su un socket con impostato un "
"timeout."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "impossibile ottenere l'indirizzo locale: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "impossibile ottenere l'indirizzo remoto: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "impossibile restare in ascolto: %s"
# oppure "nell'eseguire il binding" ??
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Errore nell'eseguire il bind all'indirizzo %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Errore nel fare il join al gruppo multicast: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Errore nel lasciare il gruppo multicast: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Nessun supporto per multicast source-specific"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Famiglia socket non supportato"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "source-specific non è un indirizzo IPv4"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Nome interfaccia troppo lungo"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Interfaccia non trovata: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "Nessun supporto per multicast IPv4 source-specific"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "Nessun supporto per multicast IPv6 source-specific"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Errore nell'accettare la connessione: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Connessione in corso"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Impossibile ottenere l'errore in sospeso: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Errore nel ricevere i dati: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Errore nell'inviare i dati: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Impossibile arrestare il socket: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Errore nel chiudere il socket: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "In attesa della condizione del socket: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Impossibile inviare un messaggio: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Vettori di messaggi troppo grandi"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Errore nell'inviare il messaggio: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage non supportato su Windows"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Errore nel ricevere il messaggio: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Impossibile reggere le credenziali del socket: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "g_socket_get_credentials non implementata per questo SO"
@@ -4120,11 +4156,11 @@ msgid "Could not connect: "
msgstr "Impossibile connettersi: "
# FIXME: il tentativo o la connessione?
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "L'esecuzione del proxy su una connessione non-TCP non è supportato."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Il protocollo proxy «%s» non è supportato."
@@ -4228,7 +4264,7 @@ msgid "Unknown SOCKSv5 proxy error."
msgstr "Errore sconosciuto del proxy SOCKSv5."
# (%s) è in fondo perché risolto in g_strerror (gint)
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr ""
@@ -4253,44 +4289,66 @@ msgstr "Non è stato trovato alcun indirizzo valido"
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "Errore nella risoluzione inversa di «%s»: %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr "Errore nell'analizzare il record DNS %s: pacchetto DNS non valido"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "Nessun record DNS del tipo richiesto per «%s»"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "Momentaneamente impossibile risolvere «%s»"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "Errore nel risolvere «%s»"
-#: gio/gtlscertificate.c:431
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Pacchetto DNS non valido"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "Analisi della risposta DNS per «%s» non riuscita: "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Non è stato trovata alcuna chiave privata codificata con PEM"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Impossibile decifrare la chiave privata codificata con PEM"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Impossibile analizzare la chiave privata codificata con PEM"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Non è stato trovato alcun certificato codificato con PEM"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Impossibile analizzare il certificato codificato con PEM"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "L'attuale sistema TLS non supporta PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "Questo GTlsBackend non supporta la creazione di certificati PKCS #11"
@@ -4316,56 +4374,64 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "La password inserita non è corretta."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "L'invio di FD non è supportato"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "Atteso 1 messaggio di controllo, ottenuto %d"
msgstr[1] "Atteso 1 messaggio di controllo, ottenuti %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Tipo di dati ausiliari inatteso"
# tolto il "but" per omogeneità con l'altro simile
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "Atteso un FD, ottenuto %d\n"
msgstr[1] "Atteso un FD, ottenuti %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Ricevuto FD non valido"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "La ricezione di FD non è supportata"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Errore nell'inviare le credenziali: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Errore nel verificare se SO_PASSCRED è abilitato per il socket: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Errore nell'abilitare SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Attesa la lettura di un singolo byte per la ricezione delle credenziali, ma "
"sono stati letti zero byte"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Messaggio di controllo inatteso, ottenuti %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Errore durante la disabilitazione di SO_PASSCRED: %s"
@@ -4381,7 +4447,7 @@ msgstr "Errore nel leggere dal descrittore di file: %s"
msgid "Error closing file descriptor: %s"
msgstr "Errore nel chiudere il descrittore di file: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "File system radice"
@@ -4394,7 +4460,7 @@ msgstr "Errore nello scrivere sul descrittore di file: %s"
# a chi è riferito abstract??
# a addresses o a domain?
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr ""
"Indirizzi di socket di dominio UNIX astratto non supportati su questo sistema"
@@ -4553,8 +4619,8 @@ msgstr "Espansione della riga exec «%s» con l'URI «%s» non riuscita"
msgid "Unrepresentable character in conversion input"
msgstr "Carattere non rappresentabile nell'ingresso per la conversione"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Sequenza di caratteri parziale al termine dei dati in ingresso"
@@ -5132,15 +5198,15 @@ msgstr "Impossibile eseguire una lettura grezza in g_io_channel_read_to_end"
# key files sono, per glib, file di impostazioni in stile Windows INI
#
# Ad esempio i file .themes per i temi del desktop e delle icone.
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "Impossibile trovare un file chiavi valido nelle directory di ricerca"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Non è un file normale"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5148,44 +5214,44 @@ msgstr ""
"Il file chiavi contiene la riga «%s» che non è una coppia chiave/valore, un "
"gruppo o un commento valido"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Nome gruppo non valido: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Il file chiavi non inizia con un gruppo"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Nome chiave non valido: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Nome chiave non valido: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Il file chiavi contiene la codifica non supportata «%s»"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Il file chiavi non presenta il gruppo «%s»"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Il file chiavi non presenta alcuna chiave «%s» nel gruppo «%s»"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr ""
"Il file chiavi contiene la chiave «%s» con il valore «%s» che non è UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
@@ -5193,7 +5259,7 @@ msgstr ""
"Il file chiavi contiene la chiave «%s» che presenta un valore che non può "
"essere interpretato."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5202,37 +5268,37 @@ msgstr ""
"Il file chiavi contiene la chiave «%s» nel gruppo «%s» che presenta un "
"valore che non può essere interpretato."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr ""
"La chiave «%s» nel gruppo «%s» presenta il valore «%s» mentre era atteso %s"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Il file chiavi contiene un carattere di escape alla fine della riga"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Il file chiavi contiene la sequenza di escape non valida «%s»"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "Impossibile interpretare il valore «%s» come un numero."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "Il valore intero «%s» è fuori dall'intervallo"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "Impossibile interpretare il valore «%s» come un numero float."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "Impossibile interpretare il valore «%s» come un booleano."
@@ -5543,7 +5609,7 @@ msgstr "Errore nell'analizzare l'opzione %s"
msgid "Missing argument for %s"
msgstr "Argomento mancante per %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Opzione %s sconosciuta"
@@ -5971,134 +6037,146 @@ msgid "Failed to read data from child process (%s)"
msgstr "Lettura dei dati dal processo figlio non riuscita (%s)"
# (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "Errore inatteso nel leggere i dati da un processo figlio (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Errore inatteso in waitpid() (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "Processo figlio uscito con codice %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Processo figlio ucciso dal segnale %ld"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Processo figlio fermato dal segnale %ld"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Il processo figlio è uscito in modo anomalo"
# (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Lettura dalla pipe figlia non riuscita (%s)"
# (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Esecuzione del processo figlio «%s» non riuscita (%s)"
# (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Esecuzione di fork non riuscita (%s)"
# (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Cambio della directory in «%s» non riuscito (%s)"
# (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Esecuzione del processo figlio «%s» non riuscita (%s)"
+#: glib/gspawn.c:2550
+#, c-format
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Apertura del file per rimappare il descrittore file non riuscita (%s)"
+
# (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2558
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Ridirezione dell'output o input del processo figlio non riuscita (%s)"
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr ""
+"Duplicazione del descrittore file per il processo figlio non riuscita (%s)"
# (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Esecuzione del fork per processo figlio non riuscita (%s)"
# (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2575
#, c-format
msgid "Failed to close file descriptor for child process (%s)"
-msgstr "Chiusura del descrittore file dal processo figlio non riuscita (%s)"
+msgstr "Chiusura del descrittore file per il processo figlio non riuscita (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Errore sconosciuto nell'eseguire il processo figlio «%s»"
# (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr ""
"Lettura di una quantità di dati sufficiente dalla pipe del processo figlio "
"non riuscita (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Lettura di dati dal processo figlio non riuscita"
# (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Esecuzione del processo figlio non riuscita (%s)"
-#: glib/gspawn-win32.c:461
+# (%s) è in fondo perché risolto in g_strerror (gint)
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Esecuzione di dup() nel processo figlio non riuscita (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Nome programma non valido: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Stringa non valida nel vettore di argomenti alla posizione %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Stringa non valida nell'ambiente: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Directory di lavoro non valida: %s"
# (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Esecuzione del programma helper non riuscita (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -6106,21 +6184,21 @@ msgstr ""
"Errore inatteso in g_io_channel_win32_poll() nel leggere i dati da un "
"processo figlio"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "La stringa vuota non è un numero"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "«%s» non è un numero con segno"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Numero «%s» oltre i limiti [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "«%s» non è un numero senza segno"
@@ -6181,175 +6259,175 @@ msgstr "L'URI non è assoluto e non è stato fornito un URI di base"
msgid "Missing ‘=’ and parameter value"
msgstr "Manca il simbolo «=» e il valore"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Allocazione della memoria non riuscita"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Carattere fuori dall'intervallo per UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Sequenza non valida in ingresso per la conversione"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Carattere fuori dall'intervallo per UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u byte"
msgstr[1] "%u byte"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6357,7 +6435,7 @@ msgstr[0] "%u bit"
msgstr[1] "%u bit"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6365,7 +6443,7 @@ msgstr[0] "%s byte"
msgstr[1] "%s byte"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6377,32 +6455,32 @@ msgstr[1] "%s bit"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f kB"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
diff --git a/po/kk.po b/po/kk.po
index 52303223e..988e2d0e2 100644
--- a/po/kk.po
+++ b/po/kk.po
@@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2021-07-19 15:52+0000\n"
-"PO-Revision-Date: 2021-08-29 22:04+0500\n"
+"POT-Creation-Date: 2022-02-14 13:48+0000\n"
+"PO-Revision-Date: 2022-03-12 22:39+0500\n"
"Last-Translator: Baurzhan Muftakhidinov <baurthefirst@gmail.com>\n"
"Language-Team: Kazakh <kk_KZ@googlegroups.com>\n"
"Language: kk\n"
@@ -16,30 +16,39 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Poedit 3.0\n"
+"X-Generator: Poedit 3.0.1\n"
-#: gio/gapplication.c:500
+#: gio/gappinfo.c:333
+#| msgid "Cancellable initialization not supported"
+msgid "Setting default applications not supported yet"
+msgstr ""
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+
+#: gio/gapplication.c:497
msgid "GApplication options"
msgstr "GApplication опциÑлары"
-#: gio/gapplication.c:500
+#: gio/gapplication.c:497
msgid "Show GApplication options"
msgstr "GApplication опциÑларын көрÑету"
-#: gio/gapplication.c:545
+#: gio/gapplication.c:542
msgid "Enter GApplication service mode (use from D-Bus service files)"
msgstr ""
-#: gio/gapplication.c:557
+#: gio/gapplication.c:554
msgid "Override the application’s ID"
msgstr ""
-#: gio/gapplication.c:569
+#: gio/gapplication.c:566
msgid "Replace the running instance"
msgstr ""
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Көмекті шығару"
@@ -51,7 +60,7 @@ msgstr "[КОМÐÐДÐ]"
msgid "Print version"
msgstr "ÐÒ±Ñқа ақпаратын шығару"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "ÐÒ±Ñқа ақпаратын шығару және шығу"
@@ -112,8 +121,8 @@ msgstr ""
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr ""
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "ФÐЙЛ"
@@ -138,7 +147,7 @@ msgstr "ПÐРÐМЕТР"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr ""
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -150,7 +159,7 @@ msgid "Usage:\n"
msgstr "Қолданылуы:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Ðргументтер:\n"
@@ -267,7 +276,7 @@ msgstr ""
msgid "Truncate not supported on base stream"
msgstr ""
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1872 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -288,7 +297,7 @@ msgstr "МақÑат жерінде жеткілікті орын жоқ"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Түрлендіру кіріÑінде жарамÑыз байттар тізбегі анықталды"
@@ -298,7 +307,7 @@ msgstr "Түрлендіру кіріÑінде жарамÑыз байттар
msgid "Error during conversion: %s"
msgstr ""
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Ð‘Ð°Ñ Ñ‚Ð°Ñ€Ñ‚ÑƒÒ“Ð° болатын инициализациÑға қолдау жоқ"
@@ -312,7 +321,7 @@ msgstr ""
msgid "Could not open converter from “%s†to “%sâ€"
msgstr ""
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "%s түрі"
@@ -326,23 +335,23 @@ msgstr "БелгіÑіз түрі"
msgid "%s filetype"
msgstr "%s файл түрі"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr ""
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr ""
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr ""
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr ""
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr ""
@@ -350,152 +359,152 @@ msgstr ""
msgid "Unexpected early end-of-stream"
msgstr ""
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr ""
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr ""
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
"keys)"
msgstr ""
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr ""
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr ""
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr ""
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr ""
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
"sign"
msgstr ""
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
msgstr ""
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
"“%sâ€"
msgstr ""
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
"“path†or “abstract†to be set"
msgstr ""
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr ""
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr ""
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr ""
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "\"%s\" файлын ашу қатеÑÑ–: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "\"%s\" nonce файлынан оқу қатеÑÑ–: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr ""
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr ""
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
msgstr ""
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr ""
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr ""
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr ""
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
-#: gio/gdbusaddress.c:1397 gio/gdbusconnection.c:7261
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7334
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
"— unknown value “%sâ€"
msgstr ""
-#: gio/gdbusaddress.c:1406 gio/gdbusconnection.c:7270
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7343
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
msgstr ""
-#: gio/gdbusaddress.c:1416
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr ""
@@ -522,249 +531,249 @@ msgstr ""
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr ""
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:299
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "\"%s\" бума ақпаратын алу қатеÑÑ–: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:314
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
msgstr ""
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:347 gio/gdbusauthmechanismsha1.c:358
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "\"%s\" бумаÑын жаÑау қатеÑÑ–: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:360 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Әрекетке қолдау жоқ"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:403
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr ""
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:426 gio/gdbusauthmechanismsha1.c:748
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:440 gio/gdbusauthmechanismsha1.c:762
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:454 gio/gdbusauthmechanismsha1.c:776
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:478
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr ""
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:524
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr ""
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:588
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr ""
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:627
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr ""
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:638
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr ""
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:715
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr ""
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:909
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr ""
-#: gio/gdbusconnection.c:603 gio/gdbusconnection.c:2417
+#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
msgid "The connection is closed"
msgstr "Ð‘Ð°Ð¹Ð»Ð°Ð½Ñ‹Ñ Ð¶Ð°Ð±Ñ‹Ð»Ò“Ð°Ð½"
-#: gio/gdbusconnection.c:1902
+#: gio/gdbusconnection.c:1903
msgid "Timeout was reached"
msgstr ""
-#: gio/gdbusconnection.c:2540
+#: gio/gdbusconnection.c:2541
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
-#: gio/gdbusconnection.c:4189 gio/gdbusconnection.c:4536
+#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr ""
-#: gio/gdbusconnection.c:4331
+#: gio/gdbusconnection.c:4414
#, c-format
msgid "No such property “%sâ€"
msgstr "\"%s\" қаÑиеті табылмады"
-#: gio/gdbusconnection.c:4343
+#: gio/gdbusconnection.c:4426
#, c-format
msgid "Property “%s†is not readable"
msgstr "\"%s\" қаÑиетін оқу мүмкін емеÑ"
-#: gio/gdbusconnection.c:4354
+#: gio/gdbusconnection.c:4437
#, c-format
msgid "Property “%s†is not writable"
msgstr "\"%s\" қаÑиетін жазу мүмкін емеÑ"
-#: gio/gdbusconnection.c:4374
+#: gio/gdbusconnection.c:4457
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
-#: gio/gdbusconnection.c:4479 gio/gdbusconnection.c:4687
-#: gio/gdbusconnection.c:6689
+#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
+#: gio/gdbusconnection.c:6760
#, c-format
msgid "No such interface “%sâ€"
msgstr ""
-#: gio/gdbusconnection.c:4905 gio/gdbusconnection.c:7201
+#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr ""
-#: gio/gdbusconnection.c:5003
+#: gio/gdbusconnection.c:5100
#, c-format
msgid "No such method “%sâ€"
msgstr ""
-#: gio/gdbusconnection.c:5034
+#: gio/gdbusconnection.c:5131
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr ""
-#: gio/gdbusconnection.c:5237
+#: gio/gdbusconnection.c:5334
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr ""
-#: gio/gdbusconnection.c:5463
+#: gio/gdbusconnection.c:5561
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr ""
-#: gio/gdbusconnection.c:5519
+#: gio/gdbusconnection.c:5617
#, c-format
msgid "Unable to set property %s.%s"
msgstr "%s қаÑиетін орнату мүмкін емеÑ.%s"
-#: gio/gdbusconnection.c:5698
+#: gio/gdbusconnection.c:5796
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr ""
-#: gio/gdbusconnection.c:6800
+#: gio/gdbusconnection.c:6872
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr ""
-#: gio/gdbusconnection.c:6921
+#: gio/gdbusconnection.c:6993
#, c-format
msgid "A subtree is already exported for %s"
msgstr ""
-#: gio/gdbusconnection.c:7209
+#: gio/gdbusconnection.c:7282
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr ""
-#: gio/gdbusmessage.c:1266
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr ""
-#: gio/gdbusmessage.c:1277
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr ""
-#: gio/gdbusmessage.c:1288
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr ""
-#: gio/gdbusmessage.c:1300
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr ""
-#: gio/gdbusmessage.c:1313
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr ""
-#: gio/gdbusmessage.c:1321
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
msgstr ""
-#: gio/gdbusmessage.c:1329
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
msgstr ""
-#: gio/gdbusmessage.c:1377 gio/gdbusmessage.c:1437
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] ""
-#: gio/gdbusmessage.c:1391
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr ""
-#: gio/gdbusmessage.c:1410
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
"(length of string is %d). The valid UTF-8 string up until that point was “%sâ€"
msgstr ""
-#: gio/gdbusmessage.c:1474 gio/gdbusmessage.c:1722 gio/gdbusmessage.c:1911
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr ""
-#: gio/gdbusmessage.c:1620
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr ""
-#: gio/gdbusmessage.c:1642
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr ""
-#: gio/gdbusmessage.c:1689
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -772,135 +781,138 @@ msgid_plural ""
"Encountered array of length %u bytes. Maximum length is 2<<26 bytes (64 MiB)."
msgstr[0] ""
-#: gio/gdbusmessage.c:1709
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
"bytes, but found to be %u bytes in length"
msgstr ""
-#: gio/gdbusmessage.c:1895
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
+msgid "Empty structures (tuples) are not allowed in D-Bus"
+msgstr ""
+
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr ""
-#: gio/gdbusmessage.c:1936
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
msgstr ""
-#: gio/gdbusmessage.c:2121
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
"0x%02x"
msgstr ""
-#: gio/gdbusmessage.c:2134
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr ""
-#: gio/gdbusmessage.c:2188 gio/gdbusmessage.c:2784
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr ""
-#: gio/gdbusmessage.c:2200
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
-#: gio/gdbusmessage.c:2215
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr ""
-#: gio/gdbusmessage.c:2247
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
msgstr[0] ""
-#: gio/gdbusmessage.c:2257
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr ""
-#: gio/gdbusmessage.c:2601
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
msgstr ""
-#: gio/gdbusmessage.c:2738
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr ""
-#: gio/gdbusmessage.c:2746
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr ""
-#: gio/gdbusmessage.c:2799
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr ""
-#: gio/gdbusmessage.c:2809
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
"“%sâ€"
msgstr ""
-#: gio/gdbusmessage.c:2825
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr ""
-#: gio/gdbusmessage.c:3380
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr ""
-#: gio/gdbusmessage.c:3388
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr ""
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr ""
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr ""
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr ""
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
-#| msgid "Unable to trash file %s: %s"
msgid "Unable to load %s or %s: "
msgstr ""
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr ""
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr ""
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -945,13 +957,13 @@ msgid ""
msgstr ""
#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1244
+#: gio/gdbus-tool.c:1732
#, c-format
msgid "Error: %s\n"
msgstr "Қате: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1748
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr ""
@@ -961,8 +973,8 @@ msgstr ""
msgid "Error: %s is not a valid name\n"
msgstr ""
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1063
+#: gio/gdbus-tool.c:1898 gio/gdbus-tool.c:2138
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr ""
@@ -1026,8 +1038,8 @@ msgstr ""
msgid "Emit a signal."
msgstr "Сигналды жіберу."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:1000 gio/gdbus-tool.c:1835
+#: gio/gdbus-tool.c:2067 gio/gdbus-tool.c:2287
#, c-format
msgid "Error connecting: %s\n"
msgstr "БайланыÑу қатеÑÑ–: %s\n"
@@ -1037,7 +1049,7 @@ msgstr "БайланыÑу қатеÑÑ–: %s\n"
msgid "Error: %s is not a valid unique bus name.\n"
msgstr ""
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1043 gio/gdbus-tool.c:1878
msgid "Error: Object path is not specified\n"
msgstr ""
@@ -1061,7 +1073,7 @@ msgid "Error: %s is not a valid member name\n"
msgstr ""
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1175
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr ""
@@ -1071,162 +1083,171 @@ msgstr ""
msgid "Error flushing connection: %s\n"
msgstr ""
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:894
msgid "Destination name to invoke method on"
msgstr ""
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:895
msgid "Object path to invoke method on"
msgstr ""
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:896
msgid "Method and interface name"
msgstr ""
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:897
msgid "Timeout in seconds"
msgstr ""
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:898
+#| msgid "Show information about locations"
+msgid "Allow interactive authorization"
+msgstr ""
+
+#: gio/gdbus-tool.c:945
msgid "Invoke a method on a remote object."
msgstr ""
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1017 gio/gdbus-tool.c:1852 gio/gdbus-tool.c:2092
msgid "Error: Destination is not specified\n"
msgstr ""
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1028 gio/gdbus-tool.c:1869 gio/gdbus-tool.c:2103
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr ""
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1078
msgid "Error: Method name is not specified\n"
msgstr ""
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1089
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr ""
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1167
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr ""
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1193
#, c-format
-#| msgid "Error reading file %s: %s"
msgid "Error adding handle %d: %s\n"
msgstr ""
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1694
msgid "Destination name to introspect"
msgstr ""
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1695
msgid "Object path to introspect"
msgstr ""
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1696
msgid "Print XML"
msgstr "XML баÑпаға шығару"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1697
msgid "Introspect children"
msgstr ""
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1698
msgid "Only print properties"
msgstr "Тек қаÑиеттерін баÑпаға шығару"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1787
msgid "Introspect a remote object."
msgstr ""
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1993
msgid "Destination name to monitor"
msgstr "Бақылау үшін мақÑат атауы"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1994
msgid "Object path to monitor"
msgstr ""
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2019
msgid "Monitor a remote object."
msgstr ""
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2077
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr ""
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2201
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr ""
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2204
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
msgstr ""
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2252
msgid "[OPTION…] BUS-NAME"
msgstr "[ОПЦИЯ…] ШИÐÐ-ÐТЫ"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2253
msgid "Wait for a bus name to appear."
msgstr ""
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2329
msgid "Error: A service to activate for must be specified.\n"
msgstr "Қате: белÑендіру үшін қызмет көрÑетілуі керек.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2334
msgid "Error: A service to wait for must be specified.\n"
msgstr "Қате: күту үшін қызмет көрÑетілуі керек.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2339
msgid "Error: Too many arguments.\n"
msgstr ""
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2347 gio/gdbus-tool.c:2354
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Қате: \"%s\" - кеңінен белгілі шина аты емеÑ.\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4932
+#: gio/gdebugcontrollerdbus.c:203
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr ""
+
+#: gio/gdesktopappinfo.c:2174 gio/gdesktopappinfo.c:5099
msgid "Unnamed"
msgstr "ÐтауÑыз"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2584
msgid "Desktop file didn’t specify Exec field"
msgstr ""
-#: gio/gdesktopappinfo.c:2801
+#: gio/gdesktopappinfo.c:2892
msgid "Unable to find terminal required for application"
msgstr ""
-#: gio/gdesktopappinfo.c:3452
+#: gio/gdesktopappinfo.c:3619
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr ""
-#: gio/gdesktopappinfo.c:3456
+#: gio/gdesktopappinfo.c:3623
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr ""
-#: gio/gdesktopappinfo.c:3698 gio/gdesktopappinfo.c:3722
+#: gio/gdesktopappinfo.c:3865 gio/gdesktopappinfo.c:3889
msgid "Application information lacks an identifier"
msgstr ""
-#: gio/gdesktopappinfo.c:3958
+#: gio/gdesktopappinfo.c:4125
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "%s пайдаланушы Ð¶Ò±Ð¼Ñ‹Ñ Ò¯Ñтел файлын жаÑау мүмкін емеÑ"
-#: gio/gdesktopappinfo.c:4094
+#: gio/gdesktopappinfo.c:4261
#, c-format
msgid "Custom definition for %s"
msgstr ""
@@ -1254,7 +1275,7 @@ msgstr ""
msgid "drive doesn’t implement stop"
msgstr ""
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr ""
@@ -1295,73 +1316,73 @@ msgstr ""
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr ""
-#: gio/gfile.c:2608 gio/glocalfile.c:2477
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Бума Ò¯Ñтіне көшіру мүмкін емеÑ"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Буманы бума Ò¯Ñтіне көшіру мүмкін емеÑ"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "МақÑат файлы бар болып тұр"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Буманы рекурÑивті көшіру мүмкін емеÑ"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr ""
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr ""
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr ""
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr ""
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr ""
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Ðрнайы файлды көшіру мүмкін емеÑ"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr ""
-#: gio/gfile.c:4045 glib/gfileutils.c:2354
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Символдық Ñілтемелерге қолдау жоқ"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "ÒšÐ¾Ò›Ñ‹Ñ ÑˆÐµÐ»ÐµÐ³Ñ–Ð½Ðµ қолдау жоқ"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr ""
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "том тіркеуді жүзеге аÑырмайды"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr ""
@@ -1406,7 +1427,7 @@ msgstr ""
msgid "Truncate not supported on stream"
msgstr ""
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "ХоÑÑ‚ аты қате"
@@ -1433,7 +1454,6 @@ msgid "HTTP proxy connection failed: %i"
msgstr "HTTP прокÑи байланыÑÑ‹ ÑәтÑіз аÑқталды: %i"
#: gio/ghttpproxy.c:266
-#| msgid "HTTP proxy connection failed: %i"
msgid "HTTP proxy response too big"
msgstr "HTTP прокÑи жауабы тым үлкен"
@@ -1494,7 +1514,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr ""
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr ""
@@ -1553,7 +1573,6 @@ msgid "Show information about locations"
msgstr "ОрналаÑулар жөнінде ақпаратты көрÑету"
#: gio/gio-tool.c:232
-#| msgid "Launch an application"
msgid "Launch an application from a desktop file"
msgstr "Қолданбаны desktop файлынан жөнелту"
@@ -1820,7 +1839,6 @@ msgstr ""
#: gio/gio-tool-launch.c:98
#, c-format
-#| msgid "Unable to trash file %s: %s"
msgid "Unable to load ‘%s‘: %s"
msgstr "‘%s‘ жүктеу мүмкін емеÑ: %s"
@@ -1831,7 +1849,6 @@ msgstr ""
#: gio/gio-tool-launch.c:119
#, c-format
-#| msgid "Unable to trash file %s: %s"
msgid "Unable to launch application ‘%s’: %s"
msgstr "‘%s’ қолданбаÑын жөнелту мүмкін емеÑ: %s"
@@ -2199,7 +2216,6 @@ msgid "Empty the trash"
msgstr "ÒšÐ¾Ò›Ñ‹Ñ ÑˆÐµÐ»ÐµÐ³Ñ–Ð½ тазарту"
#: gio/gio-tool-trash.c:35
-#| msgid "List the contents of the locations."
msgid "List files in the trash with their original locations"
msgstr ""
"ÒšÐ¾Ò›Ñ‹Ñ ÑˆÐµÐ»ÐµÐ³Ñ–Ð½Ð´ÐµÐ³Ñ– файлдарды олардың баÑтапқы орналаÑулармен бірге тізіп "
@@ -2224,7 +2240,6 @@ msgid "Unable to move file to its original location: "
msgstr ""
#: gio/gio-tool-trash.c:225
-#| msgid "Move files or directories to the trash."
msgid "Move/Restore files or directories to the trash."
msgstr "Файлдар немеÑе бумаларды Ò›Ð¾Ò›Ñ‹Ñ ÑˆÐµÐ»ÐµÐ³Ñ–Ð½Ðµ таÑтау немеÑе қалпына келтіру."
@@ -2301,76 +2316,80 @@ msgstr "%s файлын Ñығу қатеÑÑ–"
msgid "text may not appear inside <%s>"
msgstr "мәтін <%s> ішінде болмауы мүмкін"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr ""
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr ""
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
msgstr ""
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "БУМÐ"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr ""
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr ""
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr ""
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr ""
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr ""
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr ""
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr ""
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
msgstr ""
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr ""
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr ""
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
"and the resource file have the extension called .gresource."
msgstr ""
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr ""
@@ -2839,8 +2858,8 @@ msgstr "%s файл атын ауыÑтыру қатеÑÑ–: %s"
msgid "Can’t rename file, filename already exists"
msgstr "Файл атын ауыÑтыру мүмкін емеÑ, ондай файл бар болып тұр"
-#: gio/glocalfile.c:1184 gio/glocalfile.c:2371 gio/glocalfile.c:2399
-#: gio/glocalfile.c:2538 gio/glocalfileoutputstream.c:656
+#: gio/glocalfile.c:1184 gio/glocalfile.c:2380 gio/glocalfile.c:2408
+#: gio/glocalfile.c:2547 gio/glocalfileoutputstream.c:656
msgid "Invalid filename"
msgstr "Файл аты қате"
@@ -2854,92 +2873,91 @@ msgstr "%s файлын ашу қатеÑÑ–: %s"
msgid "Error removing file %s: %s"
msgstr "%s файлын өшіру қатеÑÑ–: %s"
-#: gio/glocalfile.c:1982 gio/glocalfile.c:1993
+#: gio/glocalfile.c:1982 gio/glocalfile.c:1993 gio/glocalfile.c:2020
#, c-format
msgid "Error trashing file %s: %s"
msgstr "%s файлын қоқыÑқа таÑтау қатеÑÑ–: %s"
-#: gio/glocalfile.c:2031
+#: gio/glocalfile.c:2040
#, c-format
-#| msgid "Unable to trash file %s: %s"
msgid "Unable to create trash directory %s: %s"
msgstr "%s Ò›Ð¾Ò›Ñ‹Ñ ÑˆÐµÐ»ÐµÐ³Ñ–Ð½ жаÑау мүмкін емеÑ: %s"
-#: gio/glocalfile.c:2052
+#: gio/glocalfile.c:2061
#, c-format
msgid "Unable to find toplevel directory to trash %s"
msgstr ""
-#: gio/glocalfile.c:2060
+#: gio/glocalfile.c:2069
#, c-format
msgid "Trashing on system internal mounts is not supported"
msgstr ""
-#: gio/glocalfile.c:2146 gio/glocalfile.c:2174
+#: gio/glocalfile.c:2155 gio/glocalfile.c:2183
#, c-format
msgid "Unable to find or create trash directory %s to trash %s"
msgstr ""
-#: gio/glocalfile.c:2220
+#: gio/glocalfile.c:2229
#, c-format
msgid "Unable to create trashing info file for %s: %s"
msgstr ""
-#: gio/glocalfile.c:2282
+#: gio/glocalfile.c:2291
#, c-format
msgid "Unable to trash file %s across filesystem boundaries"
msgstr ""
-#: gio/glocalfile.c:2286 gio/glocalfile.c:2342
+#: gio/glocalfile.c:2295 gio/glocalfile.c:2351
#, c-format
msgid "Unable to trash file %s: %s"
msgstr "%s файлын қоқыÑқа таÑтау мүмкін емеÑ: %s"
-#: gio/glocalfile.c:2348
+#: gio/glocalfile.c:2357
#, c-format
msgid "Unable to trash file %s"
msgstr "%s файлын қоқыÑқа таÑтау мүмкін емеÑ"
-#: gio/glocalfile.c:2374
+#: gio/glocalfile.c:2383
#, c-format
msgid "Error creating directory %s: %s"
msgstr "%s бумаÑын жаÑау қатеÑÑ–: %s"
-#: gio/glocalfile.c:2403
+#: gio/glocalfile.c:2412
#, c-format
msgid "Filesystem does not support symbolic links"
msgstr ""
-#: gio/glocalfile.c:2406
+#: gio/glocalfile.c:2415
#, c-format
msgid "Error making symbolic link %s: %s"
msgstr "%s Ñимволдық ÑілтемеÑін жаÑау қатеÑÑ–: %s"
-#: gio/glocalfile.c:2449 gio/glocalfile.c:2484 gio/glocalfile.c:2541
+#: gio/glocalfile.c:2458 gio/glocalfile.c:2493 gio/glocalfile.c:2550
#, c-format
msgid "Error moving file %s: %s"
msgstr "%s файлын жылжыту қатеÑÑ–: %s"
-#: gio/glocalfile.c:2472
+#: gio/glocalfile.c:2481
msgid "Can’t move directory over directory"
msgstr "Буманы бума Ò¯Ñтіне жылжыту мүмкін емеÑ"
-#: gio/glocalfile.c:2498 gio/glocalfileoutputstream.c:1108
+#: gio/glocalfile.c:2507 gio/glocalfileoutputstream.c:1108
#: gio/glocalfileoutputstream.c:1122 gio/glocalfileoutputstream.c:1137
#: gio/glocalfileoutputstream.c:1154 gio/glocalfileoutputstream.c:1168
msgid "Backup file creation failed"
msgstr "Қор көшірме файлын жаÑау ÑәтÑіз аÑқталды"
-#: gio/glocalfile.c:2517
+#: gio/glocalfile.c:2526
#, c-format
msgid "Error removing target file: %s"
msgstr "МақÑат файлын өшіру қатеÑÑ–: %s"
-#: gio/glocalfile.c:2531
+#: gio/glocalfile.c:2540
msgid "Move between mounts not supported"
msgstr ""
-#: gio/glocalfile.c:2705
+#: gio/glocalfile.c:2714
#, c-format
msgid "Could not determine the disk usage of %s: %s"
msgstr ""
@@ -3122,7 +3140,7 @@ msgid "Error truncating file: %s"
msgstr ""
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "\"%s\" файлын ашу қатеÑÑ–: %s"
@@ -3144,7 +3162,7 @@ msgstr "Файл Ñыртқы түрде өзгертілді"
msgid "Error removing old file: %s"
msgstr "ЕÑкі файлды өшіру қатеÑÑ–: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr ""
@@ -3156,25 +3174,25 @@ msgstr ""
msgid "Cannot truncate GMemoryInputStream"
msgstr ""
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr ""
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr ""
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
msgstr ""
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr ""
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr ""
@@ -3254,12 +3272,12 @@ msgstr ""
msgid "Could not get network status: "
msgstr ""
-#: gio/gnetworkmonitornm.c:348
+#: gio/gnetworkmonitornm.c:311
#, c-format
msgid "NetworkManager not running"
msgstr "NetworkManager орындалы тұрған жоқ"
-#: gio/gnetworkmonitornm.c:359
+#: gio/gnetworkmonitornm.c:322
#, c-format
msgid "NetworkManager version too old"
msgstr "NetworkManager нұÑқаÑÑ‹ тым еÑкі"
@@ -3277,18 +3295,18 @@ msgstr ""
msgid "Source stream is already closed"
msgstr ""
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr ""
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr ""
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "ХоÑÑ‚ аты қате"
@@ -3379,7 +3397,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr ""
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr ""
@@ -3409,7 +3427,7 @@ msgstr "ЖОЛ"
msgid " PATH A resource path\n"
msgstr ""
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr ""
@@ -3440,93 +3458,93 @@ msgstr ""
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr ""
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr ""
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr ""
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr ""
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr ""
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr ""
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "SCHEMA[:PATH]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr ""
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
msgstr ""
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SCHEMA[:PATH]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr ""
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "SCHEMA[:PATH] KEY"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr ""
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr ""
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr ""
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SCHEMA[:PATH] KEY VALUE"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr ""
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr ""
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr ""
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
"Use ^C to stop monitoring.\n"
msgstr ""
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr ""
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3552,7 +3570,7 @@ msgid ""
"\n"
msgstr ""
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3562,222 +3580,221 @@ msgid ""
"\n"
msgstr ""
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr ""
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
msgstr ""
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr ""
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr ""
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr ""
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr ""
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr ""
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr ""
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr ""
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr ""
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr ""
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr ""
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Сокет Е/Ш күту мерзімі аÑқталған"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr ""
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr ""
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr ""
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr ""
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr ""
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr ""
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr ""
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr ""
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr ""
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr ""
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr ""
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr ""
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr ""
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr ""
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr ""
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr ""
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr ""
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr ""
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr ""
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr ""
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr ""
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr ""
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr ""
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr ""
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr ""
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr ""
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
-#| msgid "Error sending message: %s"
msgid "Unable to send message: %s"
msgstr "Хабарламаны жіберу мүмкін емеÑ: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr ""
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Хабарламаны жіберу ÑәтÑіз: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr ""
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr ""
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr ""
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr ""
@@ -3795,11 +3812,11 @@ msgstr ""
msgid "Could not connect: "
msgstr "БайланыÑу мүмкін емеÑ: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr ""
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr ""
@@ -3897,6 +3914,16 @@ msgstr ""
msgid "Unknown SOCKSv5 proxy error."
msgstr ""
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
+#, c-format
+msgid "Failed to create pipe for communicating with child process (%s)"
+msgstr ""
+
+#: gio/gtestdbus.c:619
+#, c-format
+msgid "Pipes are not supported in this platform"
+msgstr ""
+
#: gio/gthemedicon.c:595
#, c-format
msgid "Can’t handle version %d of GThemedIcon encoding"
@@ -3928,27 +3955,31 @@ msgstr ""
msgid "Error resolving “%sâ€"
msgstr ""
-#: gio/gtlscertificate.c:419
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr ""
-#: gio/gtlscertificate.c:429
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr ""
-#: gio/gtlscertificate.c:440
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr ""
-#: gio/gtlscertificate.c:467
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr ""
-#: gio/gtlscertificate.c:476
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr ""
-#: gio/gtlscertificate.c:832
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr ""
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr ""
@@ -3973,51 +4004,61 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr ""
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+#| msgid "Symbolic links not supported"
+msgid "Sending FD is not supported"
+msgstr ""
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] ""
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr ""
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] ""
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr ""
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+#| msgid "Operation not supported"
+msgid "Receiving FD is not supported"
+msgstr ""
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr ""
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr ""
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr ""
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr ""
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr ""
@@ -4033,7 +4074,7 @@ msgstr ""
msgid "Error closing file descriptor: %s"
msgstr ""
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2782 gio/gunixmounts.c:2835
msgid "Filesystem root"
msgstr "Файлдық жүйе түбірі"
@@ -4044,7 +4085,7 @@ msgstr "Файлдық жүйе түбірі"
msgid "Error writing to file descriptor: %s"
msgstr ""
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr ""
@@ -4194,8 +4235,8 @@ msgstr ""
msgid "Unrepresentable character in conversion input"
msgstr ""
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr ""
@@ -4660,78 +4701,78 @@ msgstr "PM"
msgid "Error opening directory “%sâ€: %s"
msgstr "\"%s\" бумаÑын ашу қатеÑÑ–: %s"
-#: glib/gfileutils.c:737 glib/gfileutils.c:829
+#: glib/gfileutils.c:733 glib/gfileutils.c:825
#, c-format
msgid "Could not allocate %lu byte to read file “%sâ€"
msgid_plural "Could not allocate %lu bytes to read file “%sâ€"
msgstr[0] ""
-#: glib/gfileutils.c:754
+#: glib/gfileutils.c:750
#, c-format
msgid "Error reading file “%sâ€: %s"
msgstr "\"%s\" файлын оқу қатеÑÑ–: %s"
-#: glib/gfileutils.c:790
+#: glib/gfileutils.c:786
#, c-format
msgid "File “%s†is too large"
msgstr "\"%s\" файлы тым үлкен"
-#: glib/gfileutils.c:854
+#: glib/gfileutils.c:850
#, c-format
msgid "Failed to read from file “%sâ€: %s"
msgstr "\"%s\" файлынан оқу қатеÑÑ–: %s"
-#: glib/gfileutils.c:904 glib/gfileutils.c:979 glib/gfileutils.c:1468
+#: glib/gfileutils.c:900 glib/gfileutils.c:975 glib/gfileutils.c:1447
#, c-format
msgid "Failed to open file “%sâ€: %s"
msgstr "\"%s\" файлын ашу қатеÑÑ–: %s"
-#: glib/gfileutils.c:917
+#: glib/gfileutils.c:913
#, c-format
msgid "Failed to get attributes of file “%sâ€: fstat() failed: %s"
msgstr ""
-#: glib/gfileutils.c:948
+#: glib/gfileutils.c:944
#, c-format
msgid "Failed to open file “%sâ€: fdopen() failed: %s"
msgstr ""
-#: glib/gfileutils.c:1049
+#: glib/gfileutils.c:1045
#, c-format
msgid "Failed to rename file “%s†to “%sâ€: g_rename() failed: %s"
msgstr ""
-#: glib/gfileutils.c:1175
+#: glib/gfileutils.c:1154
#, c-format
msgid "Failed to write file “%sâ€: write() failed: %s"
msgstr "\"%s\" файлын жазу ÑәтÑіз: write() ÑәтÑіз аÑқталды: %s"
-#: glib/gfileutils.c:1196
+#: glib/gfileutils.c:1175
#, c-format
msgid "Failed to write file “%sâ€: fsync() failed: %s"
msgstr "\"%s\" файлын жазу ÑәтÑіз: fsync() ÑәтÑіз аÑқталды: %s"
-#: glib/gfileutils.c:1357 glib/gfileutils.c:1772
+#: glib/gfileutils.c:1336 glib/gfileutils.c:1751
#, c-format
msgid "Failed to create file “%sâ€: %s"
msgstr "\"%s\" файлын жаÑау ÑәтÑіз: %s"
-#: glib/gfileutils.c:1402
+#: glib/gfileutils.c:1381
#, c-format
msgid "Existing file “%s†could not be removed: g_unlink() failed: %s"
msgstr ""
-#: glib/gfileutils.c:1737
+#: glib/gfileutils.c:1716
#, c-format
msgid "Template “%s†invalid, should not contain a “%sâ€"
msgstr ""
-#: glib/gfileutils.c:1750
+#: glib/gfileutils.c:1729
#, c-format
msgid "Template “%s†doesn’t contain XXXXXX"
msgstr ""
-#: glib/gfileutils.c:2310 glib/gfileutils.c:2339
+#: glib/gfileutils.c:2289 glib/gfileutils.c:2318
#, c-format
msgid "Failed to read the symbolic link “%sâ€: %s"
msgstr ""
@@ -4757,99 +4798,100 @@ msgstr ""
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr ""
-#: glib/gkeyfile.c:790
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr ""
-#: glib/gkeyfile.c:827
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Қалыпты файл емеÑ"
-#: glib/gkeyfile.c:1282
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
msgstr ""
-#: glib/gkeyfile.c:1339
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Қате топ аты: %s"
-#: glib/gkeyfile.c:1361
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr ""
-#: glib/gkeyfile.c:1387
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
+#| msgid "Invalid filename %s"
+msgid "Invalid key name: %.*s"
msgstr ""
-#: glib/gkeyfile.c:1414
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr ""
-#: glib/gkeyfile.c:1663 glib/gkeyfile.c:1836 glib/gkeyfile.c:3289
-#: glib/gkeyfile.c:3353 glib/gkeyfile.c:3483 glib/gkeyfile.c:3615
-#: glib/gkeyfile.c:3761 glib/gkeyfile.c:3996 glib/gkeyfile.c:4063
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr ""
-#: glib/gkeyfile.c:1791
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr ""
-#: glib/gkeyfile.c:1953 glib/gkeyfile.c:2069
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr ""
-#: glib/gkeyfile.c:1973 glib/gkeyfile.c:2089 glib/gkeyfile.c:2531
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr ""
-#: glib/gkeyfile.c:2749 glib/gkeyfile.c:3118
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
"interpreted."
msgstr ""
-#: glib/gkeyfile.c:2827 glib/gkeyfile.c:2904
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr ""
-#: glib/gkeyfile.c:4306
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr ""
-#: glib/gkeyfile.c:4328
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr ""
-#: glib/gkeyfile.c:4472
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr ""
-#: glib/gkeyfile.c:4486
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr ""
-#: glib/gkeyfile.c:4519
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr ""
-#: glib/gkeyfile.c:4558
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr ""
@@ -5109,7 +5151,7 @@ msgstr ""
msgid "Missing argument for %s"
msgstr ""
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "БелгіÑіз Ð¾Ð¿Ñ†Ð¸Ñ %s"
@@ -5479,168 +5521,180 @@ msgstr "белгіÑіз escape тізбегі"
msgid "Error while parsing replacement text “%s†at char %lu: %s"
msgstr ""
-#: glib/gshell.c:94
+#: glib/gshell.c:96
msgid "Quoted text doesn’t begin with a quotation mark"
msgstr ""
-#: glib/gshell.c:184
+#: glib/gshell.c:186
msgid "Unmatched quotation mark in command line or other shell-quoted text"
msgstr ""
-#: glib/gshell.c:580
+#: glib/gshell.c:592
#, c-format
msgid "Text ended just after a “\\†character. (The text was “%sâ€)"
msgstr ""
-#: glib/gshell.c:587
+#: glib/gshell.c:599
#, c-format
msgid "Text ended before matching quote was found for %c. (The text was “%sâ€)"
msgstr ""
-#: glib/gshell.c:599
+#: glib/gshell.c:611
msgid "Text was empty (or contained only whitespace)"
msgstr "Мәтін Ð±Ð¾Ñ Ð±Ð¾Ð»Ð´Ñ‹ (немеÑе тек Ð±Ð¾Ñ Ð°Ñ€Ð°Ð»Ñ‹Ò›Ñ‚Ð°Ð½ тұрды)"
-#: glib/gspawn.c:308
+#: glib/gspawn.c:310
#, c-format
msgid "Failed to read data from child process (%s)"
msgstr ""
-#: glib/gspawn.c:458
+#: glib/gspawn.c:461
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr ""
-#: glib/gspawn.c:543
+#: glib/gspawn.c:546
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr ""
-#: glib/gspawn.c:1152 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1168 glib/gspawn-win32.c:1426
#, c-format
msgid "Child process exited with code %ld"
msgstr ""
-#: glib/gspawn.c:1160
+#: glib/gspawn.c:1176
#, c-format
msgid "Child process killed by signal %ld"
msgstr ""
-#: glib/gspawn.c:1167
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process stopped by signal %ld"
msgstr ""
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process exited abnormally"
msgstr ""
-#: glib/gspawn.c:1793 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1881 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr ""
-#: glib/gspawn.c:2095
+#: glib/gspawn.c:2241
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr ""
-#: glib/gspawn.c:2212
+#: glib/gspawn.c:2358
#, c-format
msgid "Failed to fork (%s)"
msgstr ""
-#: glib/gspawn.c:2372 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2518 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "\"%s\" бумаÑына ауыÑу ÑәтÑіз аÑқталды (%s)"
-#: glib/gspawn.c:2382
+#: glib/gspawn.c:2528
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr ""
-#: glib/gspawn.c:2392
+#: glib/gspawn.c:2538
+#, c-format
+#| msgid "Failed to open file “%sâ€: open() failed: %s"
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr ""
+
+#: glib/gspawn.c:2546
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
+msgid "Failed to duplicate file descriptor for child process (%s)"
msgstr ""
-#: glib/gspawn.c:2401
+#: glib/gspawn.c:2555
#, c-format
msgid "Failed to fork child process (%s)"
msgstr ""
-#: glib/gspawn.c:2409
+#: glib/gspawn.c:2563
+#, c-format
+msgid "Failed to close file descriptor for child process (%s)"
+msgstr ""
+
+#: glib/gspawn.c:2571
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr ""
-#: glib/gspawn.c:2433
+#: glib/gspawn.c:2595
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr ""
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr ""
-#: glib/gspawn-win32.c:311
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:519
#, c-format
-msgid "Failed to create pipe for communicating with child process (%s)"
+msgid "Failed to execute child process (%s)"
msgstr ""
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:400
#, c-format
-msgid "Failed to execute child process (%s)"
+#| msgid "Failed to execute helper program (%s)"
+msgid "Failed to dup() in child process (%s)"
msgstr ""
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:469
#, c-format
msgid "Invalid program name: %s"
msgstr "Бағдарлама аты қате: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:479 glib/gspawn-win32.c:797
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr ""
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:490 glib/gspawn-win32.c:813
#, c-format
msgid "Invalid string in environment: %s"
msgstr ""
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:793
#, c-format
msgid "Invalid working directory: %s"
msgstr "Ð–Ò±Ð¼Ñ‹Ñ Ð±ÑƒÐ¼Ð°ÑÑ‹ қате: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:858
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Көмекші бағдарламаны орындау қатеÑÑ– (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1086
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
msgstr ""
-#: glib/gstrfuncs.c:3338 glib/gstrfuncs.c:3440
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr ""
-#: glib/gstrfuncs.c:3362
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "\"%s\" таңбаÑÑ‹ бар Ñан емеÑ"
-#: glib/gstrfuncs.c:3372 glib/gstrfuncs.c:3476
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr ""
-#: glib/gstrfuncs.c:3466
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "\"%s\" таңбаÑÑ‹ жоқ Ñан емеÑ"
@@ -5693,196 +5747,196 @@ msgstr ""
msgid "URI ‘%s’ has no host component"
msgstr ""
-#: glib/guri.c:1435
+#: glib/guri.c:1460
msgid "URI is not absolute, and no base URI was provided"
msgstr ""
-#: glib/guri.c:2213
+#: glib/guri.c:2238
msgid "Missing ‘=’ and parameter value"
msgstr ""
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Жадыны бөлу ÑәтÑіз"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr ""
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr ""
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr ""
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2727
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f КБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2729
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f МБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2731
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f ГБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2733
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f ТБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2735
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f ПБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2737
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f ЭБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2741
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f КиБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2743
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f МиБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2745
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f ГиБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2747
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f ТиБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2749
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f ПиБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2751
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f ЭиБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2755
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f кб"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2757
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Мб"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2759
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Гб"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2761
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Тб"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2763
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Пб"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2765
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Эб"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2769
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Киб"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2771
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Миб"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2773
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Гиб"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2775
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Тиб"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2777
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Пиб"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2779
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Эиб"
-#: glib/gutils.c:2813 glib/gutils.c:2930
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u байт"
-#: glib/gutils.c:2817
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
msgstr[0] "%u бит"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2884
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
msgstr[0] "%s байт"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2889
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -5893,32 +5947,32 @@ msgstr[0] "%s бит"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2943
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f КБ"
-#: glib/gutils.c:2948
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f МБ"
-#: glib/gutils.c:2953
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f ГБ"
-#: glib/gutils.c:2958
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f ТБ"
-#: glib/gutils.c:2963
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f ПБ"
-#: glib/gutils.c:2968
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f ЭБ"
diff --git a/po/ko.po b/po/ko.po
index 04c76683d..e9e849484 100644
--- a/po/ko.po
+++ b/po/ko.po
@@ -4,7 +4,7 @@
# Young-Ho Cha <ganadist@chollian.net>, 2002.
# Eunju Kim <eukim@redhat.com>, 2007.
# Seong-ho Cho <darkcircle.0426@gmail.com>, 2011-2012.
-# Changwoo Ryu <cwryu@debian.org>, 2002, 2004-2006, 2007-2011, 2013-2021.
+# Changwoo Ryu <cwryu@debian.org>, 2002, 2004-2006, 2007-2011, 2013-2022.
#
#
# ìš©ì–´:
@@ -16,8 +16,8 @@ msgid ""
msgstr ""
"Project-Id-Version: glib\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2021-07-19 15:52+0000\n"
-"PO-Revision-Date: 2021-09-03 22:26+0900\n"
+"POT-Creation-Date: 2022-02-14 13:48+0000\n"
+"PO-Revision-Date: 2022-03-01 19:16+0900\n"
"Last-Translator: Changwoo Ryu <cwryu@debian.org>\n"
"Language-Team: GNOME Korea <gnome-kr@googlegroups.com>\n"
"Language: ko\n"
@@ -26,28 +26,36 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-#: gio/gapplication.c:500
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "기본 프로그램 ì„¤ì •ì€ ì•„ì§ ì§€ì›í•˜ì§€ 않습니다"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr "íƒ€ìž…ì— ëŒ€í•´ 최근 사용한 프로그램 ì„¤ì •ì€ ì•„ì§ ì§€ì›í•˜ì§€ 않습니다"
+
+#: gio/gapplication.c:497
msgid "GApplication options"
msgstr "GApplication 옵션"
-#: gio/gapplication.c:500
+#: gio/gapplication.c:497
msgid "Show GApplication options"
msgstr "GApplication ì˜µì…˜ì„ í‘œì‹œí•©ë‹ˆë‹¤"
-#: gio/gapplication.c:545
+#: gio/gapplication.c:542
msgid "Enter GApplication service mode (use from D-Bus service files)"
msgstr "GApplication 서비스 모드로 들어갑니다 (D-버스 서비스 파ì¼ì—ì„œ 사용)"
-#: gio/gapplication.c:557
+#: gio/gapplication.c:554
msgid "Override the application’s ID"
msgstr "프로그램 ID를 ì§ì ‘ 지정합니다"
-#: gio/gapplication.c:569
+#: gio/gapplication.c:566
msgid "Replace the running instance"
msgstr "실행 ì¤‘ì¸ ì¸ìŠ¤í„´ìŠ¤ë¥¼ 바꿉니다"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "ë„움ë§ì„ 표시합니다"
@@ -59,7 +67,7 @@ msgstr "[<명령>]"
msgid "Print version"
msgstr "버전 출력"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "버전 정보를 표시하고 ë납니다"
@@ -121,8 +129,8 @@ msgstr "ìžì„¸í•œ ë„움ë§ì„ 표시하는 명령"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "D-버스 형ì‹ì˜ 프로그램 ID (예: org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "<파ì¼>"
@@ -147,7 +155,7 @@ msgstr "<ì¸ìˆ˜>"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "추가로 ë™ìž‘ í˜¸ì¶œì— ë¶™ì¼ ì¸ìˆ˜, GVariant 형ì‹"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -161,7 +169,7 @@ msgid "Usage:\n"
msgstr "사용법:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "ì¸ìˆ˜:\n"
@@ -284,7 +292,7 @@ msgstr "ìŠ¤íŠ¸ë¦¼ì„ ì´ë¯¸ 닫았습니다"
msgid "Truncate not supported on base stream"
msgstr "기반 스트림ì—ì„œ ìžë¥´ê¸°ë¥¼ 지ì›í•˜ì§€ 않습니다"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1872 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -305,7 +313,7 @@ msgstr "대ìƒì— ê³µê°„ì´ ë¶€ì¡±í•©ë‹ˆë‹¤"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "변환 ìž…ë ¥ì—ì„œ ìž˜ëª»ëœ ë°”ì´íŠ¸ 순서"
@@ -315,7 +323,7 @@ msgstr "변환 ìž…ë ¥ì—ì„œ ìž˜ëª»ëœ ë°”ì´íŠ¸ 순서"
msgid "Error during conversion: %s"
msgstr "변환 중 오류: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "취소 가능한 초기화를 지ì›í•˜ì§€ 않습니다"
@@ -329,7 +337,7 @@ msgstr "문ìžì…‹ “%sâ€ì—ì„œ “%sâ€(으)ë¡œ ë³€í™˜ì€ ì§€ì›ë˜ì§€ 않습ë
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "“%sâ€ì—ì„œ “%sâ€(으)ë¡œ 변환하는 변환기를 ì—´ 수 없습니다"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "%s 형ì‹"
@@ -343,23 +351,23 @@ msgstr "ì•Œ 수 없는 형ì‹"
msgid "%s filetype"
msgstr "%s íŒŒì¼ í˜•ì‹"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentialsì— ìž˜ëª»ëœ ë°ì´í„°ê°€ 들어 있습니다"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials는 ì´ OSì—ì„œ 구현ë˜ì§€ 않았습니다"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "ì´ í”Œëž«í¼ì—서는 GCredentials를 지ì›í•˜ì§€ 않습니다"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GCredentials는 ì´ OSì—ì„œ 프로세스 IDê°€ 없습니다"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "암호 ë°ì´í„° ì†ì´ê¸°ê°€ ì´ OSì—서는 불가능합니다"
@@ -367,17 +375,17 @@ msgstr "암호 ë°ì´í„° ì†ì´ê¸°ê°€ ì´ OSì—서는 불가능합니다"
msgid "Unexpected early end-of-stream"
msgstr "예기치 않게 ì¼ì° ìŠ¤íŠ¸ë¦¼ì´ ë났습니다"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "“%s†키를 주소 항목 “%sâ€ì—ì„œ 지ì›í•˜ì§€ 않습니다"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "“%s†주소 항목ì—ì„œ ì˜ë¯¸ 없는 키/ê°’ì˜ ìŒ"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -386,50 +394,50 @@ msgstr ""
"“%s†주소는 올바르지 않습니다 (정확히 1ê°œì˜ ê²½ë¡œ, í´ë”, ìž„ì‹œ í´ë”, 절대 키 "
"중 하나가 필요합니다)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "“%s†주소ì—ì„œ 오류 — “%s†ì†ì„±ì˜ 형ì‹ì´ 잘못ë˜ì—ˆìŠµë‹ˆë‹¤"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr ""
"주소 “%2$sâ€ì— 대한 “%1$s†트랜스í¬íŠ¸ëŠ” 알려지지 않았거나 지ì›í•˜ì§€ 않습니다."
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "주소 항목 “%sâ€ì— 콜론(:)ì´ ì—†ìŠµë‹ˆë‹¤"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "주소 항목 “%sâ€ì—ì„œ 트랜스í¬íŠ¸ ì´ë¦„ì´ ë¹„ì–´ 있으면 안 ë©ë‹ˆë‹¤"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
"sign"
msgstr "키/ê°’ ìŒ %d번, “%sâ€ì— (주소 항목 “%sâ€) 등호 기호가 없습니다"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
msgstr ""
"키/ê°’ ìŒ %d번, “%sâ€ì— (주소 항목 “%sâ€) 비어 있는 키가 들어 ìžˆì„ ìˆ˜ 없습니다"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
"“%sâ€"
msgstr "키/ê°’ ìŒ %d번, “%sâ€ì— (주소 항목 “%sâ€) 키/ê°’ì˜ ì´ìŠ¤ì¼€ì´í”„ 제거 오류"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -438,75 +446,75 @@ msgstr ""
"“%s†주소ì—ì„œ 오류 — unix 트랜스í¬íŠ¸ì—서는 'path'나 'abstract' 키 중 하나를 "
"설정해야 합니다."
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr "“%s†주소ì—ì„œ 오류 — host ì†ì„±ì´ 없거나 형ì‹ì´ 잘못ë˜ì—ˆìŠµë‹ˆë‹¤"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "“%s†주소ì—ì„œ 오류 — port ì†ì„±ì´ 없거나 형ì‹ì´ 잘못ë˜ì—ˆìŠµë‹ˆë‹¤"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr "“%s†주소ì—ì„œ 오류 — noncefile ì†ì„±ì´ 없거나 형ì‹ì´ 잘못ë˜ì—ˆìŠµë‹ˆë‹¤"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "ìžë™ 실행 오류: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "“%s†nonce 파ì¼ì„ 여는 중 오류: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "“%s†nonce 파ì¼ì„ ì½ëŠ” 중 오류: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr "“%s†nonce 파ì¼ì„ ì½ëŠ” 중 오류, 16ë°”ì´íŠ¸ê°€ 있어야 하지만 %dë°”ì´íŠ¸"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "“%s†nonce 파ì¼ì˜ ë‚´ìš©ì„ ìŠ¤íŠ¸ë¦¼ì— ì“°ëŠ” 중 오류:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "ì§€ì •ëœ ì£¼ì†Œê°€ 빈 문ìžì—´ìž…니다"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "setuid ì—†ì´ ë©”ì‹œì§€ 버스를 시작할 수 없습니다:"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "AT_SECUREê°€ 설정ë˜ì—ˆì„ ë•Œ 메시지 버스를 시작할 수 없습니다:"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "machine-id ì—†ì´ ë©”ì‹œì§€ 버스를 시작할 수 없습니다: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "X11 $DISPLAY ì—†ì´ D-Bus ìžë™ 실행할 수 없습니다"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "“%sâ€ ëª…ë ¹ì„ ì‹œìž‘í•˜ëŠ”ë° ì˜¤ë¥˜: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"세션 버스 주소를 알아낼 수 없습니다 (ì´ ìš´ì˜ì²´ì œì—서는 구현ë˜ì§€ 않았습니다)"
-#: gio/gdbusaddress.c:1397 gio/gdbusconnection.c:7261
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7334
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -515,7 +523,7 @@ msgstr ""
"DBUS_STARTER_BUS_TYPE 환경 변수ì—ì„œ 세션 버스 주소를 알아낼 수 없습니다 — ì•Œ "
"수 없는 ê°’ “%sâ€"
-#: gio/gdbusaddress.c:1406 gio/gdbusconnection.c:7270
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7343
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -523,7 +531,7 @@ msgstr ""
"DBUS_STARTER_BUS_TYPE 환경 변수를 설정하지 않았으므로 세션 버스 주소를 알아"
"낼 수 없습니다"
-#: gio/gdbusaddress.c:1416
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "ì•Œ 수 없는 버스 í˜•ì‹ (%d)"
@@ -551,43 +559,43 @@ msgstr "ìƒëŒ€ì™€ ì„œë²„ì˜ ì‚¬ìš©ìž ì•„ì´ë””는 같아야 합니다"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "GDBusAuthObserver::authorize-authenticated-peer를 통해 취소ë¨"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:299
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "디렉터리 “%sâ€ì˜ 정보를 가져오는 중 오류 : %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:314
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
msgstr "“%sâ€ ë””ë ‰í„°ë¦¬ì˜ ê¶Œí•œì´ ìž˜ëª»ë˜ì—ˆìŠµë‹ˆë‹¤. 0700ì´ì–´ì•¼ 하지만 0%o입니다"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:347 gio/gdbusauthmechanismsha1.c:358
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "“%s†디렉터리를 만드는 중 오류: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:360 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "ë™ìž‘ì„ ì§€ì›í•˜ì§€ 않습니다"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:403
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "“%s†키 모ìŒì„ ì½ê¸° ìš©ë„ë¡œ 여는 중 오류: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:426 gio/gdbusauthmechanismsha1.c:748
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "“%2$sâ€ì˜ 키 ëª¨ìŒ %1$d번 ì¤„ì˜ ë‚´ìš© “%3$sâ€ì˜ 형ì‹ì´ 잘못ë˜ì—ˆìŠµë‹ˆë‹¤."
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:440 gio/gdbusauthmechanismsha1.c:762
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -595,7 +603,7 @@ msgstr ""
"'%2$s'ì˜ í‚¤ ëª¨ìŒ %1$d번 ì¤„ì˜ ì²«ë²ˆì§¸ 토í°ì˜ ë‚´ìš© “%3$sâ€ì˜ 형ì‹ì´ 잘못ë˜ì—ˆìŠµë‹ˆ"
"다."
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:454 gio/gdbusauthmechanismsha1.c:776
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -603,158 +611,158 @@ msgstr ""
"“%2$sâ€ì˜ 키 ëª¨ìŒ %1$d번 ì¤„ì˜ ë‘번째 토í°ì˜ ë‚´ìš© “%3$sâ€ì˜ 형ì‹ì´ 잘못ë˜ì—ˆìŠµë‹ˆ"
"다."
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:478
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "“%2$sâ€ì˜ 키 ëª¨ìŒ ì•„ì´ë”” %1$dì˜ ì¿ í‚¤ë¥¼ ì°¾ì„ ìˆ˜ 없습니다"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:524
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "“%s†잠금 파ì¼ì„ 만드는 중 오류: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:588
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "ì˜¤ëž˜ëœ â€œ%s†잠금 파ì¼ì„ 만드는 중 오류: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:627
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "(ë§í¬ê°€ ëŠì–´ì§„) “%s†잠금 파ì¼ì„ 닫는 중 오류: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:638
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "“%s†잠금 파ì¼ì„ 삭제하는 중 오류: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:715
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "“%s†키 모ìŒì„ 쓰기 ìš©ë„ë¡œ 여는 중 오류: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:909
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(추가로 “%sâ€ì— 대한 잠금 í•´ì œë„ ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤: %s)"
-#: gio/gdbusconnection.c:603 gio/gdbusconnection.c:2417
+#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
msgid "The connection is closed"
msgstr "ì—°ê²°ì´ ë‹«í˜”ìŠµë‹ˆë‹¤"
-#: gio/gdbusconnection.c:1902
+#: gio/gdbusconnection.c:1903
msgid "Timeout was reached"
msgstr "시간 ì œí•œì„ ë„˜ì—ˆìŠµë‹ˆë‹¤"
-#: gio/gdbusconnection.c:2540
+#: gio/gdbusconnection.c:2541
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr "í´ë¼ì´ì–¸íŠ¸ ì—°ê²°ì„ ë§Œë“œëŠ” 중 지ì›í•˜ì§€ 않는 플래그가 있습니다"
-#: gio/gdbusconnection.c:4189 gio/gdbusconnection.c:4536
+#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr ""
"경로 %sì˜ ê°ì²´ì— “org.freedesktop.DBus.Properties†ì¸í„°íŽ˜ì´ìŠ¤ê°€ 없습니다"
-#: gio/gdbusconnection.c:4331
+#: gio/gdbusconnection.c:4414
#, c-format
msgid "No such property “%sâ€"
msgstr "“%s†ì†ì„±ì´ 없습니다"
-#: gio/gdbusconnection.c:4343
+#: gio/gdbusconnection.c:4426
#, c-format
msgid "Property “%s†is not readable"
msgstr "“%s†ì†ì„±ì„ ì½ì„ 수 없습니다"
-#: gio/gdbusconnection.c:4354
+#: gio/gdbusconnection.c:4437
#, c-format
msgid "Property “%s†is not writable"
msgstr "“%s†ì†ì„±ì„ 쓸 수 없습니다"
-#: gio/gdbusconnection.c:4374
+#: gio/gdbusconnection.c:4457
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr "“%s†ì†ì„± 설정 오류: “%s†형ì‹ì´ì–´ì•¼ 하지만 “%sâ€ìž…니다"
-#: gio/gdbusconnection.c:4479 gio/gdbusconnection.c:4687
-#: gio/gdbusconnection.c:6689
+#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
+#: gio/gdbusconnection.c:6760
#, c-format
msgid "No such interface “%sâ€"
msgstr "“%s†ì¸í„°íŽ˜ì´ìŠ¤ê°€ 없습니다"
-#: gio/gdbusconnection.c:4905 gio/gdbusconnection.c:7201
+#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "경로 “%2$sâ€ì˜ ê°ì²´ì— “%1$s†ì¸í„°íŽ˜ì´ìŠ¤ê°€ 없습니다"
-#: gio/gdbusconnection.c:5003
+#: gio/gdbusconnection.c:5100
#, c-format
msgid "No such method “%sâ€"
msgstr "“%s†키가 없습니다"
-#: gio/gdbusconnection.c:5034
+#: gio/gdbusconnection.c:5131
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "메시지 형ì‹ì´(“%sâ€) 예ìƒí•œ “%s†형ì‹ì— 맞지 않습니다."
-#: gio/gdbusconnection.c:5237
+#: gio/gdbusconnection.c:5334
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "%2$sì˜ %1$s ì¸í„°íŽ˜ì´ìŠ¤ ìš©ë„ë¡œ ê°ì²´ë¥¼ ì´ë¯¸ 내보냈습니다"
-#: gio/gdbusconnection.c:5463
+#: gio/gdbusconnection.c:5561
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "%s.%s ì†ì„±ì„ 가져올 수 없습니다"
-#: gio/gdbusconnection.c:5519
+#: gio/gdbusconnection.c:5617
#, c-format
msgid "Unable to set property %s.%s"
msgstr "%s.%s ì†ì„±ì„ 설정할 수 없습니다"
-#: gio/gdbusconnection.c:5698
+#: gio/gdbusconnection.c:5796
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "“%s†메소드가 “%s†형ì‹ì„ 리턴했지만, “%s†형ì‹ì´ì–´ì•¼ 합니다"
-#: gio/gdbusconnection.c:6800
+#: gio/gdbusconnection.c:6872
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "“%3$sâ€ ì„œëª…ì´ ìžˆëŠ” “%2$s†ì¸í„°íŽ˜ì´ìŠ¤ì˜ “%1$s†메서드가 없습니다"
-#: gio/gdbusconnection.c:6921
+#: gio/gdbusconnection.c:6993
#, c-format
msgid "A subtree is already exported for %s"
msgstr "하위 트리를 ì´ë¯¸ %s ìš©ë„ë¡œ 내보냈습니다"
-#: gio/gdbusconnection.c:7209
+#: gio/gdbusconnection.c:7282
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "“%sâ€ ê²½ë¡œì— ì˜¤ë¸Œì íŠ¸ê°€ 없습니다"
-#: gio/gdbusmessage.c:1266
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "형ì‹ì´ 올바르지 않습니다"
-#: gio/gdbusmessage.c:1277
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "METHOD_CALL 메시지: PATH í˜¹ì€ MEMBER í—¤ë” í•„ë“œê°€ 없습니다"
-#: gio/gdbusmessage.c:1288
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "METHOD_CALL 메시지: REPLY_SERIAL í—¤ë” í•„ë“œê°€ 없습니다"
-#: gio/gdbusmessage.c:1300
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "ERROR 메시지: REPLY_SERIAL í˜¹ì€ ERROR_NAME í—¤ë” í•„ë“œê°€ 없습니다"
-#: gio/gdbusmessage.c:1313
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "SIGNAL 메시지: PATH, INTERFACE í˜¹ì€ MEMBER í—¤ë” í•„ë“œê°€ 없습니다"
-#: gio/gdbusmessage.c:1321
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -762,7 +770,7 @@ msgstr ""
"SIGNAL 메시지: PATH í—¤ë” í•„ë“œê°€ /org/freedesktop/DBus/Local 예약 ê°’ì„ ì‚¬ìš©í•˜"
"고 있습니다"
-#: gio/gdbusmessage.c:1329
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -770,18 +778,18 @@ msgstr ""
"SIGNAL 메시지: INTERFACE í—¤ë” í•„ë“œê°€ org.freedesktop.DBus.Local 예약 ê°’ì„ ì‚¬"
"용하고 있습니다"
-#: gio/gdbusmessage.c:1377 gio/gdbusmessage.c:1437
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "%lu ë°”ì´íŠ¸ë¥¼ ì½ì–´ì•¼ 하지만 %lu ë°”ì´íŠ¸ë§Œ 받았습니다"
-#: gio/gdbusmessage.c:1391
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "“%s†문ìžì—´ ë’¤ì— NUL ë°”ì´íŠ¸ê°€ 와야 하지만 %dë°”ì´íŠ¸ê°€ 있습니다"
-#: gio/gdbusmessage.c:1410
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -790,21 +798,21 @@ msgstr ""
"올바른 UTF-8 문ìžì—´ì´ 와야 하지만 오프셋 %dì—(문ìžì—´ ê¸¸ì´ %d) ìž˜ëª»ëœ ë°”ì´íŠ¸"
"ê°€ 있습니다. ê·¸ 부분까지 올바른 UTF-8 문ìžì—´ì€ “%sâ€ìž…니다."
-#: gio/gdbusmessage.c:1474 gio/gdbusmessage.c:1722 gio/gdbusmessage.c:1911
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "ê°’ì´ ë„ˆë¬´ 깊숙히 ë¼ì›Œ 넣어져 있습니다"
-#: gio/gdbusmessage.c:1620
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "í•´ì„í•œ “%sâ€ ê°’ì´ ì˜¬ë°”ë¥¸ D-Bus ê°ì²´ 경로가 아닙니다"
-#: gio/gdbusmessage.c:1642
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "í•´ì„í•œ “%sâ€ ê°’ì´ ì˜¬ë°”ë¥¸ D-Bus 시그너ì³ê°€ 아닙니다"
-#: gio/gdbusmessage.c:1689
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -813,7 +821,7 @@ msgid_plural ""
msgstr[0] ""
"길ì´ê°€ %u ë°”ì´íŠ¸ì¸ ë°°ì—´ì´ ìžˆìŠµë‹ˆë‹¤. 최대 길ì´ëŠ” 2<<26 ë°”ì´íŠ¸ìž…니다. (64MiB)"
-#: gio/gdbusmessage.c:1709
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -822,18 +830,22 @@ msgstr ""
"íƒ€ìž…ì´ â€œa%câ€ì¸ ë°°ì—´ì€ ê¸¸ì´ê°€ %u ë°”ì´íŠ¸ì˜ 배수여야 하지만, 길ì´ê°€ %u ë°”ì´íŠ¸ìž…"
"니다."
-#: gio/gdbusmessage.c:1895
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
+msgid "Empty structures (tuples) are not allowed in D-Bus"
+msgstr "D-Busì—ì„œ 빈 구조체(튜플)는 지ì›í•˜ì§€ 않습니다"
+
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "variantì— ëŒ€í•´ í•´ì„í•œ ê°’ “%sâ€ì€(는) 올바른 D-Bus 시그너ì³ê°€ 아닙니다."
-#: gio/gdbusmessage.c:1936
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
msgstr "“%sâ€ í˜•ì‹ ë¬¸ìžì—´ë¡œ GVariant를 D-Bus 전송 형ì‹ì—ì„œ ìž¬êµ¬ì„±í•˜ëŠ”ë° ì˜¤ë¥˜"
-#: gio/gdbusmessage.c:2121
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -842,57 +854,57 @@ msgstr ""
"엔디안 ê°’ì´ ìž˜ëª»ë˜ì—ˆìŠµë‹ˆë‹¤. 0x6c(“lâ€) ë˜ëŠ” 0x42 (“Bâ€)ê°€ 와야 하지만 0x%02x ê°’"
"ì´ ìžˆìŠµë‹ˆë‹¤"
-#: gio/gdbusmessage.c:2134
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "ë©”ì´ì € 프로토콜 ë²„ì „ì´ ìž˜ëª»ë˜ì—ˆìŠµë‹ˆë‹¤. 1ì´ì–´ì•¼ 하지만 %d입니다."
-#: gio/gdbusmessage.c:2188 gio/gdbusmessage.c:2784
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "ì‹œê·¸ë„ˆì³ í—¤ë”ê°€ 있지만 타입 ì‹œê·¸ë„ˆì³ í—¤ë”ê°€ 아닙니다"
-#: gio/gdbusmessage.c:2200
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr "ì‹œê·¸ë„ˆì³ â€œ%sâ€ì¸ ì‹œê·¸ë„ˆì³ í—¤ë”ê°€ 있지만 메시지 ë³¸ë¬¸ì´ ë¹„ì—ˆìŠµë‹ˆë‹¤"
-#: gio/gdbusmessage.c:2215
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "í•´ì„í•œ “%sâ€ ê°’ì´ (ë³¸ë¬¸ì— ëŒ€í•´) 올바른 D-Bus 시그너ì³ê°€ 아닙니다"
-#: gio/gdbusmessage.c:2247
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
msgstr[0] "ë©”ì‹œì§€ì— ì‹œê·¸ë„ˆì³ í—¤ë”ê°€ 없지만 메시지 ë³¸ë¬¸ì´ %u ë°”ì´íŠ¸ìž…니다"
-#: gio/gdbusmessage.c:2257
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "메시지를 재구성할 수 없습니다: "
-#: gio/gdbusmessage.c:2601
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
msgstr "“%sâ€ í˜•ì‹ ë¬¸ìžì—´ë¡œ GVariant를 D-Bus 전송 형ì‹ìœ¼ë¡œ ë§Œë“œëŠ”ë° ì˜¤ë¥˜"
-#: gio/gdbusmessage.c:2738
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr "ë©”ì‹œì§€ì˜ íŒŒì¼ ë””ìŠ¤í¬ë¦½í„° 개수가 (%d) í—¤ë” í•„ë“œì˜ ê°œìˆ˜ì™€ (%d) 다릅니다"
-#: gio/gdbusmessage.c:2746
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "메시지를 전송 형ì‹ìœ¼ë¡œ 만들 수 없습니다: "
-#: gio/gdbusmessage.c:2799
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "메시지 ë³¸ë¬¸ì— â€œ%s†시그너ì³ê°€ 있지만 ì‹œê·¸ë„ˆì³ í—¤ë”ê°€ 없습니다"
-#: gio/gdbusmessage.c:2809
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -900,52 +912,52 @@ msgid ""
msgstr ""
"메시지 ë³¸ë¬¸ì— â€œ%sâ€ í˜•ì‹ ì‹œê·¸ë„ˆì³ê°€ 있지만 í—¤ë” í•„ë“œì˜ ì‹œê·¸ë„ˆì³ê°€ “%sâ€ìž…니다"
-#: gio/gdbusmessage.c:2825
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "메시지 ë³¸ë¬¸ì´ ë¹„ì—ˆì§€ë§Œ í—¤ë” í•„ë“œì˜ ì‹œê·¸ë„ˆì³ê°€ “(%s)â€ìž…니다"
-#: gio/gdbusmessage.c:3380
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "오류 리턴, “%s†형ì‹ì˜ 본문"
-#: gio/gdbusmessage.c:3388
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "오류 리턴, 빈 본문"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(ì´ ì°½ì„ ë‹«ìœ¼ë ¤ë©´ 아무 글ìžë‚˜ 입력하십시오)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "dbus ì„¸ì…˜ì´ ì‹¤í–‰ì¤‘ì´ ì•„ë‹ˆë©°, ìžë™ì‹¤í–‰ì— 실패했습니다"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "하드웨어 프로파ì¼ì„ 가져올 수 없습니다: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "%s ë˜ëŠ” %sì„(를) ì½ì–´ë“¤ì¼ 수 없습니다: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "%sì— ëŒ€í•´ StartServiceByName í˜¸ì¶œì´ ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr " StartServiceByName(\"%2$s\") 메소드ì—ì„œ 예ìƒì¹˜ 못한 ì‘답 %1$d번"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1001,13 +1013,13 @@ msgstr ""
"ê° ëª…ë ¹ì–´ì˜ ë„움ë§ì„ 보려면 “%s <명령> --helpâ€ ëª…ë ¹ì„ ì‚¬ìš©í•˜ì‹­ì‹œì˜¤.\n"
#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1244
+#: gio/gdbus-tool.c:1732
#, c-format
msgid "Error: %s\n"
msgstr "오류: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1748
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "introspection XMLì„ í•´ì„하는 ì¤‘ì— ì˜¤ë¥˜: %s\n"
@@ -1017,8 +1029,8 @@ msgstr "introspection XMLì„ í•´ì„하는 ì¤‘ì— ì˜¤ë¥˜: %s\n"
msgid "Error: %s is not a valid name\n"
msgstr "오류: “%sâ€ì€(는) 올바른 ì´ë¦„ì´ ì•„ë‹™ë‹ˆë‹¤\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1063
+#: gio/gdbus-tool.c:1898 gio/gdbus-tool.c:2138
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "오류: “%sâ€ì€(는) 올바른 ê°ì²´ 경로가 아닙니다\n"
@@ -1084,8 +1096,8 @@ msgstr "ì‹œê·¸ë„ ë° ì¸í„°íŽ˜ì´ìŠ¤ ì´ë¦„"
msgid "Emit a signal."
msgstr "시그ë„ì„ ë°œìƒí•©ë‹ˆë‹¤."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:1000 gio/gdbus-tool.c:1835
+#: gio/gdbus-tool.c:2067 gio/gdbus-tool.c:2287
#, c-format
msgid "Error connecting: %s\n"
msgstr "ì—°ê²°í•˜ëŠ”ë° ì˜¤ë¥˜: %s\n"
@@ -1095,7 +1107,7 @@ msgstr "ì—°ê²°í•˜ëŠ”ë° ì˜¤ë¥˜: %s\n"
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "오류: “%sâ€ì€(는) 올바른 고유 버스 ì´ë¦„ì´ ì•„ë‹™ë‹ˆë‹¤.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1043 gio/gdbus-tool.c:1878
msgid "Error: Object path is not specified\n"
msgstr "오류: ê°ì²´ 경로를 지정하지 않았습니다\n"
@@ -1119,7 +1131,7 @@ msgid "Error: %s is not a valid member name\n"
msgstr "오류: “%sâ€ì€(는) 올바른 멤버 ì´ë¦„ì´ ì•„ë‹™ë‹ˆë‹¤\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1175
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "파ë¼ë¯¸í„° %d번 í•´ì„ ì˜¤ë¥˜: %s\n"
@@ -1129,162 +1141,171 @@ msgstr "파ë¼ë¯¸í„° %d번 í•´ì„ ì˜¤ë¥˜: %s\n"
msgid "Error flushing connection: %s\n"
msgstr "ì—°ê²°ì˜ ë²„í¼ ë‚´ìš©ì„ ì ìš©í•˜ëŠ”ë° ì˜¤ë¥˜: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:894
msgid "Destination name to invoke method on"
msgstr "메소드를 호출할 ëŒ€ìƒ ì´ë¦„"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:895
msgid "Object path to invoke method on"
msgstr "메소드를 호출할 ê°ì²´ 경로"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:896
msgid "Method and interface name"
msgstr "메소드 ë° ì¸í„°íŽ˜ì´ìŠ¤ ì´ë¦„"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:897
msgid "Timeout in seconds"
msgstr "시간 제한, 초 단위"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:898
+msgid "Allow interactive authorization"
+msgstr "ë™ì  권한 부여를 허용"
+
+#: gio/gdbus-tool.c:945
msgid "Invoke a method on a remote object."
msgstr "ì›ê²© ê°ì²´ì— 대해 메소드를 호출합니다."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1017 gio/gdbus-tool.c:1852 gio/gdbus-tool.c:2092
msgid "Error: Destination is not specified\n"
msgstr "오류: 대ìƒì„ 지정하지 않았습니다\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1028 gio/gdbus-tool.c:1869 gio/gdbus-tool.c:2103
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "오류: “%sâ€ì€(는) 올바른 버스 ì´ë¦„ì´ ì•„ë‹™ë‹ˆë‹¤\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1078
msgid "Error: Method name is not specified\n"
msgstr "오류: 메소드 ì´ë¦„ì„ ì§€ì •í•˜ì§€ 않았습니다\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1089
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "오류: 메소드 ì´ë¦„ “%sâ€ì´(ê°€) 올바르지 않습니다\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1167
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "í˜•ì‹ â€œ%2$sâ€ì˜ 파ë¼ë¯¸í„° %1$d번 í•´ì„ ì˜¤ë¥˜: %3$s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1193
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "핸들 %d번 추가하는 중 오류: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1694
msgid "Destination name to introspect"
msgstr "조사할 ëŒ€ìƒ ì´ë¦„"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1695
msgid "Object path to introspect"
msgstr "조사할 ê°ì²´ 경로"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1696
msgid "Print XML"
msgstr "XMLì„ í‘œì‹œí•©ë‹ˆë‹¤"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1697
msgid "Introspect children"
msgstr "하위 í•­ëª©ì— ì¸íŠ¸ë¡œìŠ¤íŽ™íŠ¸ ì ìš©"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1698
msgid "Only print properties"
msgstr "ì†ì„±ì„ 표시하기만 합니다"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1787
msgid "Introspect a remote object."
msgstr "ì›ê²© ê°ì²´ë¥¼ 조사합니다."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1993
msgid "Destination name to monitor"
msgstr "ê°ì‹œí•  ëŒ€ìƒ ì´ë¦„"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1994
msgid "Object path to monitor"
msgstr "ê°ì‹œí•  ê°ì²´ 경로"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2019
msgid "Monitor a remote object."
msgstr "ì›ê²© ê°ì²´ë¥¼ ê°ì‹œí•©ë‹ˆë‹¤."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2077
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "오류: 메시지 버스가 ì•„ë‹Œ ì—°ê²°ì„ ê°ì‹œí•  수 없습니다\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2201
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "(알려진 ì´ë¦„ì˜) 다른 서비스를 기다리기 ì „ì— í™œì„±í™”í•  서비스"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2204
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
msgstr ""
"오류로 ëë‚  때까지 대기할 시간 제한 (ì´ˆ 단위), 0ì´ë©´ 시간 무제한 (기본값)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2252
msgid "[OPTION…] BUS-NAME"
msgstr "[옵션…] <버스-ì´ë¦„>"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2253
msgid "Wait for a bus name to appear."
msgstr "버스 ì´ë¦„ì´ ë‚˜íƒ€ë‚  때까지 대기합니다."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2329
msgid "Error: A service to activate for must be specified.\n"
msgstr "오류: 활성화할 서비스를 지정해야 합니다.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2334
msgid "Error: A service to wait for must be specified.\n"
msgstr "오류: 대기할 서비스를 지정해야 합니다.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2339
msgid "Error: Too many arguments.\n"
msgstr "오류: ì¸ìžê°€ 너무 많습니다.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2347 gio/gdbus-tool.c:2354
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "오류: “%sâ€ì€(는) 올바른 알려진 버스 ì´ë¦„ì´ ì•„ë‹™ë‹ˆë‹¤.\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4932
+#: gio/gdebugcontrollerdbus.c:203
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "디버깅 ì„¤ì •ì„ ë°”ê¿€ ê¶Œí•œì´ ì—†ìŠµë‹ˆë‹¤"
+
+#: gio/gdesktopappinfo.c:2174 gio/gdesktopappinfo.c:5099
msgid "Unnamed"
msgstr "ì´ë¦„ì—†ìŒ"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2584
msgid "Desktop file didn’t specify Exec field"
msgstr "desktop 파ì¼ì— Exec 필드를 지정하지 않았습니다"
-#: gio/gdesktopappinfo.c:2801
+#: gio/gdesktopappinfo.c:2892
msgid "Unable to find terminal required for application"
msgstr "í”„ë¡œê·¸ëž¨ì— í•„ìš”í•œ 터미ë„ì„ ì°¾ì„ ìˆ˜ 없습니다"
-#: gio/gdesktopappinfo.c:3452
+#: gio/gdesktopappinfo.c:3619
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr "ì‚¬ìš©ìž í”„ë¡œê·¸ëž¨ 설정 í´ë”(%s)를 만들 수 없습니다: %s"
-#: gio/gdesktopappinfo.c:3456
+#: gio/gdesktopappinfo.c:3623
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "ì‚¬ìš©ìž MIME 설정 í´ë”(%s)를 만들 수 없습니다: %s"
-#: gio/gdesktopappinfo.c:3698 gio/gdesktopappinfo.c:3722
+#: gio/gdesktopappinfo.c:3865 gio/gdesktopappinfo.c:3889
msgid "Application information lacks an identifier"
msgstr "프로그램 ì •ë³´ì— ì•„ì´ë””ê°€ 없습니다"
-#: gio/gdesktopappinfo.c:3958
+#: gio/gdesktopappinfo.c:4125
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "%s ì‚¬ìš©ìž desktop 파ì¼ì„ 만들 수 없습니다"
-#: gio/gdesktopappinfo.c:4094
+#: gio/gdesktopappinfo.c:4261
#, c-format
msgid "Custom definition for %s"
msgstr "%sì— ëŒ€í•œ ì‚¬ìš©ìž ì„¤ì • ì •ì˜"
@@ -1312,7 +1333,7 @@ msgstr "ë“œë¼ì´ë¸Œê°€ start ê¸°ëŠ¥ì„ êµ¬í˜„í•˜ì§€ 않았습니다"
msgid "drive doesn’t implement stop"
msgstr "ë“œë¼ì´ë¸Œê°€ stop ê¸°ëŠ¥ì„ êµ¬í˜„í•˜ì§€ 않았습니다"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "TLS 백엔드가 TLS ë°”ì¸ë”© 가져오기를 구현하지 않았습니다"
@@ -1353,74 +1374,74 @@ msgstr "GEmblemedIconì— GEmblemì´ ì—†ìŠµë‹ˆë‹¤"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "들어 있는 마운트가 없습니다"
-#: gio/gfile.c:2608 gio/glocalfile.c:2477
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "디렉터리를 ë®ì–´ ì¨ì„œ 복사할 수 없습니다"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "디렉터리를 ë®ì–´ ì¨ì„œ 디렉터리를 복사할 수 없습니다"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "ëŒ€ìƒ íŒŒì¼ì´ 있습니다"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "디렉터리를 재귀ì ìœ¼ë¡œ 복사할 수 없습니다"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "잇기를 지ì›í•˜ì§€ 않습니다"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "íŒŒì¼ ìª¼ê°œê¸° 오류: %s"
# reflink/cloneì€ btrfsì—ì„œ ìž„ì‹œ 복사하는 걸 ë§í•œë‹¤
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "다른 마운트 사ì´ì— 복사(참조ë§í¬/í´ë¡ )는 지ì›í•˜ì§€ 않습니다"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "복사(참조ë§í¬/í´ë¡ )를 지ì›í•˜ì§€ 않거나 잘못ë˜ì—ˆìŠµë‹ˆë‹¤"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "복사(참조ë§í¬/í´ë¡ )를 지ì›í•˜ì§€ 않거나 ë™ìž‘하지 않았습니다."
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "특수 파ì¼ì€ 복사할 수 없습니다"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "ìž˜ëª»ëœ ì‹¬ë³¼ë¦­ ë§í¬ ê°’ì´ ì£¼ì–´ì¡ŒìŠµë‹ˆë‹¤"
-#: gio/gfile.c:4045 glib/gfileutils.c:2354
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "심볼릭 ë§í¬ë¥¼ 지ì›í•˜ì§€ 않습니다"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "íœ´ì§€í†µì„ ì§€ì›í•˜ì§€ 않습니다"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "íŒŒì¼ ì´ë¦„ì— â€œ%c†문ìžê°€ 들어갈 수 없습니다"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "ë³¼ë¥¨ì´ mount를 구현하지 않았습니다"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "ì´ íŒŒì¼ì„ 처리하는 í”„ë¡œê·¸ëž¨ì„ ì•„ë¬´ ê²ƒë„ ë“±ë¡í•˜ì§€ 않았습니다"
@@ -1465,7 +1486,7 @@ msgstr "ìž…ë ¥ ìŠ¤íŠ¸ë¦¼ì´ truncate를 허용하지 않습니다"
msgid "Truncate not supported on stream"
msgstr "스트림ì—ì„œ truncate를 지ì›í•˜ì§€ 않습니다"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "ìž˜ëª»ëœ í˜¸ìŠ¤íŠ¸ ì´ë¦„"
@@ -1552,7 +1573,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "“%sâ€ì„(를) IP주소 마스í¬ë¡œ í•´ì„í•  수 없습니다"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "소켓 ì£¼ì†Œì— ê³µê°„ì´ ë¶€ì¡±í•©ë‹ˆë‹¤"
@@ -2386,76 +2407,80 @@ msgstr "%s íŒŒì¼ ì••ì¶• 중 오류"
msgid "text may not appear inside <%s>"
msgstr "<%s> 안ì—는 문ìžê°€ 들어갈 수 없습니다"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "프로그램 ë²„ì „ì„ í‘œì‹œí•˜ê³  ë납니다"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "출력 파ì¼ì˜ ì´ë¦„"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
msgstr "FILEì— ì°¸ì¡°ëœ íŒŒì¼ì„ ì½ì–´ë“¤ì¼ 디렉터리 (기본값: 현재 디렉터리)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "<디렉터리>"
# 주ì˜: 옵션 설명 - 문장으로 번역
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr "ëŒ€ìƒ íŒŒì¼ ì´ë¦„ 확장ìžì— ë”°ë¼ ì„ íƒí•œ 형ì‹ìœ¼ë¡œ ì¶œë ¥ì„ ìƒì„±í•©ë‹ˆë‹¤"
# 주ì˜: 옵션 설명 - 문장으로 번역
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "소스 í—¤ë”를 ìƒì„±í•©ë‹ˆë‹¤"
# 주ì˜: 옵션 설명 - 문장으로 번역
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr "리소스 파ì¼ì— ì—°ê²°í•˜ëŠ”ë° ì‚¬ìš©í•˜ëŠ” 소스 코드를 ì½”ë“œì— ìƒì„±í•©ë‹ˆë‹¤"
# 주ì˜: 옵션 설명 - 문장으로 번역
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "ì˜ì¡´ì„± 목ë¡ì„ ìƒì„±í•©ë‹ˆë‹¤"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "ìƒì„±í•  ì˜ì¡´ì„± 파ì¼ì˜ ì´ë¦„"
# makefileì˜ .PHONY targetì„ ë§í•¨
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "만들어진 ì˜ì¡´ì„± 파ì¼ì— í¬ë‹ˆ íƒ€ê²Ÿì´ ë“¤ì–´ê°‘ë‹ˆë‹¤"
# 주ì˜: 옵션 설명 - 문장으로 번역
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "ìžì›ì„ ìžë™ìœ¼ë¡œ 만들고 등ë¡í•˜ì§€ 않습니다"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "함수를 내보내지 않고, G_GNU_INTERNAL로 선언합니다"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
msgstr ""
"C 파ì¼ì— 리소스 ë°ì´í„°ë¥¼ 내장하지 ì•Šê³ , ì™¸ë¶€ì— ë§í¬ë˜ì–´ 있다고 가정합니다"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "C ì‹ë³„ìž ì´ë¦„ì€ ìƒì„±í•œ ì†ŒìŠ¤ì½”ë“œì— ëŒ€í•´ 사용합니다"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "타겟 C 컴파ì¼ëŸ¬ (기본값: CC 환경 변수)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2465,7 +2490,7 @@ msgstr ""
"ìžì› 명세 파ì¼ì€ .gresource.xml 확장ìžë¥¼ 지니며,\n"
"ìžì› 파ì¼ì€ .gresourceë¼ëŠ” 확장ìžë¥¼ 지닙니다."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "정확히 íŒŒì¼ ì´ë¦„ì„ í•˜ë‚˜ 지정해야 합니다\n"
@@ -2976,8 +3001,8 @@ msgstr "%s 파ì¼ì˜ ì´ë¦„ 바꾸는 중 오류: %s"
msgid "Can’t rename file, filename already exists"
msgstr "íŒŒì¼ ì´ë¦„ì„ ë°”ê¿€ 수 없습니다. 파ì¼ì´ ì´ë¯¸ 있습니다"
-#: gio/glocalfile.c:1184 gio/glocalfile.c:2371 gio/glocalfile.c:2399
-#: gio/glocalfile.c:2538 gio/glocalfileoutputstream.c:656
+#: gio/glocalfile.c:1184 gio/glocalfile.c:2380 gio/glocalfile.c:2408
+#: gio/glocalfile.c:2547 gio/glocalfileoutputstream.c:656
msgid "Invalid filename"
msgstr "ìž˜ëª»ëœ íŒŒì¼ ì´ë¦„"
@@ -2991,92 +3016,92 @@ msgstr "%s 파ì¼ì„ 여는 중 오류: %s"
msgid "Error removing file %s: %s"
msgstr "%s íŒŒì¼ ì œê±°í•˜ëŠ” 중 오류: %s"
-#: gio/glocalfile.c:1982 gio/glocalfile.c:1993
+#: gio/glocalfile.c:1982 gio/glocalfile.c:1993 gio/glocalfile.c:2020
#, c-format
msgid "Error trashing file %s: %s"
msgstr "%s íŒŒì¼ ë²„ë¦¬ëŠ” 중 오류: %s"
-#: gio/glocalfile.c:2031
+#: gio/glocalfile.c:2040
#, c-format
msgid "Unable to create trash directory %s: %s"
msgstr "휴지통 디렉터리(%s)를 만들 수 없습니다: %s"
-#: gio/glocalfile.c:2052
+#: gio/glocalfile.c:2061
#, c-format
msgid "Unable to find toplevel directory to trash %s"
msgstr "%s íœ´ì§€í†µì˜ ìƒìœ„ 디렉터리를 ì°¾ì„ ìˆ˜ 없습니다"
# reflink/cloneì€ btrfsì—ì„œ ìž„ì‹œ 복사하는 걸 ë§í•œë‹¤
-#: gio/glocalfile.c:2060
+#: gio/glocalfile.c:2069
#, c-format
msgid "Trashing on system internal mounts is not supported"
msgstr "시스템 내부 ë§ˆìš´íŠ¸ì— ëŒ€í•´ íœ´ì§€í†µì€ ì§€ì›í•˜ì§€ 않습니다"
-#: gio/glocalfile.c:2146 gio/glocalfile.c:2174
+#: gio/glocalfile.c:2155 gio/glocalfile.c:2183
#, c-format
msgid "Unable to find or create trash directory %s to trash %s"
msgstr "%s 휴지통 디렉터리를 (%s 버리기) ì°¾ì„ ìˆ˜ 없거나 만들 수 없습니다"
-#: gio/glocalfile.c:2220
+#: gio/glocalfile.c:2229
#, c-format
msgid "Unable to create trashing info file for %s: %s"
msgstr "%sì— ëŒ€í•œ 휴지통 ì •ë³´ 파ì¼ì„ 만들 수 없습니다: %s"
-#: gio/glocalfile.c:2282
+#: gio/glocalfile.c:2291
#, c-format
msgid "Unable to trash file %s across filesystem boundaries"
msgstr "%s 파ì¼ì„ íŒŒì¼ ì‹œìŠ¤í…œ 경계를 넘어서서 버릴 수 없습니다"
-#: gio/glocalfile.c:2286 gio/glocalfile.c:2342
+#: gio/glocalfile.c:2295 gio/glocalfile.c:2351
#, c-format
msgid "Unable to trash file %s: %s"
msgstr "%s 파ì¼ì„ 버릴 수 없습니다: %s"
-#: gio/glocalfile.c:2348
+#: gio/glocalfile.c:2357
#, c-format
msgid "Unable to trash file %s"
msgstr "%s 파ì¼ì„ 버릴 수 없습니다"
-#: gio/glocalfile.c:2374
+#: gio/glocalfile.c:2383
#, c-format
msgid "Error creating directory %s: %s"
msgstr "%s 디렉터리를 만드는 중 오류: %s"
-#: gio/glocalfile.c:2403
+#: gio/glocalfile.c:2412
#, c-format
msgid "Filesystem does not support symbolic links"
msgstr "íŒŒì¼ ì‹œìŠ¤í…œì´ ì‹¬ë³¼ë¦­ ë§í¬ë¥¼ 지ì›í•˜ì§€ 않습니다"
-#: gio/glocalfile.c:2406
+#: gio/glocalfile.c:2415
#, c-format
msgid "Error making symbolic link %s: %s"
msgstr "%s 심볼릭 ë§í¬ë¥¼ 만드는 중 오류: %s"
-#: gio/glocalfile.c:2449 gio/glocalfile.c:2484 gio/glocalfile.c:2541
+#: gio/glocalfile.c:2458 gio/glocalfile.c:2493 gio/glocalfile.c:2550
#, c-format
msgid "Error moving file %s: %s"
msgstr "%s íŒŒì¼ ì˜®ê¸°ëŠ” 중 오류: %s"
-#: gio/glocalfile.c:2472
+#: gio/glocalfile.c:2481
msgid "Can’t move directory over directory"
msgstr "디렉터리를 ë®ì–´ ì¨ì„œ 디렉터리를 옮길 수 없습니다"
-#: gio/glocalfile.c:2498 gio/glocalfileoutputstream.c:1108
+#: gio/glocalfile.c:2507 gio/glocalfileoutputstream.c:1108
#: gio/glocalfileoutputstream.c:1122 gio/glocalfileoutputstream.c:1137
#: gio/glocalfileoutputstream.c:1154 gio/glocalfileoutputstream.c:1168
msgid "Backup file creation failed"
msgstr "백업 íŒŒì¼ ë§Œë“¤ê¸°ê°€ 실패했습니다"
-#: gio/glocalfile.c:2517
+#: gio/glocalfile.c:2526
#, c-format
msgid "Error removing target file: %s"
msgstr "ëŒ€ìƒ íŒŒì¼ì„ 제거하는 중 오류: %s"
-#: gio/glocalfile.c:2531
+#: gio/glocalfile.c:2540
msgid "Move between mounts not supported"
msgstr "다른 마운트 사ì´ì— 옮기기는 지ì›í•˜ì§€ 않습니다"
-#: gio/glocalfile.c:2705
+#: gio/glocalfile.c:2714
#, c-format
msgid "Could not determine the disk usage of %s: %s"
msgstr "%sì˜ ë””ìŠ¤í¬ ì‚¬ìš©ëŸ‰ì„ ì•Œì•„ë‚¼ 수 없습니다: %s"
@@ -3260,7 +3285,7 @@ msgid "Error truncating file: %s"
msgstr "파ì¼ì„ ìžë¥´ëŠ” 중 오류: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "“%s†파ì¼ì„ 여는 중 오류: %s"
@@ -3282,7 +3307,7 @@ msgstr "파ì¼ì´ 외부ì—ì„œ 바뀌었습니다"
msgid "Error removing old file: %s"
msgstr "예전 파ì¼ì„ 제거하는 중 오류: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "ìž˜ëª»ëœ GSeekTypeì´ ì£¼ì–´ì¡ŒìŠµë‹ˆë‹¤"
@@ -3294,25 +3319,25 @@ msgstr "ìž˜ëª»ëœ íƒìƒ‰ 요청"
msgid "Cannot truncate GMemoryInputStream"
msgstr "GMemoryInputStreamì€ ìžë¥¼ 수 없습니다"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "메모리 출력 ìŠ¤íŠ¸ë¦¼ì€ í¬ê¸°ë¥¼ 바꿀 수 없습니다"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "출력 ìŠ¤íŠ¸ë¦¼ì˜ í¬ê¸°ë¥¼ ë°”ê¾¸ëŠ”ë° ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
msgstr "쓰기를 ì²˜ë¦¬í•˜ëŠ”ë° í•„ìš”í•œ 메모리 ìš©ëŸ‰ì´ ë¹ˆ 공간보다 ë” í½ë‹ˆë‹¤"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "요청한 íŒŒì¼ ì´ë™ 위치가 ìŠ¤íŠ¸ë¦¼ì˜ ë§¨ 앞보다 ë” ì•žìª½ìž…ë‹ˆë‹¤"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "요청한 íŒŒì¼ ì´ë™ 위치가 ìŠ¤íŠ¸ë¦¼ì˜ ë§¨ 뒤보다 ë” ë’¤ìª½ìž…ë‹ˆë‹¤"
@@ -3394,12 +3419,12 @@ msgstr "ë„¤íŠ¸ì›Œí¬ ê°ì‹œìžë¥¼ 만들 수 없습니다:"
msgid "Could not get network status: "
msgstr "ë„¤íŠ¸ì›Œí¬ ìƒíƒœë¥¼ 가져올 수 없습니다:"
-#: gio/gnetworkmonitornm.c:348
+#: gio/gnetworkmonitornm.c:311
#, c-format
msgid "NetworkManager not running"
msgstr "NetworkManager 실행 ì¤‘ì´ ì•„ë‹™ë‹ˆë‹¤"
-#: gio/gnetworkmonitornm.c:359
+#: gio/gnetworkmonitornm.c:322
#, c-format
msgid "NetworkManager version too old"
msgstr "NetworkManager ë²„ì „ì´ ë„ˆë¬´ 오래 ë습니다"
@@ -3417,18 +3442,18 @@ msgstr "%sì— ì „ë‹¬ëœ ë²¡í„°ì˜ í•©ì´ ë„ˆë¬´ í½ë‹ˆë‹¤"
msgid "Source stream is already closed"
msgstr "ì›ë³¸ ìŠ¤íŠ¸ë¦¼ì„ ì´ë¯¸ 닫았습니다"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "“%sâ€ì˜ 주소를 알아내는 ë° ì˜¤ë¥˜: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s ê¸°ëŠ¥ì´ êµ¬í˜„ë˜ì§€ 않았습니다"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "ìž˜ëª»ëœ ë„ë©”ì¸"
@@ -3543,7 +3568,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " <섹션> (추가ì ) ELF 섹션 ì´ë¦„\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " <명령> 설명할 명령어(옵션)\n"
@@ -3575,7 +3600,7 @@ msgstr "<경로>"
msgid " PATH A resource path\n"
msgstr " <경로> ìžì› 경로\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "“%s†스키마가 없습니다\n"
@@ -3606,35 +3631,35 @@ msgstr "경로는 슬래시(/)ë¡œ ë나야 합니다\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "경로ì—는 ë‘ ê°œì˜ ì—°ì†ëœ 슬래시(//)ê°€ 들어 있어서는 안 ë©ë‹ˆë‹¤\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "지정한 ê°’ì´ ì˜¬ë°”ë¥¸ 범위ì—ì„œ 벗어납니다\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "키를 쓸 수 없습니다\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "설치한(ì´ë™ 가능하지 ì•Šì€) ìŠ¤í‚¤ë§ˆì˜ ëª©ë¡ì„ 표시합니다"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "설치한 ì´ë™ 가능한 ìŠ¤í‚¤ë§ˆì˜ ëª©ë¡ì„ 표시합니다"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "<스키마>ì˜ í‚¤ 목ë¡ì„ 표시합니다"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "<스키마>[:<경로>]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "<스키마>ì˜ í•˜ìœ„ í•­ëª©ì˜ ëª©ë¡ì„ 표시합니다"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3642,48 +3667,48 @@ msgstr ""
"키와 ê°’ì˜ ëª©ë¡ì„ 재귀ì ìœ¼ë¡œ 표시합니다.\n"
"<스키마>가 없으면 모든 키를 표시합니다.\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[<스키마>[:<경로>]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "<키>ì˜ ê°’ì„ ê°€ì ¸ì˜µë‹ˆë‹¤"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "<스키마>:[<경로>] <키>"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "<키>ì— ëŒ€í•œ 올바른 ê°’ì˜ ë²”ìœ„ë¥¼ 찾아 봅니다"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "<키>ì— ëŒ€í•œ ì„¤ëª…ì„ ì°¾ì•„ 봅니다"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "<키>ì˜ ê°’ì„ <ê°’>으로 설정합니다"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "<스키마>:[<경로>] <키> <값>"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "<키>ì˜ ê°’ì„ ê¸°ë³¸ê°’ìœ¼ë¡œ 초기화합니다"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "<스키마>ì— ìžˆëŠ” 모든 í‚¤ì˜ ê°’ì„ ê¸°ë³¸ê°’ìœ¼ë¡œ 초기화합니다"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "<키>가 쓰기 가능한지 검사합니다"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3693,11 +3718,11 @@ msgstr ""
"<키>를 지정하지 않으면, <스키마>ì˜ ëª¨ë“  키를 ê°ì‹œí•©ë‹ˆë‹¤.\n"
"ê°ì‹œë¥¼ 중단하려면 ^C를 누르십시오.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "<스키마>[:<경로>] [<키>]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3745,7 +3770,7 @@ msgstr ""
"ìžì„¸í•œ ë„움ë§ì„ 보려면 “gsettings help <명령>â€ ëª…ë ¹ì„ ì‹¤í–‰í•˜ì‹­ì‹œì˜¤.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3760,11 +3785,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " <스키마 경로> 추가ì ì¸ 스키마를 검색하려는 디렉터리\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3772,212 +3797,212 @@ msgstr ""
" <스키마> ìŠ¤í‚¤ë§ˆì˜ ì´ë¦„\n"
" <경로> 경로, ì´ë™ 가능한 ìŠ¤í‚¤ë§ˆì˜ ê²½ìš°\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " <키> 스키마 ì•ˆì˜ í‚¤(옵션)\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " <키> 스키마 ì•ˆì˜ í‚¤\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " <값> 설정할 값\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "“%sâ€ì—ì„œ 스키마를 ì½ì–´ë“¤ì¼ 수 없습니다: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "스키마를 설치하지 않았습니다\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "지정한 스키마 ì´ë¦„ì´ ë¹ˆ 문ìžì—´ìž…니다\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "“%s†키가 없습니다\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "올바른 ì†Œì¼“ì´ ì•„ë‹™ë‹ˆë‹¤. 초기화ë˜ì§€ 않았습니다"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "올바른 ì†Œì¼“ì´ ì•„ë‹™ë‹ˆë‹¤. 초기화가 ë‹¤ìŒ ì´ìœ ë¡œ 실패했습니다: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "ì†Œì¼“ì„ ì´ë¯¸ 닫았습니다"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "소켓 입출력 시간 ì œí•œì´ ë„˜ì—ˆìŠµë‹ˆë‹¤"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "íŒŒì¼ ì„œìˆ ìžì—ì„œ GSocketì„ ë§Œë“œëŠ” 중: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "ì†Œì¼“ì„ ë§Œë“¤ 수 없습니다: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "ì•Œ 수 없는 ê³„ì—´ì„ ì§€ì •í–ˆìŠµë‹ˆë‹¤"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "ì•Œ 수 없는 í”„ë¡œí† ì½œì„ ì§€ì •í–ˆìŠµë‹ˆë‹¤"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "ë°ì´í„°ê·¸ëž¨ ìš©ë„ê°€ ì•„ë‹Œ ì†Œì¼“ì— ë°ì´í„°ê·¸ëž¨ ë™ìž‘ì„ ìˆ˜í–‰í•  수 없습니다."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr "ì œí•œì‹œê°„ì„ ì„¤ì •í•œ ì†Œì¼“ì— ë°ì´í„°ê·¸ëž¨ ë™ìž‘ì„ ìˆ˜í–‰í•  수 없습니다."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "로컬 주소를 알아낼 수 없습니다: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "ì›ê²© 주소를 알아낼 수 없습니다: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "ì—°ê²°ì„ ë°›ì„ ìˆ˜ 없습니다: %s"
# NOTE: bind(2)를 뜻함
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "%s ì£¼ì†Œì— ë°”ì¸ë“œí•˜ëŠ”ë° ì˜¤ë¥˜: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "멀티ìºìŠ¤íŠ¸ ê·¸ë£¹ì— ì°¸ì—¬í•˜ëŠ” 중 오류: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "멀티ìºìŠ¤íŠ¸ ê·¸ë£¹ì„ ë‚˜ì˜¤ëŠ” 중 오류: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "소스 지향 멀티ìºìŠ¤íŠ¸ë¥¼ 지ì›í•˜ì§€ 않습니다"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "소켓 패밀리를 지ì›í•˜ì§€ 않습니다"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "소스 지향 주소가 IPv4 주소가 아닙니다"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "ì¸í„°íŽ˜ì´ìŠ¤ ì´ë¦„ì´ ë„ˆë¬´ ê¹ë‹ˆë‹¤"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "ì¸í„°íŽ˜ì´ìŠ¤ê°€ 없습니다: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "IPv4 소스 지향 멀티ìºìŠ¤íŠ¸ë¥¼ 지ì›í•˜ì§€ 않습니다"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "IPv6 소스 지향 멀티ìºìŠ¤íŠ¸ë¥¼ 지ì›í•˜ì§€ 않습니다"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "ì—°ê²°ì„ ë°›ì•„ë“¤ì´ëŠ”ë° ì˜¤ë¥˜: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "ì—°ê²°ì´ ì§„í–‰ 중입니다"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "밀린 오류를 알아낼 수 없습니다: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "ë°ì´í„°ë¥¼ ë°›ëŠ”ë° ì˜¤ë¥˜: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "ë°ì´í„°ë¥¼ ë³´ë‚´ëŠ”ë° ì˜¤ë¥˜: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "ì†Œì¼“ì„ ë‹«ì„ ìˆ˜ 없습니다: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "ì†Œì¼“ì„ ë‹«ëŠ”ë° ì˜¤ë¥˜: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "소켓 ì¡°ê±´ì„ ê¸°ë‹¤ë¦¬ëŠ” 중: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "메시지를 보낼 수 없습니다: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "메시지 벡터가 너무 í½ë‹ˆë‹¤"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "메시지를 보내는 중 오류: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "윈ë„ìš°ì—서는 GSocketControlMessage를 지ì›í•˜ì§€ 않습니다"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "메시지를 ë°›ëŠ”ë° ì˜¤ë¥˜: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "소켓 암호 ë°ì´í„°ë¥¼ ì½ì„ 수 없습니다: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "g_socket_get_credentialsê°€ ì´ OSì—ì„œ 구현ë˜ì§€ 않았습니다"
@@ -3995,11 +4020,11 @@ msgstr "%s(으)로 연결할 수 없습니다: "
msgid "Could not connect: "
msgstr "연결할 수 없습니다: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "TCPê°€ ì•„ë‹Œ 프ë¡ì‹œ ì—°ê²°ì€ ì§€ì›í•˜ì§€ 않습니다."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "“%s†프ë¡ì‹œ í”„ë¡œí† ì½œì€ ì§€ì›í•˜ì§€ 않습니다."
@@ -4097,6 +4122,16 @@ msgstr "SOCKSv5 프ë¡ì‹œê°€ 해당 주소 형ì‹ì„ 지ì›í•˜ì§€ 않습니다."
msgid "Unknown SOCKSv5 proxy error."
msgstr "ì•Œ 수 없는 SOCKSv5 프ë¡ì‹œ 오류."
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
+#, c-format
+msgid "Failed to create pipe for communicating with child process (%s)"
+msgstr "하위 프로세스와 í†µì‹ ì„ ìœ„í•œ 파ì´í”„를 만드는 중 실패 (%s)"
+
+#: gio/gtestdbus.c:619
+#, c-format
+msgid "Pipes are not supported in this platform"
+msgstr "ì´ í”Œëž«í¼ì—서는 파ì´í”„를 지ì›í•˜ì§€ 않습니다"
+
#: gio/gthemedicon.c:595
#, c-format
msgid "Can’t handle version %d of GThemedIcon encoding"
@@ -4128,27 +4163,31 @@ msgstr "ì¼ì‹œì ìœ¼ë¡œ “%s†주소를 알아낼 수 없습니다"
msgid "Error resolving “%sâ€"
msgstr "“%sâ€ì˜ 주소를 알아내는 ë° ì˜¤ë¥˜"
-#: gio/gtlscertificate.c:419
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "PEM ì¸ì½”ë”©ëœ ê°œì¸ í‚¤ê°€ 없습니다"
-#: gio/gtlscertificate.c:429
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "PEM ì¸ì½”ë”©ëœ ê°œì¸ í‚¤ë¥¼ í•´ë…í•  수 없습니다"
-#: gio/gtlscertificate.c:440
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "PEM ì¸ì½”ë”©ëœ ê°œì¸ í‚¤ë¥¼ í•´ì„í•  수 없습니다"
-#: gio/gtlscertificate.c:467
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "PEM ì¸ì½”ë”©ëœ ì¸ì¦ì„œê°€ 없습니다"
-#: gio/gtlscertificate.c:476
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "PEM ì¸ì½”ë”©ëœ ì¸ì¦ì„œë¥¼ í•´ì„í•  수 없습니다"
-#: gio/gtlscertificate.c:832
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "현재 TLS 백엔드는 PKCS #12를 지ì›í•˜ì§€ 않습니다"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "ì´ GTlsBackend는 PKCS #11 ì¸ì¦ì„œ 만들기를 지ì›í•˜ì§€ 않습니다"
@@ -4170,51 +4209,59 @@ msgstr "암호 ìž…ë ¥ì´ ì—¬ëŸ¬ 차례 잘못ë˜ì—ˆìŠµë‹ˆë‹¤. ê³„ì† ì‹¤íŒ¨í•˜ë©
msgid "The password entered is incorrect."
msgstr "입력한 암호가 올바르지 않습니다."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "FD 보내기는 지ì›í•˜ì§€ 않습니다"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "í•œ ê°œì˜ ì œì–´ 메시지가 와야 하지만, %d개를 받았습니다"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "예ìƒì¹˜ 못한 ë¶€ì† ë°ì´í„°ì˜ 형ì‹ìž…니다"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "í•œ ê°œì˜ íŒŒì¼ ì„œìˆ ìžê°€ 와야 하지만, %d개를 받았습니다\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "올바르지 ì•Šì€ íŒŒì¼ ì„œìˆ ìžë¥¼ 받았습니다"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "FD 받기는 지ì›í•˜ì§€ 않습니다"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "암호 ë°ì´í„°ë¥¼ ë³´ë‚´ëŠ”ë° ì˜¤ë¥˜: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "ì†Œì¼“ì— SO_PASSCRED를 사용하는지 ê²€ì‚¬í•˜ëŠ”ë° ì˜¤ë¥˜: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "SO_PASSCRED 사용 오류: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr "암호 ë°ì´í„° 1ë°”ì´íŠ¸ë¥¼ ì½ì–´ì•¼ 하지만 0ë°”ì´íŠ¸ ì½ìŒ"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "제어 메시지가 올 수 없지만, %d개를 받았습니다"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "SO_PASSCRED 사용 해제 오류: %s"
@@ -4230,7 +4277,7 @@ msgstr "íŒŒì¼ ì„œìˆ ìžë¡œë¶€í„° ì½ì–´ì˜¤ëŠ” 중 오류: %s"
msgid "Error closing file descriptor: %s"
msgstr "íŒŒì¼ ì„œìˆ ìžë¥¼ 닫는 중 오류: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2782 gio/gunixmounts.c:2835
msgid "Filesystem root"
msgstr "íŒŒì¼ ì‹œìŠ¤í…œ 루트"
@@ -4242,7 +4289,7 @@ msgid "Error writing to file descriptor: %s"
msgstr "íŒŒì¼ ì„œìˆ ìžì— 쓰는 중 오류: %s"
# abstract unix domain socket address: 파ì¼ì‹œìŠ¤í…œê³¼ 관계없는 ì†Œì¼“ì„ ë§í•¨
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "ì¶”ìƒ ìœ ë‹‰ìŠ¤ ë„ë©”ì¸ ì†Œì¼“ 주소는 ì´ ì‹œìŠ¤í…œì—ì„œ 지ì›í•˜ì§€ 않습니다"
@@ -4392,8 +4439,8 @@ msgstr "URI “%sâ€ì„(를) 사용해 “%s†실행 명령 í™•ìž¥í•˜ê¸°ì— ì‹
msgid "Unrepresentable character in conversion input"
msgstr "변환 ìž…ë ¥ì— í‘œí˜„í•  수 없는 글ìžê°€ 들어 있습니다"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "ìž…ë ¥ì˜ ëì—ì„œ 부분ì ì¸ ë¬¸ìž ìˆœì„œ"
@@ -4858,78 +4905,78 @@ msgstr "오후"
msgid "Error opening directory “%sâ€: %s"
msgstr "디렉터리 “%s†여는 중 오류 : %s"
-#: glib/gfileutils.c:737 glib/gfileutils.c:829
+#: glib/gfileutils.c:733 glib/gfileutils.c:825
#, c-format
msgid "Could not allocate %lu byte to read file “%sâ€"
msgid_plural "Could not allocate %lu bytes to read file “%sâ€"
msgstr[0] "“%2$s†파ì¼ì„ ì½ëŠ”ë° %1$lu ë°”ì´íŠ¸ë¥¼ 할당할 수 없습니다"
-#: glib/gfileutils.c:754
+#: glib/gfileutils.c:750
#, c-format
msgid "Error reading file “%sâ€: %s"
msgstr "“%sâ€ íŒŒì¼ ì½ëŠ” 중 오류: %s"
-#: glib/gfileutils.c:790
+#: glib/gfileutils.c:786
#, c-format
msgid "File “%s†is too large"
msgstr "“%s†파ì¼ì´ 너무 í½ë‹ˆë‹¤"
-#: glib/gfileutils.c:854
+#: glib/gfileutils.c:850
#, c-format
msgid "Failed to read from file “%sâ€: %s"
msgstr "íŒŒì¼ â€œ%sâ€ì—ì„œ ì½ê¸° 실패: %s"
-#: glib/gfileutils.c:904 glib/gfileutils.c:979 glib/gfileutils.c:1468
+#: glib/gfileutils.c:900 glib/gfileutils.c:975 glib/gfileutils.c:1447
#, c-format
msgid "Failed to open file “%sâ€: %s"
msgstr "íŒŒì¼ â€œ%s†열기 실패: %s"
-#: glib/gfileutils.c:917
+#: glib/gfileutils.c:913
#, c-format
msgid "Failed to get attributes of file “%sâ€: fstat() failed: %s"
msgstr "íŒŒì¼ â€œ%sâ€ì˜ ì†ì„± 가져오기 실패: fstat() 실패: %s"
-#: glib/gfileutils.c:948
+#: glib/gfileutils.c:944
#, c-format
msgid "Failed to open file “%sâ€: fdopen() failed: %s"
msgstr "íŒŒì¼ â€œ%s†열기 실패: fdopen() 실패: %s"
-#: glib/gfileutils.c:1049
+#: glib/gfileutils.c:1045
#, c-format
msgid "Failed to rename file “%s†to “%sâ€: g_rename() failed: %s"
msgstr "íŒŒì¼ â€œ%sâ€ì˜ ì´ë¦„ì„ â€œ%sâ€(으)ë¡œ ë°”ê¾¸ëŠ”ë° ì‹¤íŒ¨: g_rename() 실패: %s"
-#: glib/gfileutils.c:1175
+#: glib/gfileutils.c:1154
#, c-format
msgid "Failed to write file “%sâ€: write() failed: %s"
msgstr "íŒŒì¼ â€œ%s†쓰기 실패: write() 실패: %s"
-#: glib/gfileutils.c:1196
+#: glib/gfileutils.c:1175
#, c-format
msgid "Failed to write file “%sâ€: fsync() failed: %s"
msgstr "íŒŒì¼ â€œ%s†쓰기 실패: fsync() 실패: %s"
-#: glib/gfileutils.c:1357 glib/gfileutils.c:1772
+#: glib/gfileutils.c:1336 glib/gfileutils.c:1751
#, c-format
msgid "Failed to create file “%sâ€: %s"
msgstr "íŒŒì¼ â€œ%s†만들기 실패: %s"
-#: glib/gfileutils.c:1402
+#: glib/gfileutils.c:1381
#, c-format
msgid "Existing file “%s†could not be removed: g_unlink() failed: %s"
msgstr "ê¸°ì¡´ì˜ â€œ%s†파ì¼ì„ 지울 수 없습니다: g_unlink() 실패: %s"
-#: glib/gfileutils.c:1737
+#: glib/gfileutils.c:1716
#, c-format
msgid "Template “%s†invalid, should not contain a “%sâ€"
msgstr "“%s†서ì‹ì´ 잘못ë˜ì—ˆìŠµë‹ˆë‹¤. “%sâ€ì´(ê°€) 들어 있으면 안 ë©ë‹ˆë‹¤"
-#: glib/gfileutils.c:1750
+#: glib/gfileutils.c:1729
#, c-format
msgid "Template “%s†doesn’t contain XXXXXX"
msgstr "“%s†서ì‹ì— XXXXXXê°€ 없습니다"
-#: glib/gfileutils.c:2310 glib/gfileutils.c:2339
+#: glib/gfileutils.c:2289 glib/gfileutils.c:2318
#, c-format
msgid "Failed to read the symbolic link “%sâ€: %s"
msgstr "심볼릭 ë§í¬ “%s†ì½ê¸° 실패: %s"
@@ -4955,15 +5002,15 @@ msgstr "ì¼ë¶€ 문ìžì—ì„œ ì±„ë„ ë냄"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "g_io_channel_read_to_endië¡œ raw ì½ê¸°ë¥¼ í•  수 없습니다"
-#: glib/gkeyfile.c:790
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "검색 디렉터리 ì•ˆì— ì˜¬ë°”ë¥¸ 키 파ì¼ì´ 없습니다"
-#: glib/gkeyfile.c:827
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "ì¼ë°˜ 파ì¼ì´ 아닙니다"
-#: glib/gkeyfile.c:1282
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -4971,49 +5018,49 @@ msgstr ""
"키 파ì¼ì— 들어 있는 “%sâ€ ì¤„ì€ í‚¤-ê°’ ìŒë„ 아니고, ê·¸ë£¹ë„ ì•„ë‹ˆê³ , 주ì„ë„ ì•„ë‹™ë‹ˆ"
"다"
-#: glib/gkeyfile.c:1339
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "ìž˜ëª»ëœ ê·¸ë£¹ ì´ë¦„: %s"
-#: glib/gkeyfile.c:1361
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "키 파ì¼ì´ 그룹으로 시작하지 않습니다"
-#: glib/gkeyfile.c:1387
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "ìž˜ëª»ëœ í‚¤ ì´ë¦„: %s"
+msgid "Invalid key name: %.*s"
+msgstr "ìž˜ëª»ëœ í‚¤ ì´ë¦„: %.*s"
-#: glib/gkeyfile.c:1414
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "키 파ì¼ì— 지ì›í•˜ì§€ 않는 “%s†ì¸ì½”ë”©ì´ ë“¤ì–´ 있습니다"
-#: glib/gkeyfile.c:1663 glib/gkeyfile.c:1836 glib/gkeyfile.c:3289
-#: glib/gkeyfile.c:3353 glib/gkeyfile.c:3483 glib/gkeyfile.c:3615
-#: glib/gkeyfile.c:3761 glib/gkeyfile.c:3996 glib/gkeyfile.c:4063
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "키 파ì¼ì— “%sâ€ ê·¸ë£¹ì´ ì—†ìŠµë‹ˆë‹¤"
-#: glib/gkeyfile.c:1791
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "키 파ì¼ì— 있는 “%2$sâ€ ê·¸ë£¹ì˜ â€œ%1$s†키가 없습니다"
-#: glib/gkeyfile.c:1953 glib/gkeyfile.c:2069
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "키 파ì¼ì— 있는 “%s†키와 “%sâ€ ê°’ì€ UTF-8ì´ ì•„ë‹™ë‹ˆë‹¤"
-#: glib/gkeyfile.c:1973 glib/gkeyfile.c:2089 glib/gkeyfile.c:2531
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr "키 파ì¼ì— 있는 “%sâ€ í‚¤ì˜ ê°’ì„ í•´ì„í•  수 없습니다."
-#: glib/gkeyfile.c:2749 glib/gkeyfile.c:3118
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5022,37 +5069,37 @@ msgstr ""
"키 파ì¼ì— í•´ì„í•  수 없는 ê°’ì„ ì§€ë‹Œ “%2$sâ€ ê·¸ë£¹ì˜ â€œ%1$s†키가 키 파ì¼ì— 있습니"
"다."
-#: glib/gkeyfile.c:2827 glib/gkeyfile.c:2904
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr ""
"%4$s ê°’ì´ ìžˆì–´ì•¼ í•  “%2$sâ€ ê·¸ë£¹ì˜ â€œ%1$s†키가 “%3$sâ€ ê°’ì„ ì§€ë‹ˆê³  있습니다"
-#: glib/gkeyfile.c:4306
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "키 파ì¼ì˜ 줄 ëì— ì´ìŠ¤ì¼€ì´í”„ 문ìžê°€ 있습니다"
-#: glib/gkeyfile.c:4328
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "키 파ì¼ì— ìž˜ëª»ëœ ì´ìŠ¤ì¼€ì´í”„ 시퀀스 “%sâ€ì´(ê°€) 들어 있습니다"
-#: glib/gkeyfile.c:4472
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "ê°’ “%sâ€ì„(를) 숫ìžë¡œ í•´ì„í•  수 없습니다."
-#: glib/gkeyfile.c:4486
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "정수 ê°’ “%sâ€ì´(ê°€) 범위를 벗어났습니다"
-#: glib/gkeyfile.c:4519
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "ê°’ “%sâ€ì„(를) ë‹¨ì •ë„ ì‹¤ìˆ˜ë¡œ í•´ì„í•  수 없습니다."
-#: glib/gkeyfile.c:4558
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "ê°’ “%sâ€ì„(를) 불리언 값으로 í•´ì„í•  수 없습니다."
@@ -5340,7 +5387,7 @@ msgstr "옵션 ì½ëŠ” ì¤‘ì— ì˜¤ë¥˜: %s"
msgid "Missing argument for %s"
msgstr "%sì— ëŒ€í•œ ì¸ìžê°€ 빠졌습니다"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "알 수 없는 옵션 %s"
@@ -5715,151 +5762,161 @@ msgstr "“%s†바꿀 문ìžì—´ì„ ì½ëŠ” 중 %lu번째 문ìžì—ì„œ 오류가
# g_shell_unquote()ì— ì“°ìž„. shellì˜ quoted text를 raw string으로 바꾸는 기능
# FIXME: "quoted"ë¼ëŠ” ë§ì„ 어떻게 해야 í•  것ì¸ê°€?
-#: glib/gshell.c:94
+#: glib/gshell.c:96
msgid "Quoted text doesn’t begin with a quotation mark"
msgstr "ë”°ì˜´í‘œëœ í…스트가 따옴표로 시작하지 않습니다"
# FIXME: 위 참조, "quoted"
-#: glib/gshell.c:184
+#: glib/gshell.c:186
msgid "Unmatched quotation mark in command line or other shell-quoted text"
msgstr "명령줄ì—ì„œ 따옴표가 맞지 않거나 ì…¸ ë”°ì˜´í‘œëœ í…스트가 ë˜ ìžˆìŠµë‹ˆë‹¤"
-#: glib/gshell.c:580
+#: glib/gshell.c:592
#, c-format
msgid "Text ended just after a “\\†character. (The text was “%sâ€)"
msgstr "í…스트가 “\\â€ ë¬¸ìž ë‹¤ìŒì— ë났습니다. (í…스트는 “%sâ€ìž…니다)"
-#: glib/gshell.c:587
+#: glib/gshell.c:599
#, c-format
msgid "Text ended before matching quote was found for %c. (The text was “%sâ€)"
msgstr ""
"í…스트가 %cì— ëŒ€ì‘ë˜ëŠ” 따옴표가 나타나기 ì „ì— ë났습니다. (í…스트는 “%sâ€ìž…니"
"다)"
-#: glib/gshell.c:599
+#: glib/gshell.c:611
msgid "Text was empty (or contained only whitespace)"
msgstr "í…스트가 비어 있ìŒ(ë˜ëŠ” 공백만 들어 있ìŒ)"
-#: glib/gspawn.c:308
+#: glib/gspawn.c:310
#, c-format
msgid "Failed to read data from child process (%s)"
msgstr "하위 프로세스ì—ì„œ ë°ì´í„°ë¥¼ ì½ê¸° 실패 (%s)"
-#: glib/gspawn.c:458
+#: glib/gspawn.c:461
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "하위 프로세스ì—ì„œ ë°ì´í„°ë¥¼ ì½ëŠ” 중 예ìƒì¹˜ 못한 오류 (%s)"
-#: glib/gspawn.c:543
+#: glib/gspawn.c:546
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "waitpid()ì—ì„œ 예ìƒì¹˜ 못한 오류 (%s)"
-#: glib/gspawn.c:1152 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1168 glib/gspawn-win32.c:1426
#, c-format
msgid "Child process exited with code %ld"
msgstr "하위 프로세스가 %ld 코드로 ë났습니다"
-#: glib/gspawn.c:1160
+#: glib/gspawn.c:1176
#, c-format
msgid "Child process killed by signal %ld"
msgstr "하위 프로세스가 %ld 시그ë„ë¡œ 죽었습니다"
-#: glib/gspawn.c:1167
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "하위 프로세스가 %ld 시그ë„ë¡œ 멈췄습니다"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process exited abnormally"
msgstr "하위 프로세스가 예기치 않게 ë났습니다"
-#: glib/gspawn.c:1793 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1881 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "하위 파ì´í”„ë¡œ 부터 ì½ê¸° 실패 (%s)"
-#: glib/gspawn.c:2095
+#: glib/gspawn.c:2241
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "하위 프로세스 “%sâ€ì„(를) 실행하기 실패 (%s)"
-#: glib/gspawn.c:2212
+#: glib/gspawn.c:2358
#, c-format
msgid "Failed to fork (%s)"
msgstr "í¬í¬ 실패 (%s)"
-#: glib/gspawn.c:2372 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2518 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "디렉터리 “%sâ€(으)ë¡œ 바꾸기 실패 (%s)"
-#: glib/gspawn.c:2382
+#: glib/gspawn.c:2528
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "하위 프로세스 “%sâ€ì„(를) 실행하기 실패 (%s)"
-#: glib/gspawn.c:2392
+#: glib/gspawn.c:2538
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "하위 프로세스(%s)ì˜ ìž…ë ¥ ë˜ëŠ” ì¶œë ¥ì˜ ë¦¬ë‹¤ì´ë ‰íŠ¸ 실패"
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "íŒŒì¼ ë””ìŠ¤í¬ë¦½í„° 리맵하기 위한 íŒŒì¼ ì—´ê¸° 실패 (%s)"
-#: glib/gspawn.c:2401
+#: glib/gspawn.c:2546
+#, c-format
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "하위 í”„ë¡œì„¸ìŠ¤ì— ëŒ€í•œ íŒŒì¼ ë””ìŠ¤í¬ë¦½í„° 복제 실패 (%s)"
+
+#: glib/gspawn.c:2555
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "하위 프로세스(%s) ìƒì„± 실패"
-#: glib/gspawn.c:2409
+#: glib/gspawn.c:2563
+#, c-format
+msgid "Failed to close file descriptor for child process (%s)"
+msgstr "하위 í”„ë¡œì„¸ìŠ¤ì— ëŒ€í•œ íŒŒì¼ ë””ìŠ¤í¬ë¦½í„° 닫기 실패 (%s)"
+
+#: glib/gspawn.c:2571
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "하위 프로세스 “%sâ€ì„(를) 실행하는 중 ì•Œ 수 없는 오류"
-#: glib/gspawn.c:2433
+#: glib/gspawn.c:2595
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "하위 PID 파ì´í”„ì—ì„œ 필요한 ë°ì´í„°ë¥¼ ì½ëŠ”ë° ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤ (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "하위 프로세스ì—ì„œ ë°ì´í„° ì½ê¸° 실패"
-#: glib/gspawn-win32.c:311
-#, c-format
-msgid "Failed to create pipe for communicating with child process (%s)"
-msgstr "하위 프로세스와 í†µì‹ ì„ ìœ„í•œ 파ì´í”„를 만드는 중 실패 (%s)"
-
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:519
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "하위 프로세스 실행 실패 (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "하위 프로세스ì—ì„œ dup() 실패 (%s)"
+
+#: glib/gspawn-win32.c:469
#, c-format
msgid "Invalid program name: %s"
msgstr "ìž˜ëª»ëœ í”„ë¡œê·¸ëž¨ ì´ë¦„: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:479 glib/gspawn-win32.c:797
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "ì¸ìžì—ì„œ ìž˜ëª»ëœ ë¬¸ìžì—´, %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:490 glib/gspawn-win32.c:813
#, c-format
msgid "Invalid string in environment: %s"
msgstr "환경ì—ì„œ ìž˜ëª»ëœ ë¬¸ìžì—´: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:793
#, c-format
msgid "Invalid working directory: %s"
msgstr "ìž˜ëª»ëœ í˜„ìž¬ 디렉터리: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:858
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "ë„움 프로그램 실행 실패 (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1086
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -5867,21 +5924,21 @@ msgstr ""
"하위 프로세스ì—ì„œ ë°ì´í„°ë¥¼ ì½ëŠ”중 g_io_channel_win32_poll()ì—ì„œ 예기치 못한 "
"오류"
-#: glib/gstrfuncs.c:3338 glib/gstrfuncs.c:3440
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "빈 문ìžì—´ì€ 숫ìžê°€ 아닙니다"
-#: glib/gstrfuncs.c:3362
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "“%sâ€ì€(는) 부호 있는 숫ìžê°€ 아닙니다"
-#: glib/gstrfuncs.c:3372 glib/gstrfuncs.c:3476
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "“%s†숫ìžê°€ [%s, %s] 범위를 벗어납니다"
-#: glib/gstrfuncs.c:3466
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "“%sâ€ì€(는) 부호 없는 숫ìžê°€ 아닙니다"
@@ -5934,196 +5991,196 @@ msgstr "‘%s’ URI는 절대 URI가 아닙니다"
msgid "URI ‘%s’ has no host component"
msgstr "URI ‘%sâ€™ì— í˜¸ìŠ¤íŠ¸ 구성 요소가 없습니다"
-#: glib/guri.c:1435
+#: glib/guri.c:1460
msgid "URI is not absolute, and no base URI was provided"
msgstr "URI가 절대 URI가 아니고, 기준 URI를 제공하지 않았습니다"
-#: glib/guri.c:2213
+#: glib/guri.c:2238
msgid "Missing ‘=’ and parameter value"
msgstr "‘=’ ë° íŒŒë¼ë¯¸í„° ê°’ì´ ì—†ìŠµë‹ˆë‹¤"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "메모리를 í• ë‹¹í•˜ëŠ”ë° ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "UTF-8 ë¬¸ìž ë²”ìœ„ë¥¼ 벗어났습니다"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "변환 ìž…ë ¥ 순서가 잘못ë˜ì—ˆìŠµë‹ˆë‹¤"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "UTF-16 ë¬¸ìž ë²”ìœ„ë¥¼ 벗어났습니다"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2727
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2729
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2731
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2733
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2735
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2737
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2741
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2743
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2745
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2747
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2749
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2751
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2755
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2757
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2759
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2761
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2763
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2765
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2769
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2771
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2773
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2775
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2777
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2779
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2813 glib/gutils.c:2930
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u ë°”ì´íŠ¸"
-#: glib/gutils.c:2817
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
msgstr[0] "%u 비트"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2884
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
msgstr[0] "%s ë°”ì´íŠ¸"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2889
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6134,35 +6191,32 @@ msgstr[0] "%s 비트"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2943
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2948
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2953
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:2958
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:2963
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:2968
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
-
-#~ msgid "Unable to load /var/lib/dbus/machine-id or /etc/machine-id: "
-#~ msgstr "/var/lib/dbus/machine-id나 /etc/machine-id를 ì½ì–´ë“¤ì¼ 수 없습니다:"
diff --git a/po/lt.po b/po/lt.po
index 2173bde0f..bab6a0cff 100644
--- a/po/lt.po
+++ b/po/lt.po
@@ -13,8 +13,8 @@ msgid ""
msgstr ""
"Project-Id-Version: lt\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-03-07 09:11+0000\n"
-"PO-Revision-Date: 2022-03-07 18:06+0200\n"
+"POT-Creation-Date: 2022-03-22 15:19+0000\n"
+"PO-Revision-Date: 2022-03-22 21:16+0200\n"
"Last-Translator: Aurimas ÄŒernius <aurisc4@gmail.com>\n"
"Language-Team: Lietuvių <gnome-lt@lists.akl.lt>\n"
"Language: lt\n"
@@ -26,6 +26,14 @@ msgstr ""
"X-Generator: Gtranslator 40.0\n"
"X-Project-Style: gnome\n"
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Numatytųjų programų nustatymas dar nepalaikomas"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr "Programos nustatymas kaip paskutinÄ—s naudotos dar nepalaikomas"
+
#: gio/gapplication.c:500
msgid "GApplication options"
msgstr "GApplication parametrai"
@@ -48,7 +56,7 @@ msgid "Replace the running instance"
msgstr "Pakeisti veikianÄiÄ…"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Spausdinti pagalbÄ…"
@@ -60,7 +68,7 @@ msgstr "[KOMANDA]"
msgid "Print version"
msgstr "Atspausdinti versijÄ…"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Atspausdinti versijos informaciją ir išeiti"
@@ -122,8 +130,8 @@ msgstr "KomandÄ…, kuriai atspausdinti detaliÄ… pagalbÄ…"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Programos identifikatorius D-Bus formatu (pvz.: org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "FAILAS"
@@ -149,7 +157,7 @@ msgstr "PARAMETRAS"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Nebūtinas parametras veiksmo iškvietimui, GVariant formatu"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -163,7 +171,7 @@ msgid "Usage:\n"
msgstr "Naudojimas:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argumentai:\n"
@@ -280,7 +288,7 @@ msgstr "Srautas jau užvertas"
msgid "Truncate not supported on base stream"
msgstr "Trumpinimas sraute nepalaikomas"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -301,7 +309,7 @@ msgstr "Nepakanka paskirties vietos"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Klaidinga baitų seka keitimo įvedime"
@@ -311,7 +319,7 @@ msgstr "Klaidinga baitų seka keitimo įvedime"
msgid "Error during conversion: %s"
msgstr "Klaida keitimo metu: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Atšaukiamas inicijavimas nepalaikomas"
@@ -325,37 +333,37 @@ msgstr "Keitimas iš koduotės „%s“ į koduotę „%s“ nepalaikomas"
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Nepavyko atverti keitiklio iš „%s“ į „%s“"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "%s tipas"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Nežinomas tipas"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "%s failo tipos"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials turi nekorektiškus duomenis"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials nerealizuota Å¡ioje operacinÄ—je sistemoje"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Jūsų platformoje nėra GCredentials palaikymo"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GCredentials neturi proceso ID Å¡ioje OS"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Įgaliojimų apgavimas neįmanomas šioje operacinėje sistemoje"
@@ -363,17 +371,17 @@ msgstr "Įgaliojimų apgavimas neįmanomas šioje operacinėje sistemoje"
msgid "Unexpected early end-of-stream"
msgstr "NetikÄ—ta ankstyva srauto pabaiga"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Nepalaikomas raktas „%s“ adreso įvestyje „%s“"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Beprasmė rakto/reikšmės poros kombinacija adreso įvestyje „%s“"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -382,28 +390,28 @@ msgstr ""
"Adresas „%s“ nėra tinkamas (reikia įvesti vienintelį path, dir, tmpdir arba "
"abstract raktÄ…)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Klaida adrese „%s“ — neteisingai suformuotas atributas „%s“"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Nežinomas arba nepalaikomas duomenų perdavimas „%s“ adresui „%s“"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "Adreso elementas „%s“ neturi dvitaškio (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "Transporto pavadinimas adreso elemente „%s“ negali bÅ«ti tuÅ¡Äias"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -411,7 +419,7 @@ msgid ""
msgstr ""
"Rakto/reikšmės pora %d, „%s“, adreso elementas „%s“ neturi lygybės ženklo"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
@@ -419,7 +427,7 @@ msgstr ""
"Rakto/reikšmės pora %d, „%s“, adreso elemente „%s“ negali turėti lygybės "
"ženklo"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -428,7 +436,7 @@ msgstr ""
"Klaida šalinant kaitą rakte ar reikšmėje rakto/reikšmės poroje %d, „%s“ "
"adreso elemente „%s“"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -437,82 +445,82 @@ msgstr ""
"Klaida adrese „%s“ - unix duomenų perdavimas reikalauja nustatyti vienintelį "
"iš raktų 'path' arba 'abstract'"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr ""
"Klaida adrese „%s“ - pagrindinio kompiuterio atributas neįvestas arba blogai "
"suformuotas"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr ""
"Klaida adrese „%s“ - prievado atributas neįvestas arba blogai suformuotas"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Klaida adrese „%s“ - laikino failo atributas neįvestas arba blogai "
"suformuotas"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Klaida automatiškai paleidžiant: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Klaida atveriant vienkartinio kodo failą „%s“: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Klaida skaitant iš vienkartinio kodo failo „%s“: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"Klaida skaitant iš vienkartinio kodo failo „%s“, tikėtasi 16 baitų, gauta %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Klaida rašant vienkartinio kodo failo turinį „%s“ į srautą:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "Pateiktasis adresas yra tuÅ¡Äias"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Negalima paleisti pranešimų magistralės kai vyksta setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "Negalima paleisti pranešimų magistralės kai nustatyta AT_SECURE"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "Negalima paleisti pranešimų magistralės be mašinos id: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Negalima automatiškai paleisti D-Bus be X11 $DISPLAY"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Klaida paleidžiant komandų eilutę „%s“: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Nepavyko nustatyti sesijos magistralÄ—s adreso (nerealizuota Å¡iai operacinei "
"sistemai)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -521,7 +529,7 @@ msgstr ""
"Nepavyko nustatyti magistralės adreso iš DBUS_STARTER_BUS_TYPE aplinkos "
"kintamojo - nežinoma reikšmė „%s“"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -529,7 +537,7 @@ msgstr ""
"Nepavyko nustatyti magistralÄ—s adreso, kadangi DBUS_STARTER_BUS_TYPE "
"aplinkos kintamasis nenustatytas"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Nežinomas magistralės tipas %d"
@@ -558,12 +566,12 @@ msgstr "Naudotojų ID turi sutapti porininkui bei serveriui"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Atšaukta per GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Klaida gaunant informaciją apie katalogą „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -571,33 +579,33 @@ msgstr ""
"Katalogo „%s“ leidimai yra suformuoti neteisingai. Tikėtasi mode 0700, gauta "
"0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Klaida kuriant katalogÄ… %s: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Operacija nepalaikoma"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Klaida atveriant raktinę „%s“ skaitymui: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
"%d eilutė raktinės vietoje „%s“ su turiniu „%s“ yra suformuota neteisingai"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -605,7 +613,7 @@ msgstr ""
"Pirmoji leksema raktinės %d eilutės vietoje „%s“ su turiniu „%s“ yra "
"suformuota neteisingai"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -613,158 +621,158 @@ msgstr ""
"Antroji leksema raktinės %d eilutės vietoje „%s“ su turiniu „%s“ yra "
"suformuota neteisingai"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Nerastas slapukas su id %d raktinės vietoje „%s“"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Klaida kuriant rakinimo failą „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Klaida trinant nebegaliojantį rakinimo failą „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Klaida užveriant (nesusietą) rakinimo failą „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Klaida atsiejant rakinimo failą „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Klaida atveriant raktinę „%s“ rašymui: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Papildomai, užrakto atlaisvinimas „%s“ taip pat nepavyko: %s) "
-#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "Ryšys yra užvertas"
-#: gio/gdbusconnection.c:1903
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "BaigÄ—si laikas"
-#: gio/gdbusconnection.c:2541
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr "Nepalaikomi požymiai aptikti konstruojant kliento pusės ryšį"
-#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr ""
"Nėra sąsajos „org.freedesktop.DBus.Properties“ objektui, kurio kelias %s"
-#: gio/gdbusconnection.c:4414
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "Nėra savybės „%s“"
-#: gio/gdbusconnection.c:4426
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "Savybė „%s“ yra neskaitoma"
-#: gio/gdbusconnection.c:4437
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "Savybė „%s“ nėra rašoma"
-#: gio/gdbusconnection.c:4457
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr "Klaida nustatant savybę „%s“: tikėtasi tipo „%s“, bet gauta „%s“"
-#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
-#: gio/gdbusconnection.c:6760
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "Nėra sąsajos „%s“"
-#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Nėra sąsajos „%s“ objektui, kurio kelias %s"
-#: gio/gdbusconnection.c:5100
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "Nėra metodo „%s“"
-#: gio/gdbusconnection.c:5131
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Pranešimo tipas „%s“ neatitinka laukiamo tipo „%s“"
-#: gio/gdbusconnection.c:5334
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Jau yra eksportuotas objektas sÄ…sajai %s vietoje %s"
-#: gio/gdbusconnection.c:5561
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Nepavyko gauti savybÄ—s: %s.%s"
-#: gio/gdbusconnection.c:5617
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Nepavyko nustatyti savybÄ—s: %s.%s"
-#: gio/gdbusconnection.c:5796
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "Metodas „%s“ grąžino tipą „%s“, bet laukta „%s“"
-#: gio/gdbusconnection.c:6872
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "Metodas „%s“ sąsajoje „%s“ su signatūra „%s“ neegzistuoja"
-#: gio/gdbusconnection.c:6993
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Pomedis %s jau yra eksportuotas"
-#: gio/gdbusconnection.c:7282
+#: gio/gdbusconnection.c:7266
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "Objekto kelyje „%s“ nėra"
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "tipas yra NETINKAMAS"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "METHOD_CALL pranešimas: trūksta antraštės lauko PATH arba MEMBER"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "METHOD_RETURN pranešimas: trūksta REPLY_SERIAL antraštės"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "ERROR pranešimas: antraštės lauke trūksta REPLY_SERIAL arba ERROR_NAME"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "SIGNAL pranešimas: trūksta antraštės lauko PATH, INTERFACE arba MEMBER"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -772,7 +780,7 @@ msgstr ""
"SIGNAL pranešimas: antraštės laukas PATH naudoja rezervuotą reikšmę /org/"
"freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -780,7 +788,7 @@ msgstr ""
"SIGNAL pranešimas: antraštės laukas INTERFACE naudoja rezervuotą reikšmę org."
"freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
@@ -788,12 +796,12 @@ msgstr[0] "NorÄ—ta nuskaityti %lu baitÄ…, bet gauta tik %lu"
msgstr[1] "NorÄ—ta nuskaityti %lu baitus, bet gauta tik %lu"
msgstr[2] "Norėta nuskaityti %lu baitų, bet gauta tik %lu"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "Tikėtasi NUL baito po simbolių eilutės „%s“, bet rastas baitas %d"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -802,21 +810,21 @@ msgstr ""
"Tikėtasi teisingos UTF-8 eilutės, bet rasta neteisingų baitų poslinkiu %d "
"(eilutės ilgis yra %d). Teisinga UTF-8 eilutė iki tos vietos buvo „%s“"
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "VertÄ— yra per giliai"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Perskaityta reikšmė „%s“ nėra tinkamas D-Bus objekto kelias"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Perskaityta reikšmė „%s“ nėra tinkama D-Bus signatūra"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -829,7 +837,7 @@ msgstr[1] ""
msgstr[2] ""
"Aptiktas %u baitų ilgio masyvas. Maksimalus ilgis yra 2<<26 baitų (64 MiB)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -838,23 +846,23 @@ msgstr ""
"Aptiktas „a%c“ tipo masyvas, tikėtasi %u kartotinio baitų ilgio, bet rasta "
"%u baitų ilgyje"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
-msgstr "TuÅ¡Äios struktÅ«ros (juginiai) D-Bus neleidžiamos"
+msgstr "TuÅ¡Äios struktÅ«ros (junginiai) D-Bus neleidžiamos"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "Perskaityta reikšmė „%s“ variantui nėra tinkama D-Bus signatūra"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
msgstr ""
"Klaida atstatant GVariant su tipo eilute „%s“ iš D-Bus telegramos formato"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -863,29 +871,29 @@ msgstr ""
"Netinkama baitų eiliškumo reikšmė. Tikėtasi 0x6c („l“) arba 0x42 („B“), bet "
"rasta 0x%02x"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Netinkama pagrindinÄ— protokolo versija. TikÄ—tasi 1, bet rasta %d"
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Rasta signatūros antraštė, bet ji nėra signatūros tipo"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"Signatūros antraštė su signatūra „%s“ rasta, bet pranešimo pagrindinė dalis "
"tuÅ¡Äia"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr ""
"Perskaityta reikšmė „%s“ nėra tinkama D-Bus signatūra (pagrindinei daliai)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -899,35 +907,35 @@ msgstr[2] ""
"Nėra signatūros antraštės pranešime, bet pranešimo pagrindinė dalis yra %u "
"baitų"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Nepavyko atstatyti pranešimo: "
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
msgstr ""
"Klaida paverÄiant GVariant su tipo eilute „%s“ į D-Bus telegramos formatÄ…"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr ""
"Failo deskriptorių skaiÄius žinutÄ—je (%d) skiriasi nuo antraÅ¡tÄ—s lauko (%d)"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Nepavyko išsaugoti pranešimo: "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr ""
"Pranešimo pagrindinė dalis turi signatūrą „%s“, bet nėra signatūros antraštės"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -936,54 +944,54 @@ msgstr ""
"Pranešimo pagrindinė dalis turi tipo signatūrą „%s“, bet signatūra antraštės "
"lauke yra „%s“"
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr ""
"PraneÅ¡imo pagrindinÄ— dalis yra tuÅ¡Äia, bet signatÅ«ra antraÅ¡tÄ—s lauke yra "
"„(%s)“"
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Klaidos grąžinimas su pagrindinės dalies tipu „%s“"
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Klaidos grąžinimas su tuÅ¡Äia pagrindine dalimi"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Spauskite bet kurį klavišą šiam langui užverti)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Seanso dbus neveikia, automatinis paleidimas nepavyko"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Nepavyko gauti aparatūros profilio: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Nepavyko įkelti %s arba %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Klaida kvieÄiant StartServiceByName elementui %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Nelauktas atsakas %d iš StartServiceByName(\"%s\") metodo"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1039,66 +1047,66 @@ msgstr ""
"\n"
"Naudokite „%s KOMANDA --help“ kiekvienos komandos pagalbos gavimui.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Klaida: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Klaida skaitant introspekcijos XML: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Klaida: %s nÄ—ra tinkamas vardas\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Klaida: %s nÄ—ra tinkamas objekto kelias\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Prisijungti prie sistemos magistralÄ—s"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Prisijungti prie sesijos magistralÄ—s"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Prisijungti prie pateikto D-Bus adreso"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Ryšio pabaigos parametrai:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Parametrai, nurodantys ryšio pabaigą"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Nėra nurodytos ryšio pabaigos"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Nurodytos kelio ryšio pabaigos"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr "Perspėjimas: pagal introspekcijos duomenis, sąsaja „%s“ neegzistuoja\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1107,160 +1115,164 @@ msgstr ""
"Perspėjimas: pagal introspekcijos duomenis, metodas „%s“ neegzistuoja "
"sąsajoje „%s“\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Nebūtinas signalo tikslas (unikalus vardas)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Objekto, kuriame siunÄiamas signalas, kelias"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Signalo ir sÄ…sajos vardai"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Siųsti signalą."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Klaida prisijungiant: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Klaida: %s nÄ—ra tinkamas unikalus magistralÄ—s pavadinimas.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Klaida: nenurodytas objekto kelias\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Klaida: nenurodytas signalo pavadinimas\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Klaida: signalo pavadinimas „%s“ yra netinkamas\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Klaida: %s nÄ—ra tinkamas sÄ…sajos pavadinimas\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Klaida: %s nÄ—ra tinkamas nario pavadinimas\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Klaida skaitant parametrÄ… %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Klaida iÅ¡siunÄiant ryšį: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Tikslo pavadinimas metodo iškvietimui"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Objekto kelias metodo iškvietimui"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Metodo ir sÄ…sajos pavadinimai"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Laiko limitas sekundÄ—mis"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Rodyti interaktyviÄ… autorizacijÄ…"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "IÅ¡kviesti metodÄ… nutolusiame objekte."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Klaida: nenurodytas tikslas\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Klaida: %s nÄ—ra tinkamas magistralÄ—s pavadinimas\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Klaida: nenurodytas metodo vardas\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Klaida: metodo vardas „%s“ yra netinkamas\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Klaida skaitant parametrą %d, kurio tipas „%s“: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Klaida pridedant rankenÄ—lÄ™ %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Tikslo vardas introspekcijai"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Objekto kelias introspekcijai"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Spausdinti XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "NagrinÄ—ti vaikÄ…"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Spausdinti tik savybes"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Introspekcija nutolusiam objektui."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Tikslo vardas stebÄ—jimui"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Objekto kelias stebÄ—jimui"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Stebėti nutolusį objektą."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Klaida: nepavyksta stebÄ—ti ne žinuÄių magistralÄ—s ryÅ¡io\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Aktyvuotina tarnyba prieš laukiant kitos (gerai žinomas pavadinimas)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1268,65 +1280,70 @@ msgstr ""
"Kiek laiko laukti prieš išeinant su klaida (sekundėmis); 0 reiškia neribotai "
"(numatyta)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[PARAMETRAS…] MAGISTRALĖS-PAVADINIMAS"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Laukti, kol pasirodys magistralÄ—s pavadinimas."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr ""
"Klaida: reikia nurodyti aktyvuojamÄ… tarnybÄ….\n"
"\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "Klaida: turi būti nurodyta tarnyba, kurios laukti.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Klaida: per daug argumentų.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Klaida: %s nėra tinkamas gerai žinomas magistralės pavadinimas.\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Neleidžiama keisti derinimo nuostatų"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Nepavadinta"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "Darbalaukio failas nenurodÄ— Exec lauko"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Nerastas terminalas, reikalingas programai"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr "Nepavyko sukurti naudotojo nustatymų aplanko %s: %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Nepavyko sukurti naudotojo MIME nustatymų aplanko %s: %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "Programos informacijai trūksta identifikatoriaus"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Nepavyko sukurti naudotojo darbalaukio failo %s"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Specialus apibrėžimas %s"
@@ -1355,7 +1372,7 @@ msgstr "įrenginys nerealizuoja startavimo"
msgid "drive doesn’t implement stop"
msgstr "įrenginys nerealizuoja stabdymo"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "TLS realizacija nerealizuoja TLS susiejimų gavimo"
@@ -1396,73 +1413,73 @@ msgstr "TikÄ—tasi GEmblem skirto GEmblemedIcon"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Tėvinis prijungimo taškas neegzistuoja"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Negalima kopijuoti ant aplanko viršaus"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Negalima kopijuoti aplanko ant aplanko"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Nurodytas failas jau egzistuoja"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Negalima rekursyviai kopijuoti aplanko"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Skaidymas nepalaikomas"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Klaida skaidant failÄ…: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Kopijavimas (reflink/clone) tarp prijungimo taškų nepalaikomas"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Kopijavimas (reflink/clone) nepalaikomas arba netinkamas"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Kopijavimas (reflink/clone) nepalaikomas arba nesuveikÄ—"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Negalima kopijuoti specialaus failo"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Netaisyklinga simbolinės nuorodos reikšmė"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "SimbolinÄ—s nuorodos nepalaikomos"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Šiukšlės nepalaikomos"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Failų pavadinimuose negali būti '%c'"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "tomas nepalaiko prijungimo"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "NÄ—ra programos, priregistruotos kaip skaitanÄios šį failÄ…"
@@ -1507,7 +1524,7 @@ msgstr "Trumpinimas įėjimo srauto nepalaikomas"
msgid "Truncate not supported on stream"
msgstr "Trumpinimas srauto nepalaikomas"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Klaidingas kompiuterio vardas"
@@ -1594,7 +1611,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Nepavyko perskaityti „%s“ kaip IP adreso kaukės"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Nepakanka vietos lizdo adresui"
@@ -2429,15 +2446,15 @@ msgstr "Klaida spaudžiant failą: %s"
msgid "text may not appear inside <%s>"
msgstr "tekstas negali būti viduje <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Parodyti programos versiją ir išeiti"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "IÅ¡vesties failo pavadinimas"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2445,56 +2462,60 @@ msgstr ""
"Katalogai, iš kurių skaityti faile nurodytus failus (numatyta iš esamo "
"katalogo)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "KATALOGAS"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr "Generuoti išvestį formatu pagal pasirinkto tikslo failo plėtinį"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Generuoti šaltinio antraštę"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr "Generuoti kodą, naudojamą išteklių failo įrišimui į jūsų kodą"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Generuoti priklausomybių sąrašą"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Generuojamo priklausomybių failo pavadinimas"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Įtraukti į sugeneruotą priklausomybių failą netikras paskirtis"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Automatiškai negeneruoti ir neregistruoti ištekliaus"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Neeksportuoti funkcijų; deklaruoti jas G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
msgstr ""
"Neįtraukti ištekliaus duomenų C faile; laikyti, kad jis susiejamas išoriškai"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "C identifikatoriaus vardas, naudojamas generuojamame kode"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "Paskirties C kompiliatorius (numatyta: aplinkos kintamasis CC)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2504,7 +2525,7 @@ msgstr ""
"Resursų specifikacijos failai turi turėti plėtinį .gresource.xml,\n"
"o resurso failas turi plėtinį gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Turite nurodyti vienintelį failo pavadinimą\n"
@@ -3292,13 +3313,13 @@ msgstr "Klaida kuriant atsarginÄ™ kopijÄ…: %s"
msgid "Error renaming temporary file: %s"
msgstr "Klaida pervadinant laikinąjį failą: %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "Klaida trumpinant failÄ…: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Klaida atveriant failÄ… %s: %s"
@@ -3320,7 +3341,7 @@ msgstr "Failas buvo pakeistas kitos programos"
msgid "Error removing old file: %s"
msgstr "Klaida ištrinant senąjį failą: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Netaisyklingas GSeekType"
@@ -3332,15 +3353,15 @@ msgstr "Netinkama pozicijos keitimo užklausa"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Nepavyko sutrumpinti GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Atminties iÅ¡vedimo srauto dydis nekeiÄiamas"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Nepavyko pakeisti atminties išvedimo srauto dydžio"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3348,11 +3369,11 @@ msgstr ""
"Atminties kiekis, reikalingas įrašymui apdoroti, netelpa į prieinamą adresų "
"erdvÄ™"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Prašoma perkelti poziciją dar prieš srauto pradžią"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Prašoma perkelti poziciją jau už srauto pabaigos"
@@ -3459,18 +3480,22 @@ msgstr "%s perduotų vektorių suma yra per didelė"
msgid "Source stream is already closed"
msgstr "Šaltinio srautas jau užvertas"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Klaida surandant „%s“: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s nerealizuota"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Neteisinga sritis"
@@ -3585,7 +3610,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " SEKCIJA (Nebūtinas) elf sekcijos pavadinimas\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " KOMANDA Komanda (nebūtina) paaiškinimui\n"
@@ -3618,7 +3643,7 @@ msgstr "KELIAS"
msgid " PATH A resource path\n"
msgstr " KELIAS IÅ¡tekliaus kelias\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Nėra schemos „%s“\n"
@@ -3649,35 +3674,35 @@ msgstr "Kelias turi baigtis pasviruoju brūkšniu (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Kelias neturi turėti dviejų gretimų pasvirųjų brūkšnių (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "Pateikta reikšmė yra už leistinų ribų\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "Raktas nėra rašomas\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Išvardinti įdiegtas (neperkeliamas) schemas"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Išvardinti įdiegtas perkeliamas schemas"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "IÅ¡vardinti raktus SCHEMOJE"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "SCHEMA[:KELIAS]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "IÅ¡vardina vaikus SCHEMOJE"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3685,48 +3710,48 @@ msgstr ""
"Rekursyviai išvardinti raktus ir reikšmes\n"
"Jei SCHEMA nepateikta, išvardinti visus raktus\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SCHEMA[:KELIAS]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Gauti RAKTO reikšmę"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "SCHEMOS[:KELIO] RAKTAS"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Užklausti galimų reikšmių rėžių RAKTUI"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Užklausti aprašymo RAKTUI"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Nustatyti RAKTO REIKŠMĘ"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SCHEMOS[:KELIO] RAKTO REIKÅ MÄ–"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Nustatyti RAKTĄ į jo numatytąją reikšmę"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Atstatyti visus SCHEMOS raktus į jų numatytasias reikšmes"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Patikrinti, ar RAKTAS yra rašomas"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3736,11 +3761,11 @@ msgstr ""
"Jei RAKTAS nenurodytas, stebÄ—ti visus raktus SCHEMOJE.\n"
"Naudoti ^C stebÄ—jimo nutraukimui.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SCHEMA[:KELIAS] [RAKTAS]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3788,7 +3813,7 @@ msgstr ""
"Naudokite 'gsettings help KOMANDA' išsamesnei pagalbai gauti.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3803,11 +3828,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " SCHEMOSKAT Katalogas, kur ieškoti papildomų schemų\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3815,212 +3840,212 @@ msgstr ""
" SCHEMA Schemos pavadinimas\n"
" KELIAS Kelias perkeliamoms schemoms\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " RAKTAS Raktas schemoje (nebūtinas)\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " RAKTAS Raktas schemoje\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " REIKŠMĖ Reikšmė, kurią nustatyti\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Nepavyko atverti schemų iš „%s“: „%s“\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Nėra įdiegtų schemų\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Pateiktas tuÅ¡Äias schemos pavadinimas\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Nėra rakto „%s“\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Netinkamas lizdas, nepavyko inicijuoti"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Netinkamas lizdas, nepavyko inicijuoti: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Lizdas jau užvertas"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Lizdo I/O baigÄ—si laikas"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "iš fd kuriamas GSocket: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Nepavyko sukurti lizdo: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Nurodyta nežinoma šeima"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Nurodytas nežinomas protokolas"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "Negalima naudoti duomenų paketo operacijų ne duomenų paketo lizdui."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Negalima naudoti duomenų paketo operacijų lizdui su laiko limito rinkiniu."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "nepavyko gauto lokalaus adreso: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "nepavyko gauti nuotolinio adreso: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "nepavyko klausytis: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Susiejimo su adresu %s klaida: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Klaida prisijungian prie transliavimo grupÄ—s: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Klaida paliekant transliavimo grupÄ™: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "NÄ—ra resursams specifinio transliavimo palaikymo"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Nepalaikoma lizdo Å¡eima"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "ištekliams specifinis nėra IPv4 adresas"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Per ilgas sÄ…sajos pavadinimas"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "SÄ…saja nerasta: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "Nėra IPv4 ištekliams specifinio transliavimo palaikymo"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "Nėra palaikymo, skirto IPv4 ištekliams specifiniam transliavimui"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Klaida priimant ryšį: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Prisijungiama"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Nepavyko gauti laukianÄios klaidos: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Klaida priimant duomenis: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Klaida siunÄiant duomenis: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Nepavyko išjungti lizdo: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Klaida užveriant lizdą: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Laukiama lizdo būsenos: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Nepavyksta išsiųsti pranešimo: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Pranešimų vektoriai per dideli"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Klaida siunÄiant praneÅ¡imÄ…: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "„Windows“ sistemoje „GSocketControlMessage“ nepalaikoma"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Klaida priimant pranešimą: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Nepavyko perskaityti lizdo įgaliojimų: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "g_socket_get_credentials nerealizuota Å¡iai operacinei sistemai"
@@ -4038,11 +4063,11 @@ msgstr "Nepavyko prisijungti prie %s: "
msgid "Could not connect: "
msgstr "Nepavyko prisijungti: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "Bandymas naudoti proxy ne per TCP ryšį nepalaikomas."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Tarpinio serverio protokolas „%s“ nepalaikomas."
@@ -4143,7 +4168,7 @@ msgstr "SOCKSv5 proxy nepalaiko pateikto adreso tipo."
msgid "Unknown SOCKSv5 proxy error."
msgstr "Nežinoma SOCKSv5 proxy klaida."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr ""
@@ -4169,44 +4194,67 @@ msgstr "Nerasta tinkamų adresų"
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "Klaida atvirkÅ¡Äiai surandant „%s“: %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr "Klaida analizuojant DNS %s įrašą: blogai suformuotas DNS paketas"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "Nėra DNS įrašo prašomam tipui „%s“"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "Laikinai nepavyko surasti „%s“"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "Klaida surandant „%s“"
-#: gio/gtlscertificate.c:431
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Blogai suformuotas DNS paketas"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+#| msgid "Failed to read from file “%sâ€: %s"
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "Nepavyko išanalizuoti DNS atsakymo į „%s“: "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Nerastas PEM užkoduotas privatus raktas"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Nepavyko perskaityti PEM užkoduoto privataus rakto"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Nepavyko perskaityti PEM užkoduoto privataus rakto"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Nerastas PEM užkoduotas sertifikatas"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Nepavyko perskaityti PEM užkoduoto sertifikato"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "DabartinÄ— TLS realizacija nepalaiko PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "GTlsBackend nepalaiko PKCS #11 liudijimų kūrimo"
@@ -4232,7 +4280,11 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "Įvestas slaptažodis yra neteisingas."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "FD siuntimas nepalaikomas"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
@@ -4240,11 +4292,11 @@ msgstr[0] "Tikėtasi 1 kontrolinio pranešimo, bet sulaukta %d"
msgstr[1] "Tikėtasi 1 kontrolinio pranešimo, bet sulaukta %d"
msgstr[2] "Tikėtasi 1 kontrolinio pranešimo, bet sulaukta %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Netikėtas tarnybinių duomenų tipas"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
@@ -4252,37 +4304,41 @@ msgstr[0] "TikÄ—tasi vieno fd, bet sulaukta %d\n"
msgstr[1] "TikÄ—tasi vieno fd, bet sulaukta %d\n"
msgstr[2] "TikÄ—tasi vieno fd, bet sulaukta %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Gautas netinkamas fd"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "FD gavimas nepalaikomas"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Klaida siunÄiant įgaliojimus: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Klaida tikrinant, ar SO_PASSCRED įjungta lizdui: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Klaida leidžiant SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Tikimasi nustatyti vienintelį baitą įgaliojimų gavimui, bet nuskaityta nulis "
"baitų"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Nesitikėta kontrolinio pranešimo, bet sulaukta %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Klaida išjungiant SO_PASSCRED: %s"
@@ -4298,7 +4354,7 @@ msgstr "Klaida skaitant failÄ…: %s"
msgid "Error closing file descriptor: %s"
msgstr "Klaida užveriant failą: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Failų sistemos šaknis"
@@ -4309,7 +4365,7 @@ msgstr "Failų sistemos šaknis"
msgid "Error writing to file descriptor: %s"
msgstr "Klaida rašant į failą: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "AbstrakÄiųjų UNIX srities lizdų adresai Å¡ioje sistemoje nepalaikomi"
@@ -4459,8 +4515,8 @@ msgstr "Nepavyko išskleisti vykdomosios eilutės „%s“ su URI „%s“"
msgid "Unrepresentable character in conversion input"
msgstr "Neatvaizduojamas simbolis keitimo įvestyje"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Nepilna simbolio seka įvedimo pabaigoje"
@@ -5024,15 +5080,15 @@ msgstr "Kanalas pasibaigia nepilnu simboliu"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Negalima vykdyti tiesioginio skaitymo iš g_io_channel_read_to_end"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "Paieškos aplankuose nepavyko rasti tinkamo raktų failo"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "NÄ—ra paprastas failas"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5040,49 +5096,49 @@ msgstr ""
"Raktų faile yra eilutė „%s“, kuri nėra raktas-reikšmė pora, grupė ar "
"komentaras"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Netinkamas grupÄ—s pavadinimas: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Raktų failas neprasideda grupe"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Netinkamas rakto pavadinimas: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Netinkamas rakto pavadinimas: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Raktų faile yra nepalaikoma koduotė „%s“"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Raktų failas neturi grupės „%s“"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Raktų faile nėra rakto „%s“ grupėje „%s“"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "Raktų faile yra raktas „%s“ su reikšme „%s“, kuri nėra UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr "Raktų faile yra raktas „%s“, turintis nesuprantamą reikšmę."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5091,37 +5147,37 @@ msgstr ""
"Raktų faile yra raktas „%s“ grupėje „%s“, kuriame yra reikšmė, kurios "
"negalima suprasti."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "Raktas „%s“ grupėje „%s“ turi reikšmę „%s“, nors tikimasi %s"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Raktų faile, eilutės pabaigoje yra pabėgimo simbolis"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Raktų faile yra klaidinga kaitos eilutė „%s“"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "ReikÅ¡mÄ—s „%s“ negalima interpretuoti kaip skaiÄiaus."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "Sveikoji reikšmė „%s“ viršija ribas"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr ""
"ReikÅ¡mÄ—s „%s“ negalima interpretuoti kaip slankiojo kablelio skaiÄiaus."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "Reikšmės „%s“ negalima interpretuoti kaip loginės."
@@ -5414,7 +5470,7 @@ msgstr "Klaida apdorojant parametrÄ… %s"
msgid "Missing argument for %s"
msgstr "%s trūksta argumento"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Nežinomas parametras %s"
@@ -5818,123 +5874,132 @@ msgstr "Tekstas buvo tuÅ¡Äias arba turÄ—jo vien tik tarpo simbolius)"
msgid "Failed to read data from child process (%s)"
msgstr "Nepavyko gauti duomenis iš antrinio proceso (%s)"
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "Netikėta klaida skaitant duomenis žiš antrinio proceso (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "NetikÄ—ta waitpid() klaida (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "Vaikinis procesas išėjo su kodu %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Vaikinis procesas nutrauktas signalu %ld"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Vaikinis procesas sustabdytas signalu %ld"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Vaikinis procesas išėjo nenormaliai"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Nepavyko perskaityti duomenų iš antrinio konvejerio (%s)"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Nepavyko paleisti antrinio proceso „%s“ (%s)"
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Nepavyko atskirti (%s)"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Nepavyko pereiti į aplanką „%s“ (%s)"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Nepavyko paleisti antrinio proceso „%s“ (%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2550
+#, c-format
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Nepavyko atverti failo deskriptoriaus pakeitimui (%s)"
+
+#: glib/gspawn.c:2558
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Nepavyko perimti antrinio proceso (%s) išvedimo arba įvedimo"
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Nepavyko dubliuoti failo deskriptoriaus antriniam procesui (%s)"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Nepavyko atskirti antrinio proceso (%s)"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2575
#, c-format
-#| msgid "Failed to read data from child process (%s)"
msgid "Failed to close file descriptor for child process (%s)"
msgstr "Nepavyko užverti failo deskriptoriaus antriniam procesui (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Nežinoma klaida vykdant antrinį procesą „%s“"
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr ""
"Nepavyko perskaityti reikiamo duomenų kiekio iš antrinio pid konvejerio (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Nepavyko gauti duomenų iš antrinio proceso"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Nepavyko paleisti antrinio proceso (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Nepavyko antriniams procesui iškviesti dup() (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Netinkamas programos pavadinimas: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Netinkama seka argumento vektoriuje, pozicijoje %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Netinka seka aplinkoje: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Netinkamas darbinis katalogas: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Nepavyko paleisti pagalbinÄ—s programos (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -5942,21 +6007,21 @@ msgstr ""
"Netikėta klaida tarp g_io_channel_win32_poll() funkcijos duomenų skaitymo iš "
"antrinio proceso metu"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "TuÅ¡Äia simbolių eilutÄ— nÄ—ra skaiÄius"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "„%s“ nÄ—ra skaiÄius su ženklu"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "SkaiÄius „%s“ yra už [%s, %s] ribų"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "„%s“ nÄ—ra skaiÄius be ženklo"
@@ -6017,168 +6082,168 @@ msgstr "URI nÄ—ra absoliutus ir nepateiktas bazinis URI"
msgid "Missing ‘=’ and parameter value"
msgstr "Trūksta „=“ bei parametro vertės"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Nepavyko išskirti atminties"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Simbolis neatitinka UTF-8 simbolių diapazono"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Klaidinga seka keitimo įvestyje"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Simbolis neatitinka UTF-16 simbolių diapazono"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
@@ -6186,7 +6251,7 @@ msgstr[0] "%u baitas"
msgstr[1] "%u baitai"
msgstr[2] "%u baitų"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6195,7 +6260,7 @@ msgstr[1] "%u bitai"
msgstr[2] "%u bitų"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6204,7 +6269,7 @@ msgstr[1] "%s baitai"
msgstr[2] "%s baitų"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6217,32 +6282,32 @@ msgstr[2] "%s bitų"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
@@ -6369,8 +6434,5 @@ msgstr "%.1f EB"
#~ msgid "Association creation not supported on win32"
#~ msgstr "Saitų kūrimas win32 sistemose nepalaikomas"
-#~ msgid "URIs not supported"
-#~ msgstr "URI nepalaikomi"
-
#~ msgid "Key file does not have key '%s'"
#~ msgstr "Raktų failas neturi rakto „%s“"
diff --git a/po/lv.po b/po/lv.po
index d13c996d6..1f9129348 100644
--- a/po/lv.po
+++ b/po/lv.po
@@ -9,15 +9,15 @@ msgid ""
msgstr ""
"Project-Id-Version: glib\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2021-02-12 16:38+0000\n"
-"PO-Revision-Date: 2021-03-07 19:59+0200\n"
+"POT-Creation-Date: 2021-07-19 15:52+0000\n"
+"PO-Revision-Date: 2021-10-25 19:39+0300\n"
"Last-Translator: RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>\n"
"Language-Team: Latvian <lata-l10n@googlegroups.com>\n"
"Language: lv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Lokalize 19.12.3\n"
+"X-Generator: Lokalize 21.08.1\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 :"
" 2);\n"
@@ -43,11 +43,11 @@ msgid "Replace the running instance"
msgstr "Aizvietot palaisto instanci"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:493 gio/gsettings-tool.c:567
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
msgid "Print help"
msgstr "DrukÄÅ¡anas palÄ«dzÄ«ba"
-#: gio/gapplication-tool.c:47 gio/gresource-tool.c:494 gio/gresource-tool.c:562
+#: gio/gapplication-tool.c:47 gio/gresource-tool.c:495 gio/gresource-tool.c:563
msgid "[COMMAND]"
msgstr "[KOMANDA]"
@@ -55,96 +55,96 @@ msgstr "[KOMANDA]"
msgid "Print version"
msgstr "DrukÄt versiju"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:573
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
msgid "Print version information and exit"
msgstr "ParÄdÄ«t informÄciju par versiju un iziet"
-#: gio/gapplication-tool.c:52
+#: gio/gapplication-tool.c:53
msgid "List applications"
msgstr "Uzskaitīt lietotnes"
-#: gio/gapplication-tool.c:53
+#: gio/gapplication-tool.c:54
msgid "List the installed D-Bus activatable applications (by .desktop files)"
msgstr ""
"UzskaitÄ«t instalÄ“tÄs D-Bus aktivizÄ“jamÄs lietotnes (ar .desktop datnÄ“m)"
-#: gio/gapplication-tool.c:55
+#: gio/gapplication-tool.c:57
msgid "Launch an application"
msgstr "Palaist lietotni"
-#: gio/gapplication-tool.c:56
+#: gio/gapplication-tool.c:58
msgid "Launch the application (with optional files to open)"
msgstr "Palaist lietotni (ar neobligÄti atveramÄm datnÄ“m)"
-#: gio/gapplication-tool.c:57
+#: gio/gapplication-tool.c:59
msgid "APPID [FILE…]"
msgstr "LIETID [DATNE…]"
-#: gio/gapplication-tool.c:59
+#: gio/gapplication-tool.c:61
msgid "Activate an action"
msgstr "Aktivizēt darbību"
-#: gio/gapplication-tool.c:60
+#: gio/gapplication-tool.c:62
msgid "Invoke an action on the application"
msgstr "Izsaukt darbību uz lietotni"
-#: gio/gapplication-tool.c:61
+#: gio/gapplication-tool.c:63
msgid "APPID ACTION [PARAMETER]"
msgstr "LIETID DARBĪBA [PARAMETRS]"
-#: gio/gapplication-tool.c:63
+#: gio/gapplication-tool.c:65
msgid "List available actions"
msgstr "Uzskaita pieejamÄs darbÄ«bas"
-#: gio/gapplication-tool.c:64
+#: gio/gapplication-tool.c:66
msgid "List static actions for an application (from .desktop file)"
msgstr "Uzskaita statiskÄs darbÄ«bas lietotnei (no .desktop datnes)"
-#: gio/gapplication-tool.c:65 gio/gapplication-tool.c:71
+#: gio/gapplication-tool.c:67 gio/gapplication-tool.c:73
msgid "APPID"
msgstr "LIETID"
-#: gio/gapplication-tool.c:70 gio/gapplication-tool.c:133 gio/gdbus-tool.c:106
+#: gio/gapplication-tool.c:72 gio/gapplication-tool.c:135 gio/gdbus-tool.c:106
#: gio/gio-tool.c:224
msgid "COMMAND"
msgstr "KOMANDA"
-#: gio/gapplication-tool.c:70
+#: gio/gapplication-tool.c:72
msgid "The command to print detailed help for"
msgstr "Komanda, lai drukÄtu detalizÄ“tu palÄ«dzÄ«bu priekÅ¡"
-#: gio/gapplication-tool.c:71
+#: gio/gapplication-tool.c:73
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Lietotnes identifikators D-Bus formÄtÄ(piemÄ“ram: org.example.viewer)"
-#: gio/gapplication-tool.c:72 gio/glib-compile-resources.c:738
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
-#: gio/gresource-tool.c:500 gio/gresource-tool.c:566
+#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "DATNE"
-#: gio/gapplication-tool.c:72
+#: gio/gapplication-tool.c:74
msgid "Optional relative or absolute filenames, or URIs to open"
msgstr ""
"NeobligÄts relatÄ«vs vai absolÅ«ts datnes nosaukums, vai URI, lai atvÄ“rtu"
-#: gio/gapplication-tool.c:73
+#: gio/gapplication-tool.c:75
msgid "ACTION"
msgstr "DARBĪBA"
-#: gio/gapplication-tool.c:73
+#: gio/gapplication-tool.c:75
msgid "The action name to invoke"
msgstr "Darbības nosaukums, ko izsaukt"
-#: gio/gapplication-tool.c:74
+#: gio/gapplication-tool.c:76
msgid "PARAMETER"
msgstr "PARAMETRS"
-#: gio/gapplication-tool.c:74
+#: gio/gapplication-tool.c:76
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "NeobligÄts parametrs darbÄ«bas izsaukÅ¡anai, GVariant formÄtÄ"
-#: gio/gapplication-tool.c:96 gio/gresource-tool.c:531 gio/gsettings-tool.c:659
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
#, c-format
msgid ""
"Unknown command %s\n"
@@ -153,26 +153,26 @@ msgstr ""
"NezinÄma komanda %s\n"
"\n"
-#: gio/gapplication-tool.c:101
+#: gio/gapplication-tool.c:103
msgid "Usage:\n"
msgstr "Lietošana:\n"
-#: gio/gapplication-tool.c:114 gio/gresource-tool.c:556
-#: gio/gsettings-tool.c:694
+#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
+#: gio/gsettings-tool.c:699
msgid "Arguments:\n"
msgstr "Argumenti:\n"
-#: gio/gapplication-tool.c:133 gio/gio-tool.c:224
+#: gio/gapplication-tool.c:135 gio/gio-tool.c:224
msgid "[ARGS…]"
msgstr "[ARG…]"
-#: gio/gapplication-tool.c:134
+#: gio/gapplication-tool.c:136
#, c-format
msgid "Commands:\n"
msgstr "Komandas:\n"
#. Translators: do not translate 'help', but please translate 'COMMAND'.
-#: gio/gapplication-tool.c:146
+#: gio/gapplication-tool.c:148
#, c-format
msgid ""
"Use “%s help COMMAND†to get detailed help.\n"
@@ -181,7 +181,7 @@ msgstr ""
"Lietojiet “%s help KOMANDAâ€, lai iegÅ«tu detalizÄ“tu palÄ«dzÄ«bu.\n"
"\n"
-#: gio/gapplication-tool.c:165
+#: gio/gapplication-tool.c:167
#, c-format
msgid ""
"%s command requires an application id to directly follow\n"
@@ -190,13 +190,13 @@ msgstr ""
"%s komandai vajag lietotnes id, lai tieši sekotu\n"
"\n"
-#: gio/gapplication-tool.c:171
+#: gio/gapplication-tool.c:173
#, c-format
msgid "invalid application id: “%sâ€\n"
msgstr "nederÄ«gs lietotnes id — “%sâ€\n"
#. Translators: %s is replaced with a command name like 'list-actions'
-#: gio/gapplication-tool.c:182
+#: gio/gapplication-tool.c:184
#, c-format
msgid ""
"“%s†takes no arguments\n"
@@ -205,21 +205,21 @@ msgstr ""
"“%s†nepieņem argumentus\n"
"\n"
-#: gio/gapplication-tool.c:266
+#: gio/gapplication-tool.c:268
#, c-format
msgid "unable to connect to D-Bus: %s\n"
msgstr "Nevarēja savienoties ar D-Bus — %s\n"
-#: gio/gapplication-tool.c:286
+#: gio/gapplication-tool.c:288
#, c-format
msgid "error sending %s message to application: %s\n"
msgstr "kļūda, sūtot %s ziņojumu lietotnei — %s\n"
-#: gio/gapplication-tool.c:317
+#: gio/gapplication-tool.c:319
msgid "action name must be given after application id\n"
msgstr "darbÄ«bas nosaukumam ir jÄbÅ«t dotam pÄ“c lietotnes id\n"
-#: gio/gapplication-tool.c:325
+#: gio/gapplication-tool.c:327
#, c-format
msgid ""
"invalid action name: “%sâ€\n"
@@ -228,25 +228,25 @@ msgstr ""
"nederÄ«gs darbÄ«bas nosaukums — “%sâ€\n"
"darbÄ«bas nosaukumÄ var bÅ«t tikai burti, cipari, “-†un “.â€\n"
-#: gio/gapplication-tool.c:344
+#: gio/gapplication-tool.c:346
#, c-format
msgid "error parsing action parameter: %s\n"
msgstr "kļūda, parsējot darbības parametru — %s\n"
-#: gio/gapplication-tool.c:356
+#: gio/gapplication-tool.c:358
msgid "actions accept a maximum of one parameter\n"
msgstr "darbÄ«bas pieņem ne vairÄk ka vienu parametru\n"
-#: gio/gapplication-tool.c:411
+#: gio/gapplication-tool.c:413
msgid "list-actions command takes only the application id"
msgstr "darbību uzskaites komanda pieņem tikai lietotnes id"
-#: gio/gapplication-tool.c:421
+#: gio/gapplication-tool.c:423
#, c-format
msgid "unable to find desktop file for application %s\n"
msgstr "nevar atrast darbvirsmas datni lietotnei %s\n"
-#: gio/gapplication-tool.c:466
+#: gio/gapplication-tool.c:468
#, c-format
msgid ""
"unrecognised command: %s\n"
@@ -256,8 +256,8 @@ msgstr ""
"\n"
#: gio/gbufferedinputstream.c:420 gio/gbufferedinputstream.c:498
-#: gio/ginputstream.c:179 gio/ginputstream.c:379 gio/ginputstream.c:617
-#: gio/ginputstream.c:1019 gio/goutputstream.c:223 gio/goutputstream.c:1049
+#: gio/ginputstream.c:179 gio/ginputstream.c:379 gio/ginputstream.c:648
+#: gio/ginputstream.c:1050 gio/goutputstream.c:223 gio/goutputstream.c:1049
#: gio/gpollableinputstream.c:205 gio/gpollableoutputstream.c:277
#, c-format
msgid "Too large count value passed to %s"
@@ -268,11 +268,11 @@ msgstr "PÄrÄk liela vÄ“rtÄ«ba tika padota %s"
msgid "Seek not supported on base stream"
msgstr "Uz bÄzes plÅ«smas meklÄ“Å¡ana netiek atbalstÄ«ta"
-#: gio/gbufferedinputstream.c:937
+#: gio/gbufferedinputstream.c:938
msgid "Cannot truncate GBufferedInputStream"
msgstr "Nevar apraut GBufferedInputStream"
-#: gio/gbufferedinputstream.c:982 gio/ginputstream.c:1208 gio/giostream.c:300
+#: gio/gbufferedinputstream.c:983 gio/ginputstream.c:1239 gio/giostream.c:300
#: gio/goutputstream.c:2198
msgid "Stream is already closed"
msgstr "Plūsma jau ir aizvērta"
@@ -300,13 +300,13 @@ msgid "Not enough space in destination"
msgstr "MÄ“rÄ·Ä« nepietiek brÄ«vÄs vietas"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
-#: gio/gdatainputstream.c:1266 glib/gconvert.c:448 glib/gconvert.c:878
+#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
#: glib/gutf8.c:875 glib/gutf8.c:1328
msgid "Invalid byte sequence in conversion input"
msgstr "Nepareiza baitu secība konversijas ievadē"
-#: gio/gcharsetconverter.c:347 glib/gconvert.c:456 glib/gconvert.c:792
+#: gio/gcharsetconverter.c:347 glib/gconvert.c:457 glib/gconvert.c:793
#: glib/giochannel.c:1580 glib/giochannel.c:2482
#, c-format
msgid "Error during conversion: %s"
@@ -316,12 +316,12 @@ msgstr "Kļūda, konversējot — %s"
msgid "Cancellable initialization not supported"
msgstr "Atceļama inicializÄcija nav atbalstÄ«ta"
-#: gio/gcharsetconverter.c:456 glib/gconvert.c:321 glib/giochannel.c:1401
+#: gio/gcharsetconverter.c:456 glib/gconvert.c:322 glib/giochannel.c:1401
#, c-format
msgid "Conversion from character set “%s†to “%s†is not supported"
msgstr "PÄrveidoÅ¡ana no rakstzÄ«mju kopas “%s†uz “%s†nav atbalstÄ«ta"
-#: gio/gcharsetconverter.c:460 glib/gconvert.c:325
+#: gio/gcharsetconverter.c:460 glib/gconvert.c:326
#, c-format
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "NevarÄ“ja atvÄ“rt pÄrveidotÄju no “%s†uz “%sâ€"
@@ -506,7 +506,7 @@ msgstr "Kļūda, izveidojot komandrindu “%sâ€: "
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr "Nevar noteikt sesijas kopnes adresi (nav implementēts šai OS)"
-#: gio/gdbusaddress.c:1397 gio/gdbusconnection.c:7241
+#: gio/gdbusaddress.c:1397 gio/gdbusconnection.c:7261
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -515,7 +515,7 @@ msgstr ""
"Nevar noteikt kopnes adresi no DBUS_STARTER_BUS_TYPE vides mainÄ«gÄ â€” "
"nezinÄma vÄ“rtÄ«ba “%sâ€"
-#: gio/gdbusaddress.c:1406 gio/gdbusconnection.c:7250
+#: gio/gdbusaddress.c:1406 gio/gdbusconnection.c:7270
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -544,11 +544,11 @@ msgstr ""
"Izsmelti visi pieejamie autentifikÄcijas mehÄnismi (mÄ“Ä£inÄti: %s) (pieejami: "
"%s)"
-#: gio/gdbusauth.c:1170
+#: gio/gdbusauth.c:1171
msgid "User IDs must be the same for peer and server"
msgstr "LietotÄja ID ir jÄbÅ«t vienÄdiem gan biedram, gan serverim"
-#: gio/gdbusauth.c:1182
+#: gio/gdbusauth.c:1183
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Atcelts caur GDBusAuthObserver::authorize-authenticated-peer"
@@ -640,7 +640,7 @@ msgstr "Kļūda, atverot atslēgu saišķi “%s†rakstīšanai: "
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Un vÄ“l, “%s†slÄ“guma atbrÄ«voÅ¡ana neizdevÄs — %s) "
-#: gio/gdbusconnection.c:603 gio/gdbusconnection.c:2405
+#: gio/gdbusconnection.c:603 gio/gdbusconnection.c:2417
msgid "The connection is closed"
msgstr "Savienojums ir aizvērts"
@@ -648,91 +648,97 @@ msgstr "Savienojums ir aizvērts"
msgid "Timeout was reached"
msgstr "IestÄjÄs noildze"
-#: gio/gdbusconnection.c:2528
+#: gio/gdbusconnection.c:2540
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"SastapÄs ar neatbalstÄ«tiem slÄ“džiem (flag), veidojot klienta puses "
"savienojumu"
-#: gio/gdbusconnection.c:4186 gio/gdbusconnection.c:4533
+#: gio/gdbusconnection.c:4189 gio/gdbusconnection.c:4536
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr ""
"Nav tÄdas saskarnes “org.freedesktop.DBus.Properties†uz objekta ceļa %s"
-#: gio/gdbusconnection.c:4328
+#: gio/gdbusconnection.c:4331
#, c-format
msgid "No such property “%sâ€"
msgstr "Nav tÄdas Ä«paÅ¡Ä«bas “%sâ€"
-#: gio/gdbusconnection.c:4340
+#: gio/gdbusconnection.c:4343
#, c-format
msgid "Property “%s†is not readable"
msgstr "ĪpaÅ¡Ä«ba “%s†nav lasÄma"
-#: gio/gdbusconnection.c:4351
+#: gio/gdbusconnection.c:4354
#, c-format
msgid "Property “%s†is not writable"
msgstr "ĪpaÅ¡Ä«ba “%s†nav rakstÄma"
-#: gio/gdbusconnection.c:4371
+#: gio/gdbusconnection.c:4374
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr "Kļūda, iestatot Ä«paÅ¡Ä«bu “%s†— gaidÄ«ja tipu “%sâ€, bet saņēma “%sâ€"
-#: gio/gdbusconnection.c:4476 gio/gdbusconnection.c:4684
-#: gio/gdbusconnection.c:6681
+#: gio/gdbusconnection.c:4479 gio/gdbusconnection.c:4687
+#: gio/gdbusconnection.c:6689
#, c-format
msgid "No such interface “%sâ€"
msgstr "Nav tÄdas saskarnes “%sâ€"
-#: gio/gdbusconnection.c:4902 gio/gdbusconnection.c:7190
+#: gio/gdbusconnection.c:4905 gio/gdbusconnection.c:7201
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Nav tÄdas saskarnes “%s†uz objekta ceļa %s"
-#: gio/gdbusconnection.c:5000
+#: gio/gdbusconnection.c:5003
#, c-format
msgid "No such method “%sâ€"
msgstr "Nav tÄdas metodes “%sâ€"
-#: gio/gdbusconnection.c:5031
+#: gio/gdbusconnection.c:5034
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Ziņojuma tips “%s†neatbilda gaidÄ«tajam tipam “%sâ€"
-#: gio/gdbusconnection.c:5229
+#: gio/gdbusconnection.c:5237
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Objekts jau ir eksportēts saskarnei %s pie %s"
-#: gio/gdbusconnection.c:5455
+#: gio/gdbusconnection.c:5463
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Nevar saņemt īpašību %s.%s"
-#: gio/gdbusconnection.c:5511
+#: gio/gdbusconnection.c:5519
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Nevar iestatīt īpašību %s.%s"
-#: gio/gdbusconnection.c:5690
+#: gio/gdbusconnection.c:5698
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "Metode “%s†atgrieza tipu “%sâ€, bet gaidÄ«ja “%sâ€"
-#: gio/gdbusconnection.c:6792
+#: gio/gdbusconnection.c:6800
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "Metode “%s†uz saskarnes “%s†ar parakstu “%s†neeksistē"
-#: gio/gdbusconnection.c:6913
+#: gio/gdbusconnection.c:6921
#, c-format
msgid "A subtree is already exported for %s"
msgstr "%s apakškoks jau ir eksportēts "
+#: gio/gdbusconnection.c:7209
+#, c-format
+#| msgid "Key file does not have group “%sâ€"
+msgid "Object does not exist at path “%sâ€"
+msgstr "CeÄ¼Ä â€œ%s†objekts neeksistÄ“"
+
#: gio/gdbusmessage.c:1266
msgid "type is INVALID"
msgstr "tips ir INVALID"
@@ -921,12 +927,12 @@ msgstr ""
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "Ziņojuma pamatteksts ir tukÅ¡s, bet paraksta galvenes lauks ir “(%s)â€"
-#: gio/gdbusmessage.c:3378
+#: gio/gdbusmessage.c:3380
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Kļūdas atgrieÅ¡ana ar pamattekstu ar tipu “%sâ€"
-#: gio/gdbusmessage.c:3386
+#: gio/gdbusmessage.c:3388
msgid "Error return with empty body"
msgstr "Kļūdas atgriešana ar tukšu pamattekstu"
@@ -945,21 +951,24 @@ msgstr "Sesijas dbus nav palaists un automÄtiskÄ palaiÅ¡ana cieta neveiksmi"
msgid "Unable to get Hardware profile: %s"
msgstr "Nevar saņemt aparatūras profilu — %s"
-#: gio/gdbusprivate.c:2488
-msgid "Unable to load /var/lib/dbus/machine-id or /etc/machine-id: "
-msgstr "NevarÄ“ja ielÄdÄ“t /var/lib/dbus/machine-id vai /etc/machine-id: "
+#. Translators: Both placeholders are file paths
+#: gio/gdbusprivate.c:2494
+#, c-format
+#| msgid "Unable to load ‘%s‘: %s"
+msgid "Unable to load %s or %s: "
+msgstr "Nevar ielÄdÄ“t %s vai %s: "
-#: gio/gdbusproxy.c:1562
+#: gio/gdbusproxy.c:1569
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Kļūda, izsaucot StartServiceByName priekš %s: "
-#: gio/gdbusproxy.c:1585
+#: gio/gdbusproxy.c:1592
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "NegaidÄ«ta atbilde %d no StartServiceByName(“%sâ€) metodes"
-#: gio/gdbusproxy.c:2688 gio/gdbusproxy.c:2823
+#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -969,25 +978,25 @@ msgstr ""
"īpašnieka, un starpnieks tika veidots ar "
"G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START slēdzi (flag)"
-#: gio/gdbusserver.c:763
+#: gio/gdbusserver.c:767
msgid "Abstract namespace not supported"
msgstr "Abstraktas nosaukumu telpas nav atbalstītas"
-#: gio/gdbusserver.c:856
+#: gio/gdbusserver.c:860
msgid "Cannot specify nonce file when creating a server"
msgstr "Nevar norÄdÄ«t nonce datni, kad veido serveri"
-#: gio/gdbusserver.c:938
+#: gio/gdbusserver.c:942
#, c-format
msgid "Error writing nonce file at “%sâ€: %s"
msgstr "Kļūda, rakstot nonce datni pie “%s†— %s"
-#: gio/gdbusserver.c:1113
+#: gio/gdbusserver.c:1117
#, c-format
msgid "The string “%s†is not a valid D-Bus GUID"
msgstr "Virkne “%s†nav derīga D-Bus GUID"
-#: gio/gdbusserver.c:1153
+#: gio/gdbusserver.c:1157
#, c-format
msgid "Cannot listen on unsupported transport “%sâ€"
msgstr "Nevar klausÄ«ties uz neatbalstÄ«ta transporta “%sâ€"
@@ -1190,7 +1199,6 @@ msgstr "Kļūda, parsējot parametru %d ar tipu “%s†— %s\n"
#: gio/gdbus-tool.c:1190
#, c-format
-#| msgid "Error reading from handle: %s"
msgid "Error adding handle %d: %s\n"
msgstr "Kļūda, pievienojot turi %d — %s\n"
@@ -1330,7 +1338,7 @@ msgstr "dzinis neatbalsta startēšanu"
msgid "drive doesn’t implement stop"
msgstr "dzinis neatbalsta apturēšanu"
-#: gio/gdtlsconnection.c:1120 gio/gtlsconnection.c:921
+#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "TLS aizmugure nav implementējusi TLS saistīšanas saņemšanu"
@@ -1375,7 +1383,7 @@ msgstr "Gaidīja GEmblem priekš GEmblemedIcon"
msgid "Containing mount does not exist"
msgstr "Saturošais montējums neeksistē"
-#: gio/gfile.c:2608 gio/glocalfile.c:2472
+#: gio/gfile.c:2608 gio/glocalfile.c:2477
msgid "Can’t copy over directory"
msgstr "Nevar kopēt virsū mapei"
@@ -1420,7 +1428,7 @@ msgstr "Nevar kopēt īpašu datni"
msgid "Invalid symlink value given"
msgstr "Ir dota nederÄ«ga simboliskÄs saites vÄ“rtÄ«ba"
-#: gio/gfile.c:4045 glib/gfileutils.c:2362
+#: gio/gfile.c:4045 glib/gfileutils.c:2354
msgid "Symbolic links not supported"
msgstr "SimboliskÄs saites nav atbalstÄ«tas"
@@ -1483,7 +1491,7 @@ msgid "Truncate not supported on stream"
msgstr "Uz plūsmas apraušana nav atbalstīta"
#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
-#: glib/gconvert.c:1778
+#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Nepareizs resursdatora nosaukums"
@@ -1509,7 +1517,6 @@ msgid "HTTP proxy connection failed: %i"
msgstr "NeizdevÄs savienojums ar HTTP starpnieku: %i"
#: gio/ghttpproxy.c:266
-#| msgid "HTTP proxy connection failed: %i"
msgid "HTTP proxy response too big"
msgstr "HTTP starpnieka atbilde ir pÄrÄk liela"
@@ -1570,7 +1577,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "NeizdevÄs parsÄ“t “%s†kÄ IP adreses masku"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:220
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
msgid "Not enough space for socket address"
msgstr "Nepietiek vietas ligzdas adresei"
@@ -1588,7 +1595,7 @@ msgstr "Ievades plūsma neatbalsta lasīšanu"
#. Translators: This is an error you get if there is
#. * already an operation running against this stream when
#. * you try to start one
-#: gio/ginputstream.c:1218 gio/giostream.c:310 gio/goutputstream.c:2208
+#: gio/ginputstream.c:1249 gio/giostream.c:310 gio/goutputstream.c:2208
msgid "Stream has outstanding operation"
msgstr "Plūsmai ir neizpildīta darbība"
@@ -1629,7 +1636,6 @@ msgid "Show information about locations"
msgstr "ParÄdÄ«t informÄciju par atraÅ¡anÄs vietÄm"
#: gio/gio-tool.c:232
-#| msgid "List static actions for an application (from .desktop file)"
msgid "Launch an application from a desktop file"
msgstr "Palaist lietotni no darbvirsmas datnes"
@@ -1903,30 +1909,25 @@ msgstr ""
"Palaist lietotni no darbvirsmas datnes. Tai var padodot datņu argumentus."
#: gio/gio-tool-launch.c:77
-#| msgid "No destination given"
msgid "No desktop file given"
msgstr "Nav dota darbvirsmas datne"
#: gio/gio-tool-launch.c:85
-#| msgid "There is no GCredentials support for your platform"
msgid "The launch command is not currently supported on this platform"
msgstr "PalaiÅ¡anas komanda Å¡obrÄ«d nav atbalstÄ«ta Å¡ajÄ platformÄ"
#: gio/gio-tool-launch.c:98
#, c-format
-#| msgid "Unable to trash file %s: %s"
msgid "Unable to load ‘%s‘: %s"
msgstr "Nevar ielÄdÄ“t “%s†— %s"
#: gio/gio-tool-launch.c:107
#, c-format
-#| msgid "Failed to load info for handler “%sâ€"
msgid "Unable to load application information for ‘%s‘"
msgstr "Nevar ielÄdÄ“t “%s†lietotnes informÄciju"
#: gio/gio-tool-launch.c:119
#, c-format
-#| msgid "Default application for “%sâ€: %s\n"
msgid "Unable to launch application ‘%s’: %s"
msgstr "Nevar palaist lietotni “%s†— %s"
@@ -2315,7 +2316,6 @@ msgid "Empty the trash"
msgstr "Iztukšot miskasti"
#: gio/gio-tool-trash.c:35
-#| msgid "List the contents of the locations."
msgid "List files in the trash with their original locations"
msgstr "UzrÄdÄ«t datnes miskastÄ“ ar to sÄkotnÄ“jo atraÅ¡anÄs vietÄm"
@@ -2324,26 +2324,22 @@ msgid ""
"Restore a file from trash to its original location (possibly recreating the "
"directory)"
msgstr ""
-"Atjaunot datni no miskastes uz tÄs sÄkotnÄ“jo vietu (iespÄ“jams, no jauna"
-" izveidojot direktoriju)"
+"Atjaunot datni no miskastes uz tÄs sÄkotnÄ“jo vietu (iespÄ“jams, no jauna "
+"izveidojot direktoriju)"
#: gio/gio-tool-trash.c:106
-#| msgid "Unable to find terminal required for application"
msgid "Unable to find original path"
msgstr "Nevar atrast sÄkotnÄ“jo ceļu"
#: gio/gio-tool-trash.c:123
-#| msgid "Unable to create socket: %s"
msgid "Unable to recreate original location: "
msgstr "Nevar no jauna izveidot sÄkotnÄ“jo vietu: "
#: gio/gio-tool-trash.c:136
-#| msgid "unable to find desktop file for application %s\n"
msgid "Unable to move file to its original location: "
msgstr "Nevar pÄrvietot datni uz tÄs sÄkotnÄ“jo vietu: "
#: gio/gio-tool-trash.c:225
-#| msgid "Move files or directories to the trash."
msgid "Move/Restore files or directories to the trash."
msgstr "PÄrvietot/atjaunot datnes vai mapes uz miskasti."
@@ -2978,7 +2974,7 @@ msgstr "izņēma esošo izvades datni: izņēma esošo izvades datni."
msgid "Invalid filename %s"
msgstr "Nederīgs datnes nosaukums %s"
-#: gio/glocalfile.c:980
+#: gio/glocalfile.c:982
#, c-format
msgid "Error getting filesystem info for %s: %s"
msgstr "Kļūda, iegÅ«stot datņu sistÄ“mas informÄciju priekÅ¡ %s — %s"
@@ -2987,126 +2983,124 @@ msgstr "Kļūda, iegÅ«stot datņu sistÄ“mas informÄciju priekÅ¡ %s — %s"
#. * the enclosing (user visible) mount of a file, but none
#. * exists.
#.
-#: gio/glocalfile.c:1121
+#: gio/glocalfile.c:1123
#, c-format
msgid "Containing mount for file %s not found"
msgstr "Saturošais montējums priekš datnes %s nav atrasts"
-#: gio/glocalfile.c:1144
+#: gio/glocalfile.c:1146
msgid "Can’t rename root directory"
msgstr "Nevar pÄrsaukt saknes mapi"
-#: gio/glocalfile.c:1162 gio/glocalfile.c:1185
+#: gio/glocalfile.c:1164 gio/glocalfile.c:1187
#, c-format
msgid "Error renaming file %s: %s"
msgstr "Kļūda, pÄrsaucot datni %s — %s"
-#: gio/glocalfile.c:1169
+#: gio/glocalfile.c:1171
msgid "Can’t rename file, filename already exists"
msgstr "Nevar pÄrsaukt datni; datnes nosaukums jau eksistÄ“"
-#: gio/glocalfile.c:1182 gio/glocalfile.c:2366 gio/glocalfile.c:2394
-#: gio/glocalfile.c:2533 gio/glocalfileoutputstream.c:650
+#: gio/glocalfile.c:1184 gio/glocalfile.c:2371 gio/glocalfile.c:2399
+#: gio/glocalfile.c:2538 gio/glocalfileoutputstream.c:656
msgid "Invalid filename"
msgstr "Nederīgs datnes nosaukums"
-#: gio/glocalfile.c:1350 gio/glocalfile.c:1361
+#: gio/glocalfile.c:1352 gio/glocalfile.c:1363
#, c-format
msgid "Error opening file %s: %s"
msgstr "Kļūda, atverot datni %s — %s"
-#: gio/glocalfile.c:1486
+#: gio/glocalfile.c:1488
#, c-format
msgid "Error removing file %s: %s"
msgstr "Kļūda, dzēšot datni %s — %s"
-#: gio/glocalfile.c:1980 gio/glocalfile.c:1991
+#: gio/glocalfile.c:1982 gio/glocalfile.c:1993
#, c-format
msgid "Error trashing file %s: %s"
msgstr "Kļūda, izmetot miskastē datni %s — %s"
-#: gio/glocalfile.c:2029
+#: gio/glocalfile.c:2031
#, c-format
-#| msgid "Unable to create trash dir %s: %s"
msgid "Unable to create trash directory %s: %s"
msgstr "Nevar izveidot miskastes direktoriju %s — %s"
-#: gio/glocalfile.c:2050
+#: gio/glocalfile.c:2052
#, c-format
msgid "Unable to find toplevel directory to trash %s"
msgstr "Nevar atrast augÅ¡Ä“jÄ lÄ«meņa mapi, lai izmestu miskastÄ“ %s"
-#: gio/glocalfile.c:2058
+#: gio/glocalfile.c:2060
#, c-format
msgid "Trashing on system internal mounts is not supported"
msgstr "Izmešana uz sistēmas iekšējiem montējumiem nav atbalstīta"
-#: gio/glocalfile.c:2141 gio/glocalfile.c:2169
+#: gio/glocalfile.c:2146 gio/glocalfile.c:2174
#, c-format
-#| msgid "Unable to find or create trash directory for %s"
msgid "Unable to find or create trash directory %s to trash %s"
msgstr "Nevar atrast vai izveidot miskastes direktoriju %s, lai izmestu %s"
-#: gio/glocalfile.c:2215
+#: gio/glocalfile.c:2220
#, c-format
msgid "Unable to create trashing info file for %s: %s"
msgstr "Nevar izveidot miskastÄ“ izmeÅ¡anas informÄcijas datni priekÅ¡ %s — %s"
-#: gio/glocalfile.c:2277
+#: gio/glocalfile.c:2282
#, c-format
msgid "Unable to trash file %s across filesystem boundaries"
msgstr "Nevar izmest miskastÄ“ datni %s pÄri datņu sistÄ“mas robežÄm"
-#: gio/glocalfile.c:2281 gio/glocalfile.c:2337
+#: gio/glocalfile.c:2286 gio/glocalfile.c:2342
#, c-format
msgid "Unable to trash file %s: %s"
msgstr "Nevar izmest miskastē datni %s — %s"
-#: gio/glocalfile.c:2343
+#: gio/glocalfile.c:2348
#, c-format
msgid "Unable to trash file %s"
msgstr "Nevar izmest miskastē datni %s"
-#: gio/glocalfile.c:2369
+#: gio/glocalfile.c:2374
#, c-format
msgid "Error creating directory %s: %s"
msgstr "Kļūda, veidojot mapi %s — %s"
-#: gio/glocalfile.c:2398
+#: gio/glocalfile.c:2403
#, c-format
msgid "Filesystem does not support symbolic links"
msgstr "Datņu sistÄ“ma neatbalsta simboliskÄs saites"
-#: gio/glocalfile.c:2401
+#: gio/glocalfile.c:2406
#, c-format
msgid "Error making symbolic link %s: %s"
msgstr "Kļūda, veidojot simbolisko saiti %s — %s"
-#: gio/glocalfile.c:2444 gio/glocalfile.c:2479 gio/glocalfile.c:2536
+#: gio/glocalfile.c:2449 gio/glocalfile.c:2484 gio/glocalfile.c:2541
#, c-format
msgid "Error moving file %s: %s"
msgstr "Kļūda, pÄrvietojot datni %s — %s"
-#: gio/glocalfile.c:2467
+#: gio/glocalfile.c:2472
msgid "Can’t move directory over directory"
msgstr "Nevar pÄrvietot mapi virsÅ« mapei"
-#: gio/glocalfile.c:2493 gio/glocalfileoutputstream.c:1039
-#: gio/glocalfileoutputstream.c:1053 gio/glocalfileoutputstream.c:1068
-#: gio/glocalfileoutputstream.c:1085 gio/glocalfileoutputstream.c:1099
+#: gio/glocalfile.c:2498 gio/glocalfileoutputstream.c:1108
+#: gio/glocalfileoutputstream.c:1122 gio/glocalfileoutputstream.c:1137
+#: gio/glocalfileoutputstream.c:1154 gio/glocalfileoutputstream.c:1168
msgid "Backup file creation failed"
msgstr "NeizdevÄs izveidot rezerves kopijas datni"
-#: gio/glocalfile.c:2512
+#: gio/glocalfile.c:2517
#, c-format
msgid "Error removing target file: %s"
msgstr "Kļūda, dzēšot mērķa datni — %s"
-#: gio/glocalfile.c:2526
+#: gio/glocalfile.c:2531
msgid "Move between mounts not supported"
msgstr "PÄrvietoÅ¡ana starp montÄ“tiem sÄ“jumiem nav atbalstÄ«ta"
-#: gio/glocalfile.c:2700
+#: gio/glocalfile.c:2705
#, c-format
msgid "Could not determine the disk usage of %s: %s"
msgstr "Nevarēja noteikt %s diska izmantojumu — %s"
@@ -3132,7 +3126,8 @@ msgstr "Kļūda, iestatot paplaÅ¡inÄto atribÅ«tu “%s†— %s"
msgid " (invalid encoding)"
msgstr " (nederīgs kodējums)"
-#: gio/glocalfileinfo.c:1868 gio/glocalfileoutputstream.c:915
+#: gio/glocalfileinfo.c:1868 gio/glocalfileoutputstream.c:943
+#: gio/glocalfileoutputstream.c:995
#, c-format
msgid "Error when getting information for file “%sâ€: %s"
msgstr "Kļūda, saņemot informÄciju par datni “%s†— %s"
@@ -3202,111 +3197,110 @@ msgstr "UNIX laika spiedogs %lld neiekļÄvÄs 64 bitos"
msgid "UNIX timestamp %lld is outside of the range supported by Windows"
msgstr "UNIX laika spiedogs %lld ir Ärpus apgabala, ko atbalsta Windows"
-#: gio/glocalfileinfo.c:2557
+#: gio/glocalfileinfo.c:2570
#, c-format
msgid "File name “%s†cannot be converted to UTF-16"
msgstr "Datnes nosaukumu “%s†nevar pÄrveidot uz UTF-16"
-#: gio/glocalfileinfo.c:2576
+#: gio/glocalfileinfo.c:2589
#, c-format
msgid "File “%s†cannot be opened: Windows Error %lu"
msgstr "Datni “%s†nevar atvērt, Windows kļūda %lu"
-#: gio/glocalfileinfo.c:2589
+#: gio/glocalfileinfo.c:2602
#, c-format
msgid "Error setting modification or access time for file “%sâ€: %lu"
msgstr "Kļūda, iestatot izmaiņu vai piekļuves laiku datnei “%s†— %lu"
-#: gio/glocalfileinfo.c:2690
+#: gio/glocalfileinfo.c:2703
#, c-format
msgid "Error setting modification or access time: %s"
msgstr "Kļūda, iestatot izmaiņu vai piekļuves laiku — %s"
-#: gio/glocalfileinfo.c:2713
+#: gio/glocalfileinfo.c:2726
msgid "SELinux context must be non-NULL"
msgstr "SELinux kontekstam ir jÄbÅ«t ne NULL"
-#: gio/glocalfileinfo.c:2720
+#: gio/glocalfileinfo.c:2733
msgid "SELinux is not enabled on this system"
msgstr "SELinux nav ieslēgts uz šīs sistēmas"
-#: gio/glocalfileinfo.c:2730
+#: gio/glocalfileinfo.c:2743
#, c-format
msgid "Error setting SELinux context: %s"
msgstr "Kļūda, iestatot SELinux kontekstu — %s"
-#: gio/glocalfileinfo.c:2823
+#: gio/glocalfileinfo.c:2836
#, c-format
msgid "Setting attribute %s not supported"
msgstr "%s atribūta iestatīšana nav atbalstīta"
-#: gio/glocalfileinputstream.c:168 gio/glocalfileoutputstream.c:795
+#: gio/glocalfileinputstream.c:163 gio/glocalfileoutputstream.c:801
#, c-format
msgid "Error reading from file: %s"
msgstr "Kļūda, lasot no datnes — %s"
-#: gio/glocalfileinputstream.c:199 gio/glocalfileinputstream.c:211
-#: gio/glocalfileinputstream.c:225 gio/glocalfileinputstream.c:333
-#: gio/glocalfileoutputstream.c:557 gio/glocalfileoutputstream.c:1117
-#, c-format
-msgid "Error seeking in file: %s"
-msgstr "Kļūda, meklējot datnē — %s"
-
-#: gio/glocalfileinputstream.c:255 gio/glocalfileoutputstream.c:347
-#: gio/glocalfileoutputstream.c:441
+#: gio/glocalfileinputstream.c:194 gio/glocalfileoutputstream.c:353
+#: gio/glocalfileoutputstream.c:447
#, c-format
msgid "Error closing file: %s"
msgstr "Kļūda, aizverot datni — %s"
+#: gio/glocalfileinputstream.c:272 gio/glocalfileoutputstream.c:563
+#: gio/glocalfileoutputstream.c:1186
+#, c-format
+msgid "Error seeking in file: %s"
+msgstr "Kļūda, meklējot datnē — %s"
+
#: gio/glocalfilemonitor.c:866
msgid "Unable to find default local file monitor type"
msgstr "Nevar atrast noklusÄ“to lokÄlo datņu novÄ“roÅ¡anas tipu"
-#: gio/glocalfileoutputstream.c:214 gio/glocalfileoutputstream.c:292
-#: gio/glocalfileoutputstream.c:328 gio/glocalfileoutputstream.c:816
+#: gio/glocalfileoutputstream.c:220 gio/glocalfileoutputstream.c:298
+#: gio/glocalfileoutputstream.c:334 gio/glocalfileoutputstream.c:822
#, c-format
msgid "Error writing to file: %s"
msgstr "Kļūda, rakstot datnē — %s"
-#: gio/glocalfileoutputstream.c:374
+#: gio/glocalfileoutputstream.c:380
#, c-format
msgid "Error removing old backup link: %s"
msgstr "Kļūda, dzēšot vecu rezerves kopijas saiti — %s"
-#: gio/glocalfileoutputstream.c:388 gio/glocalfileoutputstream.c:401
+#: gio/glocalfileoutputstream.c:394 gio/glocalfileoutputstream.c:407
#, c-format
msgid "Error creating backup copy: %s"
msgstr "Kļūda, veidojot rezerves kopiju — %s"
-#: gio/glocalfileoutputstream.c:419
+#: gio/glocalfileoutputstream.c:425
#, c-format
msgid "Error renaming temporary file: %s"
msgstr "Kļūda, pÄrsaucot pagaidu datni — %s"
-#: gio/glocalfileoutputstream.c:603 gio/glocalfileoutputstream.c:1168
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
#, c-format
msgid "Error truncating file: %s"
msgstr "Kļūda, apraujot datni — %s"
-#: gio/glocalfileoutputstream.c:656 gio/glocalfileoutputstream.c:894
-#: gio/glocalfileoutputstream.c:1149 gio/gsubprocess.c:380
+#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
+#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Kļūda, atverot datni “%s†— %s"
-#: gio/glocalfileoutputstream.c:928
+#: gio/glocalfileoutputstream.c:957
msgid "Target file is a directory"
msgstr "MÄ“rÄ·a datne ir mape"
-#: gio/glocalfileoutputstream.c:933
+#: gio/glocalfileoutputstream.c:971
msgid "Target file is not a regular file"
msgstr "MÄ“rÄ·a datne nav parasta datne"
-#: gio/glocalfileoutputstream.c:945
+#: gio/glocalfileoutputstream.c:1013
msgid "The file was externally modified"
msgstr "Datne tika mainÄ«ta no Ärpuses"
-#: gio/glocalfileoutputstream.c:1133
+#: gio/glocalfileoutputstream.c:1202
#, c-format
msgid "Error removing old file: %s"
msgstr "Kļūda, dzēšot veco datni — %s"
@@ -3484,11 +3478,11 @@ msgstr "Resurss pie “%s†nav mape"
msgid "Input stream doesn’t implement seek"
msgstr "Ievades plūsma neatbalsta meklēšanu"
-#: gio/gresource-tool.c:499
+#: gio/gresource-tool.c:500
msgid "List sections containing resources in an elf FILE"
msgstr "Uzskaitīt sadaļas, kas satur resursus elf DATNĒ"
-#: gio/gresource-tool.c:505
+#: gio/gresource-tool.c:506
msgid ""
"List resources\n"
"If SECTION is given, only list resources in this section\n"
@@ -3498,15 +3492,15 @@ msgstr ""
"Ja ir norÄdÄ«ta SADAÄ»A, uzskaitÄ«t resursus Å¡ajÄ sadaļÄ\n"
"Ja ir norÄdÄ«ts CEĻŠ, uzskaitÄ«t tikai atbilstoÅ¡us resursus"
-#: gio/gresource-tool.c:508 gio/gresource-tool.c:518
+#: gio/gresource-tool.c:509 gio/gresource-tool.c:519
msgid "FILE [PATH]"
msgstr "DATNE [CEĻŠ]"
-#: gio/gresource-tool.c:509 gio/gresource-tool.c:519 gio/gresource-tool.c:526
+#: gio/gresource-tool.c:510 gio/gresource-tool.c:520 gio/gresource-tool.c:527
msgid "SECTION"
msgstr "SADAĻA"
-#: gio/gresource-tool.c:514
+#: gio/gresource-tool.c:515
msgid ""
"List resources with details\n"
"If SECTION is given, only list resources in this section\n"
@@ -3518,15 +3512,15 @@ msgstr ""
"Ja ir norÄdÄ«ts CEĻŠ, uzskaitÄ«t tikai atbilstoÅ¡us resursus\n"
"InformÄcija iekļauj sadaļu, izmÄ“ru un saspieÅ¡anu"
-#: gio/gresource-tool.c:524
+#: gio/gresource-tool.c:525
msgid "Extract a resource file to stdout"
msgstr "Izvilkt resursu datni uz stdout"
-#: gio/gresource-tool.c:525
+#: gio/gresource-tool.c:526
msgid "FILE PATH"
msgstr "DATNE CEĻŠ"
-#: gio/gresource-tool.c:539
+#: gio/gresource-tool.c:540
msgid ""
"Usage:\n"
" gresource [--section SECTION] COMMAND [ARGS…]\n"
@@ -3554,7 +3548,7 @@ msgstr ""
"Lietojiet “gresource help KOMANDAâ€, lai saņemtu detalizÄ“tu palÄ«dzÄ«bu.\n"
"\n"
-#: gio/gresource-tool.c:553
+#: gio/gresource-tool.c:554
#, c-format
msgid ""
"Usage:\n"
@@ -3569,19 +3563,19 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gresource-tool.c:560
+#: gio/gresource-tool.c:561
msgid " SECTION An (optional) elf section name\n"
msgstr " SADAÄ»A (NeobligÄts) elf sadaļas nosaukums\n"
-#: gio/gresource-tool.c:564 gio/gsettings-tool.c:701
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
msgid " COMMAND The (optional) command to explain\n"
msgstr " KOMANDA (neobligÄta) komanda, ko izskaidrot\n"
-#: gio/gresource-tool.c:570
+#: gio/gresource-tool.c:571
msgid " FILE An elf file (a binary or a shared library)\n"
msgstr " DATNE elf datne (binÄra datne vai koplietota bibliotÄ“ka)\n"
-#: gio/gresource-tool.c:573
+#: gio/gresource-tool.c:574
msgid ""
" FILE An elf file (a binary or a shared library)\n"
" or a compiled resource file\n"
@@ -3589,23 +3583,23 @@ msgstr ""
" DATNE elf datne (binÄra datne vai koplietota bibliotÄ“ka)\n"
" vai saspiests resursu datne\n"
-#: gio/gresource-tool.c:577
+#: gio/gresource-tool.c:578
msgid "[PATH]"
msgstr "[CEĻŠ]"
-#: gio/gresource-tool.c:579
+#: gio/gresource-tool.c:580
msgid " PATH An (optional) resource path (may be partial)\n"
msgstr " CEĻŠ (NeobligÄts) resursa ceļš (var bÅ«t daļējs)\n"
-#: gio/gresource-tool.c:580
+#: gio/gresource-tool.c:581
msgid "PATH"
msgstr "CEĻŠ"
-#: gio/gresource-tool.c:582
+#: gio/gresource-tool.c:583
msgid " PATH A resource path\n"
msgstr " CEĻŠ Resursa ceļš\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:906
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Nav tÄdas shÄ“mas “%sâ€\n"
@@ -3636,35 +3630,35 @@ msgstr "Ceļam jÄbeidzas ar slÄ«psvÄ«tru (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Ceļš nedrīkst saturēt divas blakus esošas slīpsvītras (//)\n"
-#: gio/gsettings-tool.c:536
+#: gio/gsettings-tool.c:541
msgid "The provided value is outside of the valid range\n"
msgstr "DotÄ vÄ“rtÄ«ba ir Ärpus derÄ«go vÄ“rtÄ«bu intervÄla\n"
-#: gio/gsettings-tool.c:543
+#: gio/gsettings-tool.c:548
msgid "The key is not writable\n"
msgstr "AtslÄ“ga nav rakstÄma\n"
-#: gio/gsettings-tool.c:579
+#: gio/gsettings-tool.c:584
msgid "List the installed (non-relocatable) schemas"
msgstr "Saraksts ar instalÄ“tÄm (nepÄrvietojamÄm) shÄ“mÄm"
-#: gio/gsettings-tool.c:585
+#: gio/gsettings-tool.c:590
msgid "List the installed relocatable schemas"
msgstr "Saraksts ar instalÄ“tam pÄrvietojamÄm shÄ“mÄm"
-#: gio/gsettings-tool.c:591
+#: gio/gsettings-tool.c:596
msgid "List the keys in SCHEMA"
msgstr "Atslēgu saraksts SHĒMĀ"
-#: gio/gsettings-tool.c:592 gio/gsettings-tool.c:598 gio/gsettings-tool.c:641
+#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH]"
msgstr "SHĒMA[:CEĻŠ]"
-#: gio/gsettings-tool.c:597
+#: gio/gsettings-tool.c:602
msgid "List the children of SCHEMA"
msgstr "BÄ“rnu skaits SHÄ’MÄ€"
-#: gio/gsettings-tool.c:603
+#: gio/gsettings-tool.c:608
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3672,48 +3666,48 @@ msgstr ""
"Saraksts ar atslÄ“gÄm un vÄ“rtÄ«bÄm; rekursÄ«vi\n"
"Ja nav dota shÄ“ma, rÄdÄ«t visas atslÄ“gas\n"
-#: gio/gsettings-tool.c:605
+#: gio/gsettings-tool.c:610
msgid "[SCHEMA[:PATH]]"
msgstr "[SHĒMA[:CEĻŠ]"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:615
msgid "Get the value of KEY"
msgstr "Saņemt vērtību ATSLĒGAI"
-#: gio/gsettings-tool.c:611 gio/gsettings-tool.c:617 gio/gsettings-tool.c:623
-#: gio/gsettings-tool.c:635 gio/gsettings-tool.c:647
+#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
+#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
msgid "SCHEMA[:PATH] KEY"
msgstr "SHĒMA[:CEĻŠ] ATSLĒGA"
-#: gio/gsettings-tool.c:616
+#: gio/gsettings-tool.c:621
msgid "Query the range of valid values for KEY"
msgstr "VaicÄjums derÄ«go vÄ“rtÄ«bu intervÄlam ATSLÄ’GAI"
-#: gio/gsettings-tool.c:622
+#: gio/gsettings-tool.c:627
msgid "Query the description for KEY"
msgstr "VaicÄt aprakstu ATSLÄ’GAI"
-#: gio/gsettings-tool.c:628
+#: gio/gsettings-tool.c:633
msgid "Set the value of KEY to VALUE"
msgstr "Iestatīt ATSLĒGTAS vērtību uz VĒRTĪBA"
-#: gio/gsettings-tool.c:629
+#: gio/gsettings-tool.c:634
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SHĒMA[:CEĻŠ] ATSLĒGA VĒRTĪBA"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:639
msgid "Reset KEY to its default value"
msgstr "PÄrstatÄ«t ATSLÄ’GAS vÄ“rtÄ«bu uz tÄs noklusÄ“to"
-#: gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:645
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "AtstatÄ«t visas atslÄ“gas SHÄ’MÄ€ uz to noklusÄ“tajÄm vÄ“rtÄ«bÄm"
-#: gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:651
msgid "Check if KEY is writable"
msgstr "PÄrbaudÄ«t, vai ATSLÄ’GA ir rakstÄma"
-#: gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:657
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3723,11 +3717,11 @@ msgstr ""
"Ja nav norÄdÄ«ta ATSLÄ’GA, novÄ“rot visas atslÄ“gas SHÄ’MÄ€.\n"
"Izmantojiet ^C, lai pÄrtrauktu novÄ“roÅ¡anu.\n"
-#: gio/gsettings-tool.c:655
+#: gio/gsettings-tool.c:660
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SHĒMA[:CEĻŠ] [ATSLĒGA]"
-#: gio/gsettings-tool.c:667
+#: gio/gsettings-tool.c:672
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3775,7 +3769,7 @@ msgstr ""
"Lietojiet “gsettings help KOMANDAâ€, lai saņemtu sÄ«kÄku palÄ«dzÄ«bu.\n"
"\n"
-#: gio/gsettings-tool.c:691
+#: gio/gsettings-tool.c:696
#, c-format
msgid ""
"Usage:\n"
@@ -3790,11 +3784,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:697
+#: gio/gsettings-tool.c:702
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " SHÄ’MAS_MAPE Mape, kurÄ meklÄ“t papildu shÄ“mas\n"
-#: gio/gsettings-tool.c:705
+#: gio/gsettings-tool.c:710
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3802,32 +3796,32 @@ msgstr ""
" SHĒMA Shēmas nosaukums\n"
" CEĻŠ Ceļš pÄrvietojamÄm shÄ“mÄm\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:715
msgid " KEY The (optional) key within the schema\n"
msgstr " ATSLÄ’GA (neobligÄta) atslÄ“ga shÄ“mÄ\n"
-#: gio/gsettings-tool.c:714
+#: gio/gsettings-tool.c:719
msgid " KEY The key within the schema\n"
msgstr " ATSLÄ’GA AtslÄ“ga shÄ“mÄ\n"
-#: gio/gsettings-tool.c:718
+#: gio/gsettings-tool.c:723
msgid " VALUE The value to set\n"
msgstr " VĒRTĪBA Vērtība, ko iestatīt\n"
-#: gio/gsettings-tool.c:773
+#: gio/gsettings-tool.c:778
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "NevarÄ“ja ielÄdÄ“t shÄ“mas no “%s†— “%sâ€\n"
-#: gio/gsettings-tool.c:785
+#: gio/gsettings-tool.c:790
msgid "No schemas installed\n"
msgstr "Nav instalētu shēmu\n"
-#: gio/gsettings-tool.c:864
+#: gio/gsettings-tool.c:869
msgid "Empty schema name given\n"
msgstr "Dots tukšs shēmas nosaukums\n"
-#: gio/gsettings-tool.c:919
+#: gio/gsettings-tool.c:924
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Nav tÄdas atslÄ“gas “%sâ€\n"
@@ -3979,7 +3973,6 @@ msgstr "Gaida ligzdas nosacījumu — %s"
#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
#, c-format
-#| msgid "Error sending message: %s"
msgid "Unable to send message: %s"
msgstr "Nevar nosūtīt ziņojumu — %s"
@@ -4160,27 +4153,27 @@ msgstr "PagaidÄm nevar sameklÄ“t “%sâ€"
msgid "Error resolving “%sâ€"
msgstr "Kļūda, sameklÄ“jot “%sâ€"
-#: gio/gtlscertificate.c:298
+#: gio/gtlscertificate.c:419
msgid "No PEM-encoded private key found"
msgstr "Nav atrasts PEM iekodÄ“ta privÄta atslÄ“ga"
-#: gio/gtlscertificate.c:308
+#: gio/gtlscertificate.c:429
msgid "Cannot decrypt PEM-encoded private key"
msgstr "NevarÄ“ja atÅ¡ifrÄ“t PEM-iekodÄ“tu privÄto atslÄ“gu"
-#: gio/gtlscertificate.c:319
+#: gio/gtlscertificate.c:440
msgid "Could not parse PEM-encoded private key"
msgstr "NevarÄ“ja parsÄ“t PEM-iekodÄ“tu privÄto atslÄ“gu"
-#: gio/gtlscertificate.c:346
+#: gio/gtlscertificate.c:467
msgid "No PEM-encoded certificate found"
msgstr "Nav atrasts PEM-iekodÄ“ts sertifikÄts"
-#: gio/gtlscertificate.c:355
+#: gio/gtlscertificate.c:476
msgid "Could not parse PEM-encoded certificate"
msgstr "NevarÄ“ja parsÄ“t PEM-iekodÄ“tu sertifikÄtu"
-#: gio/gtlscertificate.c:710
+#: gio/gtlscertificate.c:832
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "Å is GTlsBackend neatbalsta PKCS #11 sertifikÄtu izveidoÅ¡anu"
@@ -4271,7 +4264,7 @@ msgstr "Kļūda, nolasot datnes deskriptoru — %s"
msgid "Error closing file descriptor: %s"
msgstr "Kļūda, aizverot datnes deskriptoru — %s"
-#: gio/gunixmounts.c:2780 gio/gunixmounts.c:2833
+#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
msgid "Filesystem root"
msgstr "Datņu sistēmas sakne"
@@ -4282,7 +4275,7 @@ msgstr "Datņu sistēmas sakne"
msgid "Error writing to file descriptor: %s"
msgstr "Kļūda, rakstot datnes deskriptorÄ â€” %s"
-#: gio/gunixsocketaddress.c:243
+#: gio/gunixsocketaddress.c:244
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "Abstraktas UNIX domēna ligzdas uz šīs sistēmas nav atbalstītas"
@@ -4353,129 +4346,129 @@ msgstr "Palaist dbus servisu"
msgid "Wrong args\n"
msgstr "Nepareizi parametri\n"
-#: glib/gbookmarkfile.c:768
+#: glib/gbookmarkfile.c:777
#, c-format
msgid "Unexpected attribute “%s†for element “%sâ€"
msgstr "NegaidÄ«ts atribÅ«ts “%s†elementam “%sâ€"
-#: glib/gbookmarkfile.c:779 glib/gbookmarkfile.c:859 glib/gbookmarkfile.c:869
-#: glib/gbookmarkfile.c:982
+#: glib/gbookmarkfile.c:788 glib/gbookmarkfile.c:868 glib/gbookmarkfile.c:878
+#: glib/gbookmarkfile.c:991
#, c-format
msgid "Attribute “%s†of element “%s†not found"
msgstr "Atribūts “%s†elementam “%s†netika atrasts"
-#: glib/gbookmarkfile.c:1191 glib/gbookmarkfile.c:1256
-#: glib/gbookmarkfile.c:1320 glib/gbookmarkfile.c:1330
+#: glib/gbookmarkfile.c:1200 glib/gbookmarkfile.c:1265
+#: glib/gbookmarkfile.c:1329 glib/gbookmarkfile.c:1339
#, c-format
msgid "Unexpected tag “%sâ€, tag “%s†expected"
msgstr "NegaidÄ«ta birka “%sâ€, tika gaidÄ«t birka “%sâ€"
-#: glib/gbookmarkfile.c:1216 glib/gbookmarkfile.c:1230
-#: glib/gbookmarkfile.c:1298 glib/gbookmarkfile.c:1344
+#: glib/gbookmarkfile.c:1225 glib/gbookmarkfile.c:1239
+#: glib/gbookmarkfile.c:1307 glib/gbookmarkfile.c:1353
#, c-format
msgid "Unexpected tag “%s†inside “%sâ€"
msgstr "NegaidÄ«ta birka “%s†iekÅ¡ “%sâ€"
-#: glib/gbookmarkfile.c:1624
+#: glib/gbookmarkfile.c:1633
#, c-format
msgid "Invalid date/time ‘%s’ in bookmark file"
msgstr "NederÄ«gs datums/laiks “%s†grÄmatzÄ«mes datnÄ“"
-#: glib/gbookmarkfile.c:1827
+#: glib/gbookmarkfile.c:1836
msgid "No valid bookmark file found in data dirs"
msgstr "Nav atrasts derÄ«ga grÄmatzÄ«mes datne datu mapÄ“s"
-#: glib/gbookmarkfile.c:2028
+#: glib/gbookmarkfile.c:2037
#, c-format
msgid "A bookmark for URI “%s†already exists"
msgstr "GrÄmatzÄ«me ar URI “%s†jau eksistÄ“"
-#: glib/gbookmarkfile.c:2077 glib/gbookmarkfile.c:2235
-#: glib/gbookmarkfile.c:2320 glib/gbookmarkfile.c:2400
-#: glib/gbookmarkfile.c:2485 glib/gbookmarkfile.c:2619
-#: glib/gbookmarkfile.c:2752 glib/gbookmarkfile.c:2887
-#: glib/gbookmarkfile.c:2929 glib/gbookmarkfile.c:3026
-#: glib/gbookmarkfile.c:3147 glib/gbookmarkfile.c:3341
-#: glib/gbookmarkfile.c:3482 glib/gbookmarkfile.c:3701
-#: glib/gbookmarkfile.c:3790 glib/gbookmarkfile.c:3879
-#: glib/gbookmarkfile.c:3998
+#: glib/gbookmarkfile.c:2086 glib/gbookmarkfile.c:2244
+#: glib/gbookmarkfile.c:2329 glib/gbookmarkfile.c:2409
+#: glib/gbookmarkfile.c:2494 glib/gbookmarkfile.c:2628
+#: glib/gbookmarkfile.c:2761 glib/gbookmarkfile.c:2896
+#: glib/gbookmarkfile.c:2938 glib/gbookmarkfile.c:3035
+#: glib/gbookmarkfile.c:3156 glib/gbookmarkfile.c:3350
+#: glib/gbookmarkfile.c:3491 glib/gbookmarkfile.c:3710
+#: glib/gbookmarkfile.c:3799 glib/gbookmarkfile.c:3888
+#: glib/gbookmarkfile.c:4007
#, c-format
msgid "No bookmark found for URI “%sâ€"
msgstr "Nav atrasta grÄmatzÄ«me URI “%sâ€"
-#: glib/gbookmarkfile.c:2409
+#: glib/gbookmarkfile.c:2418
#, c-format
msgid "No MIME type defined in the bookmark for URI “%sâ€"
msgstr "Nav definÄ“ts MIME tips grÄmatzÄ«mÄ“ URI “%sâ€"
-#: glib/gbookmarkfile.c:2494
+#: glib/gbookmarkfile.c:2503
#, c-format
msgid "No private flag has been defined in bookmark for URI “%sâ€"
msgstr "Nav definÄ“ti privÄtie karogi grÄmatzÄ«mÄ“s URI “%sâ€"
-#: glib/gbookmarkfile.c:3035
+#: glib/gbookmarkfile.c:3044
#, c-format
msgid "No groups set in bookmark for URI “%sâ€"
msgstr "Nav iestatÄ«tas grupas grÄmatzÄ«mÄ“s URI “%sâ€"
-#: glib/gbookmarkfile.c:3503 glib/gbookmarkfile.c:3711
+#: glib/gbookmarkfile.c:3512 glib/gbookmarkfile.c:3720
#, c-format
msgid "No application with name “%s†registered a bookmark for “%sâ€"
msgstr "Neviena lietotne ar nosaukumu “%s†nav reÄ£istrÄ“jusi “%s†grÄmatzÄ«mi"
-#: glib/gbookmarkfile.c:3734
+#: glib/gbookmarkfile.c:3743
#, c-format
msgid "Failed to expand exec line “%s†with URI “%sâ€"
msgstr "NeizdevÄs izvÄ“rst exec rindu “%s†ar URI “%sâ€"
-#: glib/gconvert.c:467
+#: glib/gconvert.c:468
msgid "Unrepresentable character in conversion input"
msgstr "Neattēlojama rakstzīme konversijas ievadē"
-#: glib/gconvert.c:494 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
+#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
#: glib/gutf8.c:1324
msgid "Partial character sequence at end of input"
msgstr "Daļēja simbolu secÄ«ba ievades beigÄs"
-#: glib/gconvert.c:763
+#: glib/gconvert.c:764
#, c-format
msgid "Cannot convert fallback “%s†to codeset “%sâ€"
msgstr "Nevar pÄrveidot atkÄpÅ¡anos “%s†uz rakstzÄ«mju kopu “%sâ€"
-#: glib/gconvert.c:935
+#: glib/gconvert.c:936
msgid "Embedded NUL byte in conversion input"
msgstr "Iegults NUL baits konversijas ievadē"
-#: glib/gconvert.c:956
+#: glib/gconvert.c:957
msgid "Embedded NUL byte in conversion output"
msgstr "Iegults NUL baits konversijas izvadē"
-#: glib/gconvert.c:1641
+#: glib/gconvert.c:1688
#, c-format
msgid "The URI “%s†is not an absolute URI using the “file†scheme"
msgstr "URI “%s†nav absolūtais URI, lietojot “file†shēmu"
-#: glib/gconvert.c:1651
+#: glib/gconvert.c:1698
#, c-format
msgid "The local file URI “%s†may not include a “#â€"
msgstr "LokÄlÄs datnes URI “%s†nedrÄ«kst saturÄ“t “#â€"
-#: glib/gconvert.c:1668
+#: glib/gconvert.c:1715
#, c-format
msgid "The URI “%s†is invalid"
msgstr "URI “%s†nav pareizs"
-#: glib/gconvert.c:1680
+#: glib/gconvert.c:1727
#, c-format
msgid "The hostname of the URI “%s†is invalid"
msgstr "Resursdatora nosaukuma URI “%s†nav pareizs"
-#: glib/gconvert.c:1696
+#: glib/gconvert.c:1743
#, c-format
msgid "The URI “%s†contains invalidly escaped characters"
msgstr "URI “%s†satur nepareizi veidotas atsoļa rakstzīmes"
-#: glib/gconvert.c:1768
+#: glib/gconvert.c:1815
#, c-format
msgid "The pathname “%s†is not an absolute path"
msgstr "Ceļa nosaukums “%s†nav absolūts ceļš"
@@ -4893,7 +4886,7 @@ msgctxt "GDateTime"
msgid "PM"
msgstr "PM"
-#: glib/gdir.c:154
+#: glib/gdir.c:156
#, c-format
msgid "Error opening directory “%sâ€: %s"
msgstr "Kļūda, atverot direktoriju “%s†— %s"
@@ -4921,7 +4914,7 @@ msgstr "Datne “%s†ir pÄrÄk liela"
msgid "Failed to read from file “%sâ€: %s"
msgstr "NeizdevÄs nolasÄ«t no datnes “%s†— %s"
-#: glib/gfileutils.c:904 glib/gfileutils.c:979 glib/gfileutils.c:1476
+#: glib/gfileutils.c:904 glib/gfileutils.c:979 glib/gfileutils.c:1468
#, c-format
msgid "Failed to open file “%sâ€: %s"
msgstr "NeizdevÄs atvÄ“rt datni “%s†— %s"
@@ -4951,27 +4944,27 @@ msgstr "NeizdevÄs rakstÄ«t datnÄ“ “%s†— write() neizdevÄs — %s"
msgid "Failed to write file “%sâ€: fsync() failed: %s"
msgstr "NeizdevÄs rakstÄ«t datnÄ“ “%s†— fsync() neizdevÄs — %s"
-#: glib/gfileutils.c:1365 glib/gfileutils.c:1780
+#: glib/gfileutils.c:1357 glib/gfileutils.c:1772
#, c-format
msgid "Failed to create file “%sâ€: %s"
msgstr "NeizdevÄs izveidot datni “%s†— %s"
-#: glib/gfileutils.c:1410
+#: glib/gfileutils.c:1402
#, c-format
msgid "Existing file “%s†could not be removed: g_unlink() failed: %s"
msgstr "NevarÄ“ja izdzÄ“st esoÅ¡o datni “%s†— g_unlink() neizdevÄs — %s"
-#: glib/gfileutils.c:1745
+#: glib/gfileutils.c:1737
#, c-format
msgid "Template “%s†invalid, should not contain a “%sâ€"
msgstr "Veidne “%s†ir nepareiza, nedrÄ«kstÄ“tu saturÄ“t “%sâ€"
-#: glib/gfileutils.c:1758
+#: glib/gfileutils.c:1750
#, c-format
msgid "Template “%s†doesn’t contain XXXXXX"
msgstr "Veidne “%s†nesatur XXXXXX"
-#: glib/gfileutils.c:2318 glib/gfileutils.c:2347
+#: glib/gfileutils.c:2310 glib/gfileutils.c:2339
#, c-format
msgid "Failed to read the symbolic link “%sâ€: %s"
msgstr "NeizdevÄs nolasÄ«t simbolisko saiti “%s†— %s"
@@ -4997,15 +4990,15 @@ msgstr "KanÄls pÄrtrÅ«kst daļējÄ rakstzÄ«mÄ“"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "NeizdevÄs izpildÄ«t jÄ“llasÄ«Å¡anu iekÅ¡ g_io_channel_read_to_end"
-#: glib/gkeyfile.c:789
+#: glib/gkeyfile.c:790
msgid "Valid key file could not be found in search dirs"
msgstr "Meklēšanas mapēs nevarēja atrast derīgu atslēgu"
-#: glib/gkeyfile.c:826
+#: glib/gkeyfile.c:827
msgid "Not a regular file"
msgstr "Nav parasta datne"
-#: glib/gkeyfile.c:1281
+#: glib/gkeyfile.c:1282
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5013,50 +5006,50 @@ msgstr ""
"AtslÄ“gu datne satur rindu “%sâ€, kura nav atslÄ“gas vÄ“rtÄ«bas pÄris, grupa vai "
"komentÄrs"
-#: glib/gkeyfile.c:1338
+#: glib/gkeyfile.c:1339
#, c-format
msgid "Invalid group name: %s"
msgstr "Nederīgs grupas nosaukums — %s"
-#: glib/gkeyfile.c:1360
+#: glib/gkeyfile.c:1361
msgid "Key file does not start with a group"
msgstr "AtslÄ“gu datne nesÄkas ar grupu"
-#: glib/gkeyfile.c:1386
+#: glib/gkeyfile.c:1387
#, c-format
msgid "Invalid key name: %s"
msgstr "Nederīgs atslēgas nosaukums — %s"
-#: glib/gkeyfile.c:1413
+#: glib/gkeyfile.c:1414
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "AtslÄ“gu datne satur neatbalstÄ«tu kodÄ“jumu “%sâ€"
-#: glib/gkeyfile.c:1662 glib/gkeyfile.c:1835 glib/gkeyfile.c:3288
-#: glib/gkeyfile.c:3352 glib/gkeyfile.c:3482 glib/gkeyfile.c:3614
-#: glib/gkeyfile.c:3760 glib/gkeyfile.c:3995 glib/gkeyfile.c:4062
+#: glib/gkeyfile.c:1663 glib/gkeyfile.c:1836 glib/gkeyfile.c:3289
+#: glib/gkeyfile.c:3353 glib/gkeyfile.c:3483 glib/gkeyfile.c:3615
+#: glib/gkeyfile.c:3761 glib/gkeyfile.c:3996 glib/gkeyfile.c:4063
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "AtslÄ“gu datnei nav grupa “%sâ€"
-#: glib/gkeyfile.c:1790
+#: glib/gkeyfile.c:1791
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "AtslÄ“gu datnei nav atslÄ“gas “%s†grupÄ â€œ%sâ€"
-#: glib/gkeyfile.c:1952 glib/gkeyfile.c:2068
+#: glib/gkeyfile.c:1953 glib/gkeyfile.c:2069
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "Atslēgu datne satur atslēgu “%s†ar vērtību “%s†kas nav UTF-8"
-#: glib/gkeyfile.c:1972 glib/gkeyfile.c:2088 glib/gkeyfile.c:2530
+#: glib/gkeyfile.c:1973 glib/gkeyfile.c:2089 glib/gkeyfile.c:2531
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr ""
"AtslÄ“gu datne satur atslÄ“gu “%sâ€. kurai ir vÄ“rtÄ«ba, kuru nevar interpretÄ“t."
-#: glib/gkeyfile.c:2748 glib/gkeyfile.c:3117
+#: glib/gkeyfile.c:2749 glib/gkeyfile.c:3118
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5065,36 +5058,36 @@ msgstr ""
"AtslÄ“gu datne satur atslÄ“gu “%s†grupÄ â€œ%s†kurai ir vÄ“rtÄ«ba, ko nevar "
"interpretēt."
-#: glib/gkeyfile.c:2826 glib/gkeyfile.c:2903
+#: glib/gkeyfile.c:2827 glib/gkeyfile.c:2904
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "AtslÄ“gai “%s†grupÄ â€œ%s†ir vÄ“rtÄ«ba “%sâ€, kur bija jÄbÅ«t %s"
-#: glib/gkeyfile.c:4305
+#: glib/gkeyfile.c:4306
msgid "Key file contains escape character at end of line"
msgstr "AtslÄ“gu datne satur atsoļa rakstzÄ«me rindas beigÄs"
-#: glib/gkeyfile.c:4327
+#: glib/gkeyfile.c:4328
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "AtslÄ“gu datne satur nederÄ«gu atsoļa sekvenci “%sâ€"
-#: glib/gkeyfile.c:4471
+#: glib/gkeyfile.c:4472
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "VÄ“rtÄ«bu “%s†nevar interpretÄ“t kÄ skaitli."
-#: glib/gkeyfile.c:4485
+#: glib/gkeyfile.c:4486
#, c-format
msgid "Integer value “%s†out of range"
msgstr "VeselÄ skaitļa “%s†vÄ“rtÄ«ba ir Ärpus apgabala"
-#: glib/gkeyfile.c:4518
+#: glib/gkeyfile.c:4519
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "VÄ“rtÄ«bu “%s†nevar interpretÄ“t kÄ peldoÅ¡o komatu."
-#: glib/gkeyfile.c:4557
+#: glib/gkeyfile.c:4558
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "VÄ“rtÄ«bu “%s†nevar interpretÄ“t kÄ BÅ«la vÄ“rtÄ«bu."
@@ -5377,248 +5370,248 @@ msgstr "DubultÄ vÄ“rtÄ«ba “%s†priekÅ¡ %s ir Ärpus apgabala"
msgid "Error parsing option %s"
msgstr "Kļūda, parsējot opciju %s"
-#: glib/goption.c:1570 glib/goption.c:1683
+#: glib/goption.c:1561 glib/goption.c:1674
#, c-format
msgid "Missing argument for %s"
msgstr "Trūkst %s arguments"
-#: glib/goption.c:2194
+#: glib/goption.c:2185
#, c-format
msgid "Unknown option %s"
msgstr "NezinÄma opcija %s"
-#: glib/gregex.c:257
+#: glib/gregex.c:255
msgid "corrupted object"
msgstr "bojÄts objekts"
-#: glib/gregex.c:259
+#: glib/gregex.c:257
msgid "internal error or corrupted object"
msgstr "IekÅ¡Ä“jÄ kļūda vai bojÄts objekts"
-#: glib/gregex.c:261
+#: glib/gregex.c:259
msgid "out of memory"
msgstr "beigusies atmiņa"
-#: glib/gregex.c:266
+#: glib/gregex.c:264
msgid "backtracking limit reached"
msgstr "atpakaļ izsekošanas limits ir sasniegts"
-#: glib/gregex.c:278 glib/gregex.c:286
+#: glib/gregex.c:276 glib/gregex.c:284
msgid "the pattern contains items not supported for partial matching"
msgstr "raksts satur elementus, kurus neatbalsta daļējÄ atbilstÄ«ba"
-#: glib/gregex.c:280
+#: glib/gregex.c:278
msgid "internal error"
msgstr "iekšēja kļūda"
-#: glib/gregex.c:288
+#: glib/gregex.c:286
msgid "back references as conditions are not supported for partial matching"
msgstr "atpakaļ atsauces kÄ nosacÄ«jumus neatbalsta daļējÄ atbilstÄ«ba"
-#: glib/gregex.c:297
+#: glib/gregex.c:295
msgid "recursion limit reached"
msgstr "rekursiju limits ir sasniegts"
-#: glib/gregex.c:299
+#: glib/gregex.c:297
msgid "invalid combination of newline flags"
msgstr "nederÄ«ga jauno rindu karogu kombinÄcija"
-#: glib/gregex.c:301
+#: glib/gregex.c:299
msgid "bad offset"
msgstr "slikta nobīde"
-#: glib/gregex.c:303
+#: glib/gregex.c:301
msgid "short utf8"
msgstr "Ä«ss utf8"
-#: glib/gregex.c:305
+#: glib/gregex.c:303
msgid "recursion loop"
msgstr "rekursijas cikls"
-#: glib/gregex.c:309
+#: glib/gregex.c:307
msgid "unknown error"
msgstr "nezinÄma kļūda"
-#: glib/gregex.c:329
+#: glib/gregex.c:327
msgid "\\ at end of pattern"
msgstr "\\ raksta beigÄs"
-#: glib/gregex.c:332
+#: glib/gregex.c:330
msgid "\\c at end of pattern"
msgstr "\\c raksta beigÄs"
-#: glib/gregex.c:335
+#: glib/gregex.c:333
msgid "unrecognized character following \\"
msgstr "pēc \\ seko neatpazīta rakstzīme"
-#: glib/gregex.c:338
+#: glib/gregex.c:336
msgid "numbers out of order in {} quantifier"
msgstr "skaitļi nav pareizÄ secÄ«bÄ {} kvantorÄ"
-#: glib/gregex.c:341
+#: glib/gregex.c:339
msgid "number too big in {} quantifier"
msgstr "skaitlis pÄrÄk liels {} kvantorÄ"
-#: glib/gregex.c:344
+#: glib/gregex.c:342
msgid "missing terminating ] for character class"
msgstr "trūkst beigu “]†rakstzīmju klasei"
-#: glib/gregex.c:347
+#: glib/gregex.c:345
msgid "invalid escape sequence in character class"
msgstr "nederīga atsoļu sekvence rakstzīmju klasē"
-#: glib/gregex.c:350
+#: glib/gregex.c:348
msgid "range out of order in character class"
msgstr "rakstzÄ«mju klasÄ“ apgabals ir Ärpus secÄ«bas"
-#: glib/gregex.c:353
+#: glib/gregex.c:351
msgid "nothing to repeat"
msgstr "nav ko atkÄrtot"
-#: glib/gregex.c:357
+#: glib/gregex.c:355
msgid "unexpected repeat"
msgstr "negaidÄ«ta atkÄrtoÅ¡anÄs"
-#: glib/gregex.c:360
+#: glib/gregex.c:358
msgid "unrecognized character after (? or (?-"
msgstr "neatpazīta rakstzīme pēc (? vai (?-"
-#: glib/gregex.c:363
+#: glib/gregex.c:361
msgid "POSIX named classes are supported only within a class"
msgstr "POSIX nosauktÄs klases ir atbalstÄ«tas tikai klasÄ“s"
-#: glib/gregex.c:366
+#: glib/gregex.c:364
msgid "missing terminating )"
msgstr "trūkst beigu )"
-#: glib/gregex.c:369
+#: glib/gregex.c:367
msgid "reference to non-existent subpattern"
msgstr "atsauce uz neesošu apakšrakstu"
-#: glib/gregex.c:372
+#: glib/gregex.c:370
msgid "missing ) after comment"
msgstr "trÅ«kst ) pÄ“c komentÄra"
-#: glib/gregex.c:375
+#: glib/gregex.c:373
msgid "regular expression is too large"
msgstr "regulÄrÄ izteiksme ir pÄrÄk gara"
-#: glib/gregex.c:378
+#: glib/gregex.c:376
msgid "failed to get memory"
msgstr "neizdevÄs iegÅ«t atmiņu"
-#: glib/gregex.c:382
+#: glib/gregex.c:380
msgid ") without opening ("
msgstr ") bez atveroÅ¡Äs ("
-#: glib/gregex.c:386
+#: glib/gregex.c:384
msgid "code overflow"
msgstr "koda pÄrpilde"
-#: glib/gregex.c:390
+#: glib/gregex.c:388
msgid "unrecognized character after (?<"
msgstr "neatpazīta rakstzīme pēc (?<"
-#: glib/gregex.c:393
+#: glib/gregex.c:391
msgid "lookbehind assertion is not fixed length"
msgstr "lookbehind pieņēmums nav fiksēta garuma"
-#: glib/gregex.c:396
+#: glib/gregex.c:394
msgid "malformed number or name after (?("
msgstr "slikti formatēts skaitlis vai nosaukums pēc (?("
-#: glib/gregex.c:399
+#: glib/gregex.c:397
msgid "conditional group contains more than two branches"
msgstr "nosacÄ«juma grupa satur vairÄk kÄ divus zarus"
-#: glib/gregex.c:402
+#: glib/gregex.c:400
msgid "assertion expected after (?("
msgstr "pēc (?( tiek sagaidīts pieņēmums"
#. translators: '(?R' and '(?[+-]digits' are both meant as (groups of)
#. * sequences here, '(?-54' would be an example for the second group.
#.
-#: glib/gregex.c:409
+#: glib/gregex.c:407
msgid "(?R or (?[+-]digits must be followed by )"
msgstr "pÄ“c (?R vai (?[+-]digits ir jÄseko )"
-#: glib/gregex.c:412
+#: glib/gregex.c:410
msgid "unknown POSIX class name"
msgstr "nezinÄms POSIX klases nosaukums"
-#: glib/gregex.c:415
+#: glib/gregex.c:413
msgid "POSIX collating elements are not supported"
msgstr "POSIX savÄktie elementi nav atbalstÄ«ti"
-#: glib/gregex.c:418
+#: glib/gregex.c:416
msgid "character value in \\x{...} sequence is too large"
msgstr "rakstzÄ«mes vÄ“rtÄ«ba \\x{...} sekvencÄ“ ir pÄrÄk liela"
-#: glib/gregex.c:421
+#: glib/gregex.c:419
msgid "invalid condition (?(0)"
msgstr "nederīgs nosacījums (?(0)"
-#: glib/gregex.c:424
+#: glib/gregex.c:422
msgid "\\C not allowed in lookbehind assertion"
msgstr "\\C nav atļauts lookbehind pieņēmumÄ"
-#: glib/gregex.c:431
+#: glib/gregex.c:429
msgid "escapes \\L, \\l, \\N{name}, \\U, and \\u are not supported"
msgstr "atsoļi \\L, \\l, \\N{nosaukums}, \\U un \\u nav atbalstīti"
-#: glib/gregex.c:434
+#: glib/gregex.c:432
msgid "recursive call could loop indefinitely"
msgstr "rekursīvais izsaukums varētu cikloties bezgalīgi"
-#: glib/gregex.c:438
+#: glib/gregex.c:436
msgid "unrecognized character after (?P"
msgstr "neatpazīta rakstzīme pēc (?P"
-#: glib/gregex.c:441
+#: glib/gregex.c:439
msgid "missing terminator in subpattern name"
msgstr "trÅ«kst nobeiguma apakÅ¡raksta nosaukumÄ"
-#: glib/gregex.c:444
+#: glib/gregex.c:442
msgid "two named subpatterns have the same name"
msgstr "divi nosaukti apakÅ¡raksti ir ar vienÄdiem nosaukumiem"
-#: glib/gregex.c:447
+#: glib/gregex.c:445
msgid "malformed \\P or \\p sequence"
msgstr "slikti formatēta \\P vai \\p sekvence"
-#: glib/gregex.c:450
+#: glib/gregex.c:448
msgid "unknown property name after \\P or \\p"
msgstr "nezinÄms Ä«paÅ¡Ä«bas nosaukums pÄ“c \\P vai \\p"
-#: glib/gregex.c:453
+#: glib/gregex.c:451
msgid "subpattern name is too long (maximum 32 characters)"
msgstr "apakÅ¡raksta nosaukums ir pÄrÄk liels (maksimums ir 32 rakstzÄ«mes)"
-#: glib/gregex.c:456
+#: glib/gregex.c:454
msgid "too many named subpatterns (maximum 10,000)"
msgstr "pÄrÄk daudz nosauktu apakÅ¡rakstu (maksimums ir 10 000)"
-#: glib/gregex.c:459
+#: glib/gregex.c:457
msgid "octal value is greater than \\377"
msgstr "astotnieku vÄ“rtÄ«ba ir lielÄka nekÄ \\377"
-#: glib/gregex.c:463
+#: glib/gregex.c:461
msgid "overran compiling workspace"
msgstr "pÄrtÄ“rÄ“ta kompilÄ“Å¡anas darba telpa"
-#: glib/gregex.c:467
+#: glib/gregex.c:465
msgid "previously-checked referenced subpattern not found"
msgstr "iepriekÅ¡ pÄrbaudÄ«ts norÄdÄ«tais apakÅ¡raksts nav atrasts"
-#: glib/gregex.c:470
+#: glib/gregex.c:468
msgid "DEFINE group contains more than one branch"
msgstr "DEFINE grupa satur vairÄk kÄ vienu zaru"
-#: glib/gregex.c:473
+#: glib/gregex.c:471
msgid "inconsistent NEWLINE options"
msgstr "nekonsekventas NEWLINE opcijas"
-#: glib/gregex.c:476
+#: glib/gregex.c:474
msgid ""
"\\g is not followed by a braced, angle-bracketed, or quoted name or number, "
"or by a plain number"
@@ -5626,130 +5619,130 @@ msgstr ""
"pÄ“c \\g neseko nosaukums iekavÄs, leņķa iekavÄs vai pÄ“diņÄs vai vienkÄrÅ¡s "
"skaitlis"
-#: glib/gregex.c:480
+#: glib/gregex.c:478
msgid "a numbered reference must not be zero"
msgstr "skaitliska atsauce nevar būt nulle"
-#: glib/gregex.c:483
+#: glib/gregex.c:481
msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
msgstr "arguments nav atļauts priekš (*ACCEPT), (*FAIL) vai (*COMMIT)"
-#: glib/gregex.c:486
+#: glib/gregex.c:484
msgid "(*VERB) not recognized"
msgstr "(*VERB) nav atpazīts"
-#: glib/gregex.c:489
+#: glib/gregex.c:487
msgid "number is too big"
msgstr "skaitlis ir pÄrÄk liels"
-#: glib/gregex.c:492
+#: glib/gregex.c:490
msgid "missing subpattern name after (?&"
msgstr "trūkst apakšraksta nosaukums pēc (?&"
-#: glib/gregex.c:495
+#: glib/gregex.c:493
msgid "digit expected after (?+"
msgstr "tika gaidīts cipars pēc (?+"
-#: glib/gregex.c:498
+#: glib/gregex.c:496
msgid "] is an invalid data character in JavaScript compatibility mode"
msgstr "] ir nederÄ«ga datu rakstzÄ«me JavaScript savietojamÄ«bas režīmÄ"
-#: glib/gregex.c:501
+#: glib/gregex.c:499
msgid "different names for subpatterns of the same number are not allowed"
msgstr "dažÄdi nosaukumi apakÅ¡rakstiem ir ar vienÄdiem numuriem nav atļauti"
-#: glib/gregex.c:504
+#: glib/gregex.c:502
msgid "(*MARK) must have an argument"
msgstr "(*MARK) jÄbÅ«t ar argumentu"
-#: glib/gregex.c:507
+#: glib/gregex.c:505
msgid "\\c must be followed by an ASCII character"
msgstr "\\c jÄseko ASCII rakstzÄ«mei"
-#: glib/gregex.c:510
+#: glib/gregex.c:508
msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
msgstr "pÄ“c \\k neseko nosaukums iekavÄs, leņķa iekavÄs vai pÄ“diņÄs"
-#: glib/gregex.c:513
+#: glib/gregex.c:511
msgid "\\N is not supported in a class"
msgstr "\\N nav atbalstīts klasē"
-#: glib/gregex.c:516
+#: glib/gregex.c:514
msgid "too many forward references"
msgstr "pÄrÄk daudz atsauÄu uz priekÅ¡u"
-#: glib/gregex.c:519
+#: glib/gregex.c:517
msgid "name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)"
msgstr "nosaukums ir pÄrÄk garÅ¡ iekÅ¡ (*MARK), (*PRUNE), (*SKIP) vai (*THEN)"
-#: glib/gregex.c:522
+#: glib/gregex.c:520
msgid "character value in \\u.... sequence is too large"
msgstr "rakstzÄ«mes vÄ“rtÄ«ba \\u.... sekvencÄ“ ir pÄrÄk liela"
-#: glib/gregex.c:745 glib/gregex.c:1983
+#: glib/gregex.c:743 glib/gregex.c:1988
#, c-format
msgid "Error while matching regular expression %s: %s"
msgstr "Kļūda, kamÄ“r meklÄ“ atbilstÄ«bas regulÄrajai izteiksmei %s — %s"
-#: glib/gregex.c:1316
+#: glib/gregex.c:1321
msgid "PCRE library is compiled without UTF8 support"
msgstr "PCRE bibliotēka ir kompilēta bez UTF8 atbalsta"
-#: glib/gregex.c:1320
+#: glib/gregex.c:1325
msgid "PCRE library is compiled without UTF8 properties support"
msgstr "PCRE bibliotēka ir kompilēta bez UTF8 īpašību atbalsta"
-#: glib/gregex.c:1328
+#: glib/gregex.c:1333
msgid "PCRE library is compiled with incompatible options"
msgstr "PCRE bibliotēka ir kompilēta ar UTF8 īpašību atbalstu"
-#: glib/gregex.c:1357
+#: glib/gregex.c:1362
#, c-format
msgid "Error while optimizing regular expression %s: %s"
msgstr "Kļūda, optimizÄ“jot regulÄro izteiksmi %s — %s"
-#: glib/gregex.c:1437
+#: glib/gregex.c:1442
#, c-format
msgid "Error while compiling regular expression %s at char %d: %s"
msgstr "Kļūda, kompilÄ“jot regulÄro izteiksmi %s pie rakstzÄ«mes %d — %s"
-#: glib/gregex.c:2419
+#: glib/gregex.c:2427
msgid "hexadecimal digit or “}†expected"
msgstr "tika gaidÄ«ts heksadecimÄlais cipars vai “}â€"
-#: glib/gregex.c:2435
+#: glib/gregex.c:2443
msgid "hexadecimal digit expected"
msgstr "tika gaidÄ«ts heksadecimÄlais cipars"
-#: glib/gregex.c:2475
+#: glib/gregex.c:2483
msgid "missing “<†in symbolic reference"
msgstr "simboliskajÄ norÄdÄ“ trÅ«kst “<â€"
-#: glib/gregex.c:2484
+#: glib/gregex.c:2492
msgid "unfinished symbolic reference"
msgstr "nepabeigta simboliskÄ norÄde"
-#: glib/gregex.c:2491
+#: glib/gregex.c:2499
msgid "zero-length symbolic reference"
msgstr "simboliskÄs norÄdes garums ir nulle"
-#: glib/gregex.c:2502
+#: glib/gregex.c:2510
msgid "digit expected"
msgstr "tika gaidīts cipars"
-#: glib/gregex.c:2520
+#: glib/gregex.c:2528
msgid "illegal symbolic reference"
msgstr "neatļauta simboliskÄ norÄde"
-#: glib/gregex.c:2583
+#: glib/gregex.c:2591
msgid "stray final “\\â€"
msgstr "noklÄ«dis beigu “\\â€"
-#: glib/gregex.c:2587
+#: glib/gregex.c:2595
msgid "unknown escape sequence"
msgstr "nezinÄma atsoļa sekvence"
-#: glib/gregex.c:2597
+#: glib/gregex.c:2605
#, c-format
msgid "Error while parsing replacement text “%s†at char %lu: %s"
msgstr "Kļūda, apstrÄdÄjot aizvietoÅ¡anas tekstu “%s†pie rakstzÄ«mes %lu — %s"
@@ -5778,82 +5771,82 @@ msgstr ""
msgid "Text was empty (or contained only whitespace)"
msgstr "Teksts bija tukšs (vai saturēja tikai tukšumus)"
-#: glib/gspawn.c:323
+#: glib/gspawn.c:308
#, c-format
msgid "Failed to read data from child process (%s)"
msgstr "Nevarēja nolasīt datus no bērnprocesa (%s)"
-#: glib/gspawn.c:468
+#: glib/gspawn.c:458
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "Negaidīta kļūda, lasot datus no bērnprocesa (%s)"
-#: glib/gspawn.c:553
+#: glib/gspawn.c:543
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Negaidīta kļūda waitpid() (%s)"
-#: glib/gspawn.c:1061 glib/gspawn-win32.c:1329
+#: glib/gspawn.c:1152 glib/gspawn-win32.c:1407
#, c-format
msgid "Child process exited with code %ld"
msgstr "BÄ“rna process beidza darbu ar kodu %ld"
-#: glib/gspawn.c:1069
+#: glib/gspawn.c:1160
#, c-format
msgid "Child process killed by signal %ld"
msgstr "BÄ“rna process tika pÄrtraukts ar signÄlu %ld"
-#: glib/gspawn.c:1076
+#: glib/gspawn.c:1167
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "BÄ“rna process tika apturÄ“ts ar signÄlu %ld"
-#: glib/gspawn.c:1083
+#: glib/gspawn.c:1174
#, c-format
msgid "Child process exited abnormally"
msgstr "BÄ“rna process beidza darbu nenormÄli"
-#: glib/gspawn.c:1548 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1793 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "NevarÄ“ja nolasÄ«t no bÄ“rna programkanÄla (%s)"
-#: glib/gspawn.c:1806
+#: glib/gspawn.c:2095
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Nevarēja radīt bērnprocesu “%s†(%s)"
-#: glib/gspawn.c:1922
+#: glib/gspawn.c:2212
#, c-format
msgid "Failed to fork (%s)"
msgstr "NeizdevÄs sadalÄ«t (%s)"
-#: glib/gspawn.c:2077 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2372 glib/gspawn-win32.c:381
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "NevarÄ“ja pÄriet uz direktoriju “%s†(%s)"
-#: glib/gspawn.c:2087
+#: glib/gspawn.c:2382
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Nevarēja izpildīt bērnprocesu “%s†(%s)"
-#: glib/gspawn.c:2097
+#: glib/gspawn.c:2392
#, c-format
msgid "Failed to redirect output or input of child process (%s)"
msgstr "Nevarēja novadīt bērnprocesa (%s) izvadi vai ievadi"
-#: glib/gspawn.c:2106
+#: glib/gspawn.c:2401
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Nevarēja sazarot bērnprocesu (%s)"
-#: glib/gspawn.c:2114
+#: glib/gspawn.c:2409
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "NezinÄma kļūda, izpildot bÄ“rnprocesu “%sâ€"
-#: glib/gspawn.c:2138
+#: glib/gspawn.c:2433
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr ""
@@ -5878,48 +5871,48 @@ msgstr "Nevarēja izpildīt bērnprocesu (%s)"
msgid "Invalid program name: %s"
msgstr "Nederīgs programmas nosaukums — %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:725
+#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "NederÄ«ga virkne argumenta vektorÄ pie %d — %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:740
+#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Nederīga virkne vidē — %s"
-#: glib/gspawn-win32.c:721
+#: glib/gspawn-win32.c:775
#, c-format
msgid "Invalid working directory: %s"
msgstr "Nederīga darba mape — %s"
-#: glib/gspawn-win32.c:783
+#: glib/gspawn-win32.c:837
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "NeizdevÄs izpildÄ«t palÄ«ga programmu (%s)"
-#: glib/gspawn-win32.c:1056
+#: glib/gspawn-win32.c:1064
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
msgstr ""
"Negaidīta kļūda iekš g_io_channel_win32_poll(), lasot datus no bērnprocesa"
-#: glib/gstrfuncs.c:3335 glib/gstrfuncs.c:3437
+#: glib/gstrfuncs.c:3338 glib/gstrfuncs.c:3440
msgid "Empty string is not a number"
msgstr "Tukša virkne nav skaitlis"
-#: glib/gstrfuncs.c:3359
+#: glib/gstrfuncs.c:3362
#, c-format
msgid "“%s†is not a signed number"
msgstr "“%s†nav skaitlis ar zīmi"
-#: glib/gstrfuncs.c:3369 glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3372 glib/gstrfuncs.c:3476
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Skaitlis “%s†ir Ärpus robežÄm [%s, %s]"
-#: glib/gstrfuncs.c:3463
+#: glib/gstrfuncs.c:3466
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "“%s†nav skaitlis bez zīmes"
@@ -5949,7 +5942,6 @@ msgstr "Nepareizi iekodēta IP adrese “%.*s†iekš URI"
#: glib/guri.c:613
#, c-format
-#| msgid "Illegal encoded IP address ‘%.*s’ in URI"
msgid "Illegal internationalized hostname ‘%.*s’ in URI"
msgstr "Nepareizi internacionalizēts resursdatora nosaukums “%.*s†iekš URI"
@@ -5977,7 +5969,7 @@ msgstr "URI “%s†nav resursdatora komponentes"
msgid "URI is not absolute, and no base URI was provided"
msgstr "URI nav absolÅ«ts un netika dots bÄzes URI"
-#: glib/guri.c:2209
+#: glib/guri.c:2213
msgid "Missing ‘=’ and parameter value"
msgstr "Trūkst “=†un parametra vērtības"
@@ -5999,150 +5991,150 @@ msgid "Character out of range for UTF-16"
msgstr "RakstzÄ«me nav UTF-16 apgabalÄ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2767
+#: glib/gutils.c:2727
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2769
+#: glib/gutils.c:2729
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2771
+#: glib/gutils.c:2731
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2773
+#: glib/gutils.c:2733
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2775
+#: glib/gutils.c:2735
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2777
+#: glib/gutils.c:2737
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2781
+#: glib/gutils.c:2741
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2783
+#: glib/gutils.c:2743
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2785
+#: glib/gutils.c:2745
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2787
+#: glib/gutils.c:2747
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2789
+#: glib/gutils.c:2749
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2791
+#: glib/gutils.c:2751
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2795
+#: glib/gutils.c:2755
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2797
+#: glib/gutils.c:2757
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2799
+#: glib/gutils.c:2759
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2801
+#: glib/gutils.c:2761
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2803
+#: glib/gutils.c:2763
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2805
+#: glib/gutils.c:2765
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2809
+#: glib/gutils.c:2769
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2811
+#: glib/gutils.c:2771
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2813
+#: glib/gutils.c:2773
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2815
+#: glib/gutils.c:2775
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2817
+#: glib/gutils.c:2777
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2819
+#: glib/gutils.c:2779
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2853 glib/gutils.c:2970
+#: glib/gutils.c:2813 glib/gutils.c:2930
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
@@ -6150,7 +6142,7 @@ msgstr[0] "%u baits"
msgstr[1] "%u baiti"
msgstr[2] "%u baitu"
-#: glib/gutils.c:2857
+#: glib/gutils.c:2817
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6159,7 +6151,7 @@ msgstr[1] "%u biti"
msgstr[2] "%u bitu"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2924
+#: glib/gutils.c:2884
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6168,7 +6160,7 @@ msgstr[1] "%s baiti"
msgstr[2] "%s baitu"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2929
+#: glib/gutils.c:2889
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6181,36 +6173,39 @@ msgstr[2] "%s bitu"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2983
+#: glib/gutils.c:2943
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2988
+#: glib/gutils.c:2948
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2993
+#: glib/gutils.c:2953
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:2998
+#: glib/gutils.c:2958
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3003
+#: glib/gutils.c:2963
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3008
+#: glib/gutils.c:2968
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
+#~ msgid "Unable to load /var/lib/dbus/machine-id or /etc/machine-id: "
+#~ msgstr "NevarÄ“ja ielÄdÄ“t /var/lib/dbus/machine-id vai /etc/machine-id: "
+
#~ msgid "Unknown error on connect"
#~ msgstr "NezinÄma kļūda savienojoties"
diff --git a/po/ne.po b/po/ne.po
index c8f7ce883..e0659977f 100644
--- a/po/ne.po
+++ b/po/ne.po
@@ -11,16 +11,26 @@ msgid ""
msgstr ""
"Project-Id-Version: Gnome Nepali Translation Project\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2021-03-27 11:34+0000\n"
-"PO-Revision-Date: 2021-05-02 12:53+0545\n"
+"POT-Creation-Date: 2022-04-08 12:19+0000\n"
+"PO-Revision-Date: 2022-05-11 13:16+0545\n"
"Last-Translator: Pawan Chitrakar <chautari@gmail.com>\n"
"Language-Team: Nepali Translation Team <chautari@gmail.com>\n"
"Language: ne\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 2.4.2\n"
"Plural-Forms: nplurals=2;plural=(n!=1);\n"
+"X-Generator: Poedit 3.0.1\n"
+
+#: gio/gappinfo.c:333
+#, fuzzy
+msgid "Setting default applications not supported yet"
+msgstr "%s: %s देखि %sमा सेट गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿"
+
+#: gio/gappinfo.c:366
+#, fuzzy
+msgid "Setting application as last used for type not supported yet"
+msgstr "%s: %s देखि %sमा सेट गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿"
#: gio/gapplication.c:500
msgid "GApplication options"
@@ -32,23 +42,22 @@ msgstr "जि-अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤— विकलà¥à¤ªà¤¹à¤°à¥‚ देख
#: gio/gapplication.c:545
msgid "Enter GApplication service mode (use from D-Bus service files)"
-msgstr ""
+msgstr "जी-अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤— सेवा मोड पà¥à¤°à¤µà¤¿à¤·à¥à¤Ÿ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ (D-Bus सेवा फाइलबाट पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥)"
#: gio/gapplication.c:557
msgid "Override the application’s ID"
msgstr "अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤—को आईडी अधिलेखन गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: gio/gapplication.c:569
-#, fuzzy
msgid "Replace the running instance"
-msgstr "रिजेलको हाल चलिरहेको दृषà¥à¤Ÿà¤¾à¤¨à¥à¤¤ बदलà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+msgstr "चालॠदृषà¥à¤Ÿà¤¾à¤¨à¥à¤¤ बदलà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:493 gio/gsettings-tool.c:567
+#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227 gio/gresource-tool.c:494
+#: gio/gsettings-tool.c:584
msgid "Print help"
msgstr "मदà¥à¤¦à¤¤ मà¥à¤¦à¥à¤°à¤£ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: gio/gapplication-tool.c:47 gio/gresource-tool.c:494 gio/gresource-tool.c:562
+#: gio/gapplication-tool.c:47 gio/gresource-tool.c:495 gio/gresource-tool.c:563
msgid "[COMMAND]"
msgstr "[आदेश]"
@@ -56,7 +65,7 @@ msgstr "[आदेश]"
msgid "Print version"
msgstr "मà¥à¤¦à¥à¤°à¤£ संसà¥à¤•à¤°à¤£"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:573
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "मà¥à¤¦à¥à¤°à¤£ संसà¥à¤•à¤°à¤£ विवरण अनि बाहिरनà¥à¤¹à¥‹à¤¸à¥"
@@ -66,7 +75,7 @@ msgstr "अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤—हरूको सूची"
#: gio/gapplication-tool.c:54
msgid "List the installed D-Bus activatable applications (by .desktop files)"
-msgstr ""
+msgstr "सà¥à¤¥à¤¾à¤ªà¤¨à¤¾ गरिà¤à¤•à¥‹ D-Bus सकà¥à¤°à¤¿à¤¯ अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤—हरूको सूची बनाउनà¥à¤¹à¥‹à¤¸à¥ (.desktop files दà¥à¤µà¤¾à¤°à¤¾)"
#: gio/gapplication-tool.c:57
msgid "Launch an application"
@@ -98,14 +107,13 @@ msgstr "उपलबà¥à¤§ कारà¥à¤¯à¤¹à¤°à¥‚को सूची"
#: gio/gapplication-tool.c:66
msgid "List static actions for an application (from .desktop file)"
-msgstr ""
+msgstr "(.desktop फाइलबाट) अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤—का लागि सà¥à¤¥à¤¿à¤° कारà¥à¤¯à¤¹à¤°à¥‚ सूचीबदà¥à¤§ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: gio/gapplication-tool.c:67 gio/gapplication-tool.c:73
msgid "APPID"
msgstr "APPID"
-#: gio/gapplication-tool.c:72 gio/gapplication-tool.c:135 gio/gdbus-tool.c:106
-#: gio/gio-tool.c:224
+#: gio/gapplication-tool.c:72 gio/gapplication-tool.c:135 gio/gdbus-tool.c:106 gio/gio-tool.c:224
msgid "COMMAND"
msgstr "आदेश"
@@ -117,15 +125,14 @@ msgstr "विसà¥à¤¤à¥ƒà¤¤ मदà¥à¤¦à¤¤ छापà¥à¤¨ आदेश"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "D-Bus ढाà¤à¤šà¤¾à¤®à¤¾ अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤— पहिचायक (जसà¥à¤¤à¥ˆ: org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
-#: gio/gresource-tool.c:500 gio/gresource-tool.c:566
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820 gio/glib-compile-resources.c:826
+#: gio/glib-compile-resources.c:855 gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "फाइल"
#: gio/gapplication-tool.c:74
msgid "Optional relative or absolute filenames, or URIs to open"
-msgstr ""
+msgstr "वैकलà¥à¤ªà¤¿à¤• समà¥à¤¬à¤¨à¥à¤§à¤¿à¤¤ वा पूरà¥à¤£ फाइलनाम, वा URIs खोलà¥à¤¨"
#: gio/gapplication-tool.c:75
msgid "ACTION"
@@ -141,9 +148,9 @@ msgstr "परामिति"
#: gio/gapplication-tool.c:76
msgid "Optional parameter to the action invocation, in GVariant format"
-msgstr ""
+msgstr "GVariant ढाà¤à¤šà¤¾à¤®à¤¾, कà¥à¤°à¤¿à¤¯à¤¾ आवà¥à¤¨à¥à¤œà¤¨à¤®à¤¾ वैकलà¥à¤ªà¤¿à¤• परिमिति"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:531 gio/gsettings-tool.c:659
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -156,8 +163,7 @@ msgstr ""
msgid "Usage:\n"
msgstr "उपयोग: \n"
-#: gio/gapplication-tool.c:116 gio/gresource-tool.c:556
-#: gio/gsettings-tool.c:694
+#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557 gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "तरà¥à¤•à¤¹à¤°à¥‚:\n"
@@ -238,7 +244,7 @@ msgstr "कारà¥à¤¯à¤²à¥‡ अधिकतम à¤à¤‰à¤Ÿà¤¾ परिमित
#: gio/gapplication-tool.c:413
msgid "list-actions command takes only the application id"
-msgstr ""
+msgstr "सूची-कारà¥à¤¯ आदेशले अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤— आईडी मातà¥à¤° लिनà¥à¤›"
#: gio/gapplication-tool.c:423
#, c-format
@@ -255,26 +261,22 @@ msgstr ""
"\n"
"\n"
-#: gio/gbufferedinputstream.c:420 gio/gbufferedinputstream.c:498
-#: gio/ginputstream.c:179 gio/ginputstream.c:379 gio/ginputstream.c:646
-#: gio/ginputstream.c:1048 gio/goutputstream.c:223 gio/goutputstream.c:1049
+#: gio/gbufferedinputstream.c:420 gio/gbufferedinputstream.c:498 gio/ginputstream.c:179 gio/ginputstream.c:379
+#: gio/ginputstream.c:648 gio/ginputstream.c:1050 gio/goutputstream.c:223 gio/goutputstream.c:1049
#: gio/gpollableinputstream.c:205 gio/gpollableoutputstream.c:277
#, c-format
msgid "Too large count value passed to %s"
msgstr "अति ठूलो गणना मान %s मा पास गरियो"
-#: gio/gbufferedinputstream.c:891 gio/gbufferedoutputstream.c:575
-#: gio/gdataoutputstream.c:562
+#: gio/gbufferedinputstream.c:891 gio/gbufferedoutputstream.c:575 gio/gdataoutputstream.c:562
msgid "Seek not supported on base stream"
msgstr "आधार सà¥à¤Ÿà¥à¤°à¤¿à¤®à¤®à¤¾ खोजी समरà¥à¤¥à¤¿à¤¤ छैन"
#: gio/gbufferedinputstream.c:938
-#, fuzzy
msgid "Cannot truncate GBufferedInputStream"
-msgstr "सूपबडीइनपà¥à¤Ÿà¤¸à¥à¤Ÿà¥à¤°à¥€à¤® टà¥à¤°à¤‚क गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
+msgstr "GBufferedInputStream काटà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
-#: gio/gbufferedinputstream.c:983 gio/ginputstream.c:1237 gio/giostream.c:300
-#: gio/goutputstream.c:2198
+#: gio/gbufferedinputstream.c:983 gio/ginputstream.c:1239 gio/giostream.c:300 gio/goutputstream.c:2198
msgid "Stream is already closed"
msgstr "सà¥à¤Ÿà¥à¤°à¥€à¤® पहिलà¥à¤¯à¥ˆ बनà¥à¤¦ छ"
@@ -282,8 +284,8 @@ msgstr "सà¥à¤Ÿà¥à¤°à¥€à¤® पहिलà¥à¤¯à¥ˆ बनà¥à¤¦ छ"
msgid "Truncate not supported on base stream"
msgstr "आधार सà¥à¤Ÿà¥à¤°à¥€à¤®à¤®à¤¾ कताई समरà¥à¤¥à¤¿à¤¤ छैन"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1872 gio/gdbusprivate.c:1416
-#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418 gio/gsimpleasyncresult.c:871
+#: gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
msgstr "सञà¥à¤šà¤¾à¤²à¤¨ रदà¥à¤¦ भà¤à¤•à¥‹ छ"
@@ -300,66 +302,64 @@ msgstr "आगतमा अपूरà¥à¤£ बहà¥à¤¬à¥à¤¯ अनà¥à¤•à¥à¤°
msgid "Not enough space in destination"
msgstr "गनà¥à¤¤à¤µà¥à¤¯à¤®à¤¾ परà¥à¤¯à¤¾à¤ªà¥à¤¤ सà¥à¤¥à¤¾à¤¨ छैन"
-#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
-#: gio/gdatainputstream.c:1266 glib/gconvert.c:448 glib/gconvert.c:878
-#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848 gio/gdatainputstream.c:1266 glib/gconvert.c:449
+#: glib/gconvert.c:879 glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470 glib/gutf8.c:890
+#: glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "रूपानà¥à¤¤à¤°à¤£ आगतमा अवैध बाइट अनà¥à¤•à¥à¤°à¤®"
-#: gio/gcharsetconverter.c:347 glib/gconvert.c:456 glib/gconvert.c:792
-#: glib/giochannel.c:1580 glib/giochannel.c:2482
+#: gio/gcharsetconverter.c:347 glib/gconvert.c:457 glib/gconvert.c:793 glib/giochannel.c:1580 glib/giochannel.c:2482
#, c-format
msgid "Error during conversion: %s"
msgstr "रूपानà¥à¤¤à¤°à¤£ अवधिमा तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "रदà¥à¤¦-सकà¥à¤·à¤® थालनी समरà¥à¤¥à¤¿à¤¤ छैन"
-#: gio/gcharsetconverter.c:456 glib/gconvert.c:321 glib/giochannel.c:1401
+#: gio/gcharsetconverter.c:456 glib/gconvert.c:322 glib/giochannel.c:1401
#, c-format
msgid "Conversion from character set “%s†to “%s†is not supported"
msgstr "कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° सेट '%s' बाट '%s' मा रूपानà¥à¤¤à¤°à¤£ समरà¥à¤¥à¤¿à¤¤ छैन"
-#: gio/gcharsetconverter.c:460 glib/gconvert.c:325
+#: gio/gcharsetconverter.c:460 glib/gconvert.c:326
#, c-format
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "“%s†लाई “%s†मा रà¥à¤ªà¤¾à¤¨à¥à¤¤à¤°à¤£ खोलà¥à¤¨ सकिà¤à¤¨"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "%s पà¥à¤°à¤•à¤¾à¤°"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "अजà¥à¤žà¤¾à¤¤ पà¥à¤°à¤•à¤¾à¤°"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "%s फइल पà¥à¤°à¤•à¤¾à¤°"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
#, fuzzy
msgid "GCredentials contains invalid data"
msgstr "फाइल नाममा अवैध वरà¥à¤£"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
#, fuzzy
msgid "GCredentials is not implemented on this OS"
-msgstr "ओà¤à¤¸à¥(OS)"
+msgstr "कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ भà¤à¤•à¥‹ छैन"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
-msgstr ""
+msgstr "तपाईà¤à¤•à¥‹ पà¥à¤²à¥‡à¤Ÿà¤«à¤°à¥à¤®à¤•à¤¾ लागि तà¥à¤¯à¤¹à¤¾à¤ GCredentials समरà¥à¤¥à¤¨ छैन"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
-msgstr ""
+msgstr "GCredentials ले यो OS मा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ आईडी समावेश गरà¥à¤¦à¥ˆà¤¨"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "यो सञà¥à¤šà¤¾à¤²à¤¨ पà¥à¤°à¤£à¤¾à¤²à¥€à¤®à¤¾ पà¥à¤°à¤®à¤¾à¤£à¤ªà¤¤à¥à¤° सà¥à¤ªà¥‚फिङ समà¥à¤­à¤µ छैन"
@@ -367,555 +367,564 @@ msgstr "यो सञà¥à¤šà¤¾à¤²à¤¨ पà¥à¤°à¤£à¤¾à¤²à¥€à¤®à¤¾ पà¥à¤°à¤®à¤¾
msgid "Unexpected early end-of-stream"
msgstr "सà¥à¤Ÿà¥à¤°à¤¿à¤®à¤•à¥‹ अनपेकà¥à¤·à¤¿à¤¤ अनà¥à¤¤à¥à¤¯"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
-msgstr ""
+msgstr "\"%s\" ठेगाना पà¥à¤°à¤µà¤¿à¤·à¥à¤Ÿà¤¿à¤®à¤¾ असमरà¥à¤¥à¤¿à¤¤ कà¥à¤žà¥à¤œà¥€ \"%s\""
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
-msgstr ""
+msgstr "ठेगाना पà¥à¤°à¤µà¤¿à¤·à¥à¤Ÿà¤¿ \"%s\" मा अरà¥à¤¥à¤¹à¥€à¤¨ कà¥à¤žà¥à¤œà¥€/मान जोडा संयोजन"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid "Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract keys)"
msgstr "ठेगाना \"%s\" अवैध छ (पथ, डाइरेकà¥à¤Ÿà¤°à¥€, tmpdir, वा अमूरà¥à¤¤ कà¥à¤žà¥à¤œà¥€à¤¹à¤°à¥‚ मधà¥à¤¯à¥‡ ठà¥à¤¯à¤¾à¤•à¥à¤•à¥ˆ à¤à¤• आवशà¥à¤¯à¤• छ)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277 gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "\"%s\" ठेगानामा तà¥à¤°à¥à¤Ÿà¤¿ — \"%s\" विशेषता विकृत छ"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, fuzzy, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "असमरà¥à¤¥à¤¿à¤¤ पारवाहन \"%s\" मा सà¥à¤¨à¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "ठेगाना ततà¥à¤µ \"%s\" मा विराम चिनà¥à¤¹ (:) समावेश छैन"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
-msgstr ""
+msgstr "ठेगाना ततà¥à¤µ \"%s\" मा यातायात नाम खाली हà¥à¤¨à¥ हà¥à¤¦à¥ˆà¤¨"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid "Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal sign"
-msgstr ""
+msgstr "कà¥à¤žà¥à¤œà¥€/मान जोडा %d, \"%s\", ठेगाना ततà¥à¤µà¤®à¤¾ \"%s\" ले बराबर चिनà¥à¤¹ समावेश गरà¥à¤¦à¥ˆà¤¨"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid "Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
-msgstr ""
+msgstr "कà¥à¤žà¥à¤œà¥€/मान जोडा %d, \"%s\", ठेगाना ततà¥à¤µà¤®à¤¾ \"%s\" सà¤à¤— à¤à¤‰à¤Ÿà¤¾ खाली कà¥à¤žà¥à¤œà¥€ हà¥à¤¨à¥ हà¥à¤¦à¥ˆà¤¨"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid "Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element “%sâ€"
-msgstr ""
+msgstr "कà¥à¤žà¥à¤œà¥€/मान जोडा %d, \"%s\", ठेगाना ततà¥à¤µ \"%s\" मा मान वा कà¥à¤žà¥à¤œà¥€ खà¥à¤²à¤¾à¤‰à¤¨à¥‡ कà¥à¤°à¤®à¤®à¤¾ तà¥à¤°à¥à¤Ÿà¤¿"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid "Error in address “%s†— the unix transport requires exactly one of the keys “path†or “abstract†to be set"
-msgstr ""
+msgstr "\"%s\" ठेगानामा तà¥à¤°à¥à¤Ÿà¤¿ - यà¥à¤¨à¤¿à¤•à¥à¤¸ टà¥à¤°à¤¾à¤¨à¥à¤¸à¤ªà¥‹à¤°à¥à¤Ÿà¤²à¤¾à¤ˆ सेट हà¥à¤¨à¤•à¤¾ लागि ठीक à¤à¤‰à¤Ÿà¤¾ कà¥à¤žà¥à¤œà¥€ \"मारà¥à¤—\" वा \"अमूरà¥à¤¤\" आवशà¥à¤¯à¤• परà¥à¤¦à¤›"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
-msgstr ""
+msgstr "\"%s\" ठेगानामा तà¥à¤°à¥à¤Ÿà¤¿ — होसà¥à¤Ÿ विशेषता छà¥à¤Ÿà¥‡à¤•à¥‹ छ वा विकृत छ"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
-msgstr ""
+msgstr "\"%s\" ठेगानामा तà¥à¤°à¥à¤Ÿà¤¿ — पोरà¥à¤Ÿ विशेषता छà¥à¤Ÿà¥‡à¤•à¥‹ छ वा विकृत छ"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
-msgstr ""
+msgstr "\"%s\" ठेगानामा तà¥à¤°à¥à¤Ÿà¤¿ — noncefile विशेषता हराइरहेको छ वा विकृत छ"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "सà¥à¤µ:त सà¥à¤°à¥à¤†à¤¤ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, fuzzy, c-format
msgid "Error opening nonce file “%sâ€: %s"
-msgstr "%s फाइल खोलà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿"
+msgstr "फाइल “%s†पढà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿:%s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "फाइल “%s†पढà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿:%s"
-#: gio/gdbusaddress.c:755
-#, fuzzy, c-format
+#: gio/gdbusaddress.c:753
+#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
-msgstr "'%s' फाइल पढà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿ : %s"
+msgstr "nonce फ़ाइल \"%s\" से पढ़ने में तà¥à¤°à¥à¤Ÿà¤¿, अपेकà¥à¤·à¤¿à¤¤ 16 बाइटà¥à¤¸, %d मिला"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, fuzzy, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "'%s' फाइल पढà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿ : %s"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "दिà¤à¤•à¥‹ ठेगाना खाली छ"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "setuid मा सनà¥à¤¦à¥‡à¤¶ बस उतà¥à¤ªà¤¨à¥à¤¨ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "जब AT_SECURE सेट हà¥à¤¨à¥à¤› तब सनà¥à¤¦à¥‡à¤¶ बस उतà¥à¤ªà¤¨à¥à¤¨ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "मेशिन आईडी बिना सनà¥à¤¦à¥‡à¤¶ बस उतà¥à¤ªà¤¨à¥à¤¨ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "X11 $DISPLAY बिना D-Bus सà¥à¤µà¤¤: सà¥à¤°à¥à¤†à¤¤ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "आदेश-रेखा विकलà¥à¤ª पद वरà¥à¤£à¤¨ गरà¥à¤¨ सकेन%s"
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr "सतà¥à¤° बस ठेगाना निरà¥à¤§à¤¾à¤°à¤£ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨ (यो सञà¥à¤šà¤¾à¤²à¤¨ पà¥à¤°à¤£à¤¾à¤²à¥€à¤•à¤¾ लागि कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरिà¤à¤•à¥‹ छैन)"
-#: gio/gdbusaddress.c:1397 gio/gdbusconnection.c:7241
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid "Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable — unknown value “%sâ€"
msgstr "DBUS_STARTER_BUS_TYPE परिवेश चलबाट बस ठेगाना निरà¥à¤§à¤¾à¤°à¤£ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨ — अजà¥à¤žà¤¾à¤¤ मान \"%s\""
-#: gio/gdbusaddress.c:1406 gio/gdbusconnection.c:7250
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid "Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment variable is not set"
msgstr "बस ठेगाना निरà¥à¤§à¤¾à¤°à¤£ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨ किनभने DBUS_STARTER_BUS_TYPE परिवेश मान सेट गरिà¤à¤•à¥‹ छैन"
-#: gio/gdbusaddress.c:1416
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "अपरिचित बाà¤à¤£à¤•à¥‹ पà¥à¤°à¤•à¤¾à¤° %d"
#: gio/gdbusauth.c:294
msgid "Unexpected lack of content trying to read a line"
-msgstr ""
+msgstr "लाइन पढà¥à¤¨ पà¥à¤°à¤¯à¤¾à¤¸ गरिरहेको सामागà¥à¤°à¥€à¤•à¥‹ अनपेकà¥à¤·à¤¿à¤¤ कमी"
#: gio/gdbusauth.c:338
msgid "Unexpected lack of content trying to (safely) read a line"
-msgstr ""
+msgstr "लाइन (सà¥à¤°à¤•à¥à¤·à¤¿à¤¤ रूपमा) पढà¥à¤¨ पà¥à¤°à¤¯à¤¾à¤¸ गरिरहेको अनपेकà¥à¤·à¤¿à¤¤ सामगà¥à¤°à¥€à¤•à¥‹ कमी"
#: gio/gdbusauth.c:482
#, c-format
msgid "Exhausted all available authentication mechanisms (tried: %s) (available: %s)"
msgstr "सबै उपलबà¥à¤§ पà¥à¤°à¤®à¤¾à¤£à¥€à¤•à¤°à¤£ संयनà¥à¤¤à¥à¤°à¤¹à¤°à¥‚ निषà¥à¤•à¤¾à¤¸à¤¿à¤¤ गरियो (पà¥à¤°à¤¯à¤¾à¤¸ गरियो: %s) (उपलबà¥à¤§: %s)"
-#: gio/gdbusauth.c:1170
+#: gio/gdbusauth.c:1171
msgid "User IDs must be the same for peer and server"
-msgstr ""
+msgstr "समान र सरà¥à¤­à¤°à¤•à¤¾ लागि पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ आईडी उसà¥à¤¤à¥ˆ हà¥à¤¨à¥à¤ªà¤°à¥à¤›"
-#: gio/gdbusauth.c:1182
+#: gio/gdbusauth.c:1183
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
-msgstr ""
+msgstr "GDBusAuthObserver मारà¥à¤«à¤¤ रदà¥à¤¦ गरियो:: authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, fuzzy, c-format
#| msgid "Error opening directory '%s': %s"
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "\"%s\" लोड गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: तà¥à¤¯à¤¸ पà¥à¤°à¤•à¤¾à¤°à¤•à¥‹ निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾ छैन"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid "Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
-msgstr ""
+msgstr "डाइरेकà¥à¤Ÿà¤°à¥€ \"%s\" मा अनà¥à¤®à¤¤à¤¿ विकृत छ। अपेकà¥à¤·à¤¿à¤¤ मोड ०७००, ०%o पà¥à¤°à¤¾à¤ªà¥à¤¤ भयो"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾ \"%s\" सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318 gio/gfile.c:1456 gio/gfile.c:1694
+#: gio/gfile.c:1749 gio/gfile.c:1807 gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675 gio/gfile.c:5086 gio/gfile.c:5171
+#: gio/gfile.c:5261 gio/gfile.c:5358 gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "सञà¥à¤šà¤¾à¤²à¤¨ समरà¥à¤¥à¤¿à¤¤ छैन"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "\"%s\" किरिङà¥à¤— पढà¥à¤¨à¤¾à¤•à¤¾ लागि खोलà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
-msgstr ""
+msgstr "किरिङको लाइन %d मा “%s†सामागà¥à¤°à¥€ “%s†विकृत छ"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid "First token of line %d of the keyring at “%s†with content “%s†is malformed"
-msgstr ""
+msgstr "किरिङको पहिलो टोकन लाइन %d मा “%s†सामगà¥à¤°à¥€à¤¸à¤à¤— “%s†विकृत छ"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid "Second token of line %d of the keyring at “%s†with content “%s†is malformed"
-msgstr ""
+msgstr "किरिङको दोसà¥à¤°à¥‹ टोकन लाइन %d मा “%s†सामगà¥à¤°à¥€à¤¸à¤à¤— “%s†विकृत छ"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
-msgstr ""
+msgstr " आईडी %d मा \"%s\"किरिङ कà¥à¤•à¥€ फेला परेन"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "तालà¥à¤šà¤¾ लगाइà¤à¤•à¥‹ फाइल \"%s\" सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, fuzzy, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
-msgstr "'%s' फाइल मेटà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
+msgstr "तालà¥à¤šà¤¾ लगाइà¤à¤•à¥‹ फाइल \"%s\" सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, fuzzy, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
-msgstr "सतà¥à¤° फाइल '%s' बनà¥à¤¦ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s\n"
+msgstr "तालà¥à¤šà¤¾ लगाइà¤à¤•à¥‹ फाइल \"%s\" सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, fuzzy, c-format
msgid "Error unlinking lock file “%sâ€: %s"
-msgstr "%s का लागि बनà¥à¤¦ फाइल सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ सकेन: %s"
+msgstr "तालà¥à¤šà¤¾ लगाइà¤à¤•à¥‹ फाइल \"%s\" सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "लेखà¥à¤¨à¤•à¤¾ लागि \"%s\" किरिङà¥à¤— खोलà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
-msgstr ""
+msgstr "(\"%s\" का लागि तालà¥à¤šà¤¾ हटाउन असफल: %s) "
-#: gio/gdbusconnection.c:603 gio/gdbusconnection.c:2405
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "जडान बनà¥à¤¦ भयो"
-#: gio/gdbusconnection.c:1902
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "समय समापà¥à¤¤à¤¿"
-#: gio/gdbusconnection.c:2528
+#: gio/gdbusconnection.c:2525
msgid "Unsupported flags encountered when constructing a client-side connection"
-msgstr ""
+msgstr "कà¥à¤²à¤¾à¤‡à¤¨à¥à¤Ÿ-साइड जडान निरà¥à¤®à¤¾à¤£ गरà¥à¤¦à¤¾ असमरà¥à¤¥à¤¿à¤¤ à¤à¤£à¥à¤¡à¤¾à¤¹à¤°à¥‚ सामना भयो"
-#: gio/gdbusconnection.c:4186 gio/gdbusconnection.c:4533
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, fuzzy, c-format
msgid "No such interface “org.freedesktop.DBus.Properties†on object at path %s"
-msgstr "तà¥à¤°à¥à¤Ÿà¤¿: %s अवैध वसà¥à¤¤à¥ मारà¥à¤—\n"
+msgstr "\"%s\" मारà¥à¤—मा वसà¥à¤¤à¥ अवसà¥à¤¥à¤¿à¤¤ छैन"
-#: gio/gdbusconnection.c:4328
+#: gio/gdbusconnection.c:4398
#, fuzzy, c-format
#| msgid "No such property '%s'"
msgid "No such property “%sâ€"
-msgstr "अजà¥à¤žà¤¾à¤¤ गà¥à¤£ %s"
+msgstr "'%s' गà¥à¤£ लेखà¥à¤¨ योगà¥à¤¯ छैन:%s"
-#: gio/gdbusconnection.c:4340
-#, fuzzy, c-format
-#| msgid "Property '%s' is not readable"
+#: gio/gdbusconnection.c:4410
+#, c-format
msgid "Property “%s†is not readable"
-msgstr "फाइल %s पढà¥à¤¨à¤¯à¥‹à¤—à¥à¤¯ छैन ।."
+msgstr "विशेषता \"%s\" पढà¥à¤¨à¤¯à¥‹à¤—à¥à¤¯ छैन"
-#: gio/gdbusconnection.c:4351
-#, fuzzy, c-format
-#| msgid "Property '%s' is not writable"
+#: gio/gdbusconnection.c:4421
+#, c-format
msgid "Property “%s†is not writable"
-msgstr "%s का लागि कà¥à¤¨à¥ˆ लेखनयोगà¥à¤¯ URI उपलबà¥à¤§ छैन"
+msgstr "\"%s\" गà¥à¤£ लेखनयोगà¥à¤¯ छैन"
-#: gio/gdbusconnection.c:4371
-#, fuzzy, c-format
+#: gio/gdbusconnection.c:4441
+#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
-msgstr "होसà¥à¤Ÿà¤¨à¤¾à¤®"
+msgstr "विशेषता \"%s\" सेट गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: अपेकà¥à¤·à¤¿à¤¤ पà¥à¤°à¤•à¤¾à¤° \"%s\" तर \"%s\" पà¥à¤°à¤¾à¤ªà¥à¤¤ भयो"
-#: gio/gdbusconnection.c:4476 gio/gdbusconnection.c:4684
-#: gio/gdbusconnection.c:6681
-#, fuzzy, c-format
-#| msgid "No such interface '%s'"
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761 gio/gdbusconnection.c:6744
+#, c-format
msgid "No such interface “%sâ€"
-msgstr "चेतावनी: इनà¥à¤Ÿà¤°à¤•à¥à¤°à¥‡à¤¸à¤Ÿà¥‡à¤¸à¤¨ डाटाको अनà¥à¤¸à¤¾à¤°, इनà¥à¤Ÿà¤°à¤«à¥‡à¤¸ \"%s\" अवसà¥à¤¥à¤¿à¤¤ छैन\n"
+msgstr "चेतावनी: इनà¥à¤Ÿà¤°à¤•à¥à¤°à¥‡à¤¸à¤Ÿà¥‡à¤¸à¤¨ डाटाको अनà¥à¤¸à¤¾à¤°, इनà¥à¤Ÿà¤°à¤«à¥‡à¤¸ \"%s\" अवसà¥à¤¥à¤¿à¤¤ छैन"
-#: gio/gdbusconnection.c:4902 gio/gdbusconnection.c:7190
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, fuzzy, c-format
msgid "No such interface “%s†on object at path %s"
-msgstr "तà¥à¤°à¥à¤Ÿà¤¿: %s अवैध वसà¥à¤¤à¥ मारà¥à¤—\n"
+msgstr "\"%s\" मारà¥à¤—मा वसà¥à¤¤à¥ अवसà¥à¤¥à¤¿à¤¤ छैन"
-#: gio/gdbusconnection.c:5000
+#: gio/gdbusconnection.c:5084
#, fuzzy, c-format
#| msgid "No such key “%sâ€\n"
msgid "No such method “%sâ€"
msgstr "चेतावनी: जाच भठडाटाको अनà¥à¤¸à¤¾à¤°, \"%s\" विधिमा \"%s\" मा अवसà¥à¤¥à¤¿à¤¤ छैन।\n"
-#: gio/gdbusconnection.c:5031
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
-msgstr ""
+msgstr "सनà¥à¤¦à¥‡à¤¶à¤•à¥‹ पà¥à¤°à¤•à¤¾à¤°, \"%s\", अपेकà¥à¤·à¤¿à¤¤ पà¥à¤°à¤•à¤¾à¤° \"%s\" सà¤à¤— मिलà¥à¤¦à¥ˆà¤¨"
-#: gio/gdbusconnection.c:5229
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "%s मा %s इनà¥à¤Ÿà¤°à¤«à¥‡à¤¸à¤•à¤¾ लागि à¤à¤‰à¤Ÿà¤¾ वसà¥à¤¤à¥ पहिलà¥à¤¯à¥ˆ निरà¥à¤¯à¤¾à¤¤ गरिà¤à¤•à¥‹ छ"
-#: gio/gdbusconnection.c:5455
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "%s गà¥à¤£ पà¥à¤¨:पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¨ अकà¥à¤·à¤®.%s"
-#: gio/gdbusconnection.c:5511
-#, fuzzy, c-format
+#: gio/gdbusconnection.c:5601
+#, c-format
msgid "Unable to set property %s.%s"
-msgstr "गà¥à¤£ %s::%s फेला परेन \n"
+msgstr "'%s' गà¥à¤£ लेखà¥à¤¨ योगà¥à¤¯ छैन:%s"
-#: gio/gdbusconnection.c:5690
+#: gio/gdbusconnection.c:5780
#, fuzzy, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
-msgstr "हालको नोड \"%s\" पà¥à¤°à¤•à¤¾à¤°à¤•à¥‹ छ, तर array वा वसà¥à¤¤à¥ आशा गरिà¤à¤•à¥‹ थियो।"
+msgstr "विशेषता \"%s\" सेट गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: अपेकà¥à¤·à¤¿à¤¤ पà¥à¤°à¤•à¤¾à¤° \"%s\" तर \"%s\" पà¥à¤°à¤¾à¤ªà¥à¤¤ भयो"
-#: gio/gdbusconnection.c:6792
+#: gio/gdbusconnection.c:6856
#, fuzzy, c-format
#| msgid "Method '%s' on interface '%s' with signature '%s' does not exist"
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "चेतावनी: जाच भठडाटाको अनà¥à¤¸à¤¾à¤°, \"%s\" विधिमा \"%s\" मा अवसà¥à¤¥à¤¿à¤¤ छैन।\n"
-#: gio/gdbusconnection.c:6913
+#: gio/gdbusconnection.c:6977
#, fuzzy, c-format
msgid "A subtree is already exported for %s"
msgstr "%s मा %s इनà¥à¤Ÿà¤°à¤«à¥‡à¤¸à¤•à¤¾ लागि à¤à¤‰à¤Ÿà¤¾ वसà¥à¤¤à¥ पहिलà¥à¤¯à¥ˆ निरà¥à¤¯à¤¾à¤¤ गरिà¤à¤•à¥‹ छ"
-#: gio/gdbusmessage.c:1266
+#: gio/gdbusconnection.c:7266
+#, c-format
+msgid "Object does not exist at path “%sâ€"
+msgstr "\"%s\" मारà¥à¤—मा वसà¥à¤¤à¥ अवसà¥à¤¥à¤¿à¤¤ छैन"
+
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "पà¥à¤°à¤•à¤¾à¤° अवैध छ"
-#: gio/gdbusmessage.c:1277
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
-msgstr ""
+msgstr "METHOD_CALL सनà¥à¤¦à¥‡à¤¶: बाटो वा सदसà¥à¤¯ हेडर फाà¤à¤Ÿ छà¥à¤Ÿà¥‡à¤•à¥‹ छ"
-#: gio/gdbusmessage.c:1288
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
-msgstr ""
+msgstr "METHOD_RETURN सनà¥à¤¦à¥‡à¤¶: REPLY_SERIAL हेडर फाà¤à¤Ÿ हराइरहेको छ"
-#: gio/gdbusmessage.c:1300
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
-msgstr ""
+msgstr "तà¥à¤°à¥à¤Ÿà¤¿ सनà¥à¤¦à¥‡à¤¶: REPLY_SERIAL वा ERROR_NAME हेडर फाà¤à¤Ÿ छà¥à¤Ÿà¥‡à¤•à¥‹ छ"
-#: gio/gdbusmessage.c:1313
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
-msgstr ""
+msgstr "सङà¥à¤•à¥‡à¤¤ सनà¥à¤¦à¥‡à¤¶: बाटो, इनà¥à¤Ÿà¤°à¤«à¥‡à¤¸ वा सदसà¥à¤¯ हेडर फाà¤à¤Ÿ हराइरहेको छ"
-#: gio/gdbusmessage.c:1321
+#: gio/gdbusmessage.c:1356
msgid "SIGNAL message: The PATH header field is using the reserved value /org/freedesktop/DBus/Local"
-msgstr ""
+msgstr "संकेत सनà¥à¤¦à¥‡à¤¶: बाटो हेडर फाà¤à¤Ÿà¤²à¥‡ सञà¥à¤šà¤¿à¤¤ मान /org/freedesktop/DBus/Local पà¥à¤°à¤¯à¥‹à¤— गरिरहेको छ"
-#: gio/gdbusmessage.c:1329
+#: gio/gdbusmessage.c:1364
msgid "SIGNAL message: The INTERFACE header field is using the reserved value org.freedesktop.DBus.Local"
-msgstr ""
+msgstr "संकेत सनà¥à¤¦à¥‡à¤¶: इनà¥à¤Ÿà¤°à¤«à¥‡à¤¸ हेडर फिलà¥à¤¡à¤²à¥‡ सà¥à¤°à¤•à¥à¤·à¤¿à¤¤ मान org.freedesktop.DBus.Local पà¥à¤°à¤¯à¥‹à¤— गरिरहेको छ"
-#: gio/gdbusmessage.c:1377 gio/gdbusmessage.c:1437
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
-msgstr[0] ""
-msgstr[1] ""
+msgstr[0] "%lu बाइट पढà¥à¤¨ चाहनà¥à¤¥à¥à¤¯à¥‹ तर %lu मातà¥à¤° पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¯à¥‹"
+msgstr[1] "%lu बाइट पढà¥à¤¨ चाहनà¥à¤¥à¥à¤¯à¥‹ तर %lu मातà¥à¤° पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¯à¥‹"
-#: gio/gdbusmessage.c:1391
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
-msgstr ""
+msgstr "सà¥à¤Ÿà¥à¤°à¤¿à¤™ \"%s\" पछि NUL बाइट अपेकà¥à¤·à¤¿à¤¤ तर %d बाइट फेला परà¥à¤¯à¥‹"
-#: gio/gdbusmessage.c:1410
+#: gio/gdbusmessage.c:1445
#, c-format
-msgid "Expected valid UTF-8 string but found invalid bytes at byte offset %d (length of string is %d). The valid UTF-8 string up until that point was “%sâ€"
+msgid ""
+"Expected valid UTF-8 string but found invalid bytes at byte offset %d (length of string is %d). The valid UTF-8 "
+"string up until that point was “%sâ€"
msgstr ""
+"अपेकà¥à¤·à¤¿à¤¤ वैध UTF-8 सà¥à¤Ÿà¥à¤°à¤¿à¤™ तर बाइट अफसेट %d मा अवैध बाइटहरू फेला परà¥à¤¯à¥‹ (सà¥à¤Ÿà¥à¤°à¤¿à¤™à¤•à¥‹ लमà¥à¤¬à¤¾à¤‡ %d हो)। तà¥à¤¯à¥‹ बिनà¥à¤¦à¥ \"%s\" नभà¤à¤¸à¤®à¥à¤® वैध UTF-8 "
+"सà¥à¤Ÿà¥à¤°à¤¿à¤™"
-#: gio/gdbusmessage.c:1474 gio/gdbusmessage.c:1722 gio/gdbusmessage.c:1911
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
#, fuzzy
msgid "Value nested too deeply"
msgstr "अति ठूलो गणना मान %s मा पास गरियो"
-#: gio/gdbusmessage.c:1620
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
-msgstr ""
+msgstr "पद वरà¥à¤£à¤¨ गरिà¤à¤•à¥‹ मान \"%s\" वैध D-Bus वसà¥à¤¤à¥ मारà¥à¤— होइन"
-#: gio/gdbusmessage.c:1642
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
-msgstr ""
+msgstr "पद वरà¥à¤£à¤¨ गरिà¤à¤•à¥‹ मान \"%s\" वैध D-Bus हसà¥à¤¤à¤¾à¤•à¥à¤·à¤° होइन"
-#: gio/gdbusmessage.c:1689
+#: gio/gdbusmessage.c:1752
#, c-format
msgid "Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
msgid_plural "Encountered array of length %u bytes. Maximum length is 2<<26 bytes (64 MiB)."
-msgstr[0] ""
-msgstr[1] ""
+msgstr[0] "%u बाइट लमà¥à¤¬à¤¾à¤‡à¤•à¥‹ à¤à¤°à¥‡ भेटिनà¥à¤› । अधिकतम लमà¥à¤¬à¤¾à¤‡ २<<२६ बाइट (६४ MiB) हो ।"
+msgstr[1] "%u बाइट लमà¥à¤¬à¤¾à¤‡à¤•à¥‹ à¤à¤°à¥‡ भेटिनà¥à¤› । अधिकतम लमà¥à¤¬à¤¾à¤‡ २<<२६ बाइट (६४ MiB) हो ।"
-#: gio/gdbusmessage.c:1709
+#: gio/gdbusmessage.c:1772
#, c-format
-msgid "Encountered array of type “a%câ€, expected to have a length a multiple of %u bytes, but found to be %u bytes in length"
-msgstr ""
+msgid ""
+"Encountered array of type “a%câ€, expected to have a length a multiple of %u bytes, but found to be %u bytes in length"
+msgstr "\"a%c\" पà¥à¤°à¤•à¤¾à¤°à¤•à¥‹ à¤à¤°à¥‡, %u बाइटको गà¥à¤£à¤¨à¤«à¤² हà¥à¤¨à¥‡ अपेकà¥à¤·à¤¾ गरिà¤à¤•à¥‹ छ, तर %u बाइट लमà¥à¤¬à¤¾à¤‡à¤®à¤¾ भà¤à¤•à¥‹ फेला परà¥à¤¯à¥‹"
-#: gio/gdbusmessage.c:1895
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
+msgid "Empty structures (tuples) are not allowed in D-Bus"
+msgstr "D-Bus मा खाली बनावट (tuples) लाई अनà¥à¤®à¤¤à¤¿ छैन"
+
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
-msgstr ""
+msgstr "भेरिà¤à¤¨à¥à¤Ÿà¤•à¤¾ लागि पद वरà¥à¤£à¤¨ गरिà¤à¤•à¥‹ मान \"%s\" वैध D-Bus हसà¥à¤¤à¤¾à¤•à¥à¤·à¤° होइन"
-#: gio/gdbusmessage.c:1936
+#: gio/gdbusmessage.c:2021
#, c-format
msgid "Error deserializing GVariant with type string “%s†from the D-Bus wire format"
-msgstr ""
+msgstr "D-Bus तार ढाà¤à¤šà¤¾à¤¬à¤¾à¤Ÿ \"%s\" पà¥à¤°à¤•à¤¾à¤° सà¥à¤Ÿà¥à¤°à¤¿à¤™à¤¸à¤à¤— GVariant deserializing गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿"
-#: gio/gdbusmessage.c:2121
+#: gio/gdbusmessage.c:2206
#, c-format
msgid "Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value 0x%02x"
msgstr "अवैध अनà¥à¤¤à¥à¤¯ मान । अपेकà¥à¤·à¤¿à¤¤ 0x6c (\"l\") वा 0x42 (\"B\") तर मान 0x%02x फेला परà¥à¤¯à¥‹"
-#: gio/gdbusmessage.c:2134
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "अवैध मà¥à¤–à¥à¤¯ पà¥à¤°à¥‹à¤Ÿà¥‹à¤•à¥‹à¤² संसà¥à¤•à¤°à¤£ । अपेकà¥à¤·à¤¿à¤¤ १ तर %d पà¥à¤°à¤¾à¤ªà¥à¤¤ भयो"
-#: gio/gdbusmessage.c:2188 gio/gdbusmessage.c:2784
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
-msgstr ""
+msgstr "हसà¥à¤¤à¤¾à¤•à¥à¤·à¤° हेडर फेला परà¥à¤¯à¥‹ तर यो पà¥à¤°à¤•à¤¾à¤°à¤•à¥‹ हसà¥à¤¤à¤¾à¤•à¥à¤·à¤° होइन ।"
-#: gio/gdbusmessage.c:2200
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
-msgstr ""
+msgstr "हसà¥à¤¤à¤¾à¤•à¥à¤·à¤° \"%s\" सà¤à¤— हसà¥à¤¤à¤¾à¤•à¥à¤·à¤° हेडर फेला परà¥à¤¯à¥‹ तर सनà¥à¤¦à¥‡à¤¶à¤•à¥‹ मà¥à¤–à¥à¤¯ भाग खाली छ"
-#: gio/gdbusmessage.c:2215
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
-msgstr ""
+msgstr "पद वरà¥à¤£à¤¨ गरिà¤à¤•à¥‹ मान \"%s\" वैध D-Bus हसà¥à¤¤à¤¾à¤•à¥à¤·à¤° (मà¥à¤–à¥à¤¯ भागका लागि) होइन"
-#: gio/gdbusmessage.c:2247
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
-msgstr[0] ""
-msgstr[1] ""
+msgstr[0] "सनà¥à¤¦à¥‡à¤¶à¤®à¤¾ हसà¥à¤¤à¤¾à¤•à¥à¤·à¤° हेडर छैन तर सनà¥à¤¦à¥‡à¤¶à¤•à¥‹ मà¥à¤–à¥à¤¯ भाग %u बाइट हो"
+msgstr[1] "सनà¥à¤¦à¥‡à¤¶à¤®à¤¾ हसà¥à¤¤à¤¾à¤•à¥à¤·à¤° हेडर छैन तर सनà¥à¤¦à¥‡à¤¶ मà¥à¤–à¥à¤¯ भाग %u बाइट हो"
-#: gio/gdbusmessage.c:2257
-#, fuzzy
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
-msgstr "सनà¥à¤¦à¥‡à¤¶ संगà¥à¤°à¤¹à¤¹à¤°à¥‚ सेट गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
+msgstr "सनà¥à¤¦à¥‡à¤¶ deserialize गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨: "
-#: gio/gdbusmessage.c:2601
+#: gio/gdbusmessage.c:2698
#, c-format
msgid "Error serializing GVariant with type string “%s†to the D-Bus wire format"
-msgstr ""
+msgstr "\"%s\" पà¥à¤°à¤•à¤¾à¤° सà¥à¤Ÿà¥à¤°à¤¿à¤™à¤¸à¤à¤— जी भेरिà¤à¤¨à¥à¤Ÿà¤²à¤¾à¤ˆ D-Bus तार ढाà¤à¤šà¤¾à¤®à¤¾ कà¥à¤°à¤®à¤¬à¤¦à¥à¤§ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿"
-#: gio/gdbusmessage.c:2738
+#: gio/gdbusmessage.c:2835
#, c-format
msgid "Number of file descriptors in message (%d) differs from header field (%d)"
-msgstr ""
+msgstr "सनà¥à¤¦à¥‡à¤¶ (%d) मा फाइल वरà¥à¤£à¤¨à¤•à¤°à¥à¤¤à¤¾à¤•à¥‹ सङà¥à¤–à¥à¤¯à¤¾ हेडर फिलà¥à¤¡ (%d) भनà¥à¤¦à¤¾ फरक हà¥à¤¨à¥à¤›"
-#: gio/gdbusmessage.c:2746
-#, fuzzy
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
-msgstr "सनà¥à¤¦à¥‡à¤¶ संगà¥à¤°à¤¹à¤¹à¤°à¥‚ सेट गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
+msgstr "सनà¥à¤¦à¥‡à¤¶ सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨: "
-#: gio/gdbusmessage.c:2799
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
-msgstr ""
+msgstr "सनà¥à¤¦à¥‡à¤¶ मà¥à¤–à¥à¤¯ भागसà¤à¤— हसà¥à¤¤à¤¾à¤•à¥à¤·à¤° \"%s\" छ तर तà¥à¤¯à¤¹à¤¾à¤ हसà¥à¤¤à¤¾à¤•à¥à¤·à¤° हेडर छैन"
-#: gio/gdbusmessage.c:2809
+#: gio/gdbusmessage.c:2906
#, c-format
msgid "Message body has type signature “%s†but signature in the header field is “%sâ€"
-msgstr ""
+msgstr "सनà¥à¤¦à¥‡à¤¶ मà¥à¤–à¥à¤¯ भागसà¤à¤— पà¥à¤°à¤•à¤¾à¤° हसà¥à¤¤à¤¾à¤•à¥à¤·à¤° \"%s\" छ तर हेडर फिलà¥à¤¡à¤®à¤¾ हसà¥à¤¤à¤¾à¤•à¥à¤·à¤° \"%s\" हो"
-#: gio/gdbusmessage.c:2825
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
-msgstr ""
+msgstr "सनà¥à¤¦à¥‡à¤¶ मà¥à¤–à¥à¤¯ भाग खाली छ तर हेडर फिलà¥à¤¡à¤®à¤¾ हसà¥à¤¤à¤¾à¤•à¥à¤·à¤° \"(%s)\" छ"
-#: gio/gdbusmessage.c:3378
+#: gio/gdbusmessage.c:3477
#, fuzzy, c-format
msgid "Error return with body of type “%sâ€"
msgstr ""
"चितà¥à¤° %s लोड गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿à¥¤\n"
"अजà¥à¤žà¤¾à¤¤ फाइल पà¥à¤°à¤•à¤¾à¤°"
-#: gio/gdbusmessage.c:3386
+#: gio/gdbusmessage.c:3485
#, fuzzy
msgid "Error return with empty body"
-msgstr "तà¥à¤°à¥à¤Ÿà¤¿: XJT गà¥à¤£ फाइल '%s' खाली छ।"
+msgstr "खाली मà¥à¤–à¥à¤¯ भागसà¤à¤— तà¥à¤°à¥à¤Ÿà¤¿"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(यो सञà¥à¤à¥à¤¯à¤¾à¤² बनà¥à¤¦ गरà¥à¤¨ कà¥à¤¨à¥ˆ कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° टाइप गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
-msgstr ""
+msgstr "सतà¥à¤° dbus चलिरहेको छैन, र सà¥à¤µà¤¤: सà¥à¤°à¥à¤†à¤¤ असफल भयो"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "हारà¥à¤¡à¤µà¥‡à¤¯à¤° पà¥à¤°à¥‹à¤«à¤¾à¤‡à¤² पाउन असकà¥à¤·à¤®: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "%s वा %s लोड गरà¥à¤¨ असकà¥à¤·à¤® भयो: "
-#: gio/gdbusproxy.c:1562
+#: gio/gdbusproxy.c:1573
#, fuzzy, c-format
msgid "Error calling StartServiceByName for %s: "
-msgstr "तà¥à¤°à¥à¤Ÿà¤¿: %s पहिले '%s'"
+msgstr "तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gdbusproxy.c:1585
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
-msgstr ""
+msgstr "StartServiceByName(\"%2$s\") विधिबाट अनपेकà¥à¤·à¤¿à¤¤ जवाफ %1$d"
-#: gio/gdbusproxy.c:2688 gio/gdbusproxy.c:2823
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
-msgid "Cannot invoke method; proxy is for the well-known name %s without an owner, and proxy was constructed with the G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START flag"
-msgstr "विधि आहà¥à¤µà¤¾à¤¨ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨; मालिक बिनाको पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ परिचित नाम %s का लागि हो, र G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START à¤à¤£à¥à¤¡à¤¾à¤¸à¤à¤— पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ निरà¥à¤®à¤¾à¤£ गरिà¤à¤•à¥‹ थियो"
+msgid ""
+"Cannot invoke method; proxy is for the well-known name %s without an owner, and proxy was constructed with the "
+"G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START flag"
+msgstr ""
+"विधि आहà¥à¤µà¤¾à¤¨ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨; मालिक बिनाको पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ परिचित नाम %s का लागि हो, र G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START à¤à¤£à¥à¤¡à¤¾à¤¸à¤à¤— "
+"पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ निरà¥à¤®à¤¾à¤£ गरिà¤à¤•à¥‹ थियो"
-#: gio/gdbusserver.c:763
+#: gio/gdbusserver.c:767
#, fuzzy
msgid "Abstract namespace not supported"
-msgstr "नेमसà¥à¤ªà¥‡à¤¸:"
+msgstr "संकà¥à¤·à¥‡à¤ª"
-#: gio/gdbusserver.c:856
+#: gio/gdbusserver.c:860
msgid "Cannot specify nonce file when creating a server"
msgstr "सरà¥à¤­à¤° सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¦à¤¾ कà¥à¤¨à¥ˆ पनि फाइल निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
-#: gio/gdbusserver.c:938
+#: gio/gdbusserver.c:942
#, fuzzy, c-format
msgid "Error writing nonce file at “%sâ€: %s"
msgstr "फाइल “%s†पढà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿:%s"
-#: gio/gdbusserver.c:1113
-#, c-format
+#: gio/gdbusserver.c:1117
+#, fuzzy, c-format
msgid "The string “%s†is not a valid D-Bus GUID"
-msgstr ""
+msgstr "पद वरà¥à¤£à¤¨ गरिà¤à¤•à¥‹ मान \"%s\" वैध D-Bus हसà¥à¤¤à¤¾à¤•à¥à¤·à¤° होइन"
-#: gio/gdbusserver.c:1153
+#: gio/gdbusserver.c:1157
#, c-format
msgid "Cannot listen on unsupported transport “%sâ€"
msgstr "असमरà¥à¤¥à¤¿à¤¤ पारवाहन \"%s\" मा सà¥à¤¨à¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
@@ -943,151 +952,153 @@ msgstr ""
"\n"
"पà¥à¤°à¤¤à¥à¤¯à¥‡à¤• आदेशमा मदà¥à¤¦à¤¤ पाउन \"% s COMMAND --help\" को पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥à¥¤\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346 gio/gdbus-tool.c:370 gio/gdbus-tool.c:860
+#: gio/gdbus-tool.c:1245 gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, fuzzy, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "फिलà¥à¤Ÿà¤° पदवरà¥à¤£à¤¨ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s: %s"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "कारà¥à¤¯: %s अवैध नाम\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064 gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿: %s अवैध वसà¥à¤¤à¥ मारà¥à¤—\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "सिसà¥à¤Ÿà¤® बस सà¤à¤—को जडान तà¥à¤°à¥à¤Ÿà¥€ : %s"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "सतà¥à¤° बस जडान"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "दिà¤à¤•à¥‹ D-Bus ठेगानामा जडान गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "जडान अनà¥à¤¤à¥à¤¯à¤¬à¤¿à¤¨à¥à¤¦à¥ विकलà¥à¤ªà¤¹à¤°à¥‚:"
-#: gio/gdbus-tool.c:416
-#, fuzzy
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
-msgstr "जडान अनà¥à¤¤à¥à¤¯à¤¬à¤¿à¤¨à¥à¤¦à¥ विकलà¥à¤ªà¤¹à¤°à¥‚:"
+msgstr "जडान अनà¥à¤¤à¥à¤¯à¤¬à¤¿à¤¨à¥à¤¦à¥ निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ विकलà¥à¤ª"
-#: gio/gdbus-tool.c:439
-#, fuzzy, c-format
+#: gio/gdbus-tool.c:440
+#, c-format
msgid "No connection endpoint specified"
-msgstr "जडान अनà¥à¤¤à¥à¤¯à¤¬à¤¿à¤¨à¥à¤¦à¥ विकलà¥à¤ªà¤¹à¤°à¥‚:"
+msgstr "जडान अनà¥à¤¤à¤¿à¤®à¤¬à¤¿à¤¨à¥à¤¦à¥ निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ गरिà¤à¤•à¥‹ छैन"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "à¤à¤•à¤¾à¤§à¤¿à¤• जडान अनà¥à¤¤à¥à¤¯ निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ गरिà¤à¤•à¥‹ छ"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid "Warning: According to introspection data, interface “%s†does not exist\n"
msgstr "चेतावनी: इनà¥à¤Ÿà¤°à¤•à¥à¤°à¥‡à¤¸à¤Ÿà¥‡à¤¸à¤¨ डाटाको अनà¥à¤¸à¤¾à¤°, इनà¥à¤Ÿà¤°à¤«à¥‡à¤¸ \"%s\" अवसà¥à¤¥à¤¿à¤¤ छैन\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid "Warning: According to introspection data, method “%s†does not exist on interface “%sâ€\n"
msgstr "चेतावनी: जाच भठडाटाको अनà¥à¤¸à¤¾à¤°, \"%s\" विधिमा \"%s\" मा अवसà¥à¤¥à¤¿à¤¤ छैन।\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr ""
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "सङà¥à¤•à¥‡à¤¤ मा उतà¥à¤¸à¤°à¥à¤œà¤¨ गरà¥à¤¨à¥‡ वसà¥à¤¤à¥ मारà¥à¤—"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "सङà¥à¤•à¥‡à¤¤ र इनà¥à¤Ÿà¤°à¤«à¥‡à¤¸ नाम"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "सङà¥à¤•à¥‡à¤¤ उतà¥à¤¸à¤°à¥à¤œà¤¨ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ ।."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836 gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "'%s' मा जडान हà¥à¤¦à¥ˆ...\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, fuzzy, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿:%s मानà¥à¤¯ जà¥à¤žà¤¾à¤¤ बस नाम होइन।\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿: वसà¥à¤¤à¥ मारà¥à¤— निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ नगरेको \n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
#, fuzzy
#| msgid "Error: Method name is not specified\n"
msgid "Error: Signal name is not specified\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿: विधि नाम निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ छैन\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, fuzzy, c-format
#| msgid "Error: Method name “%s†is invalid\n"
msgid "Error: Signal name “%s†is invalid\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿: %s अवैध विधि नाम\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿: %s अवैध इनà¥à¤Ÿà¤°à¤«à¥‡à¤¸ नाम\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿:%s मानà¥à¤¯ सदसà¥à¤¯ नाम होइन।\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, fuzzy, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "पà¥à¤¯à¤¾à¤°à¤¾à¤®à¤¿à¤Ÿà¤° पदवरà¥à¤£à¤¨ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿: %s मा जडान खोलà¥à¤¨ सकेन\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "गनà¥à¤¤à¤µà¥à¤¯ नाम विधि आहà¥à¤µà¤¾à¤¨"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "डेटासà¥à¤°à¥‹à¤¤ कनà¥à¤«à¤¿à¤—रेसन तà¥à¤°à¥à¤Ÿà¤¿:निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ नगरेको पà¥à¤°à¤¦à¤¾à¤¯à¤•"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "विधि र इनà¥à¤Ÿà¤°à¤«à¥‡à¤¸ नाम"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "सेकेणà¥à¤¡à¤®à¤¾ समय समापà¥à¤¤à¤¿"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+#, fuzzy
+#| msgid "Show information about locations"
+msgid "Allow interactive authorization"
+msgstr "पà¥à¤°à¤®à¤¾à¤£à¤¿à¤•à¤°à¤£ असफल"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr ""
"आदेशहरू:\n"
@@ -1100,56 +1111,56 @@ msgstr ""
"\n"
"पà¥à¤°à¤¤à¥à¤¯à¥‡à¤• आदेशमा मदà¥à¤¦à¤¤ पाउन \"% s COMMAND --help\" को पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥à¥¤"
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿: गनà¥à¤¤à¤µà¥à¤¯ निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ नगरेको\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, fuzzy, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿:%s मानà¥à¤¯ जà¥à¤žà¤¾à¤¤ बस नाम होइन।\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿: विधि नाम निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ छैन\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿: %s अवैध विधि नाम\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, fuzzy, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "पà¥à¤¯à¤¾à¤°à¤¾à¤®à¤¿à¤Ÿà¤° पदवरà¥à¤£à¤¨ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s\n"
-#: gio/gdbus-tool.c:1190
-#, fuzzy, c-format
+#: gio/gdbus-tool.c:1194
+#, c-format
msgid "Error adding handle %d: %s\n"
-msgstr "समà¥à¤ªà¤°à¥à¤• थपà¥à¤¦à¤¾ अजà¥à¤žà¤¾à¤¤ तà¥à¤°à¥à¤Ÿà¤¿:%s"
+msgstr "%d हà¥à¤¯à¤¾à¤¨à¥à¤¡à¤² थपà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "निगरानिको लागि गनà¥à¤¤à¤µà¥à¤¯ नाम"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "डेटासà¥à¤°à¥‹à¤¤ कनà¥à¤«à¤¿à¤—रेसन तà¥à¤°à¥à¤Ÿà¤¿:निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ नगरेको पà¥à¤°à¤¦à¤¾à¤¯à¤•"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "XML मà¥à¤¦à¥à¤°à¤£ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
#, fuzzy
msgid "Introspect children"
msgstr "शाखाहरà¥"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "मà¥à¤¦à¥à¤°à¤£ गà¥à¤£à¤¹à¤°à¥‚ मातà¥à¤°"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr ""
"आदेशहरू:\n"
@@ -1162,15 +1173,15 @@ msgstr ""
"\n"
"पà¥à¤°à¤¤à¥à¤¯à¥‡à¤• आदेशमा मदà¥à¤¦à¤¤ पाउन \"% s COMMAND --help\" को पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥à¥¤"
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "निगरानिको लागि गनà¥à¤¤à¤µà¥à¤¯ नाम"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "वसà¥à¤¤à¥ पथ निगरानी"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr ""
"आदेशहरू:\n"
@@ -1183,75 +1194,80 @@ msgstr ""
"\n"
"पà¥à¤°à¤¤à¥à¤¯à¥‡à¤• आदेशमा मदà¥à¤¦à¤¤ पाउन \"% s COMMAND --help\" को पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥à¥¤"
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿: सनà¥à¤¦à¥‡à¤¶-विहिन जडान अनà¥à¤—मन गरà¥à¤¨ सकेन\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr ""
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid "Timeout to wait for before exiting with an error (seconds); 0 for no timeout (default)"
msgstr ""
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[विकलà¥à¤ªâ€¦]बस नाम"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "à¤à¤‰à¤Ÿà¤¾ बस नामको लागि परà¥à¤–नà¥à¤¹à¥‹à¤¸à¥à¥¤"
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿: सकà¥à¤°à¤¿à¤¯ गरà¥à¤¨à¤•à¤¾ लागि à¤à¤‰à¤Ÿà¤¾ सेवा निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ गरà¥à¤¨à¥ परà¥à¤¦à¤› ।\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿: पà¥à¤°à¤¤à¥€à¤•à¥à¤·à¤¾ गरà¥à¤¨à¥à¤ªà¤°à¥à¤¨à¥‡ सेवा निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ गरà¥à¤¨à¥ परà¥à¤¦à¤› ।\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿: निकै धेरै तरà¥à¤•à¤¹à¤°à¥‚\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿:%s मानà¥à¤¯ जà¥à¤žà¤¾à¤¤ बस नाम होइन।\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4932
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "तà¥à¤°à¥à¤Ÿà¤¿ सचà¥à¤¯à¤¾à¤‰à¤¨à¥‡ सेटिङ परिवरà¥à¤¤à¤¨ गरà¥à¤¨ अधिकार पà¥à¤°à¤¾à¤ªà¥à¤¤ छैन"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "बेनामी"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "डेसà¥à¤•à¤Ÿà¤ª फाइलले Exec फाà¤à¤Ÿ निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ गरेन"
-#: gio/gdesktopappinfo.c:2801
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤— लागी टरà¥à¤®à¤¿à¤¨à¤² खोजà¥à¤¨ असकà¥à¤·à¤®"
-#: gio/gdesktopappinfo.c:3452
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr "%s पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤— कनà¥à¤«à¤¿à¤—रेसन फोलà¥à¤¡à¤° सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨: %s"
-#: gio/gdesktopappinfo.c:3456
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "%s पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ MIME कनà¥à¤«à¤¿à¤—रेसन फोलà¥à¤¡à¤° सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨: %s"
-#: gio/gdesktopappinfo.c:3698 gio/gdesktopappinfo.c:3722
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤— सूचनामा पहिचायकको कमी छ"
-#: gio/gdesktopappinfo.c:3958
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "%s पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ डेसà¥à¤•à¤Ÿà¤ª फाइल सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ सकेन"
-#: gio/gdesktopappinfo.c:4094
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "%s को अनà¥à¤•à¥‚ल परिभाषा"
@@ -1279,12 +1295,11 @@ msgstr "डà¥à¤°à¤¾à¤‡à¤­à¤²à¥‡ सà¥à¤°à¥à¤†à¤¤ कारà¥à¤¯à¤¾à¤¨à¥à¤µà
msgid "drive doesn’t implement stop"
msgstr "डà¥à¤°à¤¾à¤‡à¤­à¤²à¥‡ रोक कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¦à¥ˆà¤¨"
-#: gio/gdtlsconnection.c:1120 gio/gtlsconnection.c:921
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr ""
-#: gio/gdummytlsbackend.c:195 gio/gdummytlsbackend.c:321
-#: gio/gdummytlsbackend.c:513
+#: gio/gdummytlsbackend.c:195 gio/gdummytlsbackend.c:321 gio/gdummytlsbackend.c:513
msgid "TLS support is not available"
msgstr "TLS समरà¥à¤¥à¤¨ उपलबà¥à¤§ छैन"
@@ -1293,9 +1308,9 @@ msgid "DTLS support is not available"
msgstr "DTLS समरà¥à¤¥à¤¨ उपलबà¥à¤§ छैन"
#: gio/gemblem.c:323
-#, fuzzy, c-format
+#, c-format
msgid "Can’t handle version %d of GEmblem encoding"
-msgstr "GVfsIcon सङà¥à¤•à¥‡à¤¤à¤¨à¤•à¥‹ संसà¥à¤•à¤°à¤£ %d हà¥à¤¯à¤¾à¤£à¥à¤¡à¤² गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
+msgstr "GEmblem सङà¥à¤•à¥‡à¤¤à¤¨à¤•à¥‹ संसà¥à¤•à¤°à¤£ %d हà¥à¤¯à¤¾à¤£à¥à¤¡à¤² गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
#: gio/gemblem.c:333
#, c-format
@@ -1303,9 +1318,9 @@ msgid "Malformed number of tokens (%d) in GEmblem encoding"
msgstr ""
#: gio/gemblemedicon.c:362
-#, fuzzy, c-format
+#, c-format
msgid "Can’t handle version %d of GEmblemedIcon encoding"
-msgstr "GVfsIcon सङà¥à¤•à¥‡à¤¤à¤¨à¤•à¥‹ संसà¥à¤•à¤°à¤£ %d हà¥à¤¯à¤¾à¤£à¥à¤¡à¤² गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
+msgstr "GEmblemedIcon सङà¥à¤•à¥‡à¤¤à¤¨à¤•à¥‹ संसà¥à¤•à¤°à¤£ %d हà¥à¤¯à¤¾à¤¨à¥à¤¡à¤² गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
#: gio/gemblemedicon.c:372
#, c-format
@@ -1315,83 +1330,82 @@ msgstr ""
#: gio/gemblemedicon.c:395
#, fuzzy
msgid "Expected a GEmblem for GEmblemedIcon"
-msgstr "(?( पछि दाबी अपेकà¥à¤·à¤¿à¤¤"
+msgstr "अङà¥à¤• अपेकà¥à¤·à¤¿à¤¤"
#. Translators: This is an error message when
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "समाविषà¥à¤Ÿ माउनà¥à¤Ÿ अवसà¥à¤¥à¤¿à¤¤ छैन"
-#: gio/gfile.c:2608 gio/glocalfile.c:2472
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾à¤®à¤¾ पà¥à¤°à¤¤à¤¿à¤²à¤¿à¤ªà¤¿ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
#, fuzzy
msgid "Can’t copy directory over directory"
msgstr "निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾à¤®à¤¾ पà¥à¤°à¤¤à¤¿à¤²à¤¿à¤ªà¤¿ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "लकà¥à¤·à¥à¤¯ फाइल अवसà¥à¤¥à¤¿à¤¤ छ"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
#, fuzzy
msgid "Can’t recursively copy directory"
msgstr "निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾à¤®à¤¾ पà¥à¤°à¤¤à¤¿à¤²à¤¿à¤ªà¤¿ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
-#: gio/gfile.c:2996
-#, fuzzy
+#: gio/gfile.c:3014
msgid "Splice not supported"
-msgstr "समरà¥à¤¥à¤¿à¤¤ छैन "
+msgstr "सà¥à¤ªà¥à¤²à¤¿à¤¸ समरà¥à¤¥à¤¿à¤¤ छैन"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, fuzzy, c-format
msgid "Error splicing file: %s"
-msgstr "फाइल मेटà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
+msgstr "फाइल पढà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿ %s: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "माउनà¥à¤Ÿà¤¹à¤°à¥‚को बीचमा पà¥à¤°à¤¤à¤¿à¤²à¤¿à¤ªà¤¿ (reflink/clone) समरà¥à¤¥à¤¿à¤¤ छैन"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "पà¥à¤°à¤¤à¤¿à¤²à¤¿à¤ªà¤¿ (reflink/clone) समरà¥à¤¥à¤¿à¤¤ वा अवैध छैन"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "पà¥à¤°à¤¤à¤¿à¤²à¤¿à¤ªà¤¿ (reflink/clone) समरà¥à¤¥à¤¿à¤¤ छैन वा काम गरेको छैन"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "विशेष फाइल पà¥à¤°à¤¤à¤¿à¤²à¤¿à¤ªà¤¿ गरà¥à¤¨ सकà¥à¤¦à¥ˆà¤¨"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
#, fuzzy
msgid "Invalid symlink value given"
-msgstr "यो मान अवैध छ।."
+msgstr "<choice value='%s'/> पहिलà¥à¤¯à¥ˆ नै दिà¤à¤•à¥‹ छ"
-#: gio/gfile.c:4045 glib/gfileutils.c:2362
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "सांकेतिक समà¥à¤¬à¤¨à¥à¤§ समरà¥à¤¥à¤¨ गरिà¤à¤¨"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "रदà¥à¤¦à¥€à¤Ÿà¥‹à¤•à¤°à¥€ समरà¥à¤¥à¤¿à¤¤ छैन"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "फाइल नामहरूमा “%c†समावेश गरà¥à¤¨ सकà¥à¤¦à¥ˆà¤¨"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "भोलà¥à¤¯à¥à¤®à¤²à¥‡ माउनà¥à¤Ÿ कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¦à¥ˆà¤¨"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "यस फाइल हेरà¥à¤¨ पूरà¥à¤µà¤¨à¤¿à¤°à¥à¤§à¤¾à¤°à¤¿à¤¤ अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤— दरà¥à¤¤à¤¾ गरिà¤à¤•à¥‹ छैन।"
@@ -1400,8 +1414,7 @@ msgstr "यस फाइल हेरà¥à¤¨ पूरà¥à¤µà¤¨à¤¿à¤°à¥à¤§à¤¾à¤°
msgid "Enumerator is closed"
msgstr "फाइल गणनाकरà¥à¤¤à¤¾ पहिले नै बनà¥à¤¦ छ"
-#: gio/gfileenumerator.c:219 gio/gfileenumerator.c:278
-#: gio/gfileenumerator.c:377 gio/gfileenumerator.c:476
+#: gio/gfileenumerator.c:219 gio/gfileenumerator.c:278 gio/gfileenumerator.c:377 gio/gfileenumerator.c:476
msgid "File enumerator has outstanding operation"
msgstr ""
@@ -1410,23 +1423,21 @@ msgid "File enumerator is already closed"
msgstr "फाइल गणनाकरà¥à¤¤à¤¾ पहिले नै बनà¥à¤¦ छ"
#: gio/gfileicon.c:250
-#, fuzzy, c-format
+#, c-format
msgid "Can’t handle version %d of GFileIcon encoding"
-msgstr "GVfsIcon सङà¥à¤•à¥‡à¤¤à¤¨à¤•à¥‹ संसà¥à¤•à¤°à¤£ %d हà¥à¤¯à¤¾à¤£à¥à¤¡à¤² गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
+msgstr "GFile Icon सङà¥à¤•à¥‡à¤¤à¤¨à¤•à¥‹ संसà¥à¤•à¤°à¤£ %d हà¥à¤¯à¤¾à¤£à¥à¤¡à¤² गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
#: gio/gfileicon.c:260
#, fuzzy
msgid "Malformed input data for GFileIcon"
msgstr "कà¥à¤°à¤®à¤¾à¤™à¥à¤•à¤¨ गरिà¤à¤•à¥‹ डेटा विकृत छ"
-#: gio/gfileinputstream.c:149 gio/gfileinputstream.c:394
-#: gio/gfileiostream.c:167 gio/gfileoutputstream.c:164
+#: gio/gfileinputstream.c:149 gio/gfileinputstream.c:394 gio/gfileiostream.c:167 gio/gfileoutputstream.c:164
#: gio/gfileoutputstream.c:497
msgid "Stream doesn’t support query_info"
msgstr ""
-#: gio/gfileinputstream.c:325 gio/gfileiostream.c:379
-#: gio/gfileoutputstream.c:371
+#: gio/gfileinputstream.c:325 gio/gfileiostream.c:379 gio/gfileoutputstream.c:371
msgid "Seek not supported on stream"
msgstr "सà¥à¤Ÿà¥à¤°à¤¿à¤®à¤®à¤¾ खोजी समरà¥à¤¥à¤¿à¤¤ छैन "
@@ -1439,20 +1450,18 @@ msgstr "आधार सà¥à¤Ÿà¥à¤°à¥€à¤®à¤®à¤¾ कताई समरà¥à¤¥à¤¿
msgid "Truncate not supported on stream"
msgstr "सà¥à¤Ÿà¥à¤°à¥€à¤®à¤®à¤¾ कताई समरà¥à¤¥à¤¿à¤¤ छैन"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
-#: glib/gconvert.c:1778
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611 glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "अवैध होसà¥à¤Ÿà¤¨à¤¾à¤®"
#: gio/ghttpproxy.c:143
-#, fuzzy
msgid "Bad HTTP proxy reply"
-msgstr "à¤à¤šà¤Ÿà¥€à¤Ÿà¥€à¤ªà¥€ (HTTP) पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ पà¥à¤°à¤®à¤¾à¤£à¥€à¤•à¤°à¤£ असफल भयो"
+msgstr "खराब HTTP पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ जवाफ"
#: gio/ghttpproxy.c:159
#, fuzzy
msgid "HTTP proxy connection not allowed"
-msgstr "à¤à¤šà¤Ÿà¥€à¤Ÿà¥€à¤ªà¥€ (HTTP) पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ पà¥à¤°à¤®à¤¾à¤£à¥€à¤•à¤°à¤£ असफल भयो"
+msgstr "खराब HTTP पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ जवाफ"
#: gio/ghttpproxy.c:164
msgid "HTTP proxy authentication failed"
@@ -1508,9 +1517,8 @@ msgid "Type %s does not implement from_tokens() on the GIcon interface"
msgstr ""
#: gio/gicon.c:469
-#, fuzzy
msgid "Can’t handle the supplied version of the icon encoding"
-msgstr "GVfsIcon सङà¥à¤•à¥‡à¤¤à¤¨à¤•à¥‹ संसà¥à¤•à¤°à¤£ %d हà¥à¤¯à¤¾à¤£à¥à¤¡à¤² गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
+msgstr "पà¥à¤°à¤¤à¤¿à¤®à¤¾ सङà¥à¤•à¥‡à¤¤à¤¨à¤•à¥‹ आपूरà¥à¤¤à¤¿ गरिà¤à¤•à¥‹ संसà¥à¤•à¤°à¤£ हà¥à¤¯à¤¾à¤¨à¥à¤¡à¤² गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
#: gio/ginetaddressmask.c:182
msgid "No address specified"
@@ -1530,19 +1538,20 @@ msgstr "ठेगानामा उपसरà¥à¤— लमà¥à¤¬à¤¾à¤‡ भनà¥
msgid "Could not parse “%s†as IP address mask"
msgstr "आईपी ठेगाना मासà¥à¤•à¤•à¥‹ रूपमा \"%s\" पद वरà¥à¤£à¤¨ गरà¥à¤¨ सकेन"
-#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:220
+#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220 gio/gnativesocketaddress.c:109
+#: gio/gunixsocketaddress.c:228
#, fuzzy
msgid "Not enough space for socket address"
-msgstr "निरà¥à¤¯à¤¾à¤¤ गरà¥à¤¨ असफल: गनà¥à¤¤à¤µà¥à¤¯à¤®à¤¾ परà¥à¤¯à¤¾à¤ªà¥à¤¤ खाली सà¥à¤¥à¤¾à¤¨ छैन"
+msgstr "डिसà¥à¤•à¤®à¤¾ परà¥à¤¯à¤¾à¤ªà¥à¤¤ खालीसà¥à¤¥à¤¾à¤¨ उपलबà¥à¤§ छैन"
#: gio/ginetsocketaddress.c:235
msgid "Unsupported socket address"
msgstr "असमरà¥à¤¥à¤¿à¤¤ सकेट ठेगाना"
#: gio/ginputstream.c:188
+#, fuzzy
msgid "Input stream doesn’t implement read"
-msgstr ""
+msgstr "आगत पà¥à¤°à¤µà¤¾à¤¹à¤²à¥‡ खोजी कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¦à¥ˆà¤¨"
#. Translators: This is an error you get if there is already an
#. * operation running against this stream when you try to start
@@ -1550,7 +1559,7 @@ msgstr ""
#. Translators: This is an error you get if there is
#. * already an operation running against this stream when
#. * you try to start one
-#: gio/ginputstream.c:1247 gio/giostream.c:310 gio/goutputstream.c:2208
+#: gio/ginputstream.c:1249 gio/giostream.c:310 gio/goutputstream.c:2208
#, fuzzy
msgid "Stream has outstanding operation"
msgstr "अलारà¥à¤®à¤®à¤¾ केहि अपà¥à¤°à¥‹ काम छ।"
@@ -1560,9 +1569,8 @@ msgid "Copy with file"
msgstr "फाइलसहित पà¥à¤°à¤¤à¤¿à¤²à¤¿à¤ªà¤¿ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: gio/gio-tool.c:164
-#, fuzzy
msgid "Keep with file when moved"
-msgstr "फाइल रदà¥à¤¦à¥€à¤Ÿà¥‹à¤•à¤°à¥€à¤®à¤¾ राखिà¤à¤•à¥‹ मिती"
+msgstr "सारà¥à¤¦à¤¾ फाइल राखà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: gio/gio-tool.c:205
msgid "“version†takes no arguments"
@@ -1596,12 +1604,12 @@ msgstr "सà¥à¤¥à¤¾à¤¨à¤¹à¤°à¥‚को बारेमा जानकारी
#, fuzzy
#| msgid "Launch an application"
msgid "Launch an application from a desktop file"
-msgstr "अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤— पिकà¥à¤¸à¤®à¥à¤¯à¤¾à¤ª फाइल पतà¥à¤¤à¤¾ लगाउन सकेन: %s\n"
+msgstr "(.desktop फाइलबाट) अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤—का लागि सà¥à¤¥à¤¿à¤° कारà¥à¤¯à¤¹à¤°à¥‚ सूचीबदà¥à¤§ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: gio/gio-tool.c:233
#, fuzzy
msgid "List the contents of locations"
-msgstr "सà¥à¤¥à¤¾à¤¨à¤¹à¤°à¥‚"
+msgstr "फाइलहरू रदà¥à¤¦à¥€à¤Ÿà¥‹à¤•à¤°à¥€à¤®à¤¾ तिनीहरूको मौलिक सà¥à¤¥à¤¾à¤¨à¤¸à¤à¤— सूचीकृत गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: gio/gio-tool.c:234
msgid "Get or set the handler for a mimetype"
@@ -1665,12 +1673,10 @@ msgid "Error writing to stdout"
msgstr "%s: %s: सà¥à¤Ÿà¤¡à¤†à¤‰à¤Ÿà¤®à¤¾ लेखà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿"
#. Translators: commandline placeholder
-#: gio/gio-tool-cat.c:133 gio/gio-tool-info.c:340 gio/gio-tool-list.c:172
-#: gio/gio-tool-mkdir.c:48 gio/gio-tool-monitor.c:37 gio/gio-tool-monitor.c:39
-#: gio/gio-tool-monitor.c:41 gio/gio-tool-monitor.c:43
-#: gio/gio-tool-monitor.c:204 gio/gio-tool-mount.c:1199 gio/gio-tool-open.c:70
-#: gio/gio-tool-remove.c:48 gio/gio-tool-rename.c:45 gio/gio-tool-set.c:89
-#: gio/gio-tool-trash.c:220 gio/gio-tool-tree.c:239
+#: gio/gio-tool-cat.c:133 gio/gio-tool-info.c:340 gio/gio-tool-list.c:172 gio/gio-tool-mkdir.c:48
+#: gio/gio-tool-monitor.c:37 gio/gio-tool-monitor.c:39 gio/gio-tool-monitor.c:41 gio/gio-tool-monitor.c:43
+#: gio/gio-tool-monitor.c:204 gio/gio-tool-mount.c:1199 gio/gio-tool-open.c:70 gio/gio-tool-remove.c:48
+#: gio/gio-tool-rename.c:45 gio/gio-tool-set.c:89 gio/gio-tool-trash.c:220 gio/gio-tool-tree.c:239
msgid "LOCATION"
msgstr "सà¥à¤¥à¤¾à¤¨"
@@ -1685,9 +1691,8 @@ msgid ""
"like smb://server/resource/file.txt as location."
msgstr ""
-#: gio/gio-tool-cat.c:162 gio/gio-tool-info.c:371 gio/gio-tool-mkdir.c:76
-#: gio/gio-tool-monitor.c:229 gio/gio-tool-mount.c:1250 gio/gio-tool-open.c:96
-#: gio/gio-tool-remove.c:72 gio/gio-tool-trash.c:303
+#: gio/gio-tool-cat.c:162 gio/gio-tool-info.c:371 gio/gio-tool-mkdir.c:76 gio/gio-tool-monitor.c:229
+#: gio/gio-tool-mount.c:1250 gio/gio-tool-open.c:96 gio/gio-tool-remove.c:72 gio/gio-tool-trash.c:303
msgid "No locations given"
msgstr "कà¥à¤¨à¥ˆ सà¥à¤¥à¤¾à¤¨ दिà¤à¤•à¥‹ छैन"
@@ -1702,17 +1707,15 @@ msgstr "पà¥à¤°à¤—ति देखाउनà¥à¤¹à¥‹à¤¸à¥"
#: gio/gio-tool-copy.c:45 gio/gio-tool-move.c:40
#, fuzzy
msgid "Prompt before overwrite"
-msgstr "बचत गरà¥à¤¨à¥à¤­à¤¨à¥à¤¦à¤¾ पहिलाको पà¥à¤°à¥‹à¤®à¥à¤ªà¥à¤Ÿ"
+msgstr "अधिलेखन गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: gio/gio-tool-copy.c:46
-#, fuzzy
msgid "Preserve all attributes"
-msgstr "सरकà¥à¤·à¤£ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+msgstr "सबै विशेषता सà¥à¤°à¤•à¥à¤·à¤¿à¤¤ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:41 gio/gio-tool-save.c:49
-#, fuzzy
msgid "Backup existing destination files"
-msgstr "जगेडा फाइल देखाउनà¥à¤¹à¥‹à¤¸à¥"
+msgstr "अवसà¥à¤¥à¤¿à¤¤ गनà¥à¤¤à¤¬à¥à¤¯ फाइलहरू जगेडा गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: gio/gio-tool-copy.c:48
msgid "Never follow symbolic links"
@@ -1834,7 +1837,7 @@ msgstr "सà¥à¤²à¤­ विशेषताहरू:\n"
#: gio/gio-tool-info.c:310
#, fuzzy
msgid "Writable attribute namespaces:\n"
-msgstr "लेखà¥à¤¨ सकिने सà¥à¤®à¥ƒà¤¤à¤¿"
+msgstr "कà¥à¤žà¥à¤œà¥€ लेखनयोगà¥à¤¯ छैन\n"
#: gio/gio-tool-info.c:345
msgid "Show information about locations."
@@ -1875,7 +1878,7 @@ msgstr "'%s' लोड गरà¥à¤¨ अकà¥à¤·à¤®: %s"
#, fuzzy, c-format
#| msgid "Failed to read from file '%s': %s"
msgid "Unable to load application information for ‘%s‘"
-msgstr "छवि-लोडिङ मोडà¥à¤¯à¥à¤² लोड गरà¥à¤¨ असफल: %s: %s"
+msgstr "%s लोड गरà¥à¤¨ असमरà¥à¤¥"
#: gio/gio-tool-launch.c:119
#, c-format
@@ -1891,20 +1894,17 @@ msgid "Use a long listing format"
msgstr "लामो सूची ढाà¤à¤šà¤¾ पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: gio/gio-tool-list.c:40
-#, fuzzy
-#| msgid "display name: %s\n"
msgid "Print display names"
-msgstr "कारà¥à¤¯à¤¸à¥à¤¥à¤¾à¤¨ नाम पà¥à¤°à¤¦à¤°à¥à¤¶à¤¨ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+msgstr "पà¥à¤°à¤¦à¤°à¥à¤¶à¤¨ नाम मà¥à¤¦à¥à¤°à¤£ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: gio/gio-tool-list.c:41
-#, fuzzy
msgid "Print full URIs"
-msgstr "जहिलेपनि पूरा अभिवà¥à¤¯à¤•à¥à¤¤à¤¿ मà¥à¤¦à¥à¤°à¤£ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+msgstr "पूरा URIs मà¥à¤¦à¥à¤°à¤£ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: gio/gio-tool-list.c:177
#, fuzzy
msgid "List the contents of the locations."
-msgstr "सà¥à¤¥à¤¾à¤¨à¤¹à¤°à¥‚"
+msgstr "फाइलहरू रदà¥à¤¦à¥€à¤Ÿà¥‹à¤•à¤°à¥€à¤®à¤¾ तिनीहरूको मौलिक सà¥à¤¥à¤¾à¤¨à¤¸à¤à¤— सूचीकृत गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: gio/gio-tool-list.c:179
msgid ""
@@ -1972,9 +1972,9 @@ msgid "Failed to load info for handler “%sâ€"
msgstr "पà¥à¤°à¤®à¤¾à¤£à¤ªà¤¤à¥à¤° लोड गरà¥à¤¨ असफल: %s"
#: gio/gio-tool-mime.c:168
-#, fuzzy, c-format
+#, c-format
msgid "Failed to set “%s†as the default handler for “%sâ€: %s\n"
-msgstr "पाइप अवरोध बिहिन सेट गरà¥à¤¨ असफल भयो: %s"
+msgstr "\"%s\" का लागि पूरà¥à¤µà¤¨à¤¿à¤°à¥à¤§à¤¾à¤°à¤¿à¤¤ हà¥à¤¯à¤¾à¤¨à¥à¤¡à¤²à¤°à¤•à¥‹ रूपमा \"%s\" सेट गरà¥à¤¨ असफल भयो: %s\n"
#: gio/gio-tool-mkdir.c:31
msgid "Create parent directories"
@@ -2084,11 +2084,10 @@ msgid "The numeric PIM when unlocking a VeraCrypt volume"
msgstr ""
#: gio/gio-tool-mount.c:75
-#, fuzzy
#| msgctxt "GDateTime"
#| msgid "PM"
msgid "PIM"
-msgstr "_PIM"
+msgstr "PIM"
#: gio/gio-tool-mount.c:76
msgid "Mount a TCRYPT hidden volume"
@@ -2133,7 +2132,7 @@ msgstr ""
#: gio/gio-tool-move.c:143
#, fuzzy, c-format
msgid "Target %s is not a directory"
-msgstr "लकà¥à¤·à¤¿à¤¤ निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾ “%s†अवसà¥à¤¥à¤¿à¤¤ छैन"
+msgstr "लकà¥à¤·à¤¿à¤¤ निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾ छैन"
#: gio/gio-tool-open.c:75
msgid ""
@@ -2154,7 +2153,6 @@ msgid "NAME"
msgstr "नाम"
#: gio/gio-tool-rename.c:50
-#, fuzzy
msgid "Rename a file."
msgstr "फाइल पà¥à¤¨:नामाकरण गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
@@ -2205,7 +2203,7 @@ msgstr "ETAG"
#: gio/gio-tool-save.c:113
#, fuzzy
msgid "Error reading from standard input"
-msgstr "फाइलबाट पढà¥à¤¨à¥‡ कà¥à¤°à¤®à¤®à¤¾ तà¥à¤°à¥à¤Ÿà¤¿"
+msgstr "हेनà¥à¤¦à¤²à¤¬à¤¾à¤Ÿ पढà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
#. Translators: The "etag" is a token allowing to verify whether a file has been modified
#: gio/gio-tool-save.c:139
@@ -2238,9 +2236,8 @@ msgid "VALUE"
msgstr "मान"
#: gio/gio-tool-set.c:93
-#, fuzzy
msgid "Set a file attribute of LOCATION."
-msgstr "फाइलविशेषता सेट गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+msgstr "सà¥à¤¥à¤¾à¤¨à¤•à¥‹ फाइल विशेषता सेट गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ ।"
#: gio/gio-tool-set.c:113
msgid "Location not specified"
@@ -2264,9 +2261,8 @@ msgid "Empty the trash"
msgstr "रदà¥à¤¦à¥€à¤Ÿà¥‹à¤•à¤°à¥€ खाली गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: gio/gio-tool-trash.c:35
-#, fuzzy
msgid "List files in the trash with their original locations"
-msgstr "सामगà¥à¤°à¥€à¤¹à¤°à¥‚ (_C)"
+msgstr "फाइलहरू रदà¥à¤¦à¥€à¤Ÿà¥‹à¤•à¤°à¥€à¤®à¤¾ तिनीहरूको मौलिक सà¥à¤¥à¤¾à¤¨à¤¸à¤à¤— सूचीकृत गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: gio/gio-tool-trash.c:36
msgid "Restore a file from trash to its original location (possibly recreating the directory)"
@@ -2301,9 +2297,8 @@ msgid "Location given doesn't start with trash:///"
msgstr ""
#: gio/gio-tool-tree.c:33
-#, fuzzy
msgid "Follow symbolic links, mounts and shortcuts"
-msgstr "साङà¥à¤•à¥‡à¤¤à¤¿à¤• लिङà¥à¤• नपछà¥à¤¯à¤¾à¤‰à¤¨à¥à¤¹à¥‹à¤¸à¥"
+msgstr "साङà¥à¤•à¥‡à¤¤à¤¿à¤• लिङà¥à¤•, माउनà¥à¤Ÿ र सरà¥à¤Ÿà¤•à¤Ÿ पछà¥à¤¯à¤¾à¤‰à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: gio/gio-tool-tree.c:244
msgid "List contents of directories in a tree-like format."
@@ -2344,8 +2339,7 @@ msgstr "अजà¥à¤žà¤¾à¤¤ विकलà¥à¤ª %s"
#. * the second %s is an environment variable, and the third
#. * %s is a command line tool
#.
-#: gio/glib-compile-resources.c:310 gio/glib-compile-resources.c:367
-#: gio/glib-compile-resources.c:424
+#: gio/glib-compile-resources.c:310 gio/glib-compile-resources.c:367 gio/glib-compile-resources.c:424
#, c-format
msgid "%s preprocessing requested, but %s is not set, and %s is not in PATH"
msgstr "%s पूरà¥à¤µ पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ अनà¥à¤°à¥‹à¤§ गरियो, तर %s सेट भà¤à¤•à¥‹ छैन, र %s पथ होइन"
@@ -2358,81 +2352,83 @@ msgstr "फाइल पढà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿ %s: %s"
#: gio/glib-compile-resources.c:477
#, fuzzy, c-format
msgid "Error compressing file %s"
-msgstr "%'d फाइल “%s†भितà¥à¤° सङà¥à¤•à¥à¤šà¤¿à¤¤ गरिदै"
+msgstr "फाइलहरू सङà¥à¤•à¥à¤šà¤¨à¤®à¤¾ तà¥à¤°à¥à¤Ÿà¤¿"
#: gio/glib-compile-resources.c:541
#, fuzzy, c-format
msgid "text may not appear inside <%s>"
msgstr "पाठ <%s> भितà¥à¤° देखा परà¥à¤¦à¥ˆà¤¨"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "कारà¥à¤¯à¤•à¥à¤°à¤® संसà¥à¤•à¤°à¤£ देखाउनà¥à¤¹à¥‹à¤¸à¥ र निसà¥à¤•à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "निरà¥à¤—त फाइलको नाम"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid "The directories to load files referenced in FILE from (default: current directory)"
msgstr ""
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
-#: gio/glib-compile-schemas.c:2202
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173 gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid "Generate output in the format selected for by the target filename extension"
msgstr ""
-#: gio/glib-compile-resources.c:741
-#, fuzzy
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
-msgstr "सà¥à¤°à¥‹à¤¤/हेडर शीरà¥à¤·à¤•à¤¹à¤°à¥‚:"
+msgstr "सà¥à¤°à¥‹à¤¤ हेडर सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr ""
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
#, fuzzy
msgid "Generate dependency list"
-msgstr "निरà¥à¤­à¤°à¤¤à¤¾"
+msgstr "जडान निरà¥à¤­à¤°à¤¤à¤¾ विफल"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
#, fuzzy
msgid "Name of the dependency file to generate"
-msgstr "फाइलको नाम र पà¥à¤°à¤¤à¤¿à¤®à¤¾ ।"
+msgstr "यो नामको फाइल पहिलà¥à¤¯à¥ˆ अवसà¥à¤¥à¤¿à¤¤ छ"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr ""
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr ""
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr ""
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid "Don’t embed resource data in the C file; assume it's linked externally instead"
msgstr ""
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "सिरà¥à¤œà¤¨à¤¾ गरिà¤à¤•à¥‹ सà¥à¤°à¥‹à¤¤ सङà¥à¤•à¥‡à¤¤à¤•à¤¾ लागि पà¥à¤°à¤¯à¥‹à¤— गरिà¤à¤•à¥‹ C पहिचायक नाम"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr ""
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
"and the resource file have the extension called .gresource."
msgstr ""
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr ""
@@ -2638,9 +2634,9 @@ msgid "<%s id='%s'> not (yet) defined."
msgstr "<%s id='%s'> परिभाषित गरिà¤à¤•à¥‹ छैन ।."
#: gio/glib-compile-schemas.c:1017
-#, fuzzy, c-format
+#, c-format
msgid "Invalid GVariant type string “%sâ€"
-msgstr "GVariant मा रूपानà¥à¤¤à¤° गरà¥à¤¦à¤¾ अवैध सà¥à¤Ÿà¥à¤°à¤¿à¤‚ग मान"
+msgstr "अवैध जिभेरिà¤à¤¨à¥à¤Ÿ पà¥à¤°à¤•à¤¾à¤° सà¥à¤Ÿà¥à¤°à¤¿à¤™ \"%s\""
#: gio/glib-compile-schemas.c:1047
msgid "<override> given but schema isn’t extending anything"
@@ -2719,12 +2715,12 @@ msgstr "<%s> ततà¥à¤µ à¤à¤‰à¤Ÿà¤¾ मातà¥à¤° <%s> भितà¥à¤° अà
#: gio/glib-compile-schemas.c:1518
#, fuzzy, c-format
msgid "Element <%s> not allowed at the top level"
-msgstr "<%s>ततà¥à¤µ भितà¥à¤° <%s>ततà¥à¤µà¤²à¤¾à¤ˆ अनà¥à¤®à¤¤à¤¿ छैन"
+msgstr "ततà¥à¤µ <%s> <%s भितà¥à¤° अनà¥à¤®à¤¤à¤¿ छैन>"
#: gio/glib-compile-schemas.c:1536
#, fuzzy
msgid "Element <default> is required in <key>"
-msgstr "आवशà¥à¤¯à¤• ततà¥à¤µ %s हराइरहेको छ"
+msgstr "%s को पूरà¥à¤µà¤¨à¤¿à¤°à¥à¤§à¤¾à¤°à¤¿à¤¤ मà¥à¤¦à¥à¤°à¤• पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¨ पà¥à¤°à¤®à¤¾à¤£à¥€à¤•à¤°à¤£ आवशà¥à¤¯à¤• छ"
#: gio/glib-compile-schemas.c:1626
#, c-format
@@ -2747,10 +2743,8 @@ msgid "This entire file has been ignored."
msgstr "यो समà¥à¤ªà¥‚रà¥à¤£ फाइल उपेकà¥à¤·à¤¾ गरिà¤à¤•à¥‹ छ ।"
#: gio/glib-compile-schemas.c:1908
-#, fuzzy
-#| msgid "Ignoring this file.\n"
msgid "Ignoring this file."
-msgstr "कà¥à¤¨à¥ˆ पनि अवसà¥à¤¥à¤¿à¤¤ इनà¥à¤¹à¤¿à¤¬à¤¿à¤Ÿà¤° उपेकà¥à¤·à¤¾ गरà¥à¤¦à¥ˆà¤›"
+msgstr "यो फाइल उपेकà¥à¤·à¤¾ गरà¥à¤¦à¥ˆà¤› ।"
#: gio/glib-compile-schemas.c:1963
#, fuzzy, c-format
@@ -2764,12 +2758,16 @@ msgstr "चेतावनी: (%s) निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ गरिà¤à¤•à
#: gio/glib-compile-schemas.c:1993
#, c-format
-msgid "Cannot provide per-desktop overrides for localized key “%s†in schema “%s†(override file “%sâ€); ignoring override for this key."
+msgid ""
+"Cannot provide per-desktop overrides for localized key “%s†in schema “%s†(override file “%sâ€); ignoring override "
+"for this key."
msgstr ""
#: gio/glib-compile-schemas.c:2002
#, c-format
-msgid "Cannot provide per-desktop overrides for localized key “%s†in schema “%s†(override file “%sâ€) and --strict was specified; exiting."
+msgid ""
+"Cannot provide per-desktop overrides for localized key “%s†in schema “%s†(override file “%sâ€) and --strict was "
+"specified; exiting."
msgstr ""
#: gio/glib-compile-schemas.c:2026
@@ -2784,22 +2782,30 @@ msgstr ""
#: gio/glib-compile-schemas.c:2065
#, c-format
-msgid "Override for key “%s†in schema “%s†in override file “%s†is outside the range given in the schema; ignoring override for this key."
+msgid ""
+"Override for key “%s†in schema “%s†in override file “%s†is outside the range given in the schema; ignoring "
+"override for this key."
msgstr ""
#: gio/glib-compile-schemas.c:2075
#, c-format
-msgid "Override for key “%s†in schema “%s†in override file “%s†is outside the range given in the schema and --strict was specified; exiting."
+msgid ""
+"Override for key “%s†in schema “%s†in override file “%s†is outside the range given in the schema and --strict was "
+"specified; exiting."
msgstr ""
#: gio/glib-compile-schemas.c:2101
#, c-format
-msgid "Override for key “%s†in schema “%s†in override file “%s†is not in the list of valid choices; ignoring override for this key."
+msgid ""
+"Override for key “%s†in schema “%s†in override file “%s†is not in the list of valid choices; ignoring override "
+"for this key."
msgstr ""
#: gio/glib-compile-schemas.c:2111
#, c-format
-msgid "Override for key “%s†in schema “%s†in override file “%s†is not in the list of valid choices and --strict was specified; exiting."
+msgid ""
+"Override for key “%s†in schema “%s†in override file “%s†is not in the list of valid choices and --strict was "
+"specified; exiting."
msgstr ""
#: gio/glib-compile-schemas.c:2173
@@ -2814,7 +2820,7 @@ msgstr "%s ले कà¥à¤¨à¥ˆ तà¥à¤°à¥à¤Ÿà¤¿à¤¹à¤°à¥‚ दिà¤à¤•à¥‹ छà¥
#: gio/glib-compile-schemas.c:2175
#, fuzzy
msgid "Do not write the gschema.compiled file"
-msgstr "निरà¥à¤—त फाइल %s मा लेखà¥à¤¨ अनà¥à¤®à¤¤à¤¿ छैन\n"
+msgstr "कà¥à¤¯à¤¾à¤¸ फाइल लेखà¥à¤¨ असफल भयो: %s\n"
#: gio/glib-compile-schemas.c:2176
msgid "Do not enforce key name restrictions"
@@ -2832,10 +2838,8 @@ msgid "You should give exactly one directory name"
msgstr ""
#: gio/glib-compile-schemas.c:2269
-#, fuzzy
-#| msgid "No schema files found: "
msgid "No schema files found: doing nothing."
-msgstr "सà¥à¤•à¤¿à¤®à¤¾ फेला परेन"
+msgstr "सà¥à¤•à¤¿à¤®à¤¾ फाइल फेला परेन: केही पनि गरिरहेको छैन ।"
#: gio/glib-compile-schemas.c:2271
#, fuzzy
@@ -2847,7 +2851,7 @@ msgstr "फाइलबाट अवसà¥à¤¥à¤¿à¤¤ कà¥à¤žà¥à¤œà¥€à¤¹à¤°à¥‚
msgid "Invalid filename %s"
msgstr "%s अवैध फाइल नाम"
-#: gio/glocalfile.c:980
+#: gio/glocalfile.c:982
#, c-format
msgid "Error getting filesystem info for %s: %s"
msgstr "%s का लागि फाइल पà¥à¤°à¤£à¤¾à¤²à¥€ सूचना पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
@@ -2856,136 +2860,134 @@ msgstr "%s का लागि फाइल पà¥à¤°à¤£à¤¾à¤²à¥€ सूचनà¤
#. * the enclosing (user visible) mount of a file, but none
#. * exists.
#.
-#: gio/glocalfile.c:1121
+#: gio/glocalfile.c:1123
#, c-format
msgid "Containing mount for file %s not found"
msgstr "फाइल %s का लागि माउनà¥à¤Ÿ समाविषà¥à¤Ÿ फेला परेन"
-#: gio/glocalfile.c:1144
+#: gio/glocalfile.c:1146
msgid "Can’t rename root directory"
msgstr "मूल निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾ पà¥à¤¨: नामकरण गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
-#: gio/glocalfile.c:1162 gio/glocalfile.c:1185
-#, fuzzy, c-format
+#: gio/glocalfile.c:1164 gio/glocalfile.c:1187
+#, c-format
msgid "Error renaming file %s: %s"
-msgstr "%s लाई %s मा पà¥à¤¨: नामाकरण गरà¥à¤¦à¥ˆ."
+msgstr "'%s' फाइल पà¥à¤¨: नामकरण गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/glocalfile.c:1169
+#: gio/glocalfile.c:1171
msgid "Can’t rename file, filename already exists"
msgstr "फाइल नाम फेरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨, फाइलनाम पहिले नै अवसà¥à¤¥à¤¿à¤¤ छ"
-#: gio/glocalfile.c:1182 gio/glocalfile.c:2366 gio/glocalfile.c:2394
-#: gio/glocalfile.c:2533 gio/glocalfileoutputstream.c:656
+#: gio/glocalfile.c:1184 gio/glocalfile.c:2380 gio/glocalfile.c:2408 gio/glocalfile.c:2547
+#: gio/glocalfileoutputstream.c:656
msgid "Invalid filename"
msgstr "अमानà¥à¤¯ फाइलनाम"
-#: gio/glocalfile.c:1350 gio/glocalfile.c:1361
+#: gio/glocalfile.c:1352 gio/glocalfile.c:1363
#, c-format
msgid "Error opening file %s: %s"
msgstr "%s फाइल खोलà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/glocalfile.c:1486
+#: gio/glocalfile.c:1488
#, fuzzy, c-format
msgid "Error removing file %s: %s"
msgstr "लकà¥à¤·à¥à¤¯ फाइल हटाउà¤à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/glocalfile.c:1980 gio/glocalfile.c:1991
+#: gio/glocalfile.c:1982 gio/glocalfile.c:1993 gio/glocalfile.c:2020
#, fuzzy, c-format
msgid "Error trashing file %s: %s"
-msgstr "सनà¥à¤¦à¥‡à¤¶ टà¥à¤°à¥à¤¯à¤¾à¤¸ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
+msgstr "%s का लागि रदà¥à¤¦à¥€à¤Ÿà¥‹à¤•à¤°à¥€ सूचना फाइल सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ असकà¥à¤·à¤®: %s"
-#: gio/glocalfile.c:2029
+#: gio/glocalfile.c:2040
#, c-format
msgid "Unable to create trash directory %s: %s"
msgstr "रदà¥à¤¦à¥€à¤Ÿà¥‹à¤•à¤°à¥€ डाइरेकà¥à¤Ÿà¥à¤°à¥€ सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ असकà¥à¤·à¤® %s: %s"
-#: gio/glocalfile.c:2050
+#: gio/glocalfile.c:2061
#, c-format
msgid "Unable to find toplevel directory to trash %s"
msgstr "रदà¥à¤¦à¥€à¤Ÿà¥‹à¤•à¤°à¥€à¤®à¤¾ माथिलà¥à¤²à¥‹ तहको डाइरेकà¥à¤Ÿà¤°à¥€ फेला पारà¥à¤¨ अकà¥à¤·à¤® %s"
-#: gio/glocalfile.c:2058
-#, fuzzy, c-format
+#: gio/glocalfile.c:2069
+#, c-format
msgid "Trashing on system internal mounts is not supported"
-msgstr "सांकेतिक समà¥à¤¬à¤¨à¥à¤§ समरà¥à¤¥à¤¨ गरिà¤à¤¨"
+msgstr "पà¥à¤°à¤£à¤¾à¤²à¥€ आनà¥à¤¤à¤°à¤¿à¤• माउनà¥à¤Ÿà¤®à¤¾ रदà¥à¤¦à¥€à¤Ÿà¥‹à¤•à¤°à¥€ समरà¥à¤¥à¤¿à¤¤ छैन"
-#: gio/glocalfile.c:2141 gio/glocalfile.c:2169
+#: gio/glocalfile.c:2155 gio/glocalfile.c:2183
#, c-format
msgid "Unable to find or create trash directory %s to trash %s"
msgstr "रदà¥à¤¦à¥€à¤Ÿà¥‹à¤•à¤°à¥€à¤®à¤¾ %s डाइरेकà¥à¤Ÿà¤°à¥€ सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ वा फेला पारà¥à¤¨ असकà¥à¤·à¤® %s"
-#: gio/glocalfile.c:2215
+#: gio/glocalfile.c:2229
#, c-format
msgid "Unable to create trashing info file for %s: %s"
msgstr "%s का लागि रदà¥à¤¦à¥€à¤Ÿà¥‹à¤•à¤°à¥€ सूचना फाइल सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ असकà¥à¤·à¤®: %s"
-#: gio/glocalfile.c:2277
+#: gio/glocalfile.c:2291
#, fuzzy, c-format
msgid "Unable to trash file %s across filesystem boundaries"
msgstr "'%s' फाइल सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ असफल: %s"
-#: gio/glocalfile.c:2281 gio/glocalfile.c:2337
+#: gio/glocalfile.c:2295 gio/glocalfile.c:2351
#, c-format
msgid "Unable to trash file %s: %s"
-msgstr " असकà¥à¤·à¤® %s: %s"
+msgstr "फाइल %s रदà¥à¤¦à¥€à¤Ÿà¥‹à¤•à¤°à¥€à¤®à¤¾ सारà¥à¤¨ अकà¥à¤·à¤®: %s"
-#: gio/glocalfile.c:2343
+#: gio/glocalfile.c:2357
#, c-format
msgid "Unable to trash file %s"
msgstr "फाइललाई रदà¥à¤¦à¤¿à¤Ÿà¥‹à¤•à¤°à¥€à¤®à¤¾ सारà¥à¤¨ असकà¥à¤·à¤®: %s"
-#: gio/glocalfile.c:2369
+#: gio/glocalfile.c:2383
#, c-format
msgid "Error creating directory %s: %s"
msgstr "निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾ %s सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/glocalfile.c:2398
-#, fuzzy, c-format
+#: gio/glocalfile.c:2412
+#, c-format
msgid "Filesystem does not support symbolic links"
-msgstr "सांकेतिक समà¥à¤¬à¤¨à¥à¤§ '%s' पढà¥à¤¨ असफल: %s"
+msgstr "फाइल पà¥à¤°à¤£à¤¾à¤²à¥€à¤²à¥‡ सांकेतिक समà¥à¤¬à¤¨à¥à¤§à¤²à¤¾à¤ˆ समरà¥à¤¥à¤¨ गरà¥à¤¦à¥ˆà¤¨"
-#: gio/glocalfile.c:2401
+#: gio/glocalfile.c:2415
#, fuzzy, c-format
msgid "Error making symbolic link %s: %s"
msgstr "\"%s\" à¤à¤‰à¤Ÿà¤¾ पà¥à¤¨à¤°à¤¾à¤µà¤°à¥à¤¤à¥€ सांकेतिक शृंखला हो."
-#: gio/glocalfile.c:2444 gio/glocalfile.c:2479 gio/glocalfile.c:2536
+#: gio/glocalfile.c:2458 gio/glocalfile.c:2493 gio/glocalfile.c:2550
#, c-format
msgid "Error moving file %s: %s"
msgstr "%s फाइल सारà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/glocalfile.c:2467
+#: gio/glocalfile.c:2481
#, fuzzy
msgid "Can’t move directory over directory"
msgstr "निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾à¤®à¤¾ पà¥à¤°à¤¤à¤¿à¤²à¤¿à¤ªà¤¿ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
-#: gio/glocalfile.c:2493 gio/glocalfileoutputstream.c:1079
-#: gio/glocalfileoutputstream.c:1093 gio/glocalfileoutputstream.c:1108
-#: gio/glocalfileoutputstream.c:1125 gio/glocalfileoutputstream.c:1139
+#: gio/glocalfile.c:2507 gio/glocalfileoutputstream.c:1108 gio/glocalfileoutputstream.c:1122
+#: gio/glocalfileoutputstream.c:1137 gio/glocalfileoutputstream.c:1154 gio/glocalfileoutputstream.c:1168
#, fuzzy
msgid "Backup file creation failed"
msgstr "असà¥à¤¥à¤¾à¤¯à¥€ फाइल सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¦à¤¾ असफल भयो ।"
-#: gio/glocalfile.c:2512
+#: gio/glocalfile.c:2526
#, c-format
msgid "Error removing target file: %s"
msgstr "लकà¥à¤·à¥à¤¯ फाइल हटाउà¤à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/glocalfile.c:2526
+#: gio/glocalfile.c:2540
#, fuzzy
msgid "Move between mounts not supported"
msgstr "माउनà¥à¤Ÿà¤¹à¤°à¥‚को बीचमा पà¥à¤°à¤¤à¤¿à¤²à¤¿à¤ªà¤¿ (reflink/clone) समरà¥à¤¥à¤¿à¤¤ छैन"
-#: gio/glocalfile.c:2700
+#: gio/glocalfile.c:2714
#, fuzzy, c-format
#| msgid "Could not open converter from '%s' to '%s': %s"
msgid "Could not determine the disk usage of %s: %s"
msgstr "“%s†को मौलिक सà¥à¤¥à¤¾à¤¨ निरà¥à¤§à¤¾à¤°à¤£ गरà¥à¤¨ सकेन "
#: gio/glocalfileinfo.c:767
-#, fuzzy
msgid "Attribute value must be non-NULL"
-msgstr "सूची अनà¥à¤•à¥à¤°à¤®à¤£à¤¿à¤•à¤¾ नेगेटिभ नभà¤à¤•à¥‹ हà¥à¤¨à¥à¤ªà¤°à¥à¤¦à¤› ।"
+msgstr "विशेषता मान शूनà¥à¤¯-रहित हà¥à¤¨à¥à¤ªà¤°à¥à¤›"
#: gio/glocalfileinfo.c:774
#, fuzzy
@@ -3000,13 +3002,13 @@ msgstr "अवैध विशेषता पà¥à¤°à¤•à¤¾à¤°"
#: gio/glocalfileinfo.c:821
#, fuzzy, c-format
msgid "Error setting extended attribute “%sâ€: %s"
-msgstr "%s: %s देखि %sमा सेट गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿"
+msgstr "गà¥à¤£ '%s' सेट गरà¥à¤¦à¤¾ अजà¥à¤žà¤¾à¤¤ तà¥à¤°à¥à¤Ÿà¤¿:%s"
#: gio/glocalfileinfo.c:1709 gio/win32/gwinhttpfile.c:191
msgid " (invalid encoding)"
msgstr " (अवैध सङà¥à¤•à¥‡à¤¤à¤¨)"
-#: gio/glocalfileinfo.c:1868 gio/glocalfileoutputstream.c:943
+#: gio/glocalfileinfo.c:1868 gio/glocalfileoutputstream.c:943 gio/glocalfileoutputstream.c:995
#, fuzzy, c-format
msgid "Error when getting information for file “%sâ€: %s"
msgstr "'%s' फाइल पढà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿ : %s"
@@ -3049,16 +3051,14 @@ msgstr "%s: %s देखि %sमा सेट गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤
msgid "symlink must be non-NULL"
msgstr "सूची अनà¥à¤•à¥à¤°à¤®à¤£à¤¿à¤•à¤¾ नेगेटिभ नभà¤à¤•à¥‹ हà¥à¤¨à¥à¤ªà¤°à¥à¤¦à¤› ।"
-#: gio/glocalfileinfo.c:2382 gio/glocalfileinfo.c:2401
-#: gio/glocalfileinfo.c:2412
+#: gio/glocalfileinfo.c:2382 gio/glocalfileinfo.c:2401 gio/glocalfileinfo.c:2412
#, fuzzy, c-format
msgid "Error setting symlink: %s"
-msgstr "%s: %s देखि %sमा सेट गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿"
+msgstr "सिमà¥à¤²à¤¿à¤™à¥à¤• सेट गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: फाइल सिमà¥à¤²à¤¿à¤™à¥à¤• होइन"
#: gio/glocalfileinfo.c:2391
-#, fuzzy
msgid "Error setting symlink: file is not a symlink"
-msgstr "सिमलिङà¥à¤• `%.255s'को सà¥à¤µà¤¾à¤®à¤¿à¤¤à¥à¤µ सेट गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿"
+msgstr "सिमà¥à¤²à¤¿à¤™à¥à¤• सेट गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: फाइल सिमà¥à¤²à¤¿à¤™à¥à¤• होइन"
#: gio/glocalfileinfo.c:2463
#, c-format
@@ -3080,71 +3080,67 @@ msgstr ""
msgid "UNIX timestamp %lld is outside of the range supported by Windows"
msgstr ""
-#: gio/glocalfileinfo.c:2557
+#: gio/glocalfileinfo.c:2570
#, fuzzy, c-format
#| msgid "Value '%s' cannot be interpreted as a number."
msgid "File name “%s†cannot be converted to UTF-16"
msgstr "मान '%s' लाई सङà¥à¤–à¥à¤¯à¤¾à¤•à¥‹ रूपमा वà¥à¤¯à¤¾à¤–à¥à¤¯à¤¾ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
-#: gio/glocalfileinfo.c:2576
+#: gio/glocalfileinfo.c:2589
#, fuzzy, c-format
#| msgid "Value '%s' cannot be interpreted as a number."
msgid "File “%s†cannot be opened: Windows Error %lu"
msgstr "मान '%s' लाई सङà¥à¤–à¥à¤¯à¤¾à¤•à¥‹ रूपमा वà¥à¤¯à¤¾à¤–à¥à¤¯à¤¾ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
-#: gio/glocalfileinfo.c:2589
+#: gio/glocalfileinfo.c:2602
#, fuzzy, c-format
msgid "Error setting modification or access time for file “%sâ€: %lu"
msgstr "रूपानà¥à¤¤à¤°à¤£ अवधिमा तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/glocalfileinfo.c:2690
+#: gio/glocalfileinfo.c:2703
#, fuzzy, c-format
msgid "Error setting modification or access time: %s"
msgstr "रूपानà¥à¤¤à¤°à¤£ अवधिमा तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/glocalfileinfo.c:2713
-#, fuzzy
+#: gio/glocalfileinfo.c:2726
msgid "SELinux context must be non-NULL"
-msgstr "सूची अनà¥à¤•à¥à¤°à¤®à¤£à¤¿à¤•à¤¾ नेगेटिभ नभà¤à¤•à¥‹ हà¥à¤¨à¥à¤ªà¤°à¥à¤¦à¤› ।"
+msgstr "SELinux पà¥à¤°à¤¸à¤™à¥à¤— नल हà¥à¤¨à¥ˆ परà¥à¤›"
-#: gio/glocalfileinfo.c:2720
-#, fuzzy
+#: gio/glocalfileinfo.c:2733
msgid "SELinux is not enabled on this system"
-msgstr "सकà¥à¤·à¤® पारिà¤à¤•à¥‹"
+msgstr "यो पà¥à¤°à¤£à¤¾à¤²à¥€à¤®à¤¾ SELinux सकà¥à¤·à¤® पारिà¤à¤•à¥‹ छैन"
-#: gio/glocalfileinfo.c:2730
+#: gio/glocalfileinfo.c:2743
#, fuzzy, c-format
msgid "Error setting SELinux context: %s"
msgstr "• à¤à¤¸à¤‡à¤²à¤¿à¤¨à¥à¤•à¥à¤¸ सनà¥à¤¦à¤°à¥à¤­ पूरà¥à¤µà¤¨à¤¿à¤°à¥à¤§à¤¾à¤°à¤¿à¤¤ : %s\n"
-#: gio/glocalfileinfo.c:2823
+#: gio/glocalfileinfo.c:2836
#, fuzzy, c-format
msgid "Setting attribute %s not supported"
-msgstr "%s: %s देखि %sमा सेट गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿"
+msgstr "खोजी फोलà¥à¤¡à¤° सेटअप गरà¥à¤¦à¥ˆ: %s"
#: gio/glocalfileinputstream.c:163 gio/glocalfileoutputstream.c:801
#, fuzzy, c-format
msgid "Error reading from file: %s"
msgstr "फाइल “%s†पढà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿:%s"
-#: gio/glocalfileinputstream.c:194 gio/glocalfileoutputstream.c:353
-#: gio/glocalfileoutputstream.c:447
+#: gio/glocalfileinputstream.c:194 gio/glocalfileoutputstream.c:353 gio/glocalfileoutputstream.c:447
#, c-format
msgid "Error closing file: %s"
msgstr "फाइल बनà¥à¤¦ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/glocalfileinputstream.c:272 gio/glocalfileoutputstream.c:563
-#: gio/glocalfileoutputstream.c:1157
+#: gio/glocalfileinputstream.c:272 gio/glocalfileoutputstream.c:563 gio/glocalfileoutputstream.c:1186
#, fuzzy, c-format
msgid "Error seeking in file: %s"
-msgstr "%s मा खोजी गरà¥à¤¦à¥ˆ"
+msgstr "फाइल लेखनमा तà¥à¤°à¥à¤Ÿà¤¿: %s"
#: gio/glocalfilemonitor.c:866
msgid "Unable to find default local file monitor type"
msgstr ""
-#: gio/glocalfileoutputstream.c:220 gio/glocalfileoutputstream.c:298
-#: gio/glocalfileoutputstream.c:334 gio/glocalfileoutputstream.c:822
+#: gio/glocalfileoutputstream.c:220 gio/glocalfileoutputstream.c:298 gio/glocalfileoutputstream.c:334
+#: gio/glocalfileoutputstream.c:822
#, c-format
msgid "Error writing to file: %s"
msgstr "फाइल लेखनमा तà¥à¤°à¥à¤Ÿà¤¿: %s"
@@ -3164,13 +3160,13 @@ msgstr "बà¥à¤¯à¤¾à¤•à¤…प फाइल सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¦à¤¾
msgid "Error renaming temporary file: %s"
msgstr "फाइलहरू पà¥à¤¨ नामकरणमा à¤à¤‰à¤Ÿà¤¾ तà¥à¤°à¥à¤Ÿà¤¿"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1208
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "फाइल '%s' खोलà¥à¤¨à¥‡ कà¥à¤°à¤®à¤®à¤¾ तà¥à¤°à¥à¤Ÿà¤¿"
-#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1189 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907 gio/glocalfileoutputstream.c:1220
+#: gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "\"%s\" फाइल खोलà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
@@ -3183,48 +3179,47 @@ msgstr "लकà¥à¤·à¥à¤¯ फाइल निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾ हो"
msgid "Target file is not a regular file"
msgstr "लकà¥à¤·à¥à¤¯ फाइल नियमित फाइल होइन ।"
-#: gio/glocalfileoutputstream.c:984
+#: gio/glocalfileoutputstream.c:1013
msgid "The file was externally modified"
msgstr "फाइल लाई बाहिरी तरिकाले परिमारà¥à¤œà¤¿à¤¤ गरियो"
-#: gio/glocalfileoutputstream.c:1173
+#: gio/glocalfileoutputstream.c:1202
#, fuzzy, c-format
msgid "Error removing old file: %s"
msgstr "लकà¥à¤·à¥à¤¯ फाइल हटाउà¤à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
#, fuzzy
msgid "Invalid GSeekType supplied"
-msgstr "पासवरà¥à¤¡ पूरà¥à¤¤à¤¿ गरिà¤à¤•à¥‹ छैन"
+msgstr "अवैध"
#: gio/gmemoryinputstream.c:484
msgid "Invalid seek request"
msgstr "अवैध खोजी अनà¥à¤°à¥‹à¤§"
#: gio/gmemoryinputstream.c:508
-#, fuzzy
msgid "Cannot truncate GMemoryInputStream"
-msgstr "सूपबडीइनपà¥à¤Ÿà¤¸à¥à¤Ÿà¥à¤°à¥€à¤® टà¥à¤°à¤‚क गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
+msgstr "GMemoryInputStream काटà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
-msgstr ""
+msgstr "सà¥à¤®à¥ƒà¤¤à¤¿ निरà¥à¤—त सà¥à¤Ÿà¥à¤°à¤¿à¤® रिसाइज गरà¥à¤¨ सकिने छैन"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
-msgstr ""
+msgstr "सà¥à¤®à¥ƒà¤¤à¤¿ निरà¥à¤—त पà¥à¤°à¤µà¤¾à¤¹ रिसाइज गरà¥à¤¨ असफल"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid "Amount of memory required to process the write is larger than available address space"
msgstr "लेखन पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ गरà¥à¤¨ आवशà¥à¤¯à¤• सà¥à¤®à¥ƒà¤¤à¤¿à¤•à¥‹ मातà¥à¤°à¤¾ उपलबà¥à¤§ ठेगाना खाली सà¥à¤¥à¤¾à¤¨ भनà¥à¤¦à¤¾ ठूलो छ"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
-msgstr ""
+msgstr "खोलाको सà¥à¤°à¥ हà¥à¤¨à¥à¤­à¤¨à¥à¤¦à¤¾ पहिले अनà¥à¤°à¥‹à¤§ गरिà¤à¤•à¥‹ खोजी गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
-msgstr ""
+msgstr "खोलाको अनà¥à¤¤à¥à¤¯ पछि खोजी गरà¥à¤¨ अनà¥à¤°à¥‹à¤§ गरियो"
#. Translators: This is an error
#. * message for mount objects that
@@ -3232,7 +3227,7 @@ msgstr ""
#: gio/gmount.c:399
#, fuzzy
msgid "mount doesn’t implement “unmountâ€"
-msgstr "भोलà¥à¤¯à¥à¤®à¤²à¥‡ माउनà¥à¤Ÿ कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¦à¥ˆà¤¨"
+msgstr "माउनà¥à¤Ÿà¤²à¥‡ \"अनमाउनà¥à¤Ÿ\" वा \"unmount_with_operation\" कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¦à¥ˆà¤¨"
#. Translators: This is an error
#. * message for mount objects that
@@ -3240,14 +3235,14 @@ msgstr "भोलà¥à¤¯à¥à¤®à¤²à¥‡ माउनà¥à¤Ÿ कारà¥à¤¯à¤¾à¤¨à¥à
#: gio/gmount.c:475
#, fuzzy
msgid "mount doesn’t implement “ejectâ€"
-msgstr "डà¥à¤°à¤¾à¤‡à¤­à¤²à¥‡ निकालà¥à¤¨à¥‡ वा eject_with_operation कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¦à¥ˆà¤¨"
+msgstr "भोलà¥à¤¯à¥à¤®à¤²à¥‡ माउनà¥à¤Ÿ कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¦à¥ˆà¤¨"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement any of unmount or unmount_with_operation.
#: gio/gmount.c:553
msgid "mount doesn’t implement “unmount†or “unmount_with_operationâ€"
-msgstr ""
+msgstr "माउनà¥à¤Ÿà¤²à¥‡ \"अनमाउनà¥à¤Ÿ\" वा \"unmount_with_operation\" कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¦à¥ˆà¤¨"
#. Translators: This is an error
#. * message for mount objects that
@@ -3270,14 +3265,14 @@ msgstr "भोलà¥à¤¯à¥à¤®à¤²à¥‡ माउनà¥à¤Ÿ कारà¥à¤¯à¤¾à¤¨à¥à
#. * don't implement content type guessing.
#: gio/gmount.c:808
msgid "mount doesn’t implement content type guessing"
-msgstr ""
+msgstr "माउनà¥à¤Ÿà¤²à¥‡ सामागà¥à¤°à¥€ पà¥à¤°à¤•à¤¾à¤° अनà¥à¤®à¤¾à¤¨ कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¦à¥ˆà¤¨"
#. Translators: This is an error
#. * message for mount objects that
#. * don't implement content type guessing.
#: gio/gmount.c:895
msgid "mount doesn’t implement synchronous content type guessing"
-msgstr ""
+msgstr "माउनà¥à¤Ÿà¤²à¥‡ समकà¥à¤°à¤®à¤¿à¤¤ सामागà¥à¤°à¥€ पà¥à¤°à¤•à¤¾à¤° अनà¥à¤®à¤¾à¤¨ कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¦à¥ˆà¤¨"
#: gio/gnetworkaddress.c:415
#, fuzzy, c-format
@@ -3289,15 +3284,13 @@ msgid "Network unreachable"
msgstr "सञà¥à¤œà¤¾à¤² छैन"
#: gio/gnetworkmonitorbase.c:257 gio/gnetworkmonitorbase.c:287
-#, fuzzy
msgid "Host unreachable"
-msgstr "होसà¥à¤Ÿ:"
+msgstr "होसà¥à¤Ÿ पहà¥à¤à¤šà¤¯à¥‹à¤—à¥à¤¯ छैन"
-#: gio/gnetworkmonitornetlink.c:99 gio/gnetworkmonitornetlink.c:111
-#: gio/gnetworkmonitornetlink.c:130
+#: gio/gnetworkmonitornetlink.c:99 gio/gnetworkmonitornetlink.c:111 gio/gnetworkmonitornetlink.c:130
#, fuzzy, c-format
msgid "Could not create network monitor: %s"
-msgstr "पाइप सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ सकेन: %s"
+msgstr "%s मा असà¥à¤¥à¤¾à¤¯à¥€ डाइरेकà¥à¤Ÿà¤°à¥€ सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ सकेन।"
#: gio/gnetworkmonitornetlink.c:120
#, fuzzy
@@ -3308,19 +3301,19 @@ msgstr "सञà¥à¤œà¤¾à¤² सà¥à¤¥à¤¾à¤¨ निगरानी"
msgid "Could not get network status: "
msgstr "सञà¥à¤œà¤¾à¤² सà¥à¤¥à¤¿à¤¤à¤¿ पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¨ सकेन: "
-#: gio/gnetworkmonitornm.c:348
+#: gio/gnetworkmonitornm.c:311
#, c-format
msgid "NetworkManager not running"
msgstr "सञà¥à¤œà¤¾à¤² पà¥à¤°à¤¬à¤¨à¥à¤§à¤• चलिरहेको छैन"
-#: gio/gnetworkmonitornm.c:359
+#: gio/gnetworkmonitornm.c:322
#, c-format
msgid "NetworkManager version too old"
msgstr "सञà¥à¤œà¤¾à¤² पà¥à¤°à¤¬à¤¨à¥à¤§à¤• संसà¥à¤•à¤°à¤£ अति पà¥à¤°à¤¾à¤¨à¥‹ छ"
#: gio/goutputstream.c:232 gio/goutputstream.c:775
msgid "Output stream doesn’t implement write"
-msgstr ""
+msgstr "निरà¥à¤—त पà¥à¤°à¤µà¤¾à¤¹à¤²à¥‡ लेखन कारà¥à¤¯à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¦à¥ˆà¤¨"
#: gio/goutputstream.c:472 gio/goutputstream.c:1533
#, fuzzy, c-format
@@ -3331,80 +3324,88 @@ msgstr "अति ठूलो गणना मान %s मा पास गर
msgid "Source stream is already closed"
msgstr "सà¥à¤°à¥‹à¤¤ पà¥à¤°à¤µà¤¾à¤¹ पहिलà¥à¤¯à¥ˆ बनà¥à¤¦ छ"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
-#, fuzzy, c-format
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168 gio/gthreadedresolver.c:780
+#: gio/gthreadedresolver.c:804 gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+#, c-format
msgid "Error resolving “%sâ€: %s"
-msgstr "सेवा \"%2s\" डोमेन \"%3s\" मा हल गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿ \"%1s\""
+msgstr "\"%s\" हल गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ भà¤à¤•à¥‹ छैन"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "अबैध डोमेन"
-#: gio/gresource.c:681 gio/gresource.c:943 gio/gresource.c:983
-#: gio/gresource.c:1107 gio/gresource.c:1179 gio/gresource.c:1253
-#: gio/gresource.c:1334 gio/gresourcefile.c:476 gio/gresourcefile.c:599
-#: gio/gresourcefile.c:736
-#, fuzzy, c-format
+#: gio/gresource.c:681 gio/gresource.c:943 gio/gresource.c:983 gio/gresource.c:1107 gio/gresource.c:1179
+#: gio/gresource.c:1253 gio/gresource.c:1334 gio/gresourcefile.c:476 gio/gresourcefile.c:599 gio/gresourcefile.c:736
+#, c-format
msgid "The resource at “%s†does not exist"
-msgstr "'%s' निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾ अवसà¥à¤¥à¤¿à¤¤ छैन"
+msgstr "\"%s\" मा सà¥à¤°à¥‹à¤¤ अवसà¥à¤¥à¤¿à¤¤ छैन"
#: gio/gresource.c:848
-#, fuzzy, c-format
+#, c-format
msgid "The resource at “%s†failed to decompress"
-msgstr "संसाधन पà¥à¤°à¤¾ तरिकाले कà¥à¤¯à¤¾à¤¸ गरà¥à¤¨ असफल भयो"
+msgstr "\"%s\" मा संसाधन विसङà¥à¤•à¥à¤šà¤¨ गरà¥à¤¨ असफल भयो"
#: gio/gresourcefile.c:732
#, fuzzy, c-format
msgid "The resource at “%s†is not a directory"
-msgstr "लकà¥à¤·à¤¿à¤¤ निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾ “%s†अवैध निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾ हो"
+msgstr "अनà¥à¤°à¥‹à¤§ गरिà¤à¤•à¥‹ संसाधन फेला परेन: %s"
#: gio/gresourcefile.c:940
msgid "Input stream doesn’t implement seek"
-msgstr ""
+msgstr "आगत पà¥à¤°à¤µà¤¾à¤¹à¤²à¥‡ खोजी कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¦à¥ˆà¤¨"
-#: gio/gresource-tool.c:499
+#: gio/gresource-tool.c:500
msgid "List sections containing resources in an elf FILE"
-msgstr ""
+msgstr "à¤à¤‰à¤Ÿà¤¾ elf FILE मा संसाधन समाविषà¥à¤Ÿ सेकà¥à¤¸à¤¨ सूचीबदà¥à¤§ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: gio/gresource-tool.c:505
+#: gio/gresource-tool.c:506
msgid ""
"List resources\n"
"If SECTION is given, only list resources in this section\n"
"If PATH is given, only list matching resources"
msgstr ""
+"संसाधन सूचीबदà¥à¤§ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+"यदि सेकà¥à¤¸à¤¨ दिइà¤à¤•à¥‹ छ भने, यो खणà¥à¤¡à¤®à¤¾ संसाधन सूचीकृत गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+"यदि बाटो दिइà¤à¤•à¥‹ छ भने, मिलà¥à¤¦à¥‹ संसाधनको सूची मातà¥à¤°"
-#: gio/gresource-tool.c:508 gio/gresource-tool.c:518
+#: gio/gresource-tool.c:509 gio/gresource-tool.c:519
msgid "FILE [PATH]"
msgstr "फाइल [मारà¥à¤—]"
-#: gio/gresource-tool.c:509 gio/gresource-tool.c:519 gio/gresource-tool.c:526
+#: gio/gresource-tool.c:510 gio/gresource-tool.c:520 gio/gresource-tool.c:527
msgid "SECTION"
msgstr "खणà¥à¤¡"
-#: gio/gresource-tool.c:514
+#: gio/gresource-tool.c:515
msgid ""
"List resources with details\n"
"If SECTION is given, only list resources in this section\n"
"If PATH is given, only list matching resources\n"
"Details include the section, size and compression"
msgstr ""
+"विसà¥à¤¤à¥ƒà¤¤ विवरण भà¤à¤•à¤¾ संसाधन सूचीबदà¥à¤§ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+"यदि सेकà¥à¤¸à¤¨ दिइà¤à¤•à¥‹ छ भने, यो खणà¥à¤¡à¤®à¤¾ संसाधन सूचीकृत गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+"यदि बाटो दिइà¤à¤•à¥‹ छ भने, मिलà¥à¤¦à¥‹ संसाधनको सूची मातà¥à¤°\n"
+"विवरणमा खणà¥à¤¡, साइज र सङà¥à¤•à¥à¤šà¤¨ समावेश छ"
-#: gio/gresource-tool.c:524
+#: gio/gresource-tool.c:525
#, fuzzy
msgid "Extract a resource file to stdout"
msgstr "मेटाडाटा निकालà¥à¤¨à¤•à¤¾ लागि फाइल"
-#: gio/gresource-tool.c:525
+#: gio/gresource-tool.c:526
msgid "FILE PATH"
msgstr "फाइल मारà¥à¤—"
-#: gio/gresource-tool.c:539
+#: gio/gresource-tool.c:540
msgid ""
"Usage:\n"
" gresource [--section SECTION] COMMAND [ARGS…]\n"
@@ -3419,8 +3420,20 @@ msgid ""
"Use “gresource help COMMAND†to get detailed help.\n"
"\n"
msgstr ""
+"उपयोग:\n"
+" gresource [--section] COMMAND [ARGS...]\n"
+"\n"
+"आदेश:\n"
+" मदà¥à¤¦à¤¤ यो सूचना देखाउनà¥à¤¹à¥‹à¤¸à¥\n"
+" सेकà¥à¤¸à¤¨à¤¹à¤°à¥‚ संसाधन सेकà¥à¤¸à¤¨à¤¹à¤°à¥‚ सूचीबदà¥à¤§ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" सूची संसाधन\n"
+" विवरण सहितको संसाधन सूचीकृत गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" संसाधन à¤à¤¿à¤•à¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+"\n"
+"विसà¥à¤¤à¥ƒà¤¤ मदà¥à¤¦à¤¤ पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¨ \"gresource help COMMAND\" पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ ।\n"
+"\n"
-#: gio/gresource-tool.c:553
+#: gio/gresource-tool.c:554
#, c-format
msgid ""
"Usage:\n"
@@ -3435,43 +3448,45 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gresource-tool.c:560
+#: gio/gresource-tool.c:561
msgid " SECTION An (optional) elf section name\n"
-msgstr ""
+msgstr " सेकà¥à¤¸à¤¨ à¤à¤‰à¤Ÿà¤¾ (वैकलà¥à¤ªà¤¿à¤•) à¤à¤²à¥à¤« सेकà¥à¤¸à¤¨ नाम\n"
-#: gio/gresource-tool.c:564 gio/gsettings-tool.c:701
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr ""
" COMMAND वà¥à¤¯à¤¾à¤–à¥à¤¯à¤¾ गरà¥à¤¨à¤•à¤¾ लागि (वैकलà¥à¤ªà¤¿à¤•) आदेश\n"
"\n"
-#: gio/gresource-tool.c:570
+#: gio/gresource-tool.c:571
msgid " FILE An elf file (a binary or a shared library)\n"
-msgstr ""
+msgstr " फाइल à¤à¤‰à¤Ÿà¤¾ ईलà¥à¤« फाइल (बाइनरी वा साà¤à¤¾ लाइबà¥à¤°à¥‡à¤°à¥€)\n"
-#: gio/gresource-tool.c:573
+#: gio/gresource-tool.c:574
msgid ""
" FILE An elf file (a binary or a shared library)\n"
" or a compiled resource file\n"
msgstr ""
+" फाइल à¤à¤‰à¤Ÿà¤¾ ईलà¥à¤« फाइल (बाइनरी वा साà¤à¤¾ लाइबà¥à¤°à¥‡à¤°à¥€)\n"
+" वा कमà¥à¤ªà¤¾à¤‡à¤² गरिà¤à¤•à¥‹ संसाधन फाइल\n"
-#: gio/gresource-tool.c:577
+#: gio/gresource-tool.c:578
msgid "[PATH]"
msgstr "[बाटो]"
-#: gio/gresource-tool.c:579
+#: gio/gresource-tool.c:580
msgid " PATH An (optional) resource path (may be partial)\n"
-msgstr ""
+msgstr " मारà¥à¤— à¤à¤‰à¤Ÿà¤¾ (वैकलà¥à¤ªà¤¿à¤•) संसाधन मारà¥à¤— (आंशिक हà¥à¤¨ सकà¥à¤›)\n"
-#: gio/gresource-tool.c:580
+#: gio/gresource-tool.c:581
msgid "PATH"
msgstr "मारà¥à¤—"
-#: gio/gresource-tool.c:582
+#: gio/gresource-tool.c:583
msgid " PATH A resource path\n"
msgstr " PATH संसाधन मारà¥à¤—\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:906
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, fuzzy, c-format
msgid "No such schema “%sâ€\n"
msgstr "अजà¥à¤žà¤¾à¤¤ सà¥à¤•à¤¿à¤®à¤¾ “%sâ€."
@@ -3479,21 +3494,20 @@ msgstr "अजà¥à¤žà¤¾à¤¤ सà¥à¤•à¤¿à¤®à¤¾ “%sâ€."
#: gio/gsettings-tool.c:55
#, c-format
msgid "Schema “%s†is not relocatable (path must not be specified)\n"
-msgstr ""
+msgstr "सà¥à¤•à¤¿à¤®à¤¾ \"%s\" सà¥à¤¥à¤¾à¤¨à¤¾à¤¨à¥à¤¤à¤°à¤£ योगà¥à¤¯ छैन (बाटो निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ गरिà¤à¤•à¥‹ छैन)\n"
#: gio/gsettings-tool.c:76
#, c-format
msgid "Schema “%s†is relocatable (path must be specified)\n"
-msgstr ""
+msgstr "सà¥à¤•à¤¿à¤®à¤¾ \"%s\" सà¥à¤¥à¤¾à¤¨à¤¾à¤¨à¥à¤¤à¤°à¤£ योगà¥à¤¯ छ (मारà¥à¤— निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ गरà¥à¤¨à¥ परà¥à¤¦à¤›)\n"
#: gio/gsettings-tool.c:90
msgid "Empty path given.\n"
msgstr "दिà¤à¤•à¥‹ ठेगाना खाली छ\n"
#: gio/gsettings-tool.c:96
-#, fuzzy
msgid "Path must begin with a slash (/)\n"
-msgstr "यदि दिइà¤à¤•à¥‹ भà¤, पथ सà¥à¤²à¥à¤¯à¤¾à¤¸à¤¸à¤à¤— सà¥à¤°à¥ र अनà¥à¤¤à¥à¤¯ हà¥à¤¨à¥à¤ªà¤°à¥à¤¦à¤›"
+msgstr "कागजात à¤à¤‰à¤Ÿà¤¾ ततà¥à¤µ बाट सà¥à¤°à¥ हà¥à¤¨à¥ˆà¤ªà¤°à¥à¤› (जसà¥à¤¤à¥ˆ: <book>)\n"
#: gio/gsettings-tool.c:102
#, fuzzy
@@ -3502,108 +3516,154 @@ msgstr "यदि दिइà¤à¤•à¥‹ भà¤, पथ सà¥à¤²à¥à¤¯à¤¾à¤¸à¤¸à¤à
#: gio/gsettings-tool.c:108
msgid "Path must not contain two adjacent slashes (//)\n"
-msgstr ""
+msgstr "मारà¥à¤—ले दà¥à¤ˆà¤µà¤Ÿà¤¾ आसनà¥à¤¨ सà¥à¤²à¥à¤¯à¤¾à¤¸ (//) समावेश गरà¥à¤¨à¥ हà¥à¤¦à¥ˆà¤¨\n"
-#: gio/gsettings-tool.c:536
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
-msgstr ""
+msgstr "उपलबà¥à¤§ गराइà¤à¤•à¥‹ मान वैध दायरा को बाहिर छ\n"
-#: gio/gsettings-tool.c:543
-#, fuzzy
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
-msgstr "कà¥à¤žà¥à¤œà¥€ लेखनयोगà¥à¤¯ छ की छैन जाà¤à¤š गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+msgstr "कà¥à¤žà¥à¤œà¥€ लेखनयोगà¥à¤¯ छैन\n"
-#: gio/gsettings-tool.c:579
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
-msgstr ""
+msgstr "सà¥à¤¥à¤¾à¤ªà¤¨à¤¾ गरिà¤à¤•à¥‹ (सà¥à¤¥à¤¾à¤¨à¤¾à¤¨à¥à¤¤à¤°à¤£ गरà¥à¤¨ नसकिने) सà¥à¤•à¤¿à¤®à¤¾à¤¹à¤°à¥‚ सूचीबदà¥à¤§ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: gio/gsettings-tool.c:585
+#: gio/gsettings-tool.c:602
#, fuzzy
msgid "List the installed relocatable schemas"
-msgstr "सà¥à¤¥à¤¾à¤ªà¤¿à¤¤ विसà¥à¤¤à¤¾à¤° सूची"
+msgstr "सà¥à¤¥à¤¾à¤ªà¤¨à¤¾ गरिà¤à¤•à¥‹ (सà¥à¤¥à¤¾à¤¨à¤¾à¤¨à¥à¤¤à¤°à¤£ गरà¥à¤¨ नसकिने) सà¥à¤•à¤¿à¤®à¤¾à¤¹à¤°à¥‚ सूचीबदà¥à¤§ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: gio/gsettings-tool.c:591
-#, fuzzy
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
-msgstr "\"सूची-को\" सà¥à¤•à¥€à¤®à¤¾à¤®à¤¾ कà¥à¤žà¥à¤œà¥€à¤¹à¤°à¥‚ थपà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
+msgstr "सà¥à¤•à¤¿à¤®à¤¾à¤®à¤¾ कà¥à¤žà¥à¤œà¥€à¤¹à¤°à¥‚ सूचीबदà¥à¤§ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: gio/gsettings-tool.c:592 gio/gsettings-tool.c:598 gio/gsettings-tool.c:641
-#, fuzzy
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
-msgstr "[SCHEMA[:PATH]]"
+msgstr "SCHEMA[:PATH]"
-#: gio/gsettings-tool.c:597
+#: gio/gsettings-tool.c:614
#, fuzzy
msgid "List the children of SCHEMA"
-msgstr "\"सूची-को\" सà¥à¤•à¥€à¤®à¤¾à¤®à¤¾ कà¥à¤žà¥à¤œà¥€à¤¹à¤°à¥‚ थपà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
+msgstr ""
+"उपयोग:\n"
+" gsettings --संसà¥à¤•à¤°à¤£\n"
+" gsettings [--schemadir SCHEMADIR] आदेश [ARGS...]\n"
+"\n"
+"आदेश:\n"
+" मदà¥à¤¦à¤¤ यो सूचना देखाउनà¥à¤¹à¥‹à¤¸à¥\n"
+" सूची-सà¥à¤•à¤¿à¤®à¤¾à¤¹à¤°à¥‚ सूचीकृत गरिà¤à¤•à¥‹ सà¥à¤•à¤¿à¤®à¤¾à¤¹à¤°à¥‚\n"
+" सूची सà¥à¤¥à¤¾à¤¨à¤¾à¤¨à¥à¤¤à¤°à¤£ योगà¥à¤¯-सà¥à¤•à¥€à¤®à¤¾à¤¹à¤°à¥‚ सà¥à¤¥à¤¾à¤¨à¤¾à¤¨à¥à¤¤à¤°à¤£ गरà¥à¤¨ सकिने सूची\n"
+" सà¥à¤•à¤¿à¤®à¤¾à¤®à¤¾ सूची कà¥à¤žà¥à¤œà¥€à¤¹à¤°à¥‚ सूचीबदà¥à¤§ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" सूची-बचà¥à¤šà¤¾à¤•à¥‹ सूची सà¥à¤•à¤¿à¤®à¤¾\n"
+" सूची-पà¥à¤¨à¤°à¤¾à¤µà¥ƒà¤¤à¤¿à¤• रूपमा कà¥à¤žà¥à¤œà¥€ र मानहरू, पà¥à¤¨à¤°à¤¾à¤µà¥ƒà¤¤à¤¿à¤• रूपमा सूचीबदà¥à¤§ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" दायरा कà¥à¤µà¥‡à¤°à¥€à¤¹à¤°à¥‚ कà¥à¤žà¥à¤œà¥€à¤•à¥‹ दायरा\n"
+" कà¥à¤žà¥à¤œà¥€à¤•à¥‹ वरà¥à¤£à¤¨ कà¥à¤µà¥‡à¤°à¥€à¤µà¤°à¥à¤£à¤¨ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" कà¥à¤žà¥à¤œà¥€à¤•à¥‹ मान पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" कà¥à¤žà¥à¤œà¥€à¤•à¥‹ मान सेट गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" कà¥à¤žà¥à¤œà¥€à¤•à¥‹ मान रिसेट गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ रिसेट गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" दिइà¤à¤•à¥‹ सà¥à¤•à¤¿à¤®à¤¾à¤®à¤¾ सबै मानहरू पà¥à¤¨à¤°à¤¾à¤µà¥ƒà¤¤à¤¿à¤• रूपमा रिसेट गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" कà¥à¤žà¥à¤œà¥€ लेखनयोगà¥à¤¯ भà¤à¤®à¤¾ लेखनयोगà¥à¤¯ जाà¤à¤š गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" परिवरà¥à¤¤à¤¨à¤•à¤¾ लागि मोनिटर घडी\n"
+"\n"
+"विसà¥à¤¤à¥ƒà¤¤ मदà¥à¤¦à¤¤ पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¨ \"gsettings help COMMAND\" पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ ।\n"
+"\n"
-#: gio/gsettings-tool.c:603
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
msgstr ""
+"कà¥à¤žà¥à¤œà¥€ र मानहरू, पà¥à¤¨à¤°à¤¾à¤µà¥ƒà¤¤à¤¿à¤• रूपमा सूचीबदà¥à¤§ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+"यदि सà¥à¤•à¤¿à¤®à¤¾ दिइà¤à¤•à¥‹ छैन भने, सबै कà¥à¤žà¥à¤œà¥€à¤¹à¤°à¥‚ सूचीबदà¥à¤§ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
-#: gio/gsettings-tool.c:605
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SCHEMA[:PATH]]"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:627
#, fuzzy
msgid "Get the value of KEY"
-msgstr "करà¥à¤¸à¤° मान पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+msgstr ""
+"उपयोग:\n"
+" gsettings --संसà¥à¤•à¤°à¤£\n"
+" gsettings [--schemadir SCHEMADIR] आदेश [ARGS...]\n"
+"\n"
+"आदेश:\n"
+" मदà¥à¤¦à¤¤ यो सूचना देखाउनà¥à¤¹à¥‹à¤¸à¥\n"
+" सूची-सà¥à¤•à¤¿à¤®à¤¾à¤¹à¤°à¥‚ सूचीकृत गरिà¤à¤•à¥‹ सà¥à¤•à¤¿à¤®à¤¾à¤¹à¤°à¥‚\n"
+" सूची सà¥à¤¥à¤¾à¤¨à¤¾à¤¨à¥à¤¤à¤°à¤£ योगà¥à¤¯-सà¥à¤•à¥€à¤®à¤¾à¤¹à¤°à¥‚ सà¥à¤¥à¤¾à¤¨à¤¾à¤¨à¥à¤¤à¤°à¤£ गरà¥à¤¨ सकिने सूची\n"
+" सà¥à¤•à¤¿à¤®à¤¾à¤®à¤¾ सूची कà¥à¤žà¥à¤œà¥€à¤¹à¤°à¥‚ सूचीबदà¥à¤§ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" सूची-बचà¥à¤šà¤¾à¤•à¥‹ सूची सà¥à¤•à¤¿à¤®à¤¾\n"
+" सूची-पà¥à¤¨à¤°à¤¾à¤µà¥ƒà¤¤à¤¿à¤• रूपमा कà¥à¤žà¥à¤œà¥€ र मानहरू, पà¥à¤¨à¤°à¤¾à¤µà¥ƒà¤¤à¤¿à¤• रूपमा सूचीबदà¥à¤§ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" दायरा कà¥à¤µà¥‡à¤°à¥€à¤¹à¤°à¥‚ कà¥à¤žà¥à¤œà¥€à¤•à¥‹ दायरा\n"
+" कà¥à¤žà¥à¤œà¥€à¤•à¥‹ वरà¥à¤£à¤¨ कà¥à¤µà¥‡à¤°à¥€à¤µà¤°à¥à¤£à¤¨ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" कà¥à¤žà¥à¤œà¥€à¤•à¥‹ मान पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" कà¥à¤žà¥à¤œà¥€à¤•à¥‹ मान सेट गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" कà¥à¤žà¥à¤œà¥€à¤•à¥‹ मान रिसेट गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ रिसेट गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" दिइà¤à¤•à¥‹ सà¥à¤•à¤¿à¤®à¤¾à¤®à¤¾ सबै मानहरू पà¥à¤¨à¤°à¤¾à¤µà¥ƒà¤¤à¤¿à¤• रूपमा रिसेट गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" कà¥à¤žà¥à¤œà¥€ लेखनयोगà¥à¤¯ भà¤à¤®à¤¾ लेखनयोगà¥à¤¯ जाà¤à¤š गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" परिवरà¥à¤¤à¤¨à¤•à¤¾ लागि मोनिटर घडी\n"
+"\n"
+"विसà¥à¤¤à¥ƒà¤¤ मदà¥à¤¦à¤¤ पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¨ \"gsettings help COMMAND\" पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ ।\n"
+"\n"
-#: gio/gsettings-tool.c:611 gio/gsettings-tool.c:617 gio/gsettings-tool.c:623
-#: gio/gsettings-tool.c:635 gio/gsettings-tool.c:647
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:664
#, fuzzy
msgid "SCHEMA[:PATH] KEY"
msgstr "[SCHEMA[:PATH]]"
-#: gio/gsettings-tool.c:616
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
-msgstr ""
+msgstr "कà¥à¤žà¥à¤œà¥€à¤•à¤¾ लागि वैध मानहरूको दायरा कà¥à¤µà¥‡à¤°à¥€ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: gio/gsettings-tool.c:622
+#: gio/gsettings-tool.c:639
#, fuzzy
msgid "Query the description for KEY"
-msgstr "विवरण:"
+msgstr "कà¥à¤žà¥à¤œà¥€à¤•à¤¾ लागि वैध मानहरूको दायरा कà¥à¤µà¥‡à¤°à¥€ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: gio/gsettings-tool.c:628
+#: gio/gsettings-tool.c:645
#, fuzzy
msgid "Set the value of KEY to VALUE"
-msgstr "[कà¥à¤žà¥à¤œà¥€ मान]"
+msgstr "कà¥à¤žà¥à¤œà¥€ मान"
-#: gio/gsettings-tool.c:629
+#: gio/gsettings-tool.c:646
#, fuzzy
msgid "SCHEMA[:PATH] KEY VALUE"
-msgstr "[SCHEMA[:PATH]]"
+msgstr " KEY सà¥à¤•à¤¿à¤®à¤¾ भितà¥à¤°à¤•à¥‹ कà¥à¤žà¥à¤œà¥€\n"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:651
#, fuzzy
msgid "Reset KEY to its default value"
msgstr "यसको पूरà¥à¤µà¤¨à¤¿à¤°à¥à¤§à¤¾à¤°à¤¿à¤¤ मानमा सरà¥à¤Ÿà¤•à¤Ÿ रिसेट गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:657
#, fuzzy
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "पà¥à¤°à¤£à¤¾à¤²à¥€ पà¥à¤°à¥à¤µà¤¨à¤¿à¤°à¥à¤§à¤¾à¤°à¤¿à¤¤à¤¹à¤°à¥à¤®à¤¾ सबै सेटिङà¥à¤¹à¤°à¥‚ रिसेट गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "कà¥à¤žà¥à¤œà¥€ लेखनयोगà¥à¤¯ छ की छैन जाà¤à¤š गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
"Use ^C to stop monitoring.\n"
msgstr ""
+"परिवरà¥à¤¤à¤¨à¤•à¤¾ लागि कà¥à¤žà¥à¤œà¥€ मोनिटर गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ ।\n"
+"यदि कà¥à¤žà¥à¤œà¥€ निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ गरिà¤à¤¨ भने, सà¥à¤•à¤¿à¤®à¤¾à¤®à¤¾ भà¤à¤•à¤¾ सबै कà¥à¤žà¥à¤œà¥€à¤¹à¤°à¥‚ अनà¥à¤—मन गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ ।\n"
+"अनà¥à¤—मन रोकà¥à¤¨à¤•à¤¾ लागि ^C पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ ।\n"
-#: gio/gsettings-tool.c:655
+#: gio/gsettings-tool.c:672
#, fuzzy
msgid "SCHEMA[:PATH] [KEY]"
msgstr "[SCHEMA[:PATH]]"
-#: gio/gsettings-tool.c:667
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3628,8 +3688,30 @@ msgid ""
"Use “gsettings help COMMAND†to get detailed help.\n"
"\n"
msgstr ""
+"उपयोग:\n"
+" gsettings --संसà¥à¤•à¤°à¤£\n"
+" gsettings [--schemadir SCHEMADIR] आदेश [ARGS...]\n"
+"\n"
+"आदेश:\n"
+" मदà¥à¤¦à¤¤ यो सूचना देखाउनà¥à¤¹à¥‹à¤¸à¥\n"
+" सूची-सà¥à¤•à¤¿à¤®à¤¾à¤¹à¤°à¥‚ सूचीकृत गरिà¤à¤•à¥‹ सà¥à¤•à¤¿à¤®à¤¾à¤¹à¤°à¥‚\n"
+" सूची सà¥à¤¥à¤¾à¤¨à¤¾à¤¨à¥à¤¤à¤°à¤£ योगà¥à¤¯-सà¥à¤•à¥€à¤®à¤¾à¤¹à¤°à¥‚ सà¥à¤¥à¤¾à¤¨à¤¾à¤¨à¥à¤¤à¤°à¤£ गरà¥à¤¨ सकिने सूची\n"
+" सà¥à¤•à¤¿à¤®à¤¾à¤®à¤¾ सूची कà¥à¤žà¥à¤œà¥€à¤¹à¤°à¥‚ सूचीबदà¥à¤§ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" सूची-बचà¥à¤šà¤¾à¤•à¥‹ सूची सà¥à¤•à¤¿à¤®à¤¾\n"
+" सूची-पà¥à¤¨à¤°à¤¾à¤µà¥ƒà¤¤à¤¿à¤• रूपमा कà¥à¤žà¥à¤œà¥€ र मानहरू, पà¥à¤¨à¤°à¤¾à¤µà¥ƒà¤¤à¤¿à¤• रूपमा सूचीबदà¥à¤§ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" दायरा कà¥à¤µà¥‡à¤°à¥€à¤¹à¤°à¥‚ कà¥à¤žà¥à¤œà¥€à¤•à¥‹ दायरा\n"
+" कà¥à¤žà¥à¤œà¥€à¤•à¥‹ वरà¥à¤£à¤¨ कà¥à¤µà¥‡à¤°à¥€à¤µà¤°à¥à¤£à¤¨ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" कà¥à¤žà¥à¤œà¥€à¤•à¥‹ मान पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" कà¥à¤žà¥à¤œà¥€à¤•à¥‹ मान सेट गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" कà¥à¤žà¥à¤œà¥€à¤•à¥‹ मान रिसेट गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ रिसेट गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" दिइà¤à¤•à¥‹ सà¥à¤•à¤¿à¤®à¤¾à¤®à¤¾ सबै मानहरू पà¥à¤¨à¤°à¤¾à¤µà¥ƒà¤¤à¤¿à¤• रूपमा रिसेट गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" कà¥à¤žà¥à¤œà¥€ लेखनयोगà¥à¤¯ भà¤à¤®à¤¾ लेखनयोगà¥à¤¯ जाà¤à¤š गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
+" परिवरà¥à¤¤à¤¨à¤•à¤¾ लागि मोनिटर घडी\n"
+"\n"
+"विसà¥à¤¤à¥ƒà¤¤ मदà¥à¤¦à¤¤ पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¨ \"gsettings help COMMAND\" पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ ।\n"
+"\n"
-#: gio/gsettings-tool.c:691
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3638,241 +3720,242 @@ msgid ""
"%s\n"
"\n"
msgstr ""
+"उपयोग:\n"
+" gsettings [--schemadir SCHEMADIR] %s %s\n"
+"\n"
+"%s\n"
+"\n"
-#: gio/gsettings-tool.c:697
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
-msgstr ""
+msgstr " अतिरिकà¥à¤¤ सà¥à¤•à¥€à¤®à¤¾à¤¹à¤°à¥‚ खोजी गरà¥à¤¨à¤•à¤¾ लागि à¤à¤‰à¤Ÿà¤¾ डाइरेकà¥à¤Ÿà¤°à¥€ सà¥à¤•à¤¿à¤®à¤¾à¤¡à¤¾à¤‡à¤°à¥‡à¤•à¥à¤Ÿà¤°à¥€\n"
-#: gio/gsettings-tool.c:705
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
msgstr ""
+" सà¥à¤•à¤¿à¤®à¤¾à¤•à¥‹ नाम सà¥à¤•à¤¿à¤®à¤¾\n"
+" बाटो बाटो, सà¥à¤¥à¤¾à¤¨à¤¾à¤¨à¥à¤¤à¤°à¤£ योगà¥à¤¯ सà¥à¤•à¤¿à¤®à¤¾à¤¹à¤°à¥‚का लागि\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " KEY सà¥à¤•à¤¿à¤®à¤¾ भितà¥à¤°à¤•à¥‹ (वैकलà¥à¤ªà¤¿à¤•) कà¥à¤žà¥à¤œà¥€\n"
-#: gio/gsettings-tool.c:714
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " KEY सà¥à¤•à¤¿à¤®à¤¾ भितà¥à¤°à¤•à¥‹ कà¥à¤žà¥à¤œà¥€\n"
-#: gio/gsettings-tool.c:718
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " VALUE मान सेट गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥\n"
-#: gio/gsettings-tool.c:773
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "%s बाट सà¥à¤•à¤¿à¤®à¤¾à¤¹à¤°à¥‚ लोड गरà¥à¤¨ सकेन: %s\n"
-#: gio/gsettings-tool.c:785
-#, fuzzy
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
-msgstr "सà¥à¤¥à¤¾à¤ªà¤¨à¤¾ भयो"
+msgstr "सà¥à¤•à¤¿à¤®à¤¾à¤¹à¤°à¥‚ सà¥à¤¥à¤¾à¤ªà¤¨à¤¾ गरिà¤à¤•à¥‹ छैन\n"
-#: gio/gsettings-tool.c:864
+#: gio/gsettings-tool.c:881
#, fuzzy
msgid "Empty schema name given\n"
-msgstr "दिइà¤à¤•à¥‹ नाम"
+msgstr "दिà¤à¤•à¥‹ ठेगाना खाली छ"
-#: gio/gsettings-tool.c:919
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "\"%s\" कà¥à¤žà¥à¤œà¥€ छैन\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
#, fuzzy
msgid "Invalid socket, not initialized"
msgstr "अमानà¥à¤¯ वसà¥à¤¤à¥, पà¥à¤°à¤¾à¤°à¤®à¥à¤­ गरिà¤à¤•à¥‹ छैन"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
-msgstr ""
+msgstr "अवैध सकेट, सà¥à¤°à¥à¤†à¤¤ गरà¥à¤¨ असफल: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "सकेट पहिलà¥à¤¯à¥ˆ बनà¥à¤¦ गरिà¤à¤•à¥‹ छ"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "सकेट I/O समय समापà¥à¤¤à¤¿ भयो"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, fuzzy, c-format
msgid "creating GSocket from fd: %s"
msgstr "'%s' फाइल पढà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿ : %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "सकेट सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ अकà¥à¤·à¤®: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "अजà¥à¤žà¤¾à¤¤ परिवार निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ गरिà¤à¤•à¥‹ थियो"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
#, fuzzy
msgid "Unknown protocol was specified"
-msgstr "पà¥à¤°à¥‹à¤Ÿà¥‹à¤•à¤²"
+msgstr "अजà¥à¤žà¤¾à¤¤ परिवार निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ गरिà¤à¤•à¥‹ थियो"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
-msgstr ""
+msgstr "डेटागà¥à¤°à¤¾à¤® विहिन सकेटमा डेटागà¥à¤°à¤¾à¤® सञà¥à¤šà¤¾à¤²à¤¨ पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨ ।"
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
-msgstr ""
+msgstr "टाइमआउट सेटसà¤à¤— सकेटमा डेटागà¥à¤°à¤¾à¤® सञà¥à¤šà¤¾à¤²à¤¨ पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨ ।"
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "सà¥à¤¥à¤¾à¤¨à¥€à¤¯ ठेगाना पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¨ सकेन: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "दूर ठेगाना पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¨ सकेन: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "सà¥à¤¨à¥à¤¨ सकिà¤à¤¨: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, fuzzy, c-format
msgid "Error binding to address %s: %s"
-msgstr "सà¥à¤¥à¤¾à¤¨à¤¾à¤¨à¥à¤¤à¤°à¤£ ठेगाना पà¥à¤¸à¥à¤¤à¤¿à¤•à¤¾ फाइल पढà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿ :%s"
+msgstr "\"%s\" ठेगानामा तà¥à¤°à¥à¤Ÿà¤¿ — पोरà¥à¤Ÿ विशेषता छà¥à¤Ÿà¥‡à¤•à¥‹ छ वा विकृत छ"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561 gio/gsocket.c:2624 gio/gsocket.c:2682
+#: gio/gsocket.c:2700
#, fuzzy, c-format
msgid "Error joining multicast group: %s"
msgstr "'%s' समà¥à¤ªà¤°à¥à¤• समूह परिवरà¥à¤¤à¤¨ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562 gio/gsocket.c:2625 gio/gsocket.c:2683
+#: gio/gsocket.c:2701
#, fuzzy, c-format
msgid "Error leaving multicast group: %s"
msgstr "'%s' समà¥à¤ªà¤°à¥à¤• समूह परिवरà¥à¤¤à¤¨ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gsocket.c:2387
-#, fuzzy
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
-msgstr "सà¥à¤°à¥‹à¤¤ फाइलनाम (पूरà¥à¤µà¤¨à¤¿à¤°à¥à¤§à¤¾à¤°à¤¿à¤¤: सà¥à¤°à¥‹à¤¤ बà¥à¤¯à¤¾à¤•à¤‡à¤¨à¥à¤¡à¤®à¤¾ निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ)"
+msgstr "सà¥à¤°à¥‹à¤¤ निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ मलà¥à¤Ÿà¤¿à¤•à¤¾à¤¸à¥à¤Ÿà¤•à¤¾ लागि समरà¥à¤¥à¤¨ छैन"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "असमरà¥à¤¥à¤¿à¤¤ सकेट परिवार"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "सà¥à¤°à¥‹à¤¤-निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ à¤à¤‰à¤Ÿà¤¾ IPv4 ठेगाना होइन"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, fuzzy, c-format
msgid "Interface name too long"
-msgstr "फाइल नाम धेरै लामो भयो।."
+msgstr "लामो सङà¥à¤—à¥à¤°à¤¹ नाम"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, fuzzy, c-format
msgid "Interface not found: %s"
-msgstr "तà¥à¤°à¥à¤Ÿà¤¿: %s अवैध इनà¥à¤Ÿà¤°à¤«à¥‡à¤¸ नाम\n"
+msgstr "चेतावनी: इनà¥à¤Ÿà¤°à¤•à¥à¤°à¥‡à¤¸à¤Ÿà¥‡à¤¸à¤¨ डाटाको अनà¥à¤¸à¤¾à¤°, इनà¥à¤Ÿà¤°à¤«à¥‡à¤¸ \"%s\" अवसà¥à¤¥à¤¿à¤¤ छैन"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
#, fuzzy
msgid "No support for IPv4 source-specific multicast"
-msgstr "सà¥à¤°à¥‹à¤¤ फाइलनाम (पूरà¥à¤µà¤¨à¤¿à¤°à¥à¤§à¤¾à¤°à¤¿à¤¤: सà¥à¤°à¥‹à¤¤ बà¥à¤¯à¤¾à¤•à¤‡à¤¨à¥à¤¡à¤®à¤¾ निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ)"
+msgstr "सà¥à¤°à¥‹à¤¤ निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ मलà¥à¤Ÿà¤¿à¤•à¤¾à¤¸à¥à¤Ÿà¤•à¤¾ लागि समरà¥à¤¥à¤¨ छैन"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
#, fuzzy
msgid "No support for IPv6 source-specific multicast"
-msgstr "सà¥à¤°à¥‹à¤¤ फाइलनाम (पूरà¥à¤µà¤¨à¤¿à¤°à¥à¤§à¤¾à¤°à¤¿à¤¤: सà¥à¤°à¥‹à¤¤ बà¥à¤¯à¤¾à¤•à¤‡à¤¨à¥à¤¡à¤®à¤¾ निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ)"
+msgstr "सà¥à¤°à¥‹à¤¤ निरà¥à¤¦à¤¿à¤·à¥à¤Ÿ मलà¥à¤Ÿà¤¿à¤•à¤¾à¤¸à¥à¤Ÿà¤•à¤¾ लागि समरà¥à¤¥à¤¨ छैन"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, fuzzy, c-format
msgid "Error accepting connection: %s"
msgstr "तà¥à¤°à¥à¤Ÿà¤¿: %s मा जडान खोलà¥à¤¨ सकेन\n"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "जडान पà¥à¤°à¤—तिमा छ"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "विचाराधिन तà¥à¤°à¥à¤Ÿà¤¿ पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¨ असकà¥à¤·à¤®: %s "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "डाटा पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "डाटा पठाउदा तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gsocket.c:3639
-#, fuzzy, c-format
+#: gio/gsocket.c:3643
+#, c-format
msgid "Unable to shutdown socket: %s"
-msgstr "सकेट सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ असफल"
+msgstr "सकेट बनà¥à¤¦ गरà¥à¤¨ अकà¥à¤·à¤®: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, fuzzy, c-format
msgid "Error closing socket: %s"
msgstr "%s: %s: बनà¥à¤¦ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s\n"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "सकेट अवसà¥à¤¥à¤¾à¤•à¤¾ लागि पà¥à¤°à¤¤à¤¿à¤•à¥à¤·à¤¾ गरà¥à¤¦à¥ˆ: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "सनà¥à¤¦à¥‡à¤¶ पठाउन अकà¥à¤·à¤®: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
#, fuzzy
msgid "Message vectors too large"
-msgstr "à¤à¤•à¥à¤¸à¤ªà¥‹à¤¨à¥‡à¤¨à¥à¤Ÿ निकै ठूलो"
+msgstr "अति ठूलो गणना मान %s मा पास गरियो"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090 gio/gsocket.c:5268 gio/gsocket.c:5308
+#: gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "सनà¥à¤¦à¥‡à¤¶ पठाउदा तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gsocket.c:5026
-#, fuzzy
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
-msgstr "सञà¥à¤à¥à¤¯à¤¾à¤²à¤¹à¤°à¥‚"
+msgstr "सञà¥à¤à¥à¤¯à¤¾à¤²à¤®à¤¾ GSocketControlMessage समरà¥à¤¥à¤¿à¤¤ छैन"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, fuzzy, c-format
msgid "Error receiving message: %s"
-msgstr " “%s†%s बाट पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿"
+msgstr "डाटा पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, fuzzy, c-format
msgid "Unable to read socket credentials: %s"
-msgstr ""
-"आदेश विवरणबाट\n"
-"\n"
-"निरà¥à¤—त पढà¥à¤¨ असमरà¥à¤¥: %s"
+msgstr "सकेट सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ अकà¥à¤·à¤®: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
-msgstr ""
+msgstr "यो OS का लागि g_socket_get_credentials कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरिà¤à¤•à¥‹ छैन"
#: gio/gsocketclient.c:191
-#, fuzzy, c-format
+#, c-format
msgid "Could not connect to proxy server %s: "
-msgstr "पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ सरà¥à¤­à¤° जडान गरà¥à¤¨ सकà¥à¤¦à¥ˆà¤¨"
+msgstr "पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ सरà¥à¤­à¤°à¤®à¤¾ जडान गरà¥à¤¨ सकेन: %s "
#: gio/gsocketclient.c:205
#, c-format
@@ -3883,12 +3966,11 @@ msgstr "%s मा जडान गरà¥à¤¨ सकेन: "
msgid "Could not connect: "
msgstr "जडान गरà¥à¤¨ सकेन: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
-#, fuzzy
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
-msgstr "सांकेतिक समà¥à¤¬à¤¨à¥à¤§ समरà¥à¤¥à¤¨ गरिà¤à¤¨"
+msgstr "TCP बाहेकका जडानमा पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ समरà¥à¤¥à¤¿à¤¤ छैन ।"
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, fuzzy, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "(पà¥à¤°à¥‹à¤Ÿà¥‹à¤•à¤² %s)"
@@ -3905,16 +3987,16 @@ msgstr "थपिà¤à¤•à¥‹ सकेट बनà¥à¤¦ छ"
#: gio/gsocks4aproxy.c:118
#, c-format
msgid "SOCKSv4 does not support IPv6 address “%sâ€"
-msgstr ""
+msgstr "SOCKSv4 ले IPv6 ठेगाना \"%s\" समरà¥à¤¥à¤¨ गरà¥à¤¦à¥ˆà¤¨"
#: gio/gsocks4aproxy.c:136
msgid "Username is too long for SOCKSv4 protocol"
msgstr "SOCKSv4 पà¥à¤°à¥‹à¤Ÿà¥‹à¤•à¤²à¤•à¤¾ लागि पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ नाम धेरै लामो छ"
#: gio/gsocks4aproxy.c:153
-#, fuzzy, c-format
+#, c-format
msgid "Hostname “%s†is too long for SOCKSv4 protocol"
-msgstr "SOCKSv4 पà¥à¤°à¥‹à¤Ÿà¥‹à¤•à¤²à¤•à¤¾ लागि पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ नाम धेरै लामो छ"
+msgstr "SOCKSv4 पà¥à¤°à¥‹à¤Ÿà¥‹à¤•à¤²à¤•à¤¾ लागि होसà¥à¤Ÿà¤¨à¤¾à¤® \"%s\" धेरै लामो छ"
#: gio/gsocks4aproxy.c:179
msgid "The server is not a SOCKSv4 proxy server."
@@ -3934,30 +4016,29 @@ msgstr "SOCKSv5 पà¥à¤°à¥‹à¤•à¥à¤¸à¥€à¤²à¤¾à¤ˆ पà¥à¤°à¤®à¤¾à¤£à¥€à¤•à¤°à¤£
#: gio/gsocks5proxy.c:191
msgid "The SOCKSv5 proxy requires an authentication method that is not supported by GLib."
-msgstr ""
+msgstr "SOCKSv5 पà¥à¤°à¥‹à¤•à¥à¤¸à¥€à¤²à¤¾à¤ˆ à¤à¤‰à¤Ÿà¤¾ पà¥à¤°à¤®à¤¾à¤£à¥€à¤•à¤°à¤£ विधि आवशà¥à¤¯à¤• परà¥à¤¦à¤› जà¥à¤¨ GLib दà¥à¤µà¤¾à¤°à¤¾ समरà¥à¤¥à¤¿à¤¤ छैन ।"
#: gio/gsocks5proxy.c:220
-#, fuzzy
msgid "Username or password is too long for SOCKSv5 protocol."
-msgstr "SOCKSv4 पà¥à¤°à¥‹à¤Ÿà¥‹à¤•à¤²à¤•à¤¾ लागि पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ नाम धेरै लामो छ"
+msgstr "SOCKSv5 पà¥à¤°à¥‹à¤Ÿà¥‹à¤•à¤²à¤•à¤¾ लागि पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ नाम वा पासवरà¥à¤¡ धेरै लामो छ ।"
#: gio/gsocks5proxy.c:250
msgid "SOCKSv5 authentication failed due to wrong username or password."
-msgstr ""
+msgstr "गलत पà¥à¤°à¤¯à¥‹à¤—करà¥à¤¤à¤¾ नाम वा पासवरà¥à¤¡à¤•à¤¾ कारणSOCKSv5 पà¥à¤°à¤®à¤¾à¤£à¥€à¤•à¤°à¤£ असफल भयो ।"
#: gio/gsocks5proxy.c:300
#, c-format
msgid "Hostname “%s†is too long for SOCKSv5 protocol"
-msgstr ""
+msgstr "होसà¥à¤Ÿà¤¨à¤¾à¤® \"%s\" SOCKSv5 पà¥à¤°à¥‹à¤Ÿà¥‹à¤•à¤²à¤•à¤¾ लागि धेरै लामो छ"
#: gio/gsocks5proxy.c:362
msgid "The SOCKSv5 proxy server uses unknown address type."
-msgstr ""
+msgstr "SOCKSv5 पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ सरà¥à¤­à¤°à¤²à¥‡ अजà¥à¤žà¤¾à¤¤ ठेगाना पà¥à¤°à¤•à¤¾à¤° पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¦à¤› ।"
#: gio/gsocks5proxy.c:369
#, fuzzy
msgid "Internal SOCKSv5 proxy server error."
-msgstr "पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ हलकरà¥à¤¤à¤¾ आनà¥à¤¤à¤°à¤¿à¤• तà¥à¤°à¥à¤Ÿà¤¿à¥¤."
+msgstr "सरà¥à¤­à¤° SOCKSv5 पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ सरà¥à¤­à¤° होइन ।"
#: gio/gsocks5proxy.c:375
msgid "SOCKSv5 connection not allowed by ruleset."
@@ -3965,12 +4046,11 @@ msgstr "रूलसेटदà¥à¤µà¤¾à¤°à¤¾ SOCKSv5 जडानलाई अà¤
#: gio/gsocks5proxy.c:382
msgid "Host unreachable through SOCKSv5 server."
-msgstr ""
+msgstr "SOCKSv5 सरà¥à¤­à¤° मारà¥à¤«à¤¤ पहà¥à¤à¤š योगà¥à¤¯ नभà¤à¤•à¥‹ होसà¥à¤Ÿ ।"
#: gio/gsocks5proxy.c:388
-#, fuzzy
msgid "Network unreachable through SOCKSv5 proxy."
-msgstr "SOCKSv5 पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ सà¤à¤— जडान असà¥à¤µà¥€à¤•à¥ƒà¤¤ भयो ।"
+msgstr "SOCKSv5 पà¥à¤°à¥‹à¤•à¥à¤¸à¥€à¤¸à¤à¤— सञà¥à¤œà¤¾à¤² पहà¥à¤à¤šà¤¯à¥‹à¤—à¥à¤¯ छैन ।"
#: gio/gsocks5proxy.c:394
msgid "Connection refused through SOCKSv5 proxy."
@@ -3978,169 +4058,199 @@ msgstr "SOCKSv5 पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ सà¤à¤— जडान असà¥à¤µà¥€à
#: gio/gsocks5proxy.c:400
msgid "SOCKSv5 proxy does not support “connect†command."
-msgstr ""
+msgstr "SOCKSv5 पà¥à¤°à¥‹à¤•à¥à¤¸à¥€à¤²à¥‡ \"जडान\" आदेश समरà¥à¤¥à¤¨ गरà¥à¤¦à¥ˆà¤¨ ।"
#: gio/gsocks5proxy.c:406
msgid "SOCKSv5 proxy does not support provided address type."
-msgstr ""
+msgstr "SOCKSv5 पà¥à¤°à¥‹à¤•à¥à¤¸à¥€à¤²à¥‡ पà¥à¤°à¤¦à¤¾à¤¨ गरिà¤à¤•à¥‹ ठेगाना पà¥à¤°à¤•à¤¾à¤° समरà¥à¤¥à¤¨ गरà¥à¤¦à¥ˆà¤¨ ।"
#: gio/gsocks5proxy.c:412
#, fuzzy
msgid "Unknown SOCKSv5 proxy error."
-msgstr "SOCKSv5 पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ सà¤à¤— जडान असà¥à¤µà¥€à¤•à¥ƒà¤¤ भयो ।"
+msgstr "सरà¥à¤­à¤° SOCKSv5 पà¥à¤°à¥‹à¤•à¥à¤¸à¥€ सरà¥à¤­à¤° होइन ।"
+
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
+#, c-format
+msgid "Failed to create pipe for communicating with child process (%s)"
+msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ (%s)सà¤à¤— कà¥à¤°à¤¾à¤•à¤¾à¤¨à¥€à¤•à¤¾ लागि पाइप सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ असफल"
+
+#: gio/gtestdbus.c:619
+#, c-format
+msgid "Pipes are not supported in this platform"
+msgstr "यो पà¥à¤²à¥‡à¤Ÿà¤«à¤°à¥à¤®à¤®à¤¾ पाइपहरू समरà¥à¤¥à¤¨ गरà¥à¤¦à¥ˆà¤¨"
#: gio/gthemedicon.c:595
-#, fuzzy, c-format
+#, c-format
msgid "Can’t handle version %d of GThemedIcon encoding"
-msgstr "GVfsIcon सङà¥à¤•à¥‡à¤¤à¤¨à¤•à¥‹ संसà¥à¤•à¤°à¤£ %d हà¥à¤¯à¤¾à¤£à¥à¤¡à¤² गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
+msgstr "GThemedIcon सङà¥à¤•à¥‡à¤¤à¤¨à¤•à¥‹ संसà¥à¤•à¤°à¤£ %d हà¥à¤¯à¤¾à¤¨à¥à¤¡à¤² गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
#: gio/gthreadedresolver.c:152
#, fuzzy
msgid "No valid addresses were found"
-msgstr "कà¥à¤¨à¥ˆ वरà¥à¤— उपसरà¥à¤—हरू भेटिà¤à¤¨"
+msgstr "कà¥à¤¨à¥ˆ गà¥à¤£à¤¹à¤°à¥‚ फेला परेन ।"
#: gio/gthreadedresolver.c:337
-#, fuzzy, c-format
+#, c-format
msgid "Error reverse-resolving “%sâ€: %s"
-msgstr "सेवा \"%2s\" डोमेन \"%3s\" मा हल गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿ \"%1s\""
+msgstr "\"%s\" पà¥à¤¨: समाधान गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572 gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr "%s रेकरà¥à¤¡ पद वरà¥à¤£à¤¨ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: विकृत DNS पà¥à¤¯à¤¾à¤•à¥‡à¤Ÿ"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893 gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, fuzzy, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "वसà¥à¤¤à¥ पà¥à¤°à¤•à¤¾à¤° '%s' यो पà¥à¤°à¤¸à¤™à¥à¤—मा अनà¥à¤°à¥‹à¤§ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, fuzzy, c-format
msgid "Temporarily unable to resolve “%sâ€"
-msgstr "सहभागी अदà¥à¤¯à¤¾à¤µà¤§à¤¿à¤• गरà¥à¤¨ अकà¥à¤·à¤® । %s"
+msgstr "URI '%s' को लागि मिडिया समाधान गरà¥à¤¨ सकेन"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
-#, fuzzy, c-format
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001 gio/gthreadedresolver.c:1111
+#, c-format
msgid "Error resolving “%sâ€"
-msgstr "सेवा \"%2s\" डोमेन \"%3s\" मा हल गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿ \"%1s\""
+msgstr "\"%s\" हल गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿"
-#: gio/gtlscertificate.c:298
-#, fuzzy
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804 gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "विकृत DNS पà¥à¤¯à¤¾à¤•à¥‡à¤Ÿ"
+
+#: gio/gthreadedresolver.c:886
+#, fuzzy, c-format
+#| msgid "Failed to read from file '%s': %s"
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "सà¥à¤µà¤¤: खोज पà¥à¤°à¤¤à¤¿à¤•à¥à¤°à¤¿à¤¯à¤¾ à¤à¤•à¥à¤¸à¤à¤®à¤à¤² पारà¥à¤¸ गरà¥à¤¨ असफल भयो"
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
-msgstr "PEM-सङà¥à¤•à¥‡à¤¤à¤¨ गरिà¤à¤•à¥‹ निजी कà¥à¤žà¥à¤œà¥€à¤•à¥‹ गà¥à¤ªà¥à¤¤à¤²à¥‡à¤–न उलà¥à¤Ÿà¤¾à¤‰à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
+msgstr "PEM-सङà¥à¤•à¥‡à¤¤à¤¨ गरिà¤à¤•à¥‹ निजी कà¥à¤žà¥à¤œà¥€ फेला परेन"
-#: gio/gtlscertificate.c:308
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "PEM-सङà¥à¤•à¥‡à¤¤à¤¨ गरिà¤à¤•à¥‹ निजी कà¥à¤žà¥à¤œà¥€à¤•à¥‹ गà¥à¤ªà¥à¤¤à¤²à¥‡à¤–न उलà¥à¤Ÿà¤¾à¤‰à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
-#: gio/gtlscertificate.c:319
+#: gio/gtlscertificate.c:499
#, fuzzy
msgid "Could not parse PEM-encoded private key"
-msgstr "PEM वà¥à¤¯à¤•à¥à¤¤à¤¿à¤—त कà¥à¤žà¥à¤œà¥€ पद वरà¥à¤£à¤¨ गरà¥à¤¨ सकेन: %s"
+msgstr "PEM-सङà¥à¤•à¥‡à¤¤à¤¨ गरिà¤à¤•à¥‹ पà¥à¤°à¤®à¤¾à¤£à¤ªà¤¤à¥à¤° पद वरà¥à¤£à¤¨ गरà¥à¤¨ सकेन"
-#: gio/gtlscertificate.c:346
-#, fuzzy
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
-msgstr "PEM-सङà¥à¤•à¥‡à¤¤à¤¨ गरिà¤à¤•à¥‹ निजी कà¥à¤žà¥à¤œà¥€à¤•à¥‹ गà¥à¤ªà¥à¤¤à¤²à¥‡à¤–न उलà¥à¤Ÿà¤¾à¤‰à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
+msgstr "PEM-सङà¥à¤•à¥‡à¤¤à¤¨ गरिà¤à¤•à¥‹ पà¥à¤°à¤®à¤¾à¤£à¤ªà¤¤à¥à¤° फेला परेन"
-#: gio/gtlscertificate.c:355
-#, fuzzy
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
-msgstr "PEM पà¥à¤°à¤®à¤¾à¤£à¤ªà¤¤à¥à¤° पारà¥à¤¸ गरà¥à¤¨ सकेन:% s"
+msgstr "PEM-सङà¥à¤•à¥‡à¤¤à¤¨ गरिà¤à¤•à¥‹ पà¥à¤°à¤®à¤¾à¤£à¤ªà¤¤à¥à¤° पद वरà¥à¤£à¤¨ गरà¥à¤¨ सकेन"
-#: gio/gtlscertificate.c:710
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "हालको TLS बà¥à¤¯à¤¾à¤•à¤‡à¤¨à¥à¤¡à¤²à¥‡ PKCS #12 समरà¥à¤¥à¤¨ गरà¥à¤¦à¥ˆà¤¨"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
-msgstr ""
+msgstr "यो GTlsBackend ले PKCS #11 पà¥à¤°à¤®à¤¾à¤£à¤ªà¤¤à¥à¤° सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ समरà¥à¤¥à¤¨ गरà¥à¤¦à¥ˆà¤¨ ।"
#: gio/gtlspassword.c:111
msgid "This is the last chance to enter the password correctly before your access is locked out."
-msgstr ""
+msgstr "तपाईà¤à¤•à¥‹ पहà¥à¤à¤š तालà¥à¤šà¤¾ लगाउनॠभनà¥à¤¦à¤¾ पहिले सही तरिकाले पासवरà¥à¤¡ पà¥à¤°à¤µà¤¿à¤·à¥à¤Ÿ गरà¥à¤¨à¥‡ यो अनà¥à¤¤à¤¿à¤® मौका हो ।"
#. Translators: This is not the 'This is the last chance' string. It is
#. * displayed when more than one attempt is allowed.
#: gio/gtlspassword.c:115
msgid "Several passwords entered have been incorrect, and your access will be locked out after further failures."
-msgstr ""
+msgstr "पà¥à¤°à¤µà¤¿à¤·à¥à¤Ÿ गरिà¤à¤•à¤¾ धेरै पासवरà¥à¤¡à¤¹à¤°à¥‚ गलत भà¤à¤•à¤¾ छनà¥, र तपाईà¤à¤•à¥‹ पहà¥à¤à¤š थप असफलता पछि तालà¥à¤šà¤¾ लगाइà¤à¤•à¥‹ हà¥à¤¨à¥‡à¤› ।"
#: gio/gtlspassword.c:117
#, fuzzy
msgid "The password entered is incorrect."
msgstr "पासवरà¥à¤¡ गलत थियो"
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "FD पठाउन समरà¥à¤¥à¤¨ गरà¥à¤¦à¥ˆà¤¨"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "१ नियनà¥à¤¤à¥à¤°à¤£ सनà¥à¤¦à¥‡à¤¶ अपेकà¥à¤·à¤¾ गरà¥à¤¦à¥ˆ, %d पà¥à¤°à¤¾à¤ªà¥à¤¤ भयो"
msgstr[1] "१ नियनà¥à¤¤à¥à¤°à¤£ सनà¥à¤¦à¥‡à¤¶ अपेकà¥à¤·à¤¾ गरà¥à¤¦à¥ˆ, %d पà¥à¤°à¤¾à¤ªà¥à¤¤ भयो"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
-#, fuzzy
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
-msgstr "PNM छवि डेटाको अपà¥à¤°à¤¤à¥à¤¯à¤¾à¤¶à¤¿à¤¤ अनà¥à¤¤à¥à¤¯"
+msgstr "अनपेकà¥à¤·à¤¿à¤¤ पà¥à¤°à¤•à¤¾à¤°à¤•à¥‹ सहायक डेटा"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "à¤à¤‰à¤Ÿà¤¾ fd अपेकà¥à¤·à¤¾ गरà¥à¤¦à¥ˆ, तर %d पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¯à¥‹\n"
msgstr[1] "à¤à¤‰à¤Ÿà¤¾ fd अपेकà¥à¤·à¤¾ गरà¥à¤¦à¥ˆ, तर %d पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¯à¥‹\n"
-#: gio/gunixconnection.c:219
-#, fuzzy
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
-msgstr "à¤à¤«à¤¡à¥€"
+msgstr "अवैध fd पà¥à¤°à¤¾à¤ªà¥à¤¤ भयो"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+#, fuzzy
+msgid "Receiving FD is not supported"
+msgstr "FD पठाउन समरà¥à¤¥à¤¨ गरà¥à¤¦à¥ˆà¤¨"
+
+#: gio/gunixconnection.c:380
#, fuzzy
msgid "Error sending credentials: "
msgstr "सनà¥à¤¦à¥‡à¤¶ पठाउदा तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr ""
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "SO_PASSCRED सकà¥à¤·à¤® पारà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid "Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr "पà¥à¤°à¤®à¤¾à¤£à¤ªà¤¤à¥à¤° पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¨à¤•à¤¾ लागि à¤à¤•à¤² बाइट पढà¥à¤¨à¥‡ अपेकà¥à¤·à¤¾ गरà¥à¤¦à¥ˆà¤› तर शूनà¥à¤¯ बाइटहरू पढà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, fuzzy, c-format
msgid "Not expecting control message, but got %d"
msgstr "१ नियनà¥à¤¤à¥à¤°à¤£ सनà¥à¤¦à¥‡à¤¶ अपेकà¥à¤·à¤¾ गरà¥à¤¦à¥ˆ, %d पà¥à¤°à¤¾à¤ªà¥à¤¤ भयो"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
-msgstr ""
+msgstr "SO_PASSCRED अकà¥à¤·à¤® गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
#: gio/gunixinputstream.c:357 gio/gunixinputstream.c:378
#, fuzzy, c-format
msgid "Error reading from file descriptor: %s"
msgstr "फाइल “%s†पढà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿:%s"
-#: gio/gunixinputstream.c:411 gio/gunixoutputstream.c:520
-#: gio/gwin32inputstream.c:217 gio/gwin32outputstream.c:204
+#: gio/gunixinputstream.c:411 gio/gunixoutputstream.c:520 gio/gwin32inputstream.c:217 gio/gwin32outputstream.c:204
#, fuzzy, c-format
msgid "Error closing file descriptor: %s"
msgstr "फाइल बनà¥à¤¦ गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gunixmounts.c:2780 gio/gunixmounts.c:2833
-#, fuzzy
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
-msgstr "बाटो %s फाइल पà¥à¤°à¤£à¤¾à¤²à¥€ मूल सà¤à¤— सनà¥à¤¬à¤¨à¥à¤§à¤¿à¤¤ हà¥à¤¨à¥à¤ªà¤°à¥à¤› (/ बाट सà¥à¤°à¥)"
+msgstr "मà¥à¤² फाइल पà¥à¤°à¤£à¤¾à¤²à¥€ "
-#: gio/gunixoutputstream.c:357 gio/gunixoutputstream.c:377
-#: gio/gunixoutputstream.c:464 gio/gunixoutputstream.c:484
+#: gio/gunixoutputstream.c:357 gio/gunixoutputstream.c:377 gio/gunixoutputstream.c:464 gio/gunixoutputstream.c:484
#: gio/gunixoutputstream.c:630
#, fuzzy, c-format
msgid "Error writing to file descriptor: %s"
msgstr "छवि फाइलमा लेखà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: gio/gunixsocketaddress.c:243
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "संकà¥à¤·à¥‡à¤ª यà¥à¤¨à¤¿à¤•à¥à¤¸ डोमेन सकेट ठेगाना यो पà¥à¤°à¤£à¤¾à¤²à¥€à¤®à¤¾ समरà¥à¤¥à¤¨ गरà¥à¤¦à¥ˆà¤¨"
@@ -4157,11 +4267,9 @@ msgid "volume doesn’t implement eject or eject_with_operation"
msgstr "डà¥à¤°à¤¾à¤‡à¤­à¤²à¥‡ निकालà¥à¤¨à¥‡ वा eject_with_operation कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¦à¥ˆà¤¨"
#: gio/gwin32inputstream.c:185
-#, fuzzy, c-format
+#, c-format
msgid "Error reading from handle: %s"
-msgstr ""
-"सरà¥à¤­à¤°à¤¬à¤¾à¤Ÿ जवाफ पढà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿:\n"
-"%s"
+msgstr "हेनà¥à¤¦à¤²à¤¬à¤¾à¤Ÿ पढà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: %s"
#: gio/gwin32inputstream.c:232 gio/gwin32outputstream.c:219
#, fuzzy, c-format
@@ -4195,161 +4303,149 @@ msgid "Address to listen on"
msgstr "Address to listen on"
#: gio/tests/gdbus-daemon.c:19
-#, fuzzy
msgid "Ignored, for compat with GTestDbus"
-msgstr "मिलà¥à¤¦à¥‹à¤ªà¤¨à¤¾à¤•à¤¾ लागि उपेकà¥à¤·à¤¾ गरियो"
+msgstr "GTestDbus सà¤à¤— कमà¥à¤ªà¤¾à¤Ÿà¤•à¤¾ लागि, उपेकà¥à¤·à¤¾ गरियो"
#: gio/tests/gdbus-daemon.c:20
-#, fuzzy
msgid "Print address"
-msgstr "मà¥à¤¦à¥à¤°à¤£ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥..."
+msgstr "ठेगाना मà¥à¤¦à¥à¤°à¤£ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: gio/tests/gdbus-daemon.c:21
msgid "Print address in shell mode"
msgstr ""
#: gio/tests/gdbus-daemon.c:28
-#, fuzzy
msgid "Run a dbus service"
-msgstr "DBus सेवामा जडान गरà¥à¤¦à¤›"
+msgstr "dbus सेवा चलाउनà¥à¤¹à¥‹à¤¸à¥"
#: gio/tests/gdbus-daemon.c:42
msgid "Wrong args\n"
msgstr "गलत तरà¥à¤•\n"
-#: glib/gbookmarkfile.c:768
+#: glib/gbookmarkfile.c:777
#, fuzzy, c-format
msgid "Unexpected attribute “%s†for element “%sâ€"
-msgstr "अनपेकà¥à¤·à¤¿à¤¤ ततà¥à¤µ \"%s\""
+msgstr "\"%s\" विशेषताको \"%s\" ततà¥à¤µ फेला परेन"
-#: glib/gbookmarkfile.c:779 glib/gbookmarkfile.c:859 glib/gbookmarkfile.c:869
-#: glib/gbookmarkfile.c:982
+#: glib/gbookmarkfile.c:788 glib/gbookmarkfile.c:868 glib/gbookmarkfile.c:878 glib/gbookmarkfile.c:991
#, c-format
msgid "Attribute “%s†of element “%s†not found"
msgstr "\"%s\" विशेषताको \"%s\" ततà¥à¤µ फेला परेन"
-#: glib/gbookmarkfile.c:1191 glib/gbookmarkfile.c:1256
-#: glib/gbookmarkfile.c:1320 glib/gbookmarkfile.c:1330
+#: glib/gbookmarkfile.c:1200 glib/gbookmarkfile.c:1265 glib/gbookmarkfile.c:1329 glib/gbookmarkfile.c:1339
#, fuzzy, c-format
msgid "Unexpected tag “%sâ€, tag “%s†expected"
-msgstr "अपेकà¥à¤·à¤¿à¤¤ टà¥à¤¯à¤¾à¤— <gda_array_data>, <%s> पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¯à¥‹"
+msgstr "अपà¥à¤°à¤¤à¥à¤¯à¤¾à¤¶à¤¿à¤¤ सà¥à¤°à¥ टà¥à¤¯à¤¾à¤— '%s' लाइन %d मा char %d"
-#: glib/gbookmarkfile.c:1216 glib/gbookmarkfile.c:1230
-#: glib/gbookmarkfile.c:1298 glib/gbookmarkfile.c:1344
+#: glib/gbookmarkfile.c:1225 glib/gbookmarkfile.c:1239 glib/gbookmarkfile.c:1307 glib/gbookmarkfile.c:1353
#, fuzzy, c-format
msgid "Unexpected tag “%s†inside “%sâ€"
-msgstr "अनपेकà¥à¤·à¤¿à¤¤ विशेषता %s::%s == '%s'।"
+msgstr "%s भितà¥à¤°à¤ªà¤Ÿà¤¿ (%s) अनà¥à¤®à¤¤à¤¿ दिà¤à¤•à¥‹ छैन"
-#: glib/gbookmarkfile.c:1624
+#: glib/gbookmarkfile.c:1633
#, c-format
msgid "Invalid date/time ‘%s’ in bookmark file"
msgstr "पà¥à¤¸à¥à¤¤à¤•à¤šà¤¿à¤¨à¥‹ फाइलमा अवैध मिति/समय '%s'"
-#: glib/gbookmarkfile.c:1827
+#: glib/gbookmarkfile.c:1836
#, fuzzy
msgid "No valid bookmark file found in data dirs"
msgstr "खोजी डाइरेकà¥à¤Ÿà¤°à¥€à¤¹à¤°à¥‚मा वैध कà¥à¤žà¥à¤œà¥€ फाइल फेला पारà¥à¤¨ सकेन ।"
-#: glib/gbookmarkfile.c:2028
+#: glib/gbookmarkfile.c:2037
#, c-format
msgid "A bookmark for URI “%s†already exists"
msgstr "URI \"%s\" का लागि पà¥à¤¸à¥à¤¤à¤•à¤šà¤¿à¤¨à¥‹ पहिले नै अवसà¥à¤¥à¤¿à¤¤ छ"
-#: glib/gbookmarkfile.c:2077 glib/gbookmarkfile.c:2235
-#: glib/gbookmarkfile.c:2320 glib/gbookmarkfile.c:2400
-#: glib/gbookmarkfile.c:2485 glib/gbookmarkfile.c:2619
-#: glib/gbookmarkfile.c:2752 glib/gbookmarkfile.c:2887
-#: glib/gbookmarkfile.c:2929 glib/gbookmarkfile.c:3026
-#: glib/gbookmarkfile.c:3147 glib/gbookmarkfile.c:3341
-#: glib/gbookmarkfile.c:3482 glib/gbookmarkfile.c:3701
-#: glib/gbookmarkfile.c:3790 glib/gbookmarkfile.c:3879
-#: glib/gbookmarkfile.c:3998
+#: glib/gbookmarkfile.c:2086 glib/gbookmarkfile.c:2244 glib/gbookmarkfile.c:2329 glib/gbookmarkfile.c:2409
+#: glib/gbookmarkfile.c:2494 glib/gbookmarkfile.c:2628 glib/gbookmarkfile.c:2761 glib/gbookmarkfile.c:2896
+#: glib/gbookmarkfile.c:2938 glib/gbookmarkfile.c:3035 glib/gbookmarkfile.c:3156 glib/gbookmarkfile.c:3350
+#: glib/gbookmarkfile.c:3491 glib/gbookmarkfile.c:3710 glib/gbookmarkfile.c:3799 glib/gbookmarkfile.c:3888
+#: glib/gbookmarkfile.c:4007
#, fuzzy, c-format
msgid "No bookmark found for URI “%sâ€"
msgstr "'%s' URI का लागि वसà¥à¤¤à¥ फेला परेन"
-#: glib/gbookmarkfile.c:2409
+#: glib/gbookmarkfile.c:2418
#, c-format
msgid "No MIME type defined in the bookmark for URI “%sâ€"
msgstr ""
-#: glib/gbookmarkfile.c:2494
+#: glib/gbookmarkfile.c:2503
#, c-format
msgid "No private flag has been defined in bookmark for URI “%sâ€"
msgstr ""
-#: glib/gbookmarkfile.c:3035
+#: glib/gbookmarkfile.c:3044
#, fuzzy, c-format
msgid "No groups set in bookmark for URI “%sâ€"
msgstr "URI \"%s\" का लागि पà¥à¤¸à¥à¤¤à¤•à¤šà¤¿à¤¨à¥‹ पहिले नै अवसà¥à¤¥à¤¿à¤¤ छ"
-#: glib/gbookmarkfile.c:3503 glib/gbookmarkfile.c:3711
+#: glib/gbookmarkfile.c:3512 glib/gbookmarkfile.c:3720
#, fuzzy, c-format
msgid "No application with name “%s†registered a bookmark for “%sâ€"
msgstr "%s: अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤— नाम हराइरहेको छ"
-#: glib/gbookmarkfile.c:3734
-#, fuzzy, c-format
+#: glib/gbookmarkfile.c:3743
+#, c-format
msgid "Failed to expand exec line “%s†with URI “%sâ€"
-msgstr "सांकेतिक समà¥à¤¬à¤¨à¥à¤§ '%s' पढà¥à¤¨ असफल: %s"
+msgstr "\"%s\" यूआरआईसà¤à¤— exec लाइन \"%s\" विसà¥à¤¤à¤¾à¤° गरà¥à¤¨ असफल भयो"
-#: glib/gconvert.c:467
+#: glib/gconvert.c:468
msgid "Unrepresentable character in conversion input"
msgstr "रूपानà¥à¤¤à¤°à¤£ आगतमा पà¥à¤°à¤¤à¤¿à¤¨à¤¿à¤§à¤¿à¤¤à¥à¤µ गरà¥à¤¨ नसकिने वरà¥à¤£"
-#: glib/gconvert.c:494 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236 glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "आगतको अनà¥à¤¤à¥à¤¯à¤®à¤¾ आंशिक कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤°"
-#: glib/gconvert.c:763
+#: glib/gconvert.c:764
#, fuzzy, c-format
#| msgid "Cannot convert fallback '%s' to codeset '%s'"
msgid "Cannot convert fallback “%s†to codeset “%sâ€"
msgstr "फलबà¥à¤¯à¤¾à¤• '%s' बाट कोड सेट'%s' मा रूपानà¥à¤¤à¤°à¤£ गरà¥à¤¨ सकà¥à¤¦à¥ˆà¤¨"
-#: glib/gconvert.c:935
+#: glib/gconvert.c:936
#, fuzzy
#| msgid "Invalid byte sequence in conversion input"
msgid "Embedded NUL byte in conversion input"
msgstr "रूपानà¥à¤¤à¤°à¤£ आगतमा अवैध बाइट अनà¥à¤•à¥à¤°à¤®"
-#: glib/gconvert.c:956
+#: glib/gconvert.c:957
#, fuzzy
#| msgid "Invalid byte sequence in conversion input"
msgid "Embedded NUL byte in conversion output"
msgstr "रूपानà¥à¤¤à¤°à¤£ आगतमा अवैध बाइट अनà¥à¤•à¥à¤°à¤®"
-#: glib/gconvert.c:1641
-#, fuzzy, c-format
-#| msgid "The URI '%s' is not an absolute URI using the \"file\" scheme"
+#: glib/gconvert.c:1688
+#, c-format
msgid "The URI “%s†is not an absolute URI using the “file†scheme"
-msgstr "URI '%s' \"file\" योजना पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¨à¥‡ à¤à¤‰à¤Ÿà¤¾ निशà¥à¤šà¤¿à¤¤ URI होइन"
+msgstr "URI \"%s\" \"file\" योजना पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¨à¥‡ à¤à¤‰à¤Ÿà¤¾ निशà¥à¤šà¤¿à¤¤ URI होइन"
-#: glib/gconvert.c:1651
+#: glib/gconvert.c:1698
#, fuzzy, c-format
#| msgid "The local file URI '%s' may not include a '#'"
msgid "The local file URI “%s†may not include a “#â€"
msgstr "सà¥à¤¥à¤¾à¤¨à¥€à¤¯ फाइल URI '%s' मा à¤à¤‰à¤Ÿà¤¾ '#' समावेश नहà¥à¤¨à¤¸à¤•à¥à¤›"
-#: glib/gconvert.c:1668
+#: glib/gconvert.c:1715
#, c-format
msgid "The URI “%s†is invalid"
msgstr "URI “%s†अवैध"
-#: glib/gconvert.c:1680
+#: glib/gconvert.c:1727
#, fuzzy, c-format
#| msgid "The hostname of the URI '%s' is invalid"
msgid "The hostname of the URI “%s†is invalid"
msgstr "URI “%s†अवैध"
-#: glib/gconvert.c:1696
+#: glib/gconvert.c:1743
#, fuzzy, c-format
#| msgid "The URI '%s' contains invalidly escaped characters"
msgid "The URI “%s†contains invalidly escaped characters"
msgstr "URI '%s' मा अवैध रूपमा निसà¥à¤•à¤¿à¤à¤•à¤¾ कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤°à¤¹à¤°à¥‚ देखिनà¥à¤›à¤¨à¥"
-#: glib/gconvert.c:1768
+#: glib/gconvert.c:1815
#, fuzzy, c-format
#| msgid "The pathname '%s' is not an absolute path"
msgid "The pathname “%s†is not an absolute path"
@@ -4768,12 +4864,12 @@ msgctxt "GDateTime"
msgid "PM"
msgstr "अपराहà¥à¤¨"
-#: glib/gdir.c:154
+#: glib/gdir.c:156
#, c-format
msgid "Error opening directory “%sâ€: %s"
msgstr "निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾ खोलà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿ “%sâ€: %s"
-#: glib/gfileutils.c:737 glib/gfileutils.c:829
+#: glib/gfileutils.c:733 glib/gfileutils.c:825
#, fuzzy, c-format
#| msgid "Could not allocate %lu bytes to read file \"%s\""
msgid "Could not allocate %lu byte to read file “%sâ€"
@@ -4781,78 +4877,78 @@ msgid_plural "Could not allocate %lu bytes to read file “%sâ€"
msgstr[0] "फाइल \"%2$s\" पढà¥à¤¨ %1$lu बाईटà¥à¤¸ बाà¤à¤¡à¤«à¤¾à¤à¤¡ गरà¥à¤¨ सकिà¤à¤¨"
msgstr[1] "फाइल \"%2$s\" पढà¥à¤¨ %1$lu बाईटà¥à¤¸ बाà¤à¤¡à¤«à¤¾à¤à¤¡ गरà¥à¤¨ सकिà¤à¤¨"
-#: glib/gfileutils.c:754
+#: glib/gfileutils.c:750
#, c-format
msgid "Error reading file “%sâ€: %s"
msgstr "फाइल पढà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿ “%sâ€: %s"
-#: glib/gfileutils.c:790
+#: glib/gfileutils.c:786
#, fuzzy, c-format
msgid "File “%s†is too large"
-msgstr "%s: तरà¥à¤• निकै ठूलो"
+msgstr "अति ठूलो गणना मान %s मा पास गरियो"
-#: glib/gfileutils.c:854
+#: glib/gfileutils.c:850
#, fuzzy, c-format
#| msgid "Failed to read from file '%s': %s"
msgid "Failed to read from file “%sâ€: %s"
-msgstr "कà¥à¤¯à¤¾à¤¸ फाइल पढà¥à¤¨ असफल %s: %s"
+msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ (%s) बाट डेटा पढà¥à¤¨ असफल"
-#: glib/gfileutils.c:904 glib/gfileutils.c:979 glib/gfileutils.c:1476
+#: glib/gfileutils.c:900 glib/gfileutils.c:975 glib/gfileutils.c:1447
#, fuzzy, c-format
#| msgid "Failed to open file '%s': %s"
msgid "Failed to open file “%sâ€: %s"
msgstr "फाइल %s खोलà¥à¤¨ असफल: %s\n"
-#: glib/gfileutils.c:917
+#: glib/gfileutils.c:913
#, fuzzy, c-format
#| msgid "Failed to get attributes of file '%s': fstat() failed: %s"
msgid "Failed to get attributes of file “%sâ€: fstat() failed: %s"
msgstr "फाइल '%s' का लागि जानकारी पà¥à¤°à¤¾à¤ªà¥à¤¤ गरà¥à¤¨ सकेन: %s"
-#: glib/gfileutils.c:948
+#: glib/gfileutils.c:944
#, c-format
msgid "Failed to open file “%sâ€: fdopen() failed: %s"
msgstr "कारà¥à¤¯ फाइल %s: %s fdopen() गरà¥à¤¨ असफल"
-#: glib/gfileutils.c:1049
+#: glib/gfileutils.c:1045
#, c-format
msgid "Failed to rename file “%s†to “%sâ€: g_rename() failed: %s"
msgstr "फाइल “%s†लाई “%s†मा पà¥à¤¨: नामकरण गरà¥à¤¨ असफल:g_rename() असफल: %s"
-#: glib/gfileutils.c:1175
+#: glib/gfileutils.c:1154
#, fuzzy, c-format
#| msgid "Failed to write file '%s': fwrite() failed: %s"
msgid "Failed to write file “%sâ€: write() failed: %s"
msgstr "कà¥à¤¯à¤¾à¤¸ फाइल लेखà¥à¤¨ असफल भयो: %s\n"
-#: glib/gfileutils.c:1196
+#: glib/gfileutils.c:1175
#, fuzzy, c-format
msgid "Failed to write file “%sâ€: fsync() failed: %s"
msgstr "कà¥à¤¯à¤¾à¤¸ फाइल लेखà¥à¤¨ असफल भयो: %s\n"
-#: glib/gfileutils.c:1365 glib/gfileutils.c:1780
+#: glib/gfileutils.c:1336 glib/gfileutils.c:1751
#, fuzzy, c-format
#| msgid "Failed to create file '%s': %s"
msgid "Failed to create file “%sâ€: %s"
msgstr "असà¥à¤¥à¤¾à¤¯à¥€ फाईल सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ असफल`%s': %s\n"
-#: glib/gfileutils.c:1410
+#: glib/gfileutils.c:1381
#, fuzzy, c-format
#| msgid "Existing file '%s' could not be removed: g_unlink() failed: %s"
msgid "Existing file “%s†could not be removed: g_unlink() failed: %s"
msgstr "अवसà¥à¤¥à¤¿à¤¤ फाइल '%s' हटाउन सकिà¤à¤¨:g_unlink() असफल: %s"
-#: glib/gfileutils.c:1745
+#: glib/gfileutils.c:1716
#, c-format
msgid "Template “%s†invalid, should not contain a “%sâ€"
msgstr "टेमà¥à¤ªà¥à¤²à¥‡à¤Ÿ %s को #%s मा 'टेमà¥à¤ªà¥à¤²à¥‡à¤Ÿ:' लाइन समाविषà¥à¤Ÿ छैन"
-#: glib/gfileutils.c:1758
-#, fuzzy, c-format
+#: glib/gfileutils.c:1729
+#, c-format
msgid "Template “%s†doesn’t contain XXXXXX"
-msgstr "'%s' टेमà¥à¤ªà¥à¤²à¥‡à¤Ÿ XXXXXX संगसमापà¥à¤¤ हà¥à¤à¤¦à¥ˆà¤¨"
+msgstr "\"%s\" टेमà¥à¤ªà¥à¤²à¥‡à¤Ÿ XXXXXX समावेश छैन"
-#: glib/gfileutils.c:2318 glib/gfileutils.c:2347
+#: glib/gfileutils.c:2289 glib/gfileutils.c:2318
#, c-format
msgid "Failed to read the symbolic link “%sâ€: %s"
msgstr "सांकेतिक समà¥à¤¬à¤¨à¥à¤§ \"%s\" पढà¥à¤¨ असफल भयो: %s"
@@ -4863,8 +4959,6 @@ msgid "Could not open converter from “%s†to “%sâ€: %s"
msgstr "\"%s\" बाट \"%s\" मा रूपानà¥à¤¤à¤°à¤£à¤•à¤°à¥à¤¤à¤¾ खोलà¥à¤¨ सकेन: %s"
#: glib/giochannel.c:1758
-#, fuzzy
-#| msgid "Can't do a raw read in g_io_channel_read_line_string"
msgid "Can’t do a raw read in g_io_channel_read_line_string"
msgstr "g_io_channel_read_line_string मा परीकà¥à¤·à¤£ पढाई गरà¥à¤¨ सकà¥à¤¦à¥ˆà¤¨"
@@ -4877,108 +4971,106 @@ msgid "Channel terminates in a partial character"
msgstr "आंशिक-कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤°à¤®à¤¾ माधà¥à¤¯à¤® टà¥à¤™à¥à¤—िनà¥à¤›"
#: glib/giochannel.c:1949
-#, fuzzy
-#| msgid "Can't do a raw read in g_io_channel_read_to_end"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "g_io_channel_read_to_end मा परीकà¥à¤·à¤£ पढाई गरà¥à¤¨ सकà¥à¤¦à¥ˆà¤¨"
-#: glib/gkeyfile.c:790
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "खोजी डाइरेकà¥à¤Ÿà¤°à¥€à¤¹à¤°à¥‚मा वैध कà¥à¤žà¥à¤œà¥€ फाइल फेला पारà¥à¤¨ सकेन ।"
-#: glib/gkeyfile.c:827
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "नियमित फाइल होइन"
-#: glib/gkeyfile.c:1282
+#: glib/gkeyfile.c:1289
#, fuzzy, c-format
#| msgid "Key file contains line '%s' which is not a key-value pair, group, or comment"
msgid "Key file contains line “%s†which is not a key-value pair, group, or comment"
msgstr "कà¥à¤žà¥à¤œà¥€ फाइलमा पङà¥à¤—ति '%s' समावेश छ जà¥à¤¨ कà¥à¤žà¥à¤œà¥€-मान जोडि, समूह, वा टिपà¥à¤ªà¤£à¥€ होइन।"
-#: glib/gkeyfile.c:1339
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "अवैध समà¥à¤¹ नाम : %s"
-#: glib/gkeyfile.c:1361
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "कà¥à¤žà¥à¤œà¥€ फाइल à¤à¤‰à¤Ÿà¤¾ समूहबाट सà¥à¤°à¥ हà¥à¤à¤¦à¥ˆà¤¨"
-#: glib/gkeyfile.c:1387
-#, c-format
-msgid "Invalid key name: %s"
-msgstr "अवैध कà¥à¤žà¥à¤œà¤¿ नाम : %s"
+#: glib/gkeyfile.c:1394
+#, fuzzy, c-format
+#| msgid "Invalid key name: %s"
+msgid "Invalid key name: %.*s"
+msgstr "अवैध समà¥à¤¹ नाम : %s"
-#: glib/gkeyfile.c:1414
+#: glib/gkeyfile.c:1422
#, fuzzy, c-format
#| msgid "Key file contains unsupported encoding '%s'"
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "कà¥à¤žà¥à¤œà¥€ फाइलमा समरà¥à¤¥à¤¨ पà¥à¤°à¤¾à¤ªà¥à¤¤ नभà¤à¤•à¥‹ सङà¥à¤•à¥‡à¤¤à¤¨ '%s' समावेश छ।"
-#: glib/gkeyfile.c:1663 glib/gkeyfile.c:1836 glib/gkeyfile.c:3289
-#: glib/gkeyfile.c:3353 glib/gkeyfile.c:3483 glib/gkeyfile.c:3615
-#: glib/gkeyfile.c:3761 glib/gkeyfile.c:3996 glib/gkeyfile.c:4063
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297 glib/gkeyfile.c:3361 glib/gkeyfile.c:3491
+#: glib/gkeyfile.c:3623 glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, fuzzy, c-format
#| msgid "Key file does not have group '%s'"
msgid "Key file does not have group “%sâ€"
msgstr "कà¥à¤žà¥à¤œà¥€ फाइल à¤à¤‰à¤Ÿà¤¾ समूहबाट सà¥à¤°à¥ हà¥à¤à¤¦à¥ˆà¤¨"
-#: glib/gkeyfile.c:1791
+#: glib/gkeyfile.c:1805
#, fuzzy, c-format
#| msgid "Key file does not have key '%s' in group '%s'"
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "कà¥à¤žà¥à¤œà¥€ फाइलमा समूह '%s' मा कà¥à¤žà¥à¤œà¥€ '%s' हà¥à¤à¤¦à¥ˆà¤¨"
-#: glib/gkeyfile.c:1953 glib/gkeyfile.c:2069
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, fuzzy, c-format
#| msgid "Key file contains key '%s' with value '%s' which is not UTF-8"
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "कà¥à¤žà¥à¤œà¥€ फाइलमा मान '%s'सà¤à¤—ै कà¥à¤žà¥à¤œà¥€ '%s' समावेश छ जà¥à¤¨ UTF-8 होइन"
-#: glib/gkeyfile.c:1973 glib/gkeyfile.c:2089 glib/gkeyfile.c:2531
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, fuzzy, c-format
msgid "Key file contains key “%s†which has a value that cannot be interpreted."
msgstr "कà¥à¤žà¥à¤œà¥€ फाइलमा कà¥à¤žà¥à¤œà¥€ '%s' समावेश छ जसको मानलाई वà¥à¤¯à¤¾à¤–à¥à¤¯à¤¾ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨à¥¤"
-#: glib/gkeyfile.c:2749 glib/gkeyfile.c:3118
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, fuzzy, c-format
#| msgid "Key file contains key '%s' in group '%s' which has value that cannot be interpreted."
msgid "Key file contains key “%s†in group “%s†which has a value that cannot be interpreted."
msgstr "कà¥à¤žà¥à¤œà¥€ फाइलमा समूह '%s' मा कà¥à¤žà¥à¤œà¥€ '%s' समावेश छ जसको मानलाई वà¥à¤¯à¤¾à¤–à¥à¤¯à¤¾ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨à¥¤"
-#: glib/gkeyfile.c:2827 glib/gkeyfile.c:2904
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr ""
-#: glib/gkeyfile.c:4306
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "कà¥à¤žà¥à¤œà¥€ फाइलमा पङà¥à¤—तिको अनà¥à¤¤à¥à¤¯à¤®à¤¾ निकास कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° समावेश छ।"
-#: glib/gkeyfile.c:4328
+#: glib/gkeyfile.c:4346
#, fuzzy, c-format
#| msgid "Key file contains invalid escape sequence '%s'"
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "कà¥à¤žà¥à¤œà¥€ फाइलमा अवैध निकास अनà¥à¤•à¥à¤°à¤® '%s' समावेस छ।"
-#: glib/gkeyfile.c:4472
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "मान '%s' लाई सङà¥à¤–à¥à¤¯à¤¾à¤•à¥‹ रूपमा वà¥à¤¯à¤¾à¤–à¥à¤¯à¤¾ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨"
-#: glib/gkeyfile.c:4486
+#: glib/gkeyfile.c:4505
#, fuzzy, c-format
#| msgid "Integer value '%s' out of range"
msgid "Integer value “%s†out of range"
-msgstr "विशेषता %s का लागि, इनà¥à¤Ÿà¤¿à¤œà¤° '%s' दायरा बाहिर छ"
+msgstr "दायरा बाहिरको मान ।\n"
-#: glib/gkeyfile.c:4519
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "मान \"%s\" लाई उतà¥à¤ªà¥à¤²à¤µà¤¾à¤¨ सङà¥à¤–à¥à¤¯à¤¾à¤•à¥‹ रूपमा वà¥à¤¯à¤¾à¤–à¥à¤¯à¤¾ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨à¥¤"
-#: glib/gkeyfile.c:4558
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "मान \"%s\" लाई बà¥à¤²à¤¿à¤¯à¤¨à¤•à¥‹ रूपमा वà¥à¤¯à¤¾à¤–à¥à¤¯à¤¾ गरà¥à¤¨ सकिà¤à¤¦à¥ˆà¤¨à¥¤"
@@ -5027,16 +5119,23 @@ msgid "Error on line %d: %s"
msgstr "लाइन %d मा तà¥à¤°à¥à¤Ÿà¤¿: %s"
#: glib/gmarkup.c:690
-#, fuzzy, c-format
-#| msgid "Failed to parse '%-.*s', which should have been a digit inside a character reference (&#234; for example) - perhaps the digit is too large"
-msgid "Failed to parse “%-.*sâ€, which should have been a digit inside a character reference (&#234; for example) — perhaps the digit is too large"
+#, c-format
+msgid ""
+"Failed to parse “%-.*sâ€, which should have been a digit inside a character reference (&#234; for example) — perhaps "
+"the digit is too large"
msgstr "'%-*s' पद वरà¥à¤£à¤¨ गरà¥à¤¨ सकिà¤à¤¨, जà¥à¤¨ à¤à¤‰à¤Ÿà¤¾ कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° सनà¥à¤¦à¤°à¥à¤­ (उदाहरणका लागि; &#234) हà¥à¤¨à¥ परà¥à¤¥à¥à¤¯à¥‹ - संभवत अङà¥à¤• जà¥à¤¯à¤¾à¤¦à¥ˆ ठूलो छ"
#: glib/gmarkup.c:702
#, fuzzy
-#| msgid "Character reference did not end with a semicolon; most likely you used an ampersand character without intending to start an entity - escape ampersand as &amp;"
-msgid "Character reference did not end with a semicolon; most likely you used an ampersand character without intending to start an entity — escape ampersand as &amp;"
-msgstr "कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° सनà¥à¤¦à¤°à¥à¤­ अरà¥à¤§à¤µà¤¿à¤°à¤¾à¤®à¤®à¤¾ सकिà¤à¤¨;तपाईà¤à¤²à¥‡ धेरैजसो à¤à¤®à¥à¤ªà¤°à¤¸à¥‡à¤£à¥à¤¡ कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤°à¤¬à¤¾à¤Ÿ à¤à¤‰à¤Ÿà¤¾ असà¥à¤¤à¤¿à¤¤à¥à¤µ सà¥à¤°à¥ गरà¥à¤¨à¤•à¤¾ लागि पà¥à¤°à¤¯à¤¾à¤¸ नगरिकन सà¥à¤°à¥ गरà¥à¤¨à¥à¤­à¤¯à¥‹ - &amp; को रूपमा à¤à¤®à¥à¤ªà¤°à¤¸à¥‡à¤‚नà¥à¤¡ निकास गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+#| msgid ""
+#| "Character reference did not end with a semicolon; most likely you used an ampersand character without intending "
+#| "to start an entity - escape ampersand as &amp;"
+msgid ""
+"Character reference did not end with a semicolon; most likely you used an ampersand character without intending to "
+"start an entity — escape ampersand as &amp;"
+msgstr ""
+"कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° सनà¥à¤¦à¤°à¥à¤­ अरà¥à¤§à¤µà¤¿à¤°à¤¾à¤®à¤®à¤¾ सकिà¤à¤¨;तपाईà¤à¤²à¥‡ धेरैजसो à¤à¤®à¥à¤ªà¤°à¤¸à¥‡à¤£à¥à¤¡ कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤°à¤¬à¤¾à¤Ÿ à¤à¤‰à¤Ÿà¤¾ असà¥à¤¤à¤¿à¤¤à¥à¤µ सà¥à¤°à¥ गरà¥à¤¨à¤•à¤¾ लागि पà¥à¤°à¤¯à¤¾à¤¸ नगरिकन सà¥à¤°à¥ गरà¥à¤¨à¥à¤­à¤¯à¥‹ - "
+"&amp; को रूपमा à¤à¤®à¥à¤ªà¤°à¤¸à¥‡à¤‚नà¥à¤¡ निकास गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: glib/gmarkup.c:728
#, fuzzy, c-format
@@ -5053,13 +5152,19 @@ msgstr "खाली असà¥à¤¤à¤¿à¤¤à¥à¤µ '&;' देखियो; वैध
#: glib/gmarkup.c:774
#, fuzzy, c-format
msgid "Entity name “%-.*s†is not known"
-msgstr "%s अब %s भà¤à¤•à¥‹ छ"
+msgstr "%s अहिले %s को रà¥à¤ªà¤®à¤¾ चिनिनà¥à¤›"
#: glib/gmarkup.c:779
#, fuzzy
-#| msgid "Entity did not end with a semicolon; most likely you used an ampersand character without intending to start an entity - escape ampersand as &amp;"
-msgid "Entity did not end with a semicolon; most likely you used an ampersand character without intending to start an entity — escape ampersand as &amp;"
-msgstr "असà¥à¤¤à¤¿à¤¤à¥à¤µ अरà¥à¤§à¤µà¤¿à¤°à¤¾à¤®à¤®à¤¾ सकिà¤à¤¨; तपाईà¤à¤²à¥‡ धेरैजसो à¤à¤®à¥à¤ªà¤°à¤¸à¥‡à¤£à¥à¤¡ कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤°à¤¬à¤¾à¤Ÿ à¤à¤‰à¤Ÿà¤¾ असà¥à¤¤à¤¿à¤¤à¥à¤µ सà¥à¤°à¥ गरà¥à¤¨à¤•à¥‹ लागि पà¥à¤°à¤¯à¤¾à¤¸ नगरिकन सà¥à¤°à¥ गरà¥à¤¨à¥à¤­à¤¯à¥‹ - &amp; को रूपमा à¤à¤®à¥à¤ªà¤°à¤¸à¥‡à¤‚नà¥à¤¡ निकास गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+#| msgid ""
+#| "Entity did not end with a semicolon; most likely you used an ampersand character without intending to start an "
+#| "entity - escape ampersand as &amp;"
+msgid ""
+"Entity did not end with a semicolon; most likely you used an ampersand character without intending to start an "
+"entity — escape ampersand as &amp;"
+msgstr ""
+"असà¥à¤¤à¤¿à¤¤à¥à¤µ अरà¥à¤§à¤µà¤¿à¤°à¤¾à¤®à¤®à¤¾ सकिà¤à¤¨; तपाईà¤à¤²à¥‡ धेरैजसो à¤à¤®à¥à¤ªà¤°à¤¸à¥‡à¤£à¥à¤¡ कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤°à¤¬à¤¾à¤Ÿ à¤à¤‰à¤Ÿà¤¾ असà¥à¤¤à¤¿à¤¤à¥à¤µ सà¥à¤°à¥ गरà¥à¤¨à¤•à¥‹ लागि पà¥à¤°à¤¯à¤¾à¤¸ नगरिकन सà¥à¤°à¥ गरà¥à¤¨à¥à¤­à¤¯à¥‹ - &amp; को "
+"रूपमा à¤à¤®à¥à¤ªà¤°à¤¸à¥‡à¤‚नà¥à¤¡ निकास गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#: glib/gmarkup.c:1193
msgid "Document must begin with an element (e.g. <book>)"
@@ -5069,7 +5174,7 @@ msgstr "कागजात à¤à¤‰à¤Ÿà¤¾ ततà¥à¤µ बाट सà¥à¤°à¥ हà
#, fuzzy, c-format
#| msgid "'%s' is not a valid character following a '<' character; it may not begin an element name"
msgid "“%s†is not a valid character following a “<†character; it may not begin an element name"
-msgstr "à¤à¤‰à¤Ÿà¤¾ '<' कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° पछà¥à¤¯à¤¾à¤‰à¤¨ '%s' वैधानिक कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° होइन; यसà¥à¤²à¥‡ à¤à¤‰à¤Ÿà¤¾ ततà¥à¤µ नाम पà¥à¤°à¤¾à¤°à¤®à¥à¤­ नगरà¥à¤¨ सकà¥à¤›"
+msgstr "\"%s\" वरà¥à¤£à¤¹à¤°à¥‚ \"</\" पछà¥à¤¯à¤¾à¤‰à¤¨à¥‡ वैध वरà¥à¤£ होइन; \"%s\" ततà¥à¤µ नाम सà¥à¤°à¥ गरà¥à¤¨ सकà¥à¤¦à¥ˆà¤¨"
#: glib/gmarkup.c:1276
#, fuzzy, c-format
@@ -5089,27 +5194,37 @@ msgstr "विजोड कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° '%s' ले,'%s' ततà¥
#: glib/gmarkup.c:1408
#, fuzzy, c-format
-#| msgid "Odd character '%s', expected a '>' or '/' character to end the start tag of element '%s', or optionally an attribute; perhaps you used an invalid character in an attribute name"
-msgid "Odd character “%sâ€, expected a “>†or “/†character to end the start tag of element “%sâ€, or optionally an attribute; perhaps you used an invalid character in an attribute name"
-msgstr "बिजोड कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° '%s', ततà¥à¤µ '%s' को सà¥à¤°à¥ टà¥à¤¯à¤¾à¤— अनà¥à¤¤à¥à¤¯ गरà¥à¤¨à¤²à¤¾à¤ˆ अपेकà¥à¤·à¤¾ गरिà¤à¤•à¥‹ à¤à¤‰à¤Ÿà¤¾ '>' वा '/' कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤°, वा वैकलà¥à¤ªà¤¿à¤• रूपमा à¤à¤‰à¤Ÿà¤¾ विशेषता ,सायद तपाईà¤à¤²à¥‡ à¤à¤‰à¤Ÿà¤¾ विशेषता नाममा अवैध कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¨à¥à¤­à¤¯à¥‹"
+#| msgid ""
+#| "Odd character '%s', expected a '>' or '/' character to end the start tag of element '%s', or optionally an "
+#| "attribute; perhaps you used an invalid character in an attribute name"
+msgid ""
+"Odd character “%sâ€, expected a “>†or “/†character to end the start tag of element “%sâ€, or optionally an "
+"attribute; perhaps you used an invalid character in an attribute name"
+msgstr ""
+"बिजोड कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° '%s', ततà¥à¤µ '%s' को सà¥à¤°à¥ टà¥à¤¯à¤¾à¤— अनà¥à¤¤à¥à¤¯ गरà¥à¤¨à¤²à¤¾à¤ˆ अपेकà¥à¤·à¤¾ गरिà¤à¤•à¥‹ à¤à¤‰à¤Ÿà¤¾ '>' वा '/' कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤°, वा वैकलà¥à¤ªà¤¿à¤• रूपमा à¤à¤‰à¤Ÿà¤¾ "
+"विशेषता ,सायद तपाईà¤à¤²à¥‡ à¤à¤‰à¤Ÿà¤¾ विशेषता नाममा अवैध कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° पà¥à¤°à¤¯à¥‹à¤— गरà¥à¤¨à¥à¤­à¤¯à¥‹"
#: glib/gmarkup.c:1453
#, fuzzy, c-format
-#| msgid "Odd character '%s', expected an open quote mark after the equals sign when giving value for attribute '%s' of element '%s'"
-msgid "Odd character “%sâ€, expected an open quote mark after the equals sign when giving value for attribute “%s†of element “%sâ€"
-msgstr "बिजोड कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° '%s',ततà¥à¤µ '%s' को '%s' विशेषताका लागि मान दिइà¤à¤•à¥‹ बेला बराबर चिनà¥à¤¹ पछि खà¥à¤²à¤¾ उदà¥à¤§à¤°à¤£ चिनà¥à¤¹à¤•à¥‹ अपेकà¥à¤·à¤¾ गरेको हà¥à¤¨à¥à¤›à¥¤"
+#| msgid ""
+#| "Odd character '%s', expected an open quote mark after the equals sign when giving value for attribute '%s' of "
+#| "element '%s'"
+msgid ""
+"Odd character “%sâ€, expected an open quote mark after the equals sign when giving value for attribute “%s†of "
+"element “%sâ€"
+msgstr ""
+"बिजोड कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° '%s',ततà¥à¤µ '%s' को '%s' विशेषताका लागि मान दिइà¤à¤•à¥‹ बेला बराबर चिनà¥à¤¹ पछि खà¥à¤²à¤¾ उदà¥à¤§à¤°à¤£ चिनà¥à¤¹à¤•à¥‹ अपेकà¥à¤·à¤¾ गरेको हà¥à¤¨à¥à¤›à¥¤"
#: glib/gmarkup.c:1587
-#, fuzzy, c-format
-#| msgid "'%s' is not a valid character following the characters '</'; '%s' may not begin an element name"
+#, c-format
msgid "“%s†is not a valid character following the characters “</â€; “%s†may not begin an element name"
-msgstr "'%s' à¤à¤‰à¤Ÿà¤¾ वैध कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° होइन निमà¥à¤¨ कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤°à¤¹à¤°à¥‚ '</'; '%s' à¤à¤‰à¤Ÿà¤¾ ततà¥à¤µ नाम पà¥à¤°à¤¾à¤°à¤®à¥à¤­ नगरà¥à¤¨ सकà¥à¤›à¤¨"
+msgstr "\"%s\" वरà¥à¤£à¤¹à¤°à¥‚ \"</\" पछà¥à¤¯à¤¾à¤‰à¤¨à¥‡ वैध वरà¥à¤£ होइन; \"%s\" ततà¥à¤µ नाम सà¥à¤°à¥ गरà¥à¤¨ सकà¥à¤¦à¥ˆà¤¨"
#: glib/gmarkup.c:1625
#, fuzzy, c-format
#| msgid "'%s' is not a valid character following the close element name '%s'; the allowed character is '>'"
msgid "“%s†is not a valid character following the close element name “%sâ€; the allowed character is “>â€"
-msgstr "बनà¥à¤¦ ततà¥à¤µ नाम '%s' को पछि लागà¥à¤¨à¥‡ '%s' मानà¥à¤¯ कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° होइन; अनà¥à¤®à¤¤à¤¿ पाà¤à¤•à¥‹ कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° '>' हो।"
+msgstr "\"%s\" वरà¥à¤£à¤¹à¤°à¥‚ \"</\" पछà¥à¤¯à¤¾à¤‰à¤¨à¥‡ वैध वरà¥à¤£ होइन; \"%s\" ततà¥à¤µ नाम सà¥à¤°à¥ गरà¥à¤¨ सकà¥à¤¦à¥ˆà¤¨"
#: glib/gmarkup.c:1637
#, fuzzy, c-format
@@ -5134,10 +5249,9 @@ msgid "Document ended unexpectedly just after an open angle bracket “<â€"
msgstr "à¤à¤‰à¤Ÿà¤¾ खà¥à¤²à¥à¤²à¤¾ कोण कोषà¥à¤  पछि '<' कागजात अनपेकà¥à¤·à¤¿à¤¤ रूपले समापà¥à¤¤ भयो।"
#: glib/gmarkup.c:1821 glib/gmarkup.c:1866
-#, fuzzy, c-format
-#| msgid "Document ended unexpectedly with elements still open - '%s' was the last element opened"
+#, c-format
msgid "Document ended unexpectedly with elements still open — “%s†was the last element opened"
-msgstr "'%s' खोलिà¤à¤•à¥‹ अनà¥à¤¤à¤¿à¤® ततà¥à¤µ संगकागजात अपà¥à¤°à¤¤à¥à¤¯à¤¾à¤¶à¤¿à¤¤ रूपले समापà¥à¤¤ भयो।"
+msgstr "कागजात अनपेकà¥à¤·à¤¿à¤¤ रूपले समापà¥à¤¤ भयो र ततà¥à¤µà¤¹à¤°à¥‚ अà¤à¥ˆ खà¥à¤²à¤¾ छनॠ— \"%s\" खोलिà¤à¤•à¥‹ अनà¥à¤¤à¤¿à¤® ततà¥à¤µ थियो"
#: glib/gmarkup.c:1829
#, c-format
@@ -5181,7 +5295,6 @@ msgid "Document ended unexpectedly inside a comment or processing instruction"
msgstr "à¤à¤‰à¤Ÿà¤¾ टिपà¥à¤ªà¤£à¥€ वा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ निरà¥à¤¦à¥‡à¤¶à¤¨ भितà¥à¤° कागजपतà¥à¤° अपà¥à¤°à¤¤à¥à¤¯à¤¾à¤¶à¤¿à¤¤ रूपले समापà¥à¤¤ भयो"
#: glib/goption.c:873
-#| msgid "[OPTION...]"
msgid "[OPTION…]"
msgstr "[विकलà¥à¤ªâ€¦]"
@@ -5236,593 +5349,596 @@ msgstr "“%s†को मान दायरा बाहिर भयो"
msgid "Error parsing option %s"
msgstr "पद वरà¥à¤£à¤¨ विकलà¥à¤ªà¤®à¤¾ तà¥à¤°à¥à¤Ÿà¤¿ %s"
-#: glib/goption.c:1570 glib/goption.c:1683
+#: glib/goption.c:1561 glib/goption.c:1674
#, c-format
msgid "Missing argument for %s"
msgstr "%s का छà¥à¤Ÿà¥‡à¤•à¥‹ तरà¥à¤•"
-#: glib/goption.c:2194
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "अजà¥à¤žà¤¾à¤¤ विकलà¥à¤ª %s"
-#: glib/gregex.c:257
+#: glib/gregex.c:255
msgid "corrupted object"
msgstr "दूषित वसà¥à¤¤à¥"
-#: glib/gregex.c:259
+#: glib/gregex.c:257
#, fuzzy
msgid "internal error or corrupted object"
msgstr "दूषित वसà¥à¤¤à¥"
-#: glib/gregex.c:261
+#: glib/gregex.c:259
msgid "out of memory"
msgstr "सà¥à¤®à¥ƒà¤¤à¥€ भनà¥à¤¦à¤¾ बाहिर"
-#: glib/gregex.c:266
-#, fuzzy
+#: glib/gregex.c:264
msgid "backtracking limit reached"
-msgstr "यसमा सिमित: "
+msgstr "बà¥à¤¯à¤¾à¤•à¤Ÿà¥à¤°à¥à¤¯à¤¾à¤•à¤¿à¤™ सिमा पà¥à¤—à¥à¤¯à¥‹"
-#: glib/gregex.c:278 glib/gregex.c:286
+#: glib/gregex.c:276 glib/gregex.c:284
msgid "the pattern contains items not supported for partial matching"
msgstr ""
-#: glib/gregex.c:280
+#: glib/gregex.c:278
msgid "internal error"
msgstr "आनà¥à¤¤à¤°à¤¿à¤• तà¥à¤°à¥à¤Ÿà¤¿"
-#: glib/gregex.c:288
+#: glib/gregex.c:286
msgid "back references as conditions are not supported for partial matching"
msgstr "पछिलà¥à¤²à¥‹ सनà¥à¤¦à¤°à¥à¤­ लान आंशिक मिलान शरà¥à¤¤ समरà¥à¤¥à¤¿à¤¤ छैन"
-#: glib/gregex.c:297
-#, fuzzy
+#: glib/gregex.c:295
msgid "recursion limit reached"
-msgstr "यसमा सिमित: "
+msgstr "पà¥à¤¨à¤°à¤¾à¤µà¥ƒà¤¤à¥à¤¤à¤¿ सीमा पà¥à¤—à¥à¤¯à¥‹"
-#: glib/gregex.c:299
+#: glib/gregex.c:297
msgid "invalid combination of newline flags"
msgstr "नयाठपङà¥à¤•à¥à¤¤à¤¿ à¤à¤£à¥à¤¡à¤¾à¤•à¥‹ अवैध संयोजन"
-#: glib/gregex.c:301
-#, fuzzy
+#: glib/gregex.c:299
msgid "bad offset"
-msgstr "खराब"
+msgstr "खराब अफसेट"
-#: glib/gregex.c:303
-#, fuzzy
+#: glib/gregex.c:301
msgid "short utf8"
-msgstr "'UTF8'"
+msgstr "छोटो utf8"
-#: glib/gregex.c:305
+#: glib/gregex.c:303
#, fuzzy
msgid "recursion loop"
msgstr "लूप"
-#: glib/gregex.c:309
+#: glib/gregex.c:307
msgid "unknown error"
msgstr "अजà¥à¤žà¤¾à¤¤ तà¥à¤°à¥à¤Ÿà¤¿"
-#: glib/gregex.c:329
+#: glib/gregex.c:327
#, fuzzy
msgid "\\ at end of pattern"
-msgstr "बानà¥à¤•à¥€:"
+msgstr "बाà¤à¤¨à¥à¤•à¥€:"
-#: glib/gregex.c:332
+#: glib/gregex.c:330
#, fuzzy
msgid "\\c at end of pattern"
-msgstr "बानà¥à¤•à¥€:"
+msgstr "बाà¤à¤¨à¥à¤•à¥€:"
-#: glib/gregex.c:335
+#: glib/gregex.c:333
msgid "unrecognized character following \\"
msgstr "अपरिचित वरà¥à¤£ \\ पछि"
-#: glib/gregex.c:338
+#: glib/gregex.c:336
+#, fuzzy
msgid "numbers out of order in {} quantifier"
-msgstr ""
+msgstr "कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° वरà¥à¤—मा कà¥à¤°à¤® बाहिर को दायरा"
-#: glib/gregex.c:341
+#: glib/gregex.c:339
#, fuzzy
msgid "number too big in {} quantifier"
msgstr "अङà¥à¤• निकै ठूलो"
-#: glib/gregex.c:344
+#: glib/gregex.c:342
msgid "missing terminating ] for character class"
msgstr "वरà¥à¤£ वरà¥à¤— को अनà¥à¤¤à¥à¤¯ ] छà¥à¤Ÿà¥‡à¤•à¥‹ छ"
-#: glib/gregex.c:347
-#, fuzzy
+#: glib/gregex.c:345
msgid "invalid escape sequence in character class"
-msgstr "URI मा अवैध कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° अनà¥à¤•à¥à¤°à¤®"
+msgstr "वरà¥à¤£ वरà¥à¤—मा अवैध इसà¥à¤•à¥‡à¤ª अनà¥à¤•à¥à¤°à¤®"
-#: glib/gregex.c:350
-#, fuzzy
+#: glib/gregex.c:348
msgid "range out of order in character class"
-msgstr "UTF-16 का लागि कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° दायरा भनà¥à¤¦à¤¾ बाहिर छ"
+msgstr "कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° वरà¥à¤—मा कà¥à¤°à¤® बाहिर को दायरा"
-#: glib/gregex.c:353
+#: glib/gregex.c:351
msgid "nothing to repeat"
msgstr "दोहोरà¥à¤¯à¤¾à¤‰à¤¨à¤•à¤¾ लागि केही छैन"
-#: glib/gregex.c:357
+#: glib/gregex.c:355
#, fuzzy
msgid "unexpected repeat"
msgstr "नदोहो-याउनà¥"
-#: glib/gregex.c:360
+#: glib/gregex.c:358
msgid "unrecognized character after (? or (?-"
msgstr "अपरिचित वरà¥à¤£ पछि (? वा (?-"
-#: glib/gregex.c:363
+#: glib/gregex.c:361
msgid "POSIX named classes are supported only within a class"
msgstr ""
-#: glib/gregex.c:366
+#: glib/gregex.c:364
msgid "missing terminating )"
msgstr "अनà¥à¤¤à¥à¤¯à¤•à¥‹ ) छà¥à¤Ÿà¥‡à¤•à¥‹ छ"
-#: glib/gregex.c:369
+#: glib/gregex.c:367
#, fuzzy
msgid "reference to non-existent subpattern"
msgstr "अ-सनà¥à¤¦à¤°à¥à¤­à¤•à¥‹ फरक !"
-#: glib/gregex.c:372
+#: glib/gregex.c:370
msgid "missing ) after comment"
msgstr "टिपà¥à¤ªà¤£à¥€ पछि ) हराइरहेको छ"
-#: glib/gregex.c:375
+#: glib/gregex.c:373
#, fuzzy
msgid "regular expression is too large"
-msgstr "नियमित अभिवà¥à¤¯à¤•à¥à¤¤à¤¿à¤•à¥‹ रूपमा जोडा मिलाउनà¥à¤¹à¥‹à¤¸à¥"
+msgstr "खराब नियमित अभिवà¥à¤¯à¤•à¥à¤¤à¤¿ “{0}â€."
-#: glib/gregex.c:378
+#: glib/gregex.c:376
msgid "failed to get memory"
msgstr "सà¥à¤®à¥ƒà¤¤à¤¿ पाउन असफल"
-#: glib/gregex.c:382
+#: glib/gregex.c:380
msgid ") without opening ("
msgstr ") बिना खà¥à¤²à¥à¤¦à¥ˆà¤› ("
-#: glib/gregex.c:386
+#: glib/gregex.c:384
msgid "code overflow"
msgstr "सङà¥à¤•à¥‡à¤¤ अतिपà¥à¤°à¤µà¤¾à¤¹"
-#: glib/gregex.c:390
+#: glib/gregex.c:388
msgid "unrecognized character after (?<"
msgstr "अजà¥à¤žà¤¾à¤¤ वरà¥à¤£ पछि (?<"
-#: glib/gregex.c:393
+#: glib/gregex.c:391
msgid "lookbehind assertion is not fixed length"
msgstr ""
-#: glib/gregex.c:396
+#: glib/gregex.c:394
#, fuzzy
msgid "malformed number or name after (?("
msgstr "विकृत संसà¥à¤•à¤°à¤£ सङà¥à¤–à¥à¤¯à¤¾: %s"
-#: glib/gregex.c:399
+#: glib/gregex.c:397
msgid "conditional group contains more than two branches"
msgstr "ससरà¥à¤¤ समूहले दà¥à¤ˆ भनà¥à¤¦à¤¾ बढी शाखा समाविषà¥à¤Ÿ गरà¥à¤¦à¤›"
-#: glib/gregex.c:402
+#: glib/gregex.c:400
msgid "assertion expected after (?("
msgstr "(?( पछि दाबी अपेकà¥à¤·à¤¿à¤¤"
#. translators: '(?R' and '(?[+-]digits' are both meant as (groups of)
#. * sequences here, '(?-54' would be an example for the second group.
#.
-#: glib/gregex.c:409
+#: glib/gregex.c:407
#, fuzzy
msgid "(?R or (?[+-]digits must be followed by )"
msgstr "फाà¤à¤Ÿ नाम `%.*s' विरामचिनà¥à¤¹ दà¥à¤§à¤¾à¤°à¤¾ साथ दिनॠपरà¥à¤›"
-#: glib/gregex.c:412
+#: glib/gregex.c:410
#, fuzzy
msgid "unknown POSIX class name"
msgstr "वरà¥à¤— नाम %s का लागि कà¥à¤¨à¥ˆ पà¥à¤°à¤•à¤¾à¤° छैन"
-#: glib/gregex.c:415
-#, fuzzy
+#: glib/gregex.c:413
msgid "POSIX collating elements are not supported"
-msgstr "सांकेतिक समà¥à¤¬à¤¨à¥à¤§ समरà¥à¤¥à¤¨ गरिà¤à¤¨"
+msgstr "POSIX कोलà¥à¤¯à¤¾à¤Ÿà¤¿à¤™ ततà¥à¤µà¤¹à¤°à¥‚ समरà¥à¤¥à¤¿à¤¤ छैननà¥"
-#: glib/gregex.c:418
+#: glib/gregex.c:416
#, fuzzy
msgid "character value in \\x{...} sequence is too large"
msgstr "\\u.... मा कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° मान अनà¥à¤•à¥à¤°à¤® धेरै ठूलो छ"
-#: glib/gregex.c:421
+#: glib/gregex.c:419
msgid "invalid condition (?(0)"
msgstr "अवैध अवसà¥à¤¥à¤¾ (?(0)"
-#: glib/gregex.c:424
+#: glib/gregex.c:422
msgid "\\C not allowed in lookbehind assertion"
msgstr ""
-#: glib/gregex.c:431
+#: glib/gregex.c:429
msgid "escapes \\L, \\l, \\N{name}, \\U, and \\u are not supported"
msgstr "escapes \\L,\\l, \\N{name}, \\U, र \\u समरà¥à¤¥à¤¿à¤¤ छैन"
-#: glib/gregex.c:434
+#: glib/gregex.c:432
msgid "recursive call could loop indefinitely"
msgstr ""
-#: glib/gregex.c:438
+#: glib/gregex.c:436
msgid "unrecognized character after (?P"
msgstr "अजà¥à¤žà¤¾à¤¤ वरà¥à¤£ पछि (? पी"
-#: glib/gregex.c:441
+#: glib/gregex.c:439
msgid "missing terminator in subpattern name"
msgstr "उपपटà¥à¤Ÿà¤¿à¤•à¥‹ नाममा छà¥à¤Ÿà¥‡à¤•à¥‹ टरà¥à¤®à¤¿à¤¨à¥‡à¤Ÿà¤°"
-#: glib/gregex.c:444
+#: glib/gregex.c:442
msgid "two named subpatterns have the same name"
msgstr ""
-#: glib/gregex.c:447
+#: glib/gregex.c:445
#, fuzzy
msgid "malformed \\P or \\p sequence"
-msgstr "पà¥à¤²à¤—इन"
+msgstr "टà¥à¤¯à¤¾à¤¬ पिन गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
-#: glib/gregex.c:450
+#: glib/gregex.c:448
msgid "unknown property name after \\P or \\p"
msgstr ""
-#: glib/gregex.c:453
+#: glib/gregex.c:451
msgid "subpattern name is too long (maximum 32 characters)"
msgstr ""
-#: glib/gregex.c:456
+#: glib/gregex.c:454
msgid "too many named subpatterns (maximum 10,000)"
msgstr ""
-#: glib/gregex.c:459
+#: glib/gregex.c:457
#, fuzzy
msgid "octal value is greater than \\377"
msgstr "अधिकà¥à¤¤à¤® मान नà¥à¤¯à¥‚नतम मान भनà¥à¤¦à¤¾ ठूलो हà¥à¤¨à¥à¤ªà¤°à¥à¤› ।\n"
-#: glib/gregex.c:463
+#: glib/gregex.c:461
#, fuzzy
msgid "overran compiling workspace"
-msgstr ""
-"कमà¥à¤ªà¤¾à¤‡à¤² गरेको बेलामा %s\n"
-"तà¥à¤°à¥à¤Ÿà¤¿: %s"
+msgstr "कारà¥à¤¯à¤¸à¥à¤¥à¤²"
-#: glib/gregex.c:467
+#: glib/gregex.c:465
msgid "previously-checked referenced subpattern not found"
msgstr ""
-#: glib/gregex.c:470
+#: glib/gregex.c:468
msgid "DEFINE group contains more than one branch"
msgstr "परिभाषित समूहले à¤à¤• भनà¥à¤¦à¤¾ बढी शाखा समाविषà¥à¤Ÿ गरà¥à¤¦à¤›"
-#: glib/gregex.c:473
+#: glib/gregex.c:471
#, fuzzy
msgid "inconsistent NEWLINE options"
-msgstr "नयाठपङà¥à¤¤à¤¿"
+msgstr "परसà¥à¤ªà¤°à¤¬à¤¿à¤°à¥‹à¤§à¤¿"
-#: glib/gregex.c:476
+#: glib/gregex.c:474
msgid "\\g is not followed by a braced, angle-bracketed, or quoted name or number, or by a plain number"
msgstr ""
-#: glib/gregex.c:480
+#: glib/gregex.c:478
msgid "a numbered reference must not be zero"
msgstr "à¤à¤‰à¤Ÿà¤¾ कà¥à¤°à¤®à¤¾à¤™à¥à¤•à¤¿à¤¤ सनà¥à¤¦à¤°à¥à¤­ शूनà¥à¤¯ हà¥à¤¨à¥ हà¥à¤¦à¥ˆà¤¨"
-#: glib/gregex.c:483
+#: glib/gregex.c:481
msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
msgstr ""
-#: glib/gregex.c:486
+#: glib/gregex.c:484
msgid "(*VERB) not recognized"
msgstr "(*कà¥à¤°à¤¿à¤¯à¤¾) पहिचान गरिà¤à¤•à¥‹ छैन"
-#: glib/gregex.c:489
+#: glib/gregex.c:487
msgid "number is too big"
msgstr "अङà¥à¤• निकै ठूलो"
-#: glib/gregex.c:492
+#: glib/gregex.c:490
msgid "missing subpattern name after (?&"
msgstr "(?& पछि उपबाà¤à¤¨à¥à¤•à¥€ नाम हराइरहेको छ"
-#: glib/gregex.c:495
+#: glib/gregex.c:493
msgid "digit expected after (?+"
msgstr "(?+ पछि अङà¥à¤• अपेकà¥à¤·à¤¿à¤¤"
-#: glib/gregex.c:498
+#: glib/gregex.c:496
msgid "] is an invalid data character in JavaScript compatibility mode"
msgstr ""
-#: glib/gregex.c:501
+#: glib/gregex.c:499
msgid "different names for subpatterns of the same number are not allowed"
msgstr "उसà¥à¤¤à¥ˆ नमà¥à¤¬à¤°à¤•à¥‹ उपबाà¤à¤¨à¥à¤•à¥€à¤¹à¤°à¥‚का लागि फरक नामहरू अनà¥à¤®à¤¤à¤¿ दिइà¤à¤•à¥‹ छैन"
-#: glib/gregex.c:504
+#: glib/gregex.c:502
msgid "(*MARK) must have an argument"
msgstr "(* मारà¥à¤•) तरà¥à¤• हà¥à¤¨à¥ परà¥à¤¦à¤›"
-#: glib/gregex.c:507
+#: glib/gregex.c:505
#, fuzzy
msgid "\\c must be followed by an ASCII character"
msgstr "मà¥à¤² नोड पछि अवैध वरà¥à¤£ “%câ€"
-#: glib/gregex.c:510
+#: glib/gregex.c:508
msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
msgstr ""
-#: glib/gregex.c:513
-#, fuzzy
+#: glib/gregex.c:511
msgid "\\N is not supported in a class"
-msgstr "वरà¥à¤—"
+msgstr "\\N à¤à¤‰à¤Ÿà¤¾ वरà¥à¤—मा समरà¥à¤¥à¤¿à¤¤ छैन"
-#: glib/gregex.c:516
+#: glib/gregex.c:514
msgid "too many forward references"
msgstr "अति धेरै अगाडीको सनà¥à¤¦à¤°à¥à¤­"
-#: glib/gregex.c:519
+#: glib/gregex.c:517
msgid "name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)"
msgstr ""
-#: glib/gregex.c:522
+#: glib/gregex.c:520
msgid "character value in \\u.... sequence is too large"
msgstr "\\u.... मा कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° मान अनà¥à¤•à¥à¤°à¤® धेरै ठूलो छ"
-#: glib/gregex.c:745 glib/gregex.c:1983
+#: glib/gregex.c:743 glib/gregex.c:1988
#, fuzzy, c-format
msgid "Error while matching regular expression %s: %s"
msgstr "नियमित अभिवà¥à¤¯à¤•à¥à¤¤à¤¿ कमà¥à¤ªà¤¾à¤‡à¤² गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿ \"%s\" ।"
-#: glib/gregex.c:1316
+#: glib/gregex.c:1321
msgid "PCRE library is compiled without UTF8 support"
msgstr ""
-#: glib/gregex.c:1320
+#: glib/gregex.c:1325
msgid "PCRE library is compiled without UTF8 properties support"
msgstr ""
-#: glib/gregex.c:1328
+#: glib/gregex.c:1333
msgid "PCRE library is compiled with incompatible options"
msgstr ""
-#: glib/gregex.c:1357
+#: glib/gregex.c:1362
#, fuzzy, c-format
msgid "Error while optimizing regular expression %s: %s"
msgstr "नियमित अभिवà¥à¤¯à¤•à¥à¤¤à¤¿ कमà¥à¤ªà¤¾à¤‡à¤² गरà¥à¤¦à¤¾ तà¥à¤°à¥à¤Ÿà¤¿ \"%s\" ।"
-#: glib/gregex.c:1437
+#: glib/gregex.c:1442
#, fuzzy, c-format
msgid "Error while compiling regular expression %s at char %d: %s"
msgstr "लाइन %d कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° %d मा तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: glib/gregex.c:2419
+#: glib/gregex.c:2427
#, fuzzy
msgid "hexadecimal digit or “}†expected"
msgstr "(?+ पछि अङà¥à¤• अपेकà¥à¤·à¤¿à¤¤"
-#: glib/gregex.c:2435
+#: glib/gregex.c:2443
#, fuzzy
msgid "hexadecimal digit expected"
msgstr "(?+ पछि अङà¥à¤• अपेकà¥à¤·à¤¿à¤¤"
-#: glib/gregex.c:2475
+#: glib/gregex.c:2483
msgid "missing “<†in symbolic reference"
msgstr "पà¥à¤°à¤¤à¥€à¤•à¤¾à¤¤à¥à¤®à¤• सनà¥à¤¦à¤°à¥à¤­à¤®à¤¾ \"<\" छà¥à¤Ÿà¥‡à¤•à¥‹ छ"
-#: glib/gregex.c:2484
+#: glib/gregex.c:2492
msgid "unfinished symbolic reference"
msgstr "अधूरो पà¥à¤°à¤¤à¥€à¤•à¤¾à¤¤à¥à¤®à¤• सनà¥à¤¦à¤°à¥à¤­"
-#: glib/gregex.c:2491
+#: glib/gregex.c:2499
msgid "zero-length symbolic reference"
msgstr "शूनà¥à¤¯ लमà¥à¤¬à¤¾à¤‡à¤•à¥‹ सांकेतिक सनà¥à¤¦à¤°à¥à¤­"
-#: glib/gregex.c:2502
+#: glib/gregex.c:2510
msgid "digit expected"
msgstr "अङà¥à¤• अपेकà¥à¤·à¤¿à¤¤"
-#: glib/gregex.c:2520
+#: glib/gregex.c:2528
msgid "illegal symbolic reference"
msgstr "अवैध पà¥à¤°à¤¤à¥€à¤•à¤¾à¤¤à¥à¤®à¤• सनà¥à¤¦à¤°à¥à¤­"
-#: glib/gregex.c:2583
+#: glib/gregex.c:2591
#, fuzzy
msgid "stray final “\\â€"
-msgstr "अनà¥à¤¤à¤¿à¤® हो"
+msgstr "अनà¥à¤¤à¤¿à¤®"
-#: glib/gregex.c:2587
+#: glib/gregex.c:2595
msgid "unknown escape sequence"
msgstr "अजà¥à¤žà¤¾à¤¤ इसà¥à¤•à¥‡à¤ª अनà¥à¤•à¥à¤°à¤®"
-#: glib/gregex.c:2597
+#: glib/gregex.c:2605
#, fuzzy, c-format
msgid "Error while parsing replacement text “%s†at char %lu: %s"
msgstr "लाइन %d कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° %d मा तà¥à¤°à¥à¤Ÿà¤¿: %s"
-#: glib/gshell.c:94
+#: glib/gshell.c:96
#, fuzzy
#| msgid "Quoted text doesn't begin with a quotation mark"
msgid "Quoted text doesn’t begin with a quotation mark"
msgstr "उदà¥à¤§à¤°à¤£ गरिà¤à¤•à¥‹ पाठ उदà¥à¤§à¤°à¤£ चिनà¥à¤¹ बाट सà¥à¤°à¥ हà¥à¤à¤¦à¥ˆà¤¨"
-#: glib/gshell.c:184
+#: glib/gshell.c:186
msgid "Unmatched quotation mark in command line or other shell-quoted text"
msgstr "आदेश रेखामा वा अरू कवच-उदà¥à¤§à¤°à¤£ गरिà¤à¤•à¥‹ पाठमा नमिलेको उदà¥à¤§à¤°à¤£ चिनà¥à¤¹"
-#: glib/gshell.c:580
+#: glib/gshell.c:592
#, fuzzy, c-format
#| msgid "Text ended just after a '\\' character. (The text was '%s')"
msgid "Text ended just after a “\\†character. (The text was “%sâ€)"
msgstr "पाठ चाà¤à¤¹à¥€ '\\' कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° पछि मातà¥à¤° समापà¥à¤¤ भयो। (पाठ '%s' थियो)"
-#: glib/gshell.c:587
+#: glib/gshell.c:599
#, fuzzy, c-format
#| msgid "Text ended before matching quote was found for %c. (The text was '%s')"
msgid "Text ended before matching quote was found for %c. (The text was “%sâ€)"
msgstr "%c का लागि मिलà¥à¤¨à¥‡ उदà¥à¤§à¤°à¤£ फेला परà¥à¤¨à¥ अगाडि पाठ समापà¥à¤¤ भयो। (पाठ '%s' थियो)"
-#: glib/gshell.c:599
+#: glib/gshell.c:611
msgid "Text was empty (or contained only whitespace)"
msgstr "पाठ खाली थियो (वा सेतो खाली सà¥à¤¥à¤¾à¤¨ मातà¥à¤° समावेश थियो)"
-#: glib/gspawn.c:318
+#: glib/gspawn.c:310
#, c-format
msgid "Failed to read data from child process (%s)"
msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ (%s) बाट डेटा पढà¥à¤¨ असफल"
-#: glib/gspawn.c:465
+#: glib/gspawn.c:462
#, fuzzy, c-format
#| msgid "Unexpected error in select() reading data from a child process (%s)"
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾à¤¬à¤¾à¤Ÿ डेटा पढà¥à¤¦à¤¾ g_io_channel_win32_poll() अनपेकà¥à¤·à¤¿à¤¤ तà¥à¤°à¥à¤Ÿà¤¿"
-#: glib/gspawn.c:550
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "waitpid() (%s) मा अनपेकà¥à¤·à¤¿à¤¤ तà¥à¤°à¥à¤Ÿà¤¿"
-#: glib/gspawn.c:1154 glib/gspawn-win32.c:1383
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ सङà¥à¤•à¥‡à¤¤ %ld सà¤à¤— बाहिरियो"
-#: glib/gspawn.c:1162
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ %ld सङà¥à¤•à¥‡à¤¤à¤¦à¥à¤µà¤¾à¤°à¤¾ मारियो"
-#: glib/gspawn.c:1169
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ %ld सङà¥à¤•à¥‡à¤¤à¤¦à¥à¤µà¤¾à¤°à¤¾ रोकियो"
-#: glib/gspawn.c:1176
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ असामानà¥à¤¯ तरिकाले अनà¥à¤¤à¥à¤¯ भयो"
-#: glib/gspawn.c:1767 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ (%s)बाट पढà¥à¤¨ असफल"
-#: glib/gspawn.c:2069
+#: glib/gspawn.c:2253
#, fuzzy, c-format
#| msgid "Failed to execute child process \"%s\" (%s)"
msgid "Failed to spawn child process “%s†(%s)"
-msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ \"%s\" कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¨ असफल भयो: "
+msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ (%s) कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¨ असफल"
-#: glib/gspawn.c:2186
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "(%s) फोरà¥à¤• गरà¥à¤¨ असफल"
-#: glib/gspawn.c:2346 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, fuzzy, c-format
#| msgid "Failed to change to directory '%s' (%s)"
msgid "Failed to change to directory “%s†(%s)"
-msgstr "निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾ \"%s\" मा परिवरà¥à¤¤à¤¨ गरà¥à¤¨ असफल भयो: %s"
+msgstr "समà¥à¤ªà¤°à¥à¤•à¤•à¥‹ उपनाम परिवरà¥à¤¤à¤¨ गरà¥à¤¨ असफल भयो:%s"
-#: glib/gspawn.c:2356
+#: glib/gspawn.c:2540
#, fuzzy, c-format
#| msgid "Failed to execute child process \"%s\" (%s)"
msgid "Failed to execute child process “%s†(%s)"
-msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ \"%s\" कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¨ असफल भयो: "
+msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ (%s) कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¨ असफल"
-#: glib/gspawn.c:2366
-#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
+#: glib/gspawn.c:2550
+#, fuzzy, c-format
+#| msgid "Failed to open file '%s': open() failed: %s"
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "कारà¥à¤¯ फाइल %s: %s fdopen() गरà¥à¤¨ असफल"
+
+#: glib/gspawn.c:2558
+#, fuzzy, c-format
+#| msgid "Failed to redirect output or input of child process (%s)"
+msgid "Failed to duplicate file descriptor for child process (%s)"
msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ (%s) को निरà¥à¤—त वा आगत पà¥à¤¨:निरà¥à¤¦à¥‡à¤¶à¤¿à¤¨ गरà¥à¤¨ असफल"
-#: glib/gspawn.c:2375
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ (%s) फोरà¥à¤• गरà¥à¤¨ असफल"
-#: glib/gspawn.c:2383
+#: glib/gspawn.c:2575
+#, fuzzy, c-format
+#| msgid "Failed to read data from child process (%s)"
+msgid "Failed to close file descriptor for child process (%s)"
+msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ (%s) बाट डेटा पढà¥à¤¨ असफल"
+
+#: glib/gspawn.c:2583
#, fuzzy, c-format
#| msgid "Unknown error executing child process \"%s\""
msgid "Unknown error executing child process “%sâ€"
msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ \"%s\" कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¦à¤¾ अजà¥à¤žà¤¾à¤¤ तà¥à¤°à¥à¤Ÿà¤¿"
-#: glib/gspawn.c:2407
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "शाखा पिड पाईप (%s) बाट पà¥à¤°à¤¶à¤¸à¥à¤¤ डेटाहरू पढà¥à¤¨ असफल"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾à¤¬à¤¾à¤Ÿ डेटा पढà¥à¤¨ असफल भयो"
-#: glib/gspawn-win32.c:311
-#, c-format
-msgid "Failed to create pipe for communicating with child process (%s)"
-msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ (%s)सà¤à¤— कà¥à¤°à¤¾à¤•à¤¾à¤¨à¥€à¤•à¤¾ लागि पाइप सिरà¥à¤œà¤¨à¤¾ गरà¥à¤¨ असफल"
-
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ (%s) कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¨ असफल"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, fuzzy, c-format
+#| msgid "Failed to fork child process (%s)"
+msgid "Failed to dup() in child process (%s)"
+msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾ (%s) कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¨ असफल"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "अवैध कारà¥à¤¯à¤•à¥à¤°à¤® नाम : %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:757
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "आरà¥à¤—à¥à¤®à¥‡à¤¨à¥à¤Ÿ भेकà¥à¤Ÿà¤°à¤•à¥‹ %d मा अवैध सà¥à¤Ÿà¥à¤°à¥€à¤™: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:772
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "वातावरणमा अवैध सà¥à¤Ÿà¥à¤°à¥€à¤™: %s"
-#: glib/gspawn-win32.c:753
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "अवैध कारà¥à¤¯ डाइरेकà¥à¤Ÿà¤°à¥€ : %s"
-#: glib/gspawn-win32.c:815
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "मदà¥à¤¦à¤¤ गरà¥à¤¨à¥‡ कारà¥à¤¯à¤•à¥à¤°à¤® कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¨ असफल (%s)"
-#: glib/gspawn-win32.c:1042
+#: glib/gspawn-win32.c:1096
msgid "Unexpected error in g_io_channel_win32_poll() reading data from a child process"
msgstr "शाखा पà¥à¤°à¤•à¥à¤°à¤¿à¤¯à¤¾à¤¬à¤¾à¤Ÿ डेटा पढà¥à¤¦à¤¾ g_io_channel_win32_poll() अनपेकà¥à¤·à¤¿à¤¤ तà¥à¤°à¥à¤Ÿà¤¿"
-#: glib/gstrfuncs.c:3338 glib/gstrfuncs.c:3440
-#, fuzzy
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
-msgstr "PIM सङà¥à¤–à¥à¤¯à¤¾ वा खाली हà¥à¤¨à¥à¤ªà¤°à¥à¤¦à¤› ।"
+msgstr "खाली सà¥à¤Ÿà¥à¤°à¤¿à¤™ सङà¥à¤–à¥à¤¯à¤¾ होइन"
-#: glib/gstrfuncs.c:3362
-#, fuzzy, c-format
+#: glib/gstrfuncs.c:3375
+#, c-format
msgid "“%s†is not a signed number"
-msgstr "S/MIME साइन"
+msgstr "\"%s\" चिनà¥à¤¹ लगाइà¤à¤•à¥‹ सङà¥à¤–à¥à¤¯à¤¾ होइन"
-#: glib/gstrfuncs.c:3372 glib/gstrfuncs.c:3476
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, fuzzy, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
-msgstr "%s अनà¥à¤®à¤¤à¤¿ दिà¤à¤•à¥‹ दायरा भनà¥à¤¦à¤¾ बाहिर छ"
+msgstr "मà¥à¤¦à¥à¤°à¤£à¤¯à¤¨à¥à¤¤à¥à¤°\"%s\" मा विकासकरà¥à¤¤à¤¾ छैन ।."
-#: glib/gstrfuncs.c:3466
-#, fuzzy, c-format
+#: glib/gstrfuncs.c:3479
+#, c-format
msgid "“%s†is not an unsigned number"
-msgstr "%s सङà¥à¤–à¥à¤¯à¤¾ होइन "
+msgstr "\"%s\" चिनà¥à¤¹ रहित सङà¥à¤–à¥à¤¯à¤¾ होइन"
#: glib/guri.c:315
-#, fuzzy, no-c-format
-#| msgid " (invalid encoding)"
+#, no-c-format
msgid "Invalid %-encoding in URI"
-msgstr " (अवैध सङà¥à¤•à¥‡à¤¤à¤¨)"
+msgstr "URI मा अवैध %-सङà¥à¤•à¥‡à¤¤à¤¨"
#: glib/guri.c:332
#, fuzzy
msgid "Illegal character in URI"
-msgstr "अवैध निरà¥à¤¦à¥‡à¤¶à¤¨"
+msgstr "URI"
#: glib/guri.c:366
#, fuzzy
@@ -5832,7 +5948,7 @@ msgstr "जहाठसंखà¥à¤¯à¤¾à¤¤à¥à¤®à¤• नभà¤à¤•à¥‹ वरà¥à¤£
#: glib/guri.c:546
#, fuzzy, c-format
msgid "Invalid IPv6 address ‘%.*s’ in URI"
-msgstr "URI “%s†अवैध"
+msgstr "अमानà¥à¤¯ \"%s\" URI:%s"
#: glib/guri.c:601
#, c-format
@@ -5845,14 +5961,14 @@ msgid "Illegal internationalized hostname ‘%.*s’ in URI"
msgstr ""
#: glib/guri.c:645 glib/guri.c:657
-#, fuzzy, c-format
+#, c-format
msgid "Could not parse port ‘%.*s’ in URI"
-msgstr "URI \"%s\" पारà¥à¤¸ गरà¥à¤¨ सकिà¤à¤¨"
+msgstr "यूआरआईमा पोरà¥à¤Ÿ '%.*s' पद वरà¥à¤£à¤¨ गरà¥à¤¨ सकेन"
#: glib/guri.c:664
#, fuzzy, c-format
msgid "Port ‘%.*s’ in URI is out of range"
-msgstr "%s अनà¥à¤®à¤¤à¤¿ दिà¤à¤•à¥‹ दायरा भनà¥à¤¦à¤¾ बाहिर छ"
+msgstr "यूआरआईमा पोरà¥à¤Ÿ '%.*s' पद वरà¥à¤£à¤¨ गरà¥à¤¨ सकेन"
#: glib/guri.c:1224 glib/guri.c:1288
#, c-format
@@ -5864,219 +5980,192 @@ msgstr "'%s' यूआरआई à¤à¤‰à¤Ÿà¤¾ निशà¥à¤šà¤¿à¤¤ यूआरà
msgid "URI ‘%s’ has no host component"
msgstr ""
-#: glib/guri.c:1435
+#: glib/guri.c:1460
#, fuzzy
msgid "URI is not absolute, and no base URI was provided"
msgstr "'%s' यूआरआई à¤à¤‰à¤Ÿà¤¾ निशà¥à¤šà¤¿à¤¤ यूआरआई होइन"
-#: glib/guri.c:2209
+#: glib/guri.c:2238
#, fuzzy
msgid "Missing ‘=’ and parameter value"
-msgstr "कà¥à¤µà¥‡à¤°à¥€ कारà¥à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ गरà¥à¤¨ परिमितिहरू हराइरहेका छनॠ।"
+msgstr "परामिति"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "सà¥à¤®à¥ƒà¤¤à¤¿ निरà¥à¤§à¤¾à¤°à¤£ गरà¥à¤¨ अकà¥à¤·à¤®"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "UTF-8 का लागि कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° दायरा भनà¥à¤¦à¤¾ बाहिर छ"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215 glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "रूपानà¥à¤¤à¤°à¤£ आगतमा अवैध अनà¥à¤•à¥à¤°à¤®"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "UTF-16 का लागि कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° दायरा भनà¥à¤¦à¤¾ बाहिर छ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2767
+#: glib/gutils.c:2849
#, c-format
-#| msgid "%.1f kB"
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2769
+#: glib/gutils.c:2851
#, c-format
-#| msgid "%.1f MB"
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2771
+#: glib/gutils.c:2853
#, c-format
-#| msgid "%.1f GB"
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2773
+#: glib/gutils.c:2855
#, c-format
-#| msgid "%.1f TB"
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2775
+#: glib/gutils.c:2857
#, c-format
-#| msgid "%.1f PB"
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2777
+#: glib/gutils.c:2859
#, c-format
-#| msgid "%.1f EB"
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2781
+#: glib/gutils.c:2863
#, c-format
-#| msgid "%.1f KiB"
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2783
+#: glib/gutils.c:2865
#, c-format
-#| msgid "%.1f MiB"
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2785
+#: glib/gutils.c:2867
#, c-format
-#| msgid "%.1f GiB"
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2787
+#: glib/gutils.c:2869
#, c-format
-#| msgid "%.1f TiB"
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2789
+#: glib/gutils.c:2871
#, c-format
-#| msgid "%.1f PiB"
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2791
+#: glib/gutils.c:2873
#, c-format
-#| msgid "%.1f EiB"
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2795
+#: glib/gutils.c:2877
#, c-format
-#| msgid "%.1f kB"
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2797
+#: glib/gutils.c:2879
#, c-format
-#| msgid "%.1f MB"
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2799
+#: glib/gutils.c:2881
#, c-format
-#| msgid "%.1f GB"
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2801
+#: glib/gutils.c:2883
#, c-format
-#| msgid "%.1f TB"
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2803
+#: glib/gutils.c:2885
#, c-format
-#| msgid "%.1f PB"
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2805
+#: glib/gutils.c:2887
#, c-format
-#| msgid "%.1f EB"
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2809
+#: glib/gutils.c:2891
#, c-format
-#| msgid "%.1f KiB"
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2811
+#: glib/gutils.c:2893
#, c-format
-#| msgid "%.1f MiB"
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2813
+#: glib/gutils.c:2895
#, c-format
-#| msgid "%.1f GiB"
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2815
+#: glib/gutils.c:2897
#, c-format
-#| msgid "%.1f TiB"
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2817
+#: glib/gutils.c:2899
#, c-format
-#| msgid "%.1f PiB"
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2819
+#: glib/gutils.c:2901
#, c-format
-#| msgid "%.1f EiB"
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2853 glib/gutils.c:2970
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u बाइट"
msgstr[1] "%u बाइट"
-#: glib/gutils.c:2857
+#: glib/gutils.c:2939
#, c-format
-#| msgid "%u byte"
-#| msgid_plural "%u bytes"
msgid "%u bit"
msgid_plural "%u bits"
msgstr[0] "%u विट"
msgstr[1] "%u बिटहरू"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2924
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6084,7 +6173,7 @@ msgstr[0] "%s बाइट"
msgstr[1] "%s बाइट"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2929
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6096,32 +6185,32 @@ msgstr[1] "%s विटहरू"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2983
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2988
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2993
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:2998
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3003
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3008
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
@@ -6218,8 +6307,12 @@ msgstr "%.1f EB"
#~ msgid "Invalid UTF-8 sequence in input"
#~ msgstr "रूपानà¥à¤¤à¤°à¤£ आगतमा अवैध अनà¥à¤•à¥à¤°à¤®"
-#~ msgid "Character '%s' is not valid at the start of an entity name; the & character begins an entity; if this ampersand isn't supposed to be an entity, escape it as &amp;"
-#~ msgstr "असà¥à¤¤à¤¿à¤¤à¥à¤µ नामको सà¥à¤°à¥à¤®à¤¾ कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° '%s' वैध हà¥à¤à¤¦à¥ˆà¤¨ ; & कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤°à¤²à¥‡ à¤à¤‰à¤Ÿà¤¾ असà¥à¤¤à¤¿à¤¤à¥à¤µà¤¾ सà¥à¤°à¥ गरà¥à¤¦à¤› ; यदि यो à¤à¤®à¥à¤ªà¤°à¤¸à¥à¤¯à¤¾à¤¨à¥à¤¡ भà¤à¤®à¤¾ à¤à¤‰à¤Ÿà¤¾ असà¥à¤¤à¤¿à¤¤à¥à¤µà¤•à¥‹ रूपमा मानिà¤à¤¦à¥ˆà¤¨,यसलाई &amp; को रूपमा परितà¥à¤¯à¤¾à¤— गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+#~ msgid ""
+#~ "Character '%s' is not valid at the start of an entity name; the & character begins an entity; if this ampersand "
+#~ "isn't supposed to be an entity, escape it as &amp;"
+#~ msgstr ""
+#~ "असà¥à¤¤à¤¿à¤¤à¥à¤µ नामको सà¥à¤°à¥à¤®à¤¾ कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° '%s' वैध हà¥à¤à¤¦à¥ˆà¤¨ ; & कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤°à¤²à¥‡ à¤à¤‰à¤Ÿà¤¾ असà¥à¤¤à¤¿à¤¤à¥à¤µà¤¾ सà¥à¤°à¥ गरà¥à¤¦à¤› ; यदि यो à¤à¤®à¥à¤ªà¤°à¤¸à¥à¤¯à¤¾à¤¨à¥à¤¡ भà¤à¤®à¤¾ à¤à¤‰à¤Ÿà¤¾ असà¥à¤¤à¤¿à¤¤à¥à¤µà¤•à¥‹ "
+#~ "रूपमा मानिà¤à¤¦à¥ˆà¤¨,यसलाई &amp; को रूपमा परितà¥à¤¯à¤¾à¤— गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
#~ msgid "Empty character reference; should include a digit such as &#454;"
#~ msgstr "खाली कà¥à¤¯à¤¾à¤°à¥‡à¤•à¥à¤Ÿà¤° सनà¥à¤¦à¤°à¥à¤­, &#454 जसà¥à¤¤à¥‹ अङà¥à¤• समाहित हà¥à¤¨à¥à¤ªà¤°à¥à¤›"
diff --git a/po/pl.po b/po/pl.po
index 12aa14030..7c75eb3aa 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -13,8 +13,8 @@ msgid ""
msgstr ""
"Project-Id-Version: glib\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-01-26 14:31+0000\n"
-"PO-Revision-Date: 2022-01-29 15:05+0100\n"
+"POT-Creation-Date: 2022-03-22 15:19+0000\n"
+"PO-Revision-Date: 2022-03-22 17:25+0100\n"
"Last-Translator: Piotr DrÄ…g <piotrdrag@gmail.com>\n"
"Language-Team: Polish <community-poland@mozilla.org>\n"
"Language: pl\n"
@@ -24,6 +24,16 @@ msgstr ""
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
"|| n%100>=20) ? 1 : 2);\n"
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Ustawianie domyślnych programów nie jest jeszcze obsługiwane"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"Ustawianie programu jako ostatnio używanego dla danego typu nie jest jeszcze "
+"obsługiwane"
+
#: gio/gapplication.c:500
msgid "GApplication options"
msgstr "Opcje GApplication"
@@ -45,7 +55,7 @@ msgid "Replace the running instance"
msgstr "Zastępuje działające wystąpienie"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Wyświetla pomoc"
@@ -57,7 +67,7 @@ msgstr "[POLECENIE]"
msgid "Print version"
msgstr "Wyświetla wersję"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Wyświetla informację o wersji i kończy działanie"
@@ -122,8 +132,8 @@ msgstr ""
"Identyfikator programu w formacie usługi D-Bus (np. org.przykład."
"przeglÄ…darka)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "PLIK"
@@ -149,7 +159,7 @@ msgstr "PARAMETR"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Opcjonalny parametr do wywołania działania w formacie GVariant"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -163,7 +173,7 @@ msgid "Usage:\n"
msgstr "Użycie:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Parametry:\n"
@@ -286,7 +296,7 @@ msgstr "Potok jest już zamknięty"
msgid "Truncate not supported on base stream"
msgstr "Skracanie nie jest dozwolone na podstawowym potoku"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -307,7 +317,7 @@ msgstr "Brak wystarczającej ilości miejsca w miejscu docelowym"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Nieprawidłowa sekwencja bajtów na wejściu konwersji"
@@ -317,7 +327,7 @@ msgstr "Nieprawidłowa sekwencja bajtów na wejściu konwersji"
msgid "Error during conversion: %s"
msgstr "BÅ‚Ä…d podczas konwersji: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Zainicjowanie, które można anulować nie jest obsługiwane"
@@ -331,38 +341,38 @@ msgstr "Konwersja z zestawu znaków „%s†na zestaw „%s†nie jest obsłu
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Nie można otworzyć konwertera z „%s†na „%sâ€"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "Typ %s"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Nieznany typ"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "Typ pliku %s"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials zawiera nieprawidłowe dane"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials nie jest zaimplementowane w tym systemie operacyjnym"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Platforma nie obsługuje GCredentials"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr ""
"GCredentials nie zawiera identyfikatora procesu w tym systemie operacyjnym"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr ""
"Fałszowanie danych uwierzytelniających nie jest możliwe w tym systemie "
@@ -372,17 +382,17 @@ msgstr ""
msgid "Unexpected early end-of-stream"
msgstr "Nieoczekiwany, przedwczesny koniec potoku"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "NieobsÅ‚ugiwany klucz „%s†we wpisie adresu „%sâ€"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Para klucz/wartość we wpisie adresu „%s†nie ma znaczenia"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -391,28 +401,28 @@ msgstr ""
"Adres „%s†jest nieprawidłowy (wymaga dokładnie jednej ścieżki, katalogu, "
"katalogu tymczasowego lub kluczy abstrakcyjnych)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Błąd w adresie „%s†— atrybut „%s†jest błędnie sformatowany"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Nieznany lub nieobsÅ‚ugiwany transport „%s†dla adresu „%sâ€"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "Element adresu „%s†nie zawiera dwukropka (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "Nazwa transportu w elemencie adresu „%s†nie może być pusta"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -421,7 +431,7 @@ msgstr ""
"Para klucz/wartość %d, „%s†w elemencie adresu „%s†nie zawiera znaku "
"równości"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
@@ -429,7 +439,7 @@ msgstr ""
"Para klucz/wartość %d, „%s†w elemencie adresu „%s†nie może mieć pustego "
"klucza"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -438,7 +448,7 @@ msgstr ""
"Błąd podczas usuwania znaku sterującego klucza lub wartości w parze klucz/"
"wartość %d, „%s†w elemencie adresu „%sâ€"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -447,84 +457,85 @@ msgstr ""
"Błąd w adresie „%s†— transport systemu UNIX wymaga ustawienia dokładnie "
"jednego z kluczy „path†lub „abstractâ€"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr ""
"Błąd w adresie „%s†— brak atrybutu komputera lub jest błędnie sformatowany"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr ""
"Błąd w adresie „%s†— brak atrybutu portu lub jest błędnie sformatowany"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Błąd w adresie „%s†— brak atrybutu pliku nonce lub jest błędnie sformatowany"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "BÅ‚Ä…d podczas automatycznego uruchamiania: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "BÅ‚Ä…d podczas otwierania pliku nonce „%sâ€: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "BÅ‚Ä…d podczas odczytywania pliku nonce „%sâ€: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"BÅ‚Ä…d podczas odczytywania pliku nonce „%sâ€, oczekiwano 16 bajtów, otrzymano "
"%d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Błąd podczas zapisywania zawartości pliku nonce „%s†do potoku:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "Podany adres jest pusty"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Nie można wywołać magistrali komunikatów, kiedy używane jest setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr ""
+"Nie można wywołać magistrali komunikatów, kiedy AT_SECURE jest ustawione"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr ""
"Nie można wywołać magistrali komunikatów bez identyfikatora komputera: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr ""
"Nie można automatycznie uruchomić usługi D-Bus bez zmiennej $DISPLAY "
"środowiska X11"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "BÅ‚Ä…d podczas wywoÅ‚ywania wiersza poleceÅ„ „%sâ€: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Nie można ustalić adresu magistrali sesji (nie jest zaimplementowane dla "
"tego systemu operacyjnego)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -533,7 +544,7 @@ msgstr ""
"Nie można ustalić adresu magistrali ze zmiennej środowiskowej "
"DBUS_STARTER_BUS_TYPE — nieznana wartość „%sâ€"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -541,7 +552,7 @@ msgstr ""
"Nie można ustalić adresu magistrali, ponieważ nie ustawiono zmiennej "
"środowiskowej DBUS_STARTER_BUS_TYPE"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Nieznany typ magistrali %d"
@@ -571,12 +582,12 @@ msgstr "Identyfikatory użytkownika muszą być takie same dla partnera i serwe
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Anulowano przez GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "BÅ‚Ä…d podczas pobierania informacji o katalogu „%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -584,33 +595,33 @@ msgstr ""
"Uprawnienia katalogu „%s†są błędnie sformatowane. Oczekiwano trybu 0700, "
"otrzymano 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "BÅ‚Ä…d podczas tworzenia katalogu „%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Działanie nie jest obsługiwane"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Błąd podczas otwierania bazy kluczy „%s†do odczytania: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
"%d. wiersz bazy kluczy w „%s†z zawartością „%s†jest błędnie sformatowany"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -618,7 +629,7 @@ msgstr ""
"Pierwszy token %d. wiersza bazy kluczy w „%s†z zawartością „%s†jest "
"błędnie sformatowany"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -626,161 +637,161 @@ msgstr ""
"Drugi token %d. wiersza bazy kluczy w „%s†z zawartością „%s†jest błędnie "
"sformatowany"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Nie odnaleziono ciasteczka z identyfikatorem %d w bazie kluczy w „%sâ€"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "BÅ‚Ä…d podczas tworzenia pliku blokady „%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "BÅ‚Ä…d podczas usuwania starego pliku blokady „%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "BÅ‚Ä…d podczas zamykania (niedowiÄ…zanego) pliku blokady „%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "BÅ‚Ä…d podczas odwiÄ…zywania pliku blokady „%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Błąd podczas otwierania bazy kluczy „%s†do zapisania: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Dodatkowo, uwolnienie blokady „%s†także się nie powiodło: %s) "
-#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "Połączenie jest zamknięte"
-#: gio/gdbusconnection.c:1903
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "Przekroczono czas oczekiwania"
-#: gio/gdbusconnection.c:2541
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"Wystąpiły nieobsługiwane flagi podczas tworzenia połączenia ze strony klienta"
-#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr ""
"Brak interfejsu „org.freedesktop.DBus.Properties†w obiekcie w ścieżce %s"
-#: gio/gdbusconnection.c:4414
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "Brak wÅ‚aÅ›ciwoÅ›ci „%sâ€"
-#: gio/gdbusconnection.c:4426
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "Właściwość „%s†nie jest odczytywalna"
-#: gio/gdbusconnection.c:4437
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "Właściwość „%s†nie jest zapisywalna"
-#: gio/gdbusconnection.c:4457
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
"BÅ‚Ä…d podczas ustawiania wÅ‚aÅ›ciwoÅ›ci „%sâ€: oczekiwano typ „%sâ€, ale otrzymano "
"„%sâ€"
-#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
-#: gio/gdbusconnection.c:6760
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "Brak interfejsu „%sâ€"
-#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Brak interfejsu „%s†w obiekcie w ścieżce %s"
-#: gio/gdbusconnection.c:5100
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "Brak metody „%sâ€"
-#: gio/gdbusconnection.c:5131
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Typ komunikatu, „%sâ€, nie pasuje do oczekiwanego typu „%sâ€"
-#: gio/gdbusconnection.c:5334
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Obiekt został już wyeksportowany dla interfejsu %s w %s"
-#: gio/gdbusconnection.c:5561
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Nie można pobrać właściwości %s.%s"
-#: gio/gdbusconnection.c:5617
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Nie można ustawić właściwości %s.%s"
-#: gio/gdbusconnection.c:5796
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "Metoda „%s†zwróciÅ‚a typ „%sâ€, ale oczekiwano „%sâ€"
-#: gio/gdbusconnection.c:6872
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "Metoda „%s†w interfejsie „%s†z podpisem „%s†nie istnieje"
-#: gio/gdbusconnection.c:6993
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Poddrzewo zostało już wyeksportowane dla %s"
-#: gio/gdbusconnection.c:7282
+#: gio/gdbusconnection.c:7266
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "Obiekt nie istnieje w ścieżce „%sâ€"
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "typ jest NIEPRAWIDÅOWY"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "Komunikat METHOD_CALL: brak pola nagłówka PATH lub MEMBER"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "Komunikat METHOD_RETURN: brak pola nagłówka REPLY_SERIAL"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "Komunikat o BÅĘDZIE: brak pola nagłówka REPLY_SERIAL lub ERROR_NAME"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "Komunikat SYGNAÅU: brak pola nagłówka PATH, INTERFACE lub MEMBER"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -788,7 +799,7 @@ msgstr ""
"Komunikat SYGNAÅU: pole nagłówka PATH używa zastrzeżonej wartoÅ›ci /org/"
"freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -796,7 +807,7 @@ msgstr ""
"Komunikat SYGNAÅU: pole nagłówka INTERFACE używa zastrzeżonej wartoÅ›ci org."
"freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
@@ -804,12 +815,12 @@ msgstr[0] "Chciano odczytać %lu bajt, ale otrzymano tylko %lu"
msgstr[1] "Chciano odczytać %lu bajty, ale otrzymano tylko %lu"
msgstr[2] "Chciano odczytać %lu bajtów, ale otrzymano tylko %lu"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "Oczekiwano bajtu NUL po ciÄ…gu „%sâ€, ale odnaleziono bajt %d"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -819,22 +830,22 @@ msgstr ""
"w wyrównaniu bajtu %d (długość ciągu wynosi %d). Prawidłowy ciąg UTF-8 do "
"tego miejsca to „%sâ€"
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Wartość jest zagnieżdżona za głęboko"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr ""
"Przetworzona wartość „%s†nie jest prawidłową ścieżką do obiektu usługi D-Bus"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Przetworzona wartość „%s†nie jest prawidłowym podpisem usługi D-Bus"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -850,7 +861,7 @@ msgstr[2] ""
"Wystąpiła macierz o długości %u bajtów. Maksymalna długość to 2<<26 bajtów "
"(64 MiB)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -859,18 +870,18 @@ msgstr ""
"WystÄ…piÅ‚a macierz typu „a%câ€, której oczekiwana dÅ‚ugość jest wielokrotnoÅ›ciÄ… "
"%u B, ale wynosi %u B"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
msgstr "Puste struktury (krotki) nie sÄ… dozwolone na magistrali D-Bus"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr ""
"Przetworzona wartość „%s†dla wariantu nie jest prawidłowym podpisem usługi "
"D-Bus"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
@@ -878,7 +889,7 @@ msgstr ""
"Błąd podczas deserializowania GVariant za pomocą ciągu typu „%s†z formatu "
"przewodu usługi D-Bus"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -887,30 +898,30 @@ msgstr ""
"NieprawidÅ‚owa wartość kolejnoÅ›ci bajtów. Oczekiwano 0x6c („lâ€) lub 0x42 "
"(„Bâ€), ale odnaleziono wartość 0x%02x"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr ""
"Nieprawidłowa główna wersja protokołu. Oczekiwano 1, ale odnaleziono %d"
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Odnaleziono nagłówek podpisu, ale nie jest podpisem typu"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"Odnaleziono nagłówek podpisu z podpisem „%sâ€, ale treść komunikatu jest pusta"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr ""
"Przetworzona wartość „%s†nie jest prawidłowym podpisem usługi D-Bus (dla "
"treści)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -921,11 +932,11 @@ msgstr[1] ""
msgstr[2] ""
"Brak nagłówka podpisu w komunikacie, ale treść komunikatu liczy %u bajtów"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Nie można deserializować komunikatu: "
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
@@ -933,23 +944,23 @@ msgstr ""
"Błąd podczas serializowania GVariant za pomocą ciągu typu „%s†z formatu "
"przewodu usługi D-Bus"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr ""
"Liczba deskryptorów plików w komunikacie (%d) różni się od pola nagłówka (%d)"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Nie można serializować komunikatu: "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "Treść komunikatu ma podpis „%sâ€, ale brak nagłówka podpisu"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -957,54 +968,54 @@ msgid ""
msgstr ""
"Treść komunikatu ma podpis typu „%sâ€, ale podpis w polu nagłówka to „%sâ€"
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "Treść komunikatu jest pusta, ale podpis w polu nagłówka to „(%s)â€"
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "BÅ‚Ä…d zwrotu z treÅ›ciÄ… typu „%sâ€"
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Błąd zwrotu z pustą treścią"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Wpisanie dowolnego znaku zamknie to okno)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr ""
"Magistrala D-Bus sesji nie jest uruchomiona, i automatyczne uruchomienie się "
"nie powiodło"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Nie można pobrać profilu sprzętu: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Nie można wczytać pliku %s ani %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Błąd podczas wywoływania metody StartServiceByName dla %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Nieoczekiwana odpowiedź %d od metody StartServiceByName(\"%s\")"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1060,66 +1071,66 @@ msgstr ""
"\n"
"Polecenie „%s POLECENIE --help†wyświetla pomoc o każdym poleceniu.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "BÅ‚Ä…d: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "BÅ‚Ä…d podczas przetwarzania kodu XML introspekcji: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Błąd: %s nie jest prawidłową nazwą\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Błąd: %s nie jest prawidłową ścieżką do obiektu\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "ÅÄ…czy z magistralÄ… systemowÄ…"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "ÅÄ…czy z magistralÄ… sesji"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "ÅÄ…czy z podanym adresem usÅ‚ugi D-Bus"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Opcje punktów końcowych połączenia:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Opcje określające punkt końcowy połączenia"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Nie określono żadnych punktów końcowych połączenia"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Określono wiele punktów końcowych połączenia"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr "Ostrzeżenie: według danych introspekcji, interfejs „%s†nie istnieje\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1128,161 +1139,165 @@ msgstr ""
"Ostrzeżenie: według danych introspekcji, metoda „%s†nie istnieje "
"w interfejsie „%sâ€\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Opcjonalny cel sygnału (unikalna nazwa)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Ścieżka do obiektu do wyemitowania sygnału"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Nazwa sygnału i interfejsu"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Emituje sygnał."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "BÅ‚Ä…d podczas Å‚Ä…czenia: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Błąd: %s nie jest prawidłową unikalną nazwą magistrali.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Błąd: nie podano ścieżki do obiektu\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Błąd: nie podano nazwy sygnału\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Błąd: nazwa sygnału „%s†jest nieprawidłowa\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Błąd: %s nie jest prawidłową nazwą interfejsu\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Błąd: %s nie jest prawidłową nazwą elementu\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "BÅ‚Ä…d podczas przetwarzania parametru %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Błąd podczas czyszczenia połączenia: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Nazwa docelowa do wywołania na niej metody"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Ścieżka do obiektu do wywołania na niej metody"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Nazwa metody i interfejsu"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Czas oczekiwania w sekundach"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Zezwala na interaktywne upoważnienie"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Wywołuje metodę na zdalnym obiekcie."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "BÅ‚Ä…d: nie podano celu\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Błąd: %s nie jest prawidłową nazwą magistrali\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "BÅ‚Ä…d: nie podano nazwy metody\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Błąd: nazwa metody „%s†jest nieprawidłowa\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "BÅ‚Ä…d podczas przetwarzania parametru %d typu „%sâ€: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Błąd podczas dodawania pliku obsługi %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Nazwa docelowa do zbadania"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Ścieżka do obiektu do zbadania"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Wyświetla kod XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Bada elementy potomne"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Wyświetla tylko właściwości"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Bada zdalny obiekt."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Nazwa docelowa do monitorowania"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Ścieżka do obiektu do monitorowania"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Monitoruje zdalny obiekt."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr ""
"Błąd: nie można monitorować połączenia niebędącego magistralą komunikatów\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Usługa do aktywowania przed oczekiwaniem na drugą (znaną nazwę)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1290,64 +1305,69 @@ msgstr ""
"Czas oczekiwania przed zakończeniem z błędem (w sekundach), 0 oznacza brak "
"ograniczenia (domyślne)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[OPCJA…] NAZWA-MAGISTRALI"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Oczekuje na pojawienie siÄ™ nazwy magistrali."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Błąd: należy podać usługę, dla której aktywować.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "Błąd: należy podać usługę, na którą oczekiwać.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Błąd: za dużo parametrów.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Błąd: %s nie jest prawidłową znaną nazwą magistrali.\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Brak upoważnienia do zmiany ustawień debugowania"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Bez nazwy"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "Plik .desktop nie określa pola Exec"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Nie można odnaleźć terminala wymaganego przez program"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr ""
"Nie można utworzyć katalogu użytkownika dla konfiguracji programu %s: %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Nie można utworzyć katalogu użytkownika dla konfiguracji MIME %s: %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "Brak identyfikatora w informacjach o programie"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Nie można utworzyć pliku .desktop dla użytkownika %s"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Niestandardowa definicja dla %s"
@@ -1375,7 +1395,7 @@ msgstr "napęd nie obsługuje rozpoczęcia"
msgid "drive doesn’t implement stop"
msgstr "napęd nie obsługuje zatrzymania"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "Mechanizm TLS nie obsługuje wiążącego pobierania TLS"
@@ -1416,74 +1436,74 @@ msgstr "Oczekiwano obiektu GEmblem dla GEmblemedIcon"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Nie istnieje zawierajÄ…cy punkt montowania"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Nie można skopiować na katalog"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Nie można skopiować katalogu na katalog"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Plik docelowy istnieje"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Nie można skopiować katalogu rekurencyjnie"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Wywołanie „splice†nie jest obsługiwane"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "BÅ‚Ä…d podczas dzielenia pliku: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr ""
"Kopiowanie (reflink/clone) między punktami montowania nie jest obsługiwane"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Kopiowanie (reflink/clone) nie jest obsługiwane lub jest nieprawidłowe"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Kopiowanie (reflink/clone) nie jest obsługiwane lub nie zadziałało"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Nie można skopiować pliku specjalnego"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Wprowadzono nieprawidłową wartość dowiązania symbolicznego"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Dowiązania symboliczne nie są obsługiwane"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Kosz nie jest obsługiwany"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Nazwy plików nie mogÄ… zawierać „%câ€"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "wolumin nie obsługuje montowania"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Żaden program nie jest zarejestrowany do obsługi tego pliku"
@@ -1528,7 +1548,7 @@ msgstr "Skracanie nie jest dozwolone na potoku wejściowym"
msgid "Truncate not supported on stream"
msgstr "Skracanie nie jest dozwolone na potoku"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Nieprawidłowa nazwa komputera"
@@ -1615,7 +1635,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Nie można przetworzyć „%s†jako maskę adresu IP"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Brak wystarczającej ilości miejsca dla adresu gniazda"
@@ -2460,59 +2480,59 @@ msgstr "BÅ‚Ä…d podczas kompresowania pliku %s"
msgid "text may not appear inside <%s>"
msgstr "tekst nie może znajdować się wewnątrz <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Wyświetla wersję programu i kończy działanie"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Nazwa pliku wyjściowego"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
msgstr "Katalog, z którego wczytywać PLIKI (domyślnie bieżący katalog)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "KATALOG"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr "Tworzy wyjście w formacie wybranym przez rozszerzenie pliku docelowego"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Tworzy nagłówek źródła"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr "Tworzy kod źródłowy używany do dowiązania pliku zasobu do kodu"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Tworzy listę zależności"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Nazwa pliku zależności do utworzenia"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Dołącza fałszywe cele w utworzonym pliku zależności"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Bez automatycznego tworzenia i rejestrowania zasobu"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Bez eksportowania funkcji; deklaruje je jako G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2520,11 +2540,15 @@ msgstr ""
"Bez osadzania danych zasobów w pliku C; przyjmuje, że jest zamiast tego "
"zewnętrznie dowiązane"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "Nazwa identyfikatora języka C używana dla utworzonego kodu źródłowego"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "Docelowy kompilator języka C (domyślnie: zmienna środowiskowa CC)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2534,7 +2558,7 @@ msgstr ""
"zasobów mają rozszerzenie .gresource.xml, a pliki\n"
"zasobów mają rozszerzenie .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Należy podać dokładnie jedną nazwę pliku\n"
@@ -3331,13 +3355,13 @@ msgstr "BÅ‚Ä…d podczas tworzenia kopii zapasowej: %s"
msgid "Error renaming temporary file: %s"
msgstr "BÅ‚Ä…d podczas zmieniania nazwy pliku tymczasowego: %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "BÅ‚Ä…d podczas skracania pliku: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "BÅ‚Ä…d podczas otwierania pliku „%sâ€: %s"
@@ -3359,7 +3383,7 @@ msgstr "Plik został zmieniony poza programem"
msgid "Error removing old file: %s"
msgstr "BÅ‚Ä…d podczas usuwania starego pliku: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Podano nieprawidłowy obiekt GSeekType"
@@ -3371,15 +3395,15 @@ msgstr "Nieprawidłowe żądanie wyszukiwania"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Nie można skrócić GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Potok wyjściowy pamięci nie obsługuje zmiany rozmiaru"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Zmiana rozmiaru potoku wyjściowego pamięci się nie powiodła"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3387,11 +3411,11 @@ msgstr ""
"Ilość pamięci wymagana dla przetworzenia zapisu jest większa od dostępnej "
"przestrzeni adresowej"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Zażądano przejścia przed początkiem potoku"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Zażądano przejścia poza koniec potoku"
@@ -3496,18 +3520,22 @@ msgstr "Suma wektorów przekazanych do %s jest za duża"
msgid "Source stream is already closed"
msgstr "Potok źródłowy jest już zamknięty"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "BÅ‚Ä…d podczas rozwiÄ…zywania „%sâ€: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s nie jest zaimplementowane"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Nieprawidłowa domena"
@@ -3622,7 +3650,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " SEKCJA (Opcjonalna) nazwa sekcji formatu ELF\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " POLECENIE (Opcjonalne) polecenie do wyjaśnienia\n"
@@ -3656,7 +3684,7 @@ msgstr "ŚCIEŻKA"
msgid " PATH A resource path\n"
msgstr " ŚCIEŻKA Ścieżka do zasobu\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Brak schematu „%sâ€\n"
@@ -3687,36 +3715,36 @@ msgstr "Ścieżka musi kończyć się ukośnikiem (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Ścieżka nie może zawierać dwóch sąsiadujących ukośników (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "Podana wartość jest poza prawidłowym zakresem\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "Klucz nie jest zapisywalny\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr ""
"Wyświetla listę zainstalowanych schematów (których nie można przenosić)"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Wyświetla listę zainstalowanych schematów (które można przenosić)"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Wyświetla listę kluczy w SCHEMACIE"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "SCHEMAT[:ŚCIEŻKA]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Wyświetla listę elementów potomnych SCHEMATU"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3724,48 +3752,48 @@ msgstr ""
"Wyświetla listę kluczy i wartości, rekursywnie\n"
"Jeśli nie podano SCHEMATU, to wyświetla listę wszystkich kluczy\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SCHEMAT[:ŚCIEŻKA]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Uzyskuje wartość KLUCZA"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "SCHEMAT[:ŚCIEŻKA] KLUCZ"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Odpytuje zakres prawidłowych wartości KLUCZA"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Odpytuje opis KLUCZA"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Ustawia wartość KLUCZA na WARTOŚĆ"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SCHEMAT[:ŚCIEŻKA] KLUCZ WARTOŚĆ"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Przywraca KLUCZ na jego domyślną wartość"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Przywraca wszystkie klucze w SCHEMACIE do domyślnych wartości"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Sprawdza, czy KLUCZ jest zapisywalny"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3775,11 +3803,11 @@ msgstr ""
"Jeśli nie podano KLUCZA, to monitoruje wszystkie klucze w SCHEMACIE.\n"
"Użycie ^C zatrzymuje monitorowanie.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SCHEMAT[:ŚCIEŻKA] [KLUCZ]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3829,7 +3857,7 @@ msgstr ""
"Polecenie „gsettings help POLECENIE†wyświetla szczegółową pomoc.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3844,11 +3872,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " KATALOG-SCHEMATÓW Katalog do wyszukiwania dodatkowych schematów\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3856,213 +3884,213 @@ msgstr ""
" SCHEMAT Identyfikator schematu\n"
" ŚCIEŻKA Ścieżka (dla schematów, które można przenosić)\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " KLUCZ (Opcjonalny) klucz w schemacie\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " KLUCZ Klucz w schemacie\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " WARTOŚĆ Wartość do ustawienia\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Nie można wczytać schematów z %s: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Nie zainstalowano schematów\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Podano pustÄ… nazwÄ™ schematu\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Brak klucza „%sâ€\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Nieprawidłowe gniazdo, nie zainicjowano"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Nieprawidłowe gniazdo, zainicjowanie się nie powiodło z powodu: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Gniazdo jest już zamknięte"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Przekroczono czas oczekiwania wejścia/wyjścia gniazda"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "tworzenie GSocket z fd: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Nie można utworzyć gniazda: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Podano nieznanÄ… rodzinÄ™"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Podano nieznany protokół"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "Nie można używać działań datagramowych na niedatagramowych gniazdach."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Nie można używać działań datagramowych na gniazdach z ustawionym czasem "
"oczekiwania."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "nie można uzyskać lokalnego adresu: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "nie można uzyskać zdalnego adresu: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "nie można nasłuchiwać: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "BÅ‚Ä…d podczas dowiÄ…zywania do adresu %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Błąd podczas dołączania do grupy multicast: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "BÅ‚Ä…d podczas opuszczania grupy multicast: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Brak obsługi multicastu dla konkretnych źródeł"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Nieobsługiwana rodzina gniazda"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "konkretne źródła nie są adresem IPv4"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Nazwa interfejsu jest za długa"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Nie odnaleziono interfejsu: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "Brak obsługi multicastu IPv4 dla konkretnych źródeł"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "Brak obsługi multicastu IPv6 dla konkretnych źródeł"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Błąd podczas akceptowania połączenia: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Trwa połączenie"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Nie można uzyskać oczekującego błędu: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "BÅ‚Ä…d podczas pobierania danych: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Błąd podczas wysyłania danych: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Nie można zamknąć gniazda: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "BÅ‚Ä…d podczas zamykania gniazda: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Oczekiwanie na warunek gniazda: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Nie można wysłać komunikatu: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Wektory komunikatu są za duże"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Błąd podczas wysyłania komunikatu: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage nie jest obsługiwane w systemie Windows"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "BÅ‚Ä…d podczas pobierania komunikatu: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Nie można odczytać danych uwierzytelniających gniazda: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr ""
"g_socket_get_credentials nie jest zaimplementowane dla tego systemu "
@@ -4082,11 +4110,11 @@ msgstr "Nie można połączyć z %s: "
msgid "Could not connect: "
msgstr "Nie można połączyć: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "Pośredniczenie przez połączenie niebędące TCP nie jest obsługiwane."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Protokół pośrednika „%s†nie jest obsługiwany."
@@ -4187,7 +4215,7 @@ msgstr "Pośrednik SOCKSv5 nie obsługuje podanego typu adresu."
msgid "Unknown SOCKSv5 proxy error."
msgstr "Nieznany błąd pośrednika SOCKSv5."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr ""
@@ -4212,44 +4240,67 @@ msgstr "Nie odnaleziono prawidłowych adresów"
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "BÅ‚Ä…d podczas odwrotnego rozwiÄ…zywania „%sâ€: %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr ""
+"Błąd podczas przetwarzania wpisu DNS %s: błędnie sformatowany pakiet DNS"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "Brak wpisu DNS żądanego typu dla „%sâ€"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "Nie można tymczasowo rozwiÄ…zać „%sâ€"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "BÅ‚Ä…d podczas rozwiÄ…zywania „%sâ€"
-#: gio/gtlscertificate.c:431
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Błędnie sformatowany pakiet DNS"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "Przetworzenie odpowiedzi DNS na „%s†się nie powiodło: "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Nie odnaleziono klucza prywatnego zakodowanego za pomocÄ… PEM"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Nie można odszyfrować klucza prywatnego zakodowanego za pomocą PEM"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Nie można przetworzyć klucza prywatnego zakodowanego za pomocą PEM"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Nie odnaleziono certyfikatu zakodowanego za pomocÄ… PEM"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Nie można przetworzyć certyfikatów zakodowanych za pomocą PEM"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "Obecny mechanizm TLS nie obsługuje PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr ""
"Ten mechanizm GTlsBackend nie obsługuje tworzenia certyfikatów PKCS #11"
@@ -4276,7 +4327,11 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "Podane hasło jest niepoprawne."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "Wysyłanie DP nie jest obsługiwane"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
@@ -4284,11 +4339,11 @@ msgstr[0] "Oczekiwano jeden komunikat kontrolny, otrzymano %d"
msgstr[1] "Oczekiwano jeden komunikat kontrolny, otrzymano %d"
msgstr[2] "Oczekiwano jeden komunikat kontrolny, otrzymano %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Nieoczekiwany typ podrzędnych danych"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
@@ -4296,39 +4351,43 @@ msgstr[0] "Oczekiwano jedno fd, a otrzymano %d\n"
msgstr[1] "Oczekiwano jedno fd, a otrzymano %d\n"
msgstr[2] "Oczekiwano jedno fd, a otrzymano %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Pobrano nieprawidłowe fd"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "Odbieranie DP nie jest obsługiwane"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Błąd podczas wysyłania danych uwierzytelniających: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr ""
"Błąd podczas sprawdzania, czy zmienna SO_PASSCRED została włączona dla "
"gniazda: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Błąd podczas włączania zmiennej SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Oczekiwano odczytania pojedynczego bajtu dla odbieranych danych "
"uwierzytelniających, ale odczytano zero bajtów"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Nie oczekiwano komunikatu kontrolnego, a otrzymano %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Błąd podczas wyłączania zmiennej SO_PASSCRED: %s"
@@ -4344,7 +4403,7 @@ msgstr "Błąd podczas odczytywania z deskryptora pliku: %s"
msgid "Error closing file descriptor: %s"
msgstr "BÅ‚Ä…d podczas zamykania deskryptora pliku: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Katalog główny systemu plików"
@@ -4355,7 +4414,7 @@ msgstr "Katalog główny systemu plików"
msgid "Error writing to file descriptor: %s"
msgstr "BÅ‚Ä…d podczas zapisywania do deskryptora pliku: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr ""
"Abstrakcyjne adresy gniazd domen systemu UNIX nie są obsługiwane w tym "
@@ -4507,8 +4566,8 @@ msgstr "Rozwinięcie wiersza exec „%s†z adresem URI „%s†się nie powi
msgid "Unrepresentable character in conversion input"
msgstr "Nieprzedstawialny znak na wejściu konwersji"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Na końcu wejścia występuje sekwencja odpowiadająca części znaku"
@@ -5083,16 +5142,16 @@ msgstr "Na końcu kanału występuje sekwencja odpowiadająca części znaku"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Nie można wykonać surowego odczytu w zmiennej g_io_channel_read_to_end"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr ""
"Nie można odnaleźć prawidłowego pliku klucza w przeszukiwanych katalogach"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "To nie jest zwykły plik"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5100,45 +5159,45 @@ msgstr ""
"Plik klucza zawiera wiersz „%sâ€, który nie jest parÄ… klucz-wartość, grupÄ… "
"lub komentarzem"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Nieprawidłowa nazwa grupy: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Plik klucza nie rozpoczyna siÄ™ od grupy"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Nieprawidłowa nazwa klucza: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Nieprawidłowa nazwa klucza: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Plik klucza zawiera nieobsÅ‚ugiwane kodowanie „%sâ€"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Plik klucza nie zawiera grupy „%sâ€"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Plik klucza nie zawiera klucza „%s†w grupie „%sâ€"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr ""
"Plik klucza zawiera klucz „%s†o wartoÅ›ci „%sâ€, która nie jest zapisana "
"w UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
@@ -5146,7 +5205,7 @@ msgstr ""
"Plik klucza zawiera klucz „%sâ€, który ma wartość niemożliwÄ… do "
"zinterpretowania."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5155,36 +5214,36 @@ msgstr ""
"Plik klucza zawiera klucz „%s†w grupie „%sâ€, która ma wartość niemożliwÄ… do "
"zinterpretowania."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "Klucz „%s†w grupie „%s†ma wartość „%sâ€, podczas gdy oczekiwano %s"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Plik klucza zawiera znak sterujący na końcu linii"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Plik klucza zawiera nieprawidÅ‚owÄ… sekwencjÄ™ sterujÄ…cÄ… „%sâ€"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "Nie można zinterpretować „%s†jako liczby."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "Wartość całkowita „%s†jest spoza dopuszczalnego zakresu"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "Nie można zinterpretować „%s†jako liczby zmiennoprzecinkowej."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "Nie można zinterpretować „%s†jako wartości logicznej."
@@ -5490,7 +5549,7 @@ msgstr "BÅ‚Ä…d podczas przetwarzania opcji %s"
msgid "Missing argument for %s"
msgstr "Brak parametru dla %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Nieznana opcja %s"
@@ -5897,128 +5956,139 @@ msgstr "Tekst jest pusty (lub zawiera tylko spacje)"
msgid "Failed to read data from child process (%s)"
msgstr "Odczytanie danych z procesu potomnego (%s) się nie powiodło"
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr ""
"Nieoczekiwany błąd podczas odczytywania danych z procesu potomnego (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Nieoczekiwany błąd w waitpid() (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "Proces potomny został zakończony z kodem %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Proces potomny został zakończony sygnałem %ld"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Proces potomny został zatrzymany sygnałem %ld"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Proces potomny został nieprawidłowo zakończony"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr ""
"Odczytanie danych z potoku łączącego z procesem potomnym (%s) się nie "
"powiodło"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Wywołanie procesu potomnego „%s†(%s) się nie powiodło"
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Rozdzielenie procesu (%s) się nie powiodło"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Zmiana katalogu na „%s†(%s) się nie powiodła"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Wykonanie procesu potomnego „%s†(%s) się nie powiodło"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2550
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
+msgid "Failed to open file to remap file descriptor (%s)"
msgstr ""
-"Przekierowanie wejścia lub wyjścia procesu potomnego (%s) się nie powiodło"
+"Otwarcie pliku do ponownego mapowania deskryptora pliku (%s) się nie powiodło"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2558
+#, c-format
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr ""
+"Powielenie deskryptora pliku dla procesu potomnego (%s) się nie powiodło"
+
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Rozdzielenie procesu potomnego (%s) się nie powiodło"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2575
#, c-format
msgid "Failed to close file descriptor for child process (%s)"
msgstr ""
"Zamknięcie deskryptora pliku dla procesu potomnego (%s) się nie powiodło"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Podczas wykonywania procesu potomnego „%s†wystąpił nieznany błąd"
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr ""
"Odczytanie odpowiedniej liczby danych z potoku procesu potomnego (%s) się "
"nie powiodło"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Odczytanie danych z procesu potomnego się nie powiodło"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Wykonanie procesu potomnego (%s) się nie powiodło"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Wykonanie dup() w procesie potomnym (%s) się nie powiodło"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Nieprawidłowa nazwa programu: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Nieprawidłowy ciąg w wektorze parametrów w %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Nieprawidłowa sekwencja w środowisku: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Nieprawidłowy katalog roboczy: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Wykonanie programu pomocniczego (%s) się nie powiodło"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -6026,21 +6096,21 @@ msgstr ""
"Podczas odczytu danych z procesu potomnego w g_io_channel_win32_poll() "
"wystąpił nieznany błąd"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Pusty ciÄ…g nie jest liczbÄ…"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "„%s†nie jest liczbą ze znakiem"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Liczba „%s†jest poza zakresem [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "„%s†nie jest liczbą bez znaku"
@@ -6101,168 +6171,168 @@ msgstr "Adres URI nie jest bezwzględny i nie podano podstawy adresu URI"
msgid "Missing ‘=’ and parameter value"
msgstr "Brak „=†i wartości parametru"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Przydzielenie pamięci się nie powiodło"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Znak jest poza zakresem dla UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Nieprawidłowa sekwencja na wejściu konwersji"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Znak jest poza zakresem dla UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
@@ -6270,7 +6340,7 @@ msgstr[0] "%u bajt"
msgstr[1] "%u bajty"
msgstr[2] "%u bajtów"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6279,7 +6349,7 @@ msgstr[1] "%u bity"
msgstr[2] "%u bitów"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6288,7 +6358,7 @@ msgstr[1] "%s bajty"
msgstr[2] "%s bajtów"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6301,32 +6371,32 @@ msgstr[2] "%s bitów"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
diff --git a/po/pt.po b/po/pt.po
index 3bf26f2ba..792671b47 100644
--- a/po/pt.po
+++ b/po/pt.po
@@ -1,7 +1,7 @@
# glib's Portuguese Translation
-# Copyright © 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014 glib
+# Copyright © 2001-2022 glib
# Distributed under the same licence as the glib package
-# Duarte Loreto <happyguy_pt@hotmail.com>, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014.
+# Duarte Loreto <happyguy_pt@hotmail.com>, 2001-2014.
# Pedro Albuquerque <palbuquerque73@gmail.com>, 2015.
# Sérgio Cardeira <cardeira.sergio@gmail.com>, 2016.
# Tiago Santos <tiagofsantos81@sapo.pt>, 2014 - 2016.
@@ -12,8 +12,8 @@ msgid ""
msgstr ""
"Project-Id-Version: 3.12\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-01-26 14:31+0000\n"
-"PO-Revision-Date: 2022-01-26 14:33+0000\n"
+"POT-Creation-Date: 2022-03-22 15:19+0000\n"
+"PO-Revision-Date: 2022-03-22 22:18+0000\n"
"Last-Translator: Hugo Carvalho <hugokarvalho@hotmail.com>\n"
"Language-Team: Portuguese <https://l10n.gnome.org/teams/pt/>\n"
"Language: pt\n"
@@ -23,6 +23,14 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 3.0.1\n"
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Definição de aplicações predefinidas ainda não suportado"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr "Definir aplicação como última utilizada para tipo ainda não suportado"
+
#: gio/gapplication.c:500
msgid "GApplication options"
msgstr "Opções GApplication"
@@ -46,7 +54,7 @@ msgid "Replace the running instance"
msgstr "Substituir a instância em execução"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Imprimir a ajuda"
@@ -58,7 +66,7 @@ msgstr "[COMANDO]"
msgid "Print version"
msgstr "Imprimir versão"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Imprimir informação de versão e sair"
@@ -122,8 +130,8 @@ msgstr ""
"Identificador de aplicação em formato D-Bus (por ex: org.exemplo."
"visualizador)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "FICHEIRO"
@@ -148,7 +156,7 @@ msgstr "PARÂMETRO"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Parâmetro opcional para a invocação da ação, em formato GVariant"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -162,13 +170,13 @@ msgid "Usage:\n"
msgstr "Utilização:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argumentos:\n"
#: gio/gapplication-tool.c:135 gio/gio-tool.c:224
msgid "[ARGS…]"
-msgstr "[ARGUMENTOS...]"
+msgstr "[ARGS…]"
#: gio/gapplication-tool.c:136
#, c-format
@@ -285,7 +293,7 @@ msgstr "O fluxo já se encontra fechado"
msgid "Truncate not supported on base stream"
msgstr "Truncar não é suportado no fluxo base"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -306,7 +314,7 @@ msgstr "Espaço insuficiente no destino"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Sequência de bytes inválida na origem da conversão"
@@ -316,7 +324,7 @@ msgstr "Sequência de bytes inválida na origem da conversão"
msgid "Error during conversion: %s"
msgstr "Erro durante a conversão: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Não é suportada a inicialização cancelável"
@@ -330,37 +338,37 @@ msgstr "Conversão do conjunto de caracteres “%s†para “%s†não é supo
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Impossível abrir conversor de “%s†para “%sâ€"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "Tipo %s"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Tipo desconhecido"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "Tipo de ficheiro %s"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials contém dados inválidos"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials não está implementado neste SO"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Não existe suporte para GCredentials na sua plataforma"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GCredentials não contém um ID de processo neste SO"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Simular credenciais não é possível neste SO"
@@ -368,17 +376,17 @@ msgstr "Simular credenciais não é possível neste SO"
msgid "Unexpected early end-of-stream"
msgstr "Final precoce de fluxo inesperado"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Chave “%s†não suportada na entrada de endereço “%sâ€"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Combinação chave/valor sem sentido na entrada de endereço “%sâ€"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -387,28 +395,28 @@ msgstr ""
"Endereço “%s†é inválido (é necessário um de caminho, dir, tmpdir ou chaves "
"abstratas)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Erro no endereço “%s†- o atributo “%s†está mal formado"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Transporte “%s†desconhecido ou não suportado para o endereço “%sâ€"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "Elemento “%s†de endereço não contém dois-pontos (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "Nome do transporte no elemento “%s†endereço não pode ser vazio"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -417,14 +425,14 @@ msgstr ""
"Par chave/valor %d, “%sâ€, no elemento “%s†de endereço, não contém um sinal "
"de igual"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
msgstr ""
"Par chave/valor %d, “%sâ€, no elemento “%s†de endereço não pode ser vazio"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -433,7 +441,7 @@ msgstr ""
"Erro ao desfazer o escape de chave ou valor no par Chave/Valor %d, “%sâ€, no "
"elemento “%s†de endereço"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -442,77 +450,78 @@ msgstr ""
"Erro no endereço “%s†— o transporte unix requer que exatamente uma das "
"chaves “path†ou “abstract†esteja definida"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr "Erro no endereço “%s†— o atributo host está em falta ou mal formado"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "Erro no endereço “%s†— o atributo port está em falta ou mal formado"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Erro no endereço “%s†— o atributo noncefile está em falta ou mal formado"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
-msgstr "Erro ao iniciar automaticamente: "
+msgstr "Erro ao autoiniciar: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Erro ao abrir o ficheiro nonce “%sâ€: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Erro ao ler do ficheiro nonce “%sâ€: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr "Erro ao ler do ficheiro nonce “%sâ€, esperados 16 bytes, obtidos %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Erro ao escrever o conteúdo do ficheiro nonce “%s†para o fluxo:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "O endereço indicado está vazio"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Impossível criar um canal de mensagem quando em setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr ""
+"Impossível criar um canal de mensagem quando o AT_SECURE está configurado"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "Impossível criar um canal de mensagem sem um id de máquina: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Não foi possível lançar automaticamente o D-Bus sem o $DISPLAY X-11"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Erro ao criar uma linha de comando “%sâ€: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Impossível determinar o endereço do canal de sessão (não implementado para "
"este SO)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -521,7 +530,7 @@ msgstr ""
"Impossível determinar o endereço de canal a partir da variável de sessão "
"DBUS_STARTER_BUS_TYPE — valor “%s†desconhecido"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -529,7 +538,7 @@ msgstr ""
"Impossível determinar o endereço do canal porque a variável de ambiente "
"DBUS_STARTER_BUS_TYPE não está definida"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Tipo de canal %d desconhecido"
@@ -559,12 +568,12 @@ msgstr ""
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Cancelado via GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Erro ao obter informação da diretório “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -572,32 +581,32 @@ msgstr ""
"As permissões da diretório “%s†estão mal formadas. Esperado o modo 0700, "
"obtido 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Erro ao criar o diretório “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Operação não suportada"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Erro ao abrir o chaveiro “%s†para leitura: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "Linha %d do chaveiro em “%s†com o conteúdo “%s†está mal formada"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -605,7 +614,7 @@ msgstr ""
"O primeiro bloco da linha %d do chaveiro em “%s†com o conteúdo “%s†está "
"mal formado"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -613,56 +622,56 @@ msgstr ""
"O segundo bloco da linha %d do chaveiro em “%s†com o conteúdo “%s†está mal "
"formado"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Impossível encontrar a cookie com o id %d no chaveiro em “%sâ€"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Erro ao criar o ficheiro de acesso exclusivo “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Erro ao eliminar o ficheiro de acesso exclusivo “%s†abandonado: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Erro ao fechar o ficheiro de acesso exclusivo “%s†(não ligado): %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Erro ao desfazer a ligação do ficheiro de acesso exclusivo “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Erro ao abrir o chaveiro “%s†para escrita: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(adicionalmente, também falhou a libertação para “%sâ€: %s) "
-#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "A ligação está fechada"
-#: gio/gdbusconnection.c:1903
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "Foi atingido o tempo de expiração"
-#: gio/gdbusconnection.c:2541
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"Foram encontrados parâmetros não suportados ao construir a ligação de cliente"
-#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
@@ -670,104 +679,104 @@ msgstr ""
"Não existe o ambiente “org.freedesktop.DBus.Properties†no objeto no caminho "
"%s"
-#: gio/gdbusconnection.c:4414
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "Não existe a propriedade “%sâ€"
-#: gio/gdbusconnection.c:4426
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "A propriedade “%s†não pode ser lida"
-#: gio/gdbusconnection.c:4437
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "A propriedade “%s†não pode ser escrita"
-#: gio/gdbusconnection.c:4457
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
"Erro ao definir a propriedade “%sâ€: esperado o tipo “%sâ€, obtido o “%sâ€"
-#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
-#: gio/gdbusconnection.c:6760
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "Não existe o ambiente “%sâ€"
-#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Não existe o ambiente “%s†no objeto no caminho %s"
-#: gio/gdbusconnection.c:5100
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "Não existe o método “%sâ€"
-#: gio/gdbusconnection.c:5131
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Tipo de mensagem, “%sâ€, não corresponde ao tipo “%s†esperado"
-#: gio/gdbusconnection.c:5334
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Já existe um objeto exportado para o ambiente %s em %s"
-#: gio/gdbusconnection.c:5561
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Impossível obter propriedade %s.%s"
-#: gio/gdbusconnection.c:5617
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Impossível definir propriedade %s.%s"
-#: gio/gdbusconnection.c:5796
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "O método “%s†devolveu o tipo “%sâ€, mas era esperado “%sâ€"
-#: gio/gdbusconnection.c:6872
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "O método “%s†no ambiente “%s†com a assinatura “%s†não existe"
-#: gio/gdbusconnection.c:6993
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Já existe uma subárvore exportada para %s"
-#: gio/gdbusconnection.c:7282
+#: gio/gdbusconnection.c:7266
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "O objeto não existe no caminho \"%s\""
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "tipo é INVÃLIDO"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "Mensagem METHOD_CALL: falta campo de cabeçalho PATH ou MEMBER"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "Mensagem ETHOD_RETURN: falta campo de cabeçalho REPLY_SERIAL"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "Mensagem ERROR: Falta campo de cabeçalho REPLY_SERIAL ou ERROR_NAME"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "Mensagem SIGNAL: falta campo de cabeçalho PATH, INTERFACE ou MEMBER"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -775,7 +784,7 @@ msgstr ""
"Mensagem SIGNAL: o campo de cabeçalho PATH está a utilizar o valor "
"reservado /org/freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -783,19 +792,19 @@ msgstr ""
"Mensagem SIGNAL: o campo de cabeçalho INTERFACE está a utilizar o valor "
"reservado org.freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "Tentativa de ler %lu byte mas só obtido %lu"
msgstr[1] "Tentativa de ler %lu bytes mas só obtidos %lu"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "Esperado o byte NUL após a cadeia “%s†mas encontrado o byte %d"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -805,21 +814,21 @@ msgstr ""
"de bytes %d (comprimento da cadeia é %d). A cadeia UTF-8 válida até esse "
"ponto era “%sâ€"
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Origem do valor muito antiga"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Valor processado “%s†não é um caminho de objeto D-Bus válido"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Valor processado “%s†não é uma assinatura D-Bus válida"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -832,7 +841,7 @@ msgstr[1] ""
"Encontrado um vetor de %u bytes de comprimento. Tamanho máximo é 2<<26 bytes "
"(64MiB)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -841,16 +850,16 @@ msgstr ""
"Encontrado um vetor de tipo \"a%c\", esperado um comprimento múltiplo de %u "
"bytes, obtidos %u bytes de comprimento"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
msgstr "Estruturas vazias (tuples) não são permitidas no D-Bus"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "Valor processado “%s†para variante não é uma assinatura D-Bus válida"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
@@ -858,7 +867,7 @@ msgstr ""
"Erro ao remover serialização GVariant com a cadeia de tipo “%s†do formato "
"de ligação D-Bus"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -867,28 +876,28 @@ msgstr ""
"Valor de \"endianness\" inválido. Esperado 0x6c (“lâ€) ou 0x42 (“Bâ€) mas "
"obtido o valor 0x%02x"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Versão principal de protocolo inválida. Esperada 1 mas obtida %d"
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Assinatura de cabeçalho encontrada, mas não do tipo assinatura"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"Assinatura de cabeçalho com a assinatura “%s†encontrada, mas o corpo da "
"mensagem está vazio"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "Valor processado “%s†não é uma assinatura D-Bus válida (para corpo)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -899,11 +908,11 @@ msgstr[1] ""
"Nenhum cabeçalho de assinatura na mensagem mas o corpo da mensagem tem %u "
"bytes"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Impossível remover serialização da mensagem: "
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
@@ -911,7 +920,7 @@ msgstr ""
"Erro ao serializar GVariant com a cadeia de tipo “%s†para o formato de "
"ligação D-Bus"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
@@ -919,18 +928,18 @@ msgstr ""
"Número de descritores de ficheiro na mensagem (%d) difere do campo no "
"cabeçalho (%d)"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Impossível serializar a mensagem: "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr ""
"O corpo da mensagem tem a assinatura “%s†mas não existe a assinatura de "
"cabeçalho"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -939,55 +948,55 @@ msgstr ""
"O corpo da mensagem tem o tipo de assinatura “%sâ€, mas a assinatura no campo "
"de cabeçalho é “%sâ€"
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr ""
"O corpo da mensagem está vazio mas a assinatura no campo de cabeçalho é "
"“(%s)â€"
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Resposta de erro com corpo do tipo “%sâ€"
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Resposta de erro com corpo vazio"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(insira um qualquer carácter para fechar esta janela)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr ""
"Dbus de sessão não se encontra em execução e o início automático falhou"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Impossível obter o perfil de equipamento: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Incapaz de carregar %s ou %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Erro ao invocar StartServiceByName para %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Resposta %d inesperada do método StartServiceByName(“%sâ€)"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1042,67 +1051,67 @@ msgstr ""
"\n"
"Utilize \"%s COMMAND --help\" para obter ajuda sobre cada comando.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Erro: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Erro ao processar XML de introspeção: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Erro: %s não é um nome válido\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Erro: %s não é um caminho de objeto válido\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Ligar ao bus de sistema"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Ligar ao bus de sessão"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Ligar ao endereço D-Bus especificado"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Opções de destino da ligação:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Opções que especificam o destino da ligação"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Nenhum destino de ligação especificado"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Múltiplos destinos de ligação especificados"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr ""
"Aviso: De acordo com os dados de introspeção, o ambiente “%s†não existe\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1111,160 +1120,164 @@ msgstr ""
"Aviso: De acordo com os dados de introspeção, o método “%s†não existe no "
"ambiente “%sâ€\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Destino opcional para o sinal (nome único)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Caminho do objeto sobre o qual emitir sinal"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Nome do sinal e do ambiente"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Emitir um sinal."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Erro ao ligar: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Erro: %s não é um nome único de canal (bus) válido.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Erro: caminho de objeto não está especificado\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Erro: nome do sinal não é especificado\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Erro: nome do sinal “%s†é inválido\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Erro: %s não é um nome de ambiente válido\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Erro: %s não é um nome de membro válido\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Erro ao processar o parâmetro %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Erro ao despejar a ligação: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Nome de destino no qual invocar o método"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Caminho do objeto no qual invocar o método"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Método e nome de ambiente"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Tempo limite em segundos"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Permitir autorização interativa"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Invocar um método num objeto remoto."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Erro: Destino não está especificado\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Erro: %s não é um nome de canal válido\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Erro: nome de método não é especificado\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Erro: nome de método “%s†é inválido\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Erro ao processar o parâmetro %d do tipo “%sâ€: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Erro ao adicionar manipulador: %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Nome do destino sobre o qual realizar a introspeção"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Caminho do objeto sobre o qual realizar a introspeção"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Imprimir XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Realizar introspeção dos sub processos"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Imprimir só propriedades"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Realizar a introspeção de um objeto remoto."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Nome do destino a monitorizar"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Caminho do objeto a monitorizar"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Monitorizar um objeto remoto."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Erro: impossível monitorizar um ligação non-message-bus\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Serviço a ativar enquanto espera por um outro (nome conhecido)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1272,64 +1285,69 @@ msgstr ""
"Compasso de espera antes de sair com erro (segundos); 0 para nenhum "
"(predefinição)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
-msgstr "[OPÇÃO...] NOME-"
+msgstr "[OPÇÃO…] BUS-NAME"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Esperar por um nome de canal aparecer."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Erro: um serviço para ser ativado precisa ser especificado.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "Erro: um serviço a ser esperado precisa ser especificado\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Erro: demasiados argumentos\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Erro: %s não é um nome de canal válido\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Não autorizado a alterar as definições de depuração"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Sem nome"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "Ficheiro do ambiente de trabalho não especificou campo Exec"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Impossível encontrar o terminal necessário à aplicação"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr ""
"Impossível criar a pasta de configurações de utilizador da aplicação %s: %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Impossível criar a pasta de configurações MIME do utilizador %s: %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "Informação da aplicação não possui um identificador"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Impossível criar ficheiro do ambiente de trabalho do utilizador %s"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Definição personalizada de %s"
@@ -1357,7 +1375,7 @@ msgstr "a unidade não implementa a reprodução"
msgid "drive doesn’t implement stop"
msgstr "a unidade não implementa a paragem"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "O suporte TLS não implementa a recuperação de fomatos TLS"
@@ -1398,73 +1416,73 @@ msgstr "Esperado um GEmblem para o GEmblemedIcon"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Montagem contida não existe"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Impossível copiar sobre um diretório"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Impossível copiar uma pasta sobre uma pasta"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Ficheiro de destino já existe"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Impossível copiar diretório recursivamente"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Dividir ficheiros não é suportado"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Erro ao dividir o ficheiro: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Copiar (reflink/clonar) entre montados não é suportado"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Copiar (reflink/clonar) não é suportado ou é inválido"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Copiar (reflink/clonar) não é suportado ou falhou"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Impossível copiar ficheiro especial"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Dado um valor de ligação simbólica inválida"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Ligações simbólicas não são suportadas"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Não existe suporte para o lixo"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Nomes de ficheiros não podem conter “%câ€"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "unidade não implementa a montagem"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Não existe nenhuma aplicação registada para gerir este ficheiro"
@@ -1509,7 +1527,7 @@ msgstr "Fluxo de entrada não permite truncar"
msgid "Truncate not supported on stream"
msgstr "Fluxo não suporta truncar"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Nome de máquina inválido"
@@ -1596,7 +1614,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Impossível processar “%s†como a máscara de endereço IP"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Espaço insuficiente para o endereço do socket"
@@ -1644,7 +1662,7 @@ msgstr "Comandos:"
#: gio/gio-tool.c:229
msgid "Concatenate files to standard output"
-msgstr "Concatenar ficheiros para a saída pre-definida"
+msgstr "Concatenar ficheiros para a saída predefinida"
#: gio/gio-tool.c:230
msgid "Copy one or more files"
@@ -1696,7 +1714,7 @@ msgstr "Apagar um ou mais ficheiros"
#: gio/gio-tool.c:242
msgid "Read from standard input and save"
-msgstr "Ler da entrada padrão e guardar"
+msgstr "Ler da entrada predefinida e guardar"
#: gio/gio-tool.c:243
msgid "Set a file attribute"
@@ -1731,7 +1749,7 @@ msgstr "LOCALIZAÇÃO"
#: gio/gio-tool-cat.c:138
msgid "Concatenate files and print to standard output."
-msgstr "Concatenar ficheiros e imprimir para a saída padrão."
+msgstr "Concatenar ficheiros e imprimir para a saída predefinida."
#: gio/gio-tool-cat.c:140
msgid ""
@@ -2434,15 +2452,15 @@ msgstr "Erro ao comprimir o ficheiro %s"
msgid "text may not appear inside <%s>"
msgstr "não pode surgir texto dentro de <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Mostrar a versão da aplicação e sair"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Nome do ficheiro de saída"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2450,59 +2468,63 @@ msgstr ""
"O diretório de onde ler os ficheiros referenciados no FICHEIRO do "
"(predefinição: diretório atual)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "PASTA"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
"Gerar o resultado no formato selecionado pela extensão do nome do ficheiro "
"de saída"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Gerar o cabeçalho de código"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr ""
"Gerar o código-fonte utilizado para ligar o ficheiro de recurso ao seu código"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Gerar lista de dependências"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Nome do ficheiro de dependência a gerar"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Incluir alvos falsos no ficheiro de dependência gerado"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Não criar e registar um recurso automaticamente"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Não exportar funções; declará-las G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
msgstr ""
"Não imbuir dados de recurso num ficheiro C; assuma-o ligado externamente"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "Nome do identificador C utilizado no código fonte gerado"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "O compilador C de destino (padrão: a variável de ambiente CC)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2513,7 +2535,7 @@ msgstr ""
"xml,\n"
"e o ficheiro de recurso tem a extensão .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Deverá indicar apenas um nome de ficheiro\n"
@@ -3310,13 +3332,13 @@ msgstr "Erro ao criar a cópia da cópia de segurança: %s"
msgid "Error renaming temporary file: %s"
msgstr "Erro ao renomear ficheiro temporário: %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "Erro ao truncar ficheiro: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Erro ao abrir o ficheiro “%sâ€: %s"
@@ -3338,7 +3360,7 @@ msgstr "O ficheiro foi alterado externamente"
msgid "Error removing old file: %s"
msgstr "Erro ao remover o ficheiro antigo: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Fornecido um GSeekType inválido"
@@ -3350,15 +3372,15 @@ msgstr "Pedido de procura inválido"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Impossível truncar um GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Fluxo de saída de memória não é redimensionável"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Falha ao redimensionar fluxo de saída de memória"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3366,11 +3388,11 @@ msgstr ""
"Quantidade de memória necessária para processar a escrita é maior do que o "
"espaço de endereçamento disponível"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Pedida uma procura para antes do início do fluxo"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Pedida uma procura para depois do final do fluxo"
@@ -3475,18 +3497,22 @@ msgstr "Soma dos vetores passados ao %s demasiado longa"
msgid "Source stream is already closed"
msgstr "Fluxo de origem já está fechado"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Erro ao resolver “%sâ€: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s não implementado"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Domínio inválido"
@@ -3524,11 +3550,11 @@ msgid ""
msgstr ""
"Lista recursos\n"
"Se for especificada uma SECÇÃO, apenas listar recursos nesta secção\n"
-"Se for especificado um CAMINHO, apenas listar recursos que coincidam"
+"Se for especificado uma LOCALIZAÇÃO, apenas listar recursos que coincidam"
#: gio/gresource-tool.c:509 gio/gresource-tool.c:519
msgid "FILE [PATH]"
-msgstr "FICHEIRO [CAMINHO]"
+msgstr "FICHEIRO [LOCALIZAÇÃO]"
#: gio/gresource-tool.c:510 gio/gresource-tool.c:520 gio/gresource-tool.c:527
msgid "SECTION"
@@ -3543,7 +3569,7 @@ msgid ""
msgstr ""
"Listar recursos com detalhes\n"
"Se for especificada uma SECÇÃO, apenas listar recursos nesta secção\n"
-"Se for especificado um CAMINHO, apenas listar recursos que coincidam\n"
+"Se for especificado uma LOCALIZAÇÃO, apenas listar recursos que coincidam\n"
"Detalhes incluem a secção, tamanho e compressão"
#: gio/gresource-tool.c:525
@@ -3552,7 +3578,7 @@ msgstr "Extrair um ficheiro de recurso para o terminal"
#: gio/gresource-tool.c:526
msgid "FILE PATH"
-msgstr "CAMINHO FICHEIRO"
+msgstr "LOCALIZAÇÃO FICHEIRO"
#: gio/gresource-tool.c:540
msgid ""
@@ -3601,7 +3627,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " SECÇÃO Um nome (opcional) de secção elf\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " COMANDO O comando (opcional) a ser explicado\n"
@@ -3620,21 +3646,22 @@ msgstr ""
#: gio/gresource-tool.c:578
msgid "[PATH]"
-msgstr "[CAMINHO]"
+msgstr "[LOCALIZAÇÃO]"
#: gio/gresource-tool.c:580
msgid " PATH An (optional) resource path (may be partial)\n"
-msgstr " CAMINHO Um caminho (opcional) de recurso (pode ser parcial)\n"
+msgstr ""
+" LOCALIZAÇÃO Uma localização (opcional) de recurso (pode ser parcial)\n"
#: gio/gresource-tool.c:581
msgid "PATH"
-msgstr "CAMINHO"
+msgstr "LOCALIZAÇÃO"
#: gio/gresource-tool.c:583
msgid " PATH A resource path\n"
-msgstr " CAMINHO Um caminho de recurso\n"
+msgstr " LOCALIZAÇÃO Uma localização de recurso\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Não existe o esquema “%sâ€\n"
@@ -3665,35 +3692,35 @@ msgstr "O caminho tem de terminar com uma barra (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "O caminho não pode conter duas barras adjacentes (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "O valor especificado encontra-se fora do intervalo válido\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "O valor da chave não pode ser escrito\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Listar os esquemas instalados (não-realocáveis)"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Listar os esquemas instalados realocáveis"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Listar as chaves no ESQUEMA"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
-msgstr "ESQUEMA[:CAMINHO]"
+msgstr "ESQUEMA[:LOCALIZAÇÃO]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Listar os sub processos de ESQUEMA"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3701,48 +3728,48 @@ msgstr ""
"Listar as chaves e valores, recursivamente\n"
"Se não for indicado um ESQUEMA, listar todas as chaves\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
-msgstr "[ESQUEMA[:CAMINHO]]"
+msgstr "[ESQUEMA[:LOCALIZAÇÃO]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Obter o valor da CHAVE"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
-msgstr "ESQUEMA[:CAMINHO] CHAVE"
+msgstr "ESQUEMA[:LOCALIZAÇÃO] CHAVE"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Consultar o intervalo de valores válidos para a CHAVE"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Consultar o descritor para a CHAVE"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Definir o valor da CHAVE com o VALOR"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
-msgstr "ESQUEMA[:CAMINHO] CHAVE VALOR"
+msgstr "ESQUEMA[:LOCALIZAÇÃO] CHAVE VALOR"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Repor o valor predefinido de CHAVE"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Repor todas as chaves no ESQUEMA para os seus valores predefinidos"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Verificar se é possível definir o valor de CHAVE"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3752,11 +3779,11 @@ msgstr ""
"Se nenhuma chave for especificada, monitorizar todas as chaves do ESQUEMA.\n"
"Utilizar ^C para parar de monitorizar.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
-msgstr "ESQUEMA[:CAMINHO] [CHAVE]"
+msgstr "ESQUEMA[:LOCALIZAÇÃO] [CHAVE]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3804,7 +3831,7 @@ msgstr ""
"Utilize \"gsettings help COMANDO\" para obter ajuda detalhada.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3819,225 +3846,225 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " DIRESQUEMAS Um pasta onde procurar por esquemas adicionais\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
msgstr ""
" ESQUEMA O nome do esquema\n"
-" CAMINHO O caminho, para esquemas realocáveis\n"
+" LOCALIZAÇÃO A localização, para esquemas realocáveis\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " CHAVE A chave (opcional) dentro do esquema\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " CHAVE A chave dentro do esquema\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " VALOR O valor a definir\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Impossível ler esquemas de %s: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Nenhum ficheiro de esquema instalado\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Indicado um nome de esquema vazio\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Não existe a chave “%sâ€\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Socket inválido, não inicializado"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Socket inválido, a inicialização falhou devido a: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Socket já está fechado"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Tempo expirou no I/O de socket"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "a criar o GSocket do fd: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Impossível criar socket: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Foi especificada uma família desconhecida"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Foi especificado um protocolo desconhecido"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "Impossível utilizar operações datagram em sockets não datagram."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Impossível utilizar operações datagram num socket com um tempo de expiração "
"definido."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "impossível obter o endereço local: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "impossível obter o endereço remoto: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "impossível escutar: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Erro ao ligar-se ao endereço: %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Erro ao juntar-se a um grupo multicast: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Erro ao sair do grupo multicast: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Suporte indisponível para multicast específico da origem"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Família de socket não suportada"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "fonte-específica não é um endereço IPv4"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Nome de ambiente demasiado extenso"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Ambiente não encontrado: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "Suporte indisponível para difusão de fonte-específica IPv4"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "Suporte indisponível para difusão de fonte-específica IPv6"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Erro ao aceitar a ligação: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Ligação em curso"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Impossível obter o erro pendente: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Erro ao receber os dados: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Erro ao enviar os dados: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Impossível desligar o socket: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Erro ao fechar o socket: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "A aguardar pela condição do socket: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Incapaz de enviar a mensagem: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Vectores de mensagem demasiado grandes"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Erro ao enviar a mensagem: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage não é suportada em Windows"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Erro ao receber a mensagem: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Impossível ler as credenciais do socket: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "g_socket_get_credentials não implementado neste SO"
@@ -4055,11 +4082,11 @@ msgstr "Impossível ligar a %s: "
msgid "Could not connect: "
msgstr "Impossível ligar: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "Não há suporte à realização de proxy sobre ligações não-TCP."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "O protocolo de proxy “%s†não é suportado."
@@ -4161,7 +4188,7 @@ msgstr "Proxy SOCKSv5 não suporta o tipo de endereço indicado."
msgid "Unknown SOCKSv5 proxy error."
msgstr "Erro de proxy SOCKSv5 desconhecido."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr "Falha ao criar canal para comunicar com sub processo (%s)"
@@ -4185,44 +4212,66 @@ msgstr "Não foram encontrados endereços válidos"
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "Erro ao realizar a resolução invertida de “%sâ€: %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr "Erro ao analisar o registo DNS %s: pacote DNS malformado"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "Nenhum registo DNS do tipo pedido para “%sâ€"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "Temporariamente indisponível para resolver “%sâ€"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "Erro ao resolver “%sâ€"
-#: gio/gtlscertificate.c:431
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Pacote DNS malformado"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "Falha ao analisar a resposta do DNS para \"%s\": "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
-msgstr "Impossível encontrar uma chave privada codificada PEM"
+msgstr "Nenhuma chave privada codificada PEM encontrada"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Impossível desencriptar a chave privada codificada PEM"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Impossível processar a chave privada codificada PEM"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
-msgstr "Impossível encontrar um certificado codificado PEM"
+msgstr "Nenhum certificado codificado PEM encontrado"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Impossível processar certificado codificado PEM"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "O backend TLS atual não suporta o PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "Este GTlsBackend não suporta a criação de certificados PKCS # 11"
@@ -4248,54 +4297,62 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "A palavra-passe introduzida está incorreta."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "O envio de FD não é suportado"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "Era esperada 1 mensagem de controlo, obtida %d"
msgstr[1] "Era esperada 1 mensagem de controlo, obtidas %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Tipo inesperado de dados basilares"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "Esperado um fd, obtido %d\n"
msgstr[1] "Esperado um fd, obtidos %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Recebido um fd inválido"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "A receção FD não é suportada"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Erro ao enviar as credenciais: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Erro ao verificar se SO_PASSCRED está ativo para o socket: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Erro ao ativar SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Deveria ler um único byte para receber credenciais mas foram lidos zero bytes"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Não eram esperadas mensagens de controlo, obtidas %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Erro ao desativar SO_PASSCRED: %s"
@@ -4311,7 +4368,7 @@ msgstr "Erro ao ler do descritor do ficheiro: %s"
msgid "Error closing file descriptor: %s"
msgstr "Erro ao fechar o descritor do ficheiro: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Raiz do sistema de ficheiros"
@@ -4322,7 +4379,7 @@ msgstr "Raiz do sistema de ficheiros"
msgid "Error writing to file descriptor: %s"
msgstr "Erro ao escrever no descritor do ficheiro: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr ""
"Endereços abstratos de sockets de domínio UNIX não são suportados neste "
@@ -4475,8 +4532,8 @@ msgstr "Falha ao expandir a linha de execução “%s†com o URI “%sâ€"
msgid "Unrepresentable character in conversion input"
msgstr "Sequência inválida na conversão da entrada"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Sequência de caracteres parcial no final da origem"
@@ -5041,15 +5098,15 @@ msgstr "Canal termina num carácter parcial"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Impossível efetuar uma leitura em bruto em g_io_channel_read_to_end"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "Impossível encontrar um ficheiro de chave válido nas pastas procuradas"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Não é um ficheiro normal"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5057,49 +5114,49 @@ msgstr ""
"O ficheiro de chave contém a linha “%s†que não é um par chave-valor, grupo "
"ou comentário"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Nome de grupo inválido: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Ficheiro de chave não começa com um grupo"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Nome de chave inválida: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Nome de chave inválida: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Ficheiro de chave contém uma codificação não suportada “%sâ€"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Ficheiro de chave não possui um grupo “%sâ€"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Ficheiro de chave não possui a chave “%s†no grupo “%sâ€"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "Ficheiro de chave contém a chave “%s†com o valor “%s†que não é UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr "Ficheiro de chaves contém a chave “%s†cujo valor não é interpretável."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5108,37 +5165,37 @@ msgstr ""
"Ficheiro de chave contém a chave “%s†no grupo “%s†que tem um valor que não "
"pode ser interpretado."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "Chave “%s†no grupo “%s†tem o valor “%s†onde %s era esperado"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Ficheiro de chave contém caracteres mascarados no final da linha"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr ""
"Ficheiro de chave contém uma sequência de caracteres mascarados inválida “%sâ€"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "Impossível interpretar o valor “%s†como um numérico."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "Valor inteiro “%s†para além do limite permitido"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "Impossível interpretar o valor “%s†como um número vírgula flutuante."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "Impossível interpretar o valor “%s†como lógico."
@@ -5438,7 +5495,7 @@ msgstr "Erro ao processar a opção %s"
msgid "Missing argument for %s"
msgstr "Argumento em falta para %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Opção %s desconhecida"
@@ -5844,142 +5901,152 @@ msgstr "Texto estava vazio (ou apenas continha espaços)"
msgid "Failed to read data from child process (%s)"
msgstr "Falha ao ler dados de sub processo (%s)"
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "Erro inesperado ao ler dados de sub processo (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Erro inesperado em waitpid() (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
-msgstr "Processo sub processo terminou com o código %ld"
+msgstr "Sub processo terminou com o código %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
-msgstr "Processo sub processo morto com o sinal %ld"
+msgstr "Sub processo morto com o sinal %ld"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
-msgstr "Processo sub processo parado com o sinal %ld"
+msgstr "Sub processo parado com o sinal %ld"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "O sub processo terminou anormalmente"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
-msgstr "Falha ao ler de canal de sub processo (%s)"
+msgstr "Falha ao ler de canal acima (%s)"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Falha ao criar sub processo “%s†(%s)"
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
-msgstr "Falha ao efetuar fork (%s)"
+msgstr "Falha ao bifurcar \"fork\" (%s)"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Falha ao ir para o diretório “%s†(%s)"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Falha ao executar o sub processo “%s†(%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2550
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Falha ao redirecionar saída ou entrada de sub processo (%s)"
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Falha ao abrir o ficheiro para remapear o descritor do ficheiro (%s)"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2558
+#, c-format
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Falha ao duplicar descritor do ficheiro para o sub processo (%s)"
+
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Falha ao efetuar fork de sub processo (%s)"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2575
#, c-format
msgid "Failed to close file descriptor for child process (%s)"
msgstr "Falha em fechar o descritor de ficheiro para sub processo (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Erro desconhecido ao executar sub processo “%sâ€"
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
-msgstr "Impossível ler dados suficientes de canal pid do sub processo (%s)"
+msgstr "Impossível ler dados suficientes de canal pid acima (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Falha ao ler dados de sub processo"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Falha ao executar sub processo (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Falha ao dup() no sub processo (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
-msgstr "Nome de aplicação inválido: %s"
+msgstr "Nome de programa inválido: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Cadeia inválida no vetor de argumentos na posição %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Cadeia inválida no ambiente: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Pasta de trabalho inválida: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Falha ao executar aplicação auxiliar (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
msgstr ""
"Erro inesperado no g_io_channel_win32_poll() ao ler dados de um sub processo"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Cadeia vazia não é um número"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "“%s†não é um número com sinal"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Número “%s†está fora do limite [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "“%s†não é um valor sem sinal"
@@ -6040,175 +6107,175 @@ msgstr "URI não é absoluto, e nenhuma base URI foi fornecida"
msgid "Missing ‘=’ and parameter value"
msgstr "‘=’ e valor de parâmetro em falta"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Falha ao alocar memória"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Carácter fora do limite para UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Sequência inválida na conversão da entrada"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Carácter fora do limite para UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u byte"
msgstr[1] "%u bytes"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6216,7 +6283,7 @@ msgstr[0] "%u bit"
msgstr[1] "%u bits"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6224,7 +6291,7 @@ msgstr[0] "%s byte"
msgstr[1] "%s bytes"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6236,32 +6303,32 @@ msgstr[1] "%s bits"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
@@ -6364,9 +6431,6 @@ msgstr "%.1f EB"
#~ msgstr ""
#~ "Incapaz de encontrar o tipo de monitor por omissão do diretório local"
-#~ msgid "URIs not supported"
-#~ msgstr "Não são suportados URIs"
-
#~ msgid "association changes not supported on win32"
#~ msgstr "alterações de associação não são suportadas em win32"
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 9494962e8..bfee3cbc9 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -14,25 +14,41 @@
# Jonh Wendell <jwendell@gnome.org>, 2009, 2010, 2012.
# Felipe Braga <fbobraga@gmail.com>, 2015.
# Artur de Aquino Morais <artur.morais93@outlook.com>, 2016.
-# Rafael Fontenelle <rafaelff@gnome.org>, 2013-2021.
-# Enrico Nicoletto <liverig@gmail.com>, 2013-2014, 2016, 2021.
+# Enrico Nicoletto <hiko@duck.com>, 2013-2014, 2016, 2021-2022.
+# Leônidas Araújo <leorusvellt@hotmail.com>, 2022.
+# Rafael Fontenelle <rafaelff@gnome.org>, 2013-2022.
# Matheus Barbosa <mdpb.matheus@gmail.com>, 2022.
#
msgid ""
msgstr ""
"Project-Id-Version: glib\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-01-26 14:31+0000\n"
-"PO-Revision-Date: 2022-01-25 19:30-0300\n"
-"Last-Translator: Matheus Barbosa <mdpb.matheus@gmail.com>\n"
+"POT-Creation-Date: 2022-04-14 12:00+0000\n"
+"PO-Revision-Date: 2022-04-15 13:53-0300\n"
+"Last-Translator: Enrico Nicoletto <hiko@duck.com>\n"
"Language-Team: Brazilian Portuguese <gnome-pt_br-list@gnome.org>\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n > 1)\n"
-"X-Generator: Gtranslator 40.0\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"X-Generator: Poedit 3.0.1\n"
"X-Project-Style: gnome\n"
+"X-DL-Team: pt_BR\n"
+"X-DL-Module: glib\n"
+"X-DL-Branch: main\n"
+"X-DL-Domain: po\n"
+"X-DL-State: Translating\n"
+
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Definir aplicativos padrão ainda não suportado"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"Definir o aplicativo como usado pela última vez para o tipo ainda não "
+"suportado"
#: gio/gapplication.c:500
msgid "GApplication options"
@@ -57,7 +73,7 @@ msgid "Replace the running instance"
msgstr "Substitui a instância em execução"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Exibe a ajuda"
@@ -69,7 +85,7 @@ msgstr "[COMANDO]"
msgid "Print version"
msgstr "Exibe a versão"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Exibe a informação da versão e sai"
@@ -132,8 +148,8 @@ msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr ""
"Identificador do aplicativo em formato D-Bus (ex: org.exemplo.visualizador)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "ARQUIVO"
@@ -149,7 +165,7 @@ msgstr "AÇÃO"
# Espaço inicial acrescentado para alinhar o texto (gapplication help action) -- Rafael
#: gio/gapplication-tool.c:75
msgid "The action name to invoke"
-msgstr " O nome da ação a ser invocada"
+msgstr " O nome da ação a ser invocada"
#: gio/gapplication-tool.c:76
msgid "PARAMETER"
@@ -158,9 +174,9 @@ msgstr "PARÂMETRO"
# Espaço inicial acrescentado para alinhar o texto (gapplication help action) -- Rafael
#: gio/gapplication-tool.c:76
msgid "Optional parameter to the action invocation, in GVariant format"
-msgstr " Parâmetro opcional para a invocação da ação, em formato GVariant"
+msgstr "Parâmetro opcional para a invocação da ação, em formato GVariant"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -174,7 +190,7 @@ msgid "Usage:\n"
msgstr "Uso:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argumentos:\n"
@@ -298,7 +314,7 @@ msgstr "O fluxo já está fechado"
msgid "Truncate not supported on base stream"
msgstr "Não há suporte para truncar fluxo base"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -319,7 +335,7 @@ msgstr "Espaço insuficiente no destino"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Sequência de bytes inválida na entrada de conversão"
@@ -329,7 +345,7 @@ msgstr "Sequência de bytes inválida na entrada de conversão"
msgid "Error during conversion: %s"
msgstr "Erro durante a conversão: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Sem suporte a inicialização cancelável"
@@ -343,37 +359,37 @@ msgstr "Não há suporte à conversão do conjunto de caracteres “%s†para â
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Não foi possível abrir conversor de “%s†para “%sâ€"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "tipo %s"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Tipo desconhecido"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "tipo de arquivo %s"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials contém dados inválidos"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials não está implementado neste SO"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Não há suporte ao GCredentials para sua plataforma"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GCredentials não contém um ID de processo neste SO"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr ""
"Não é possível fazer uso de falsificação de credenciais neste sistema "
@@ -383,18 +399,18 @@ msgstr ""
msgid "Unexpected early end-of-stream"
msgstr "Fim do fluxo inesperadamente prematuro"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Não há suporte a chave “%s†na entrada de endereço “%sâ€"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr ""
"Combinação de pares chave/valor sem sentido na entrada de endereço “%sâ€"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -403,28 +419,28 @@ msgstr ""
"O endereço “%s†é inválido (é necessário exatamente um dentre: caminho, "
"diretório, diretório temporário ou chaves abstratas)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Erro no endereço “%s†— o atributo “%s†está malformado"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Transporte desconhecido ou sem suporte “%s†para o endereço “%sâ€"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "O elemento endereço “%s†não contém um caractere de dois-pontos (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "O nome do transporte no elemento de endereço “%s†não pode estar vazio"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -433,7 +449,7 @@ msgstr ""
"O par chave/valor %d, “%sâ€, no elemento endereço “%sâ€, não contém um sinal "
"de igual"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
@@ -441,7 +457,7 @@ msgstr ""
"O par chave/valor %d, “%sâ€, no elemento endereço “%sâ€, não pode ter uma "
"chave vazia"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -450,7 +466,7 @@ msgstr ""
"Erro ao distinguir a chave sem escape ou valor no par chave/valor %d, “%sâ€, "
"no elemento endereço “%sâ€"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -459,82 +475,84 @@ msgstr ""
"Erro no endereço “%s†— o transporte Unix requer exatamente uma das chaves "
"“path†ou “abstract†sejam definidas"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr ""
"Erro no endereço “%s†— o atributo servidor está faltando ou malformado"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "Erro no endereço “%s†— o atributo porta está faltando ou malformado"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Erro no endereço “%s†— o atributo do arquivo de valor de uso único está "
"faltando ou malformado"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Erro ao iniciar automaticamente: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Erro ao abrir arquivo de valor de uso único “%sâ€: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Erro ao ler arquivo de valor de uso único “%sâ€: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"Erro ao ler o arquivo de valor de uso único “%sâ€; era esperado 16 bytes, mas "
"foi obtido %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Erro ao gravar o arquivo de valor de uso único “%s†no fluxo:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "O endereço fornecido está vazio"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Não foi possível chamar um barramento de mensagens com setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr ""
+"Não é possível chamar um barramento de mensagens quando AT_SECURE está "
+"definido"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr ""
"Não foi possível chamar um barramento de mensagens sem um ID de máquina: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Não foi possível iniciar automaticamente o D-Bus sem X11 $DISPLAY"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Erro ao chamar a linha de comandos “%sâ€: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Não foi possível determinar o endereço de barramento da sessão (sem "
"implementação para este SO)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -543,7 +561,7 @@ msgstr ""
"Não foi possível determinar o endereço de barramento da variável de ambiente "
"DBUS_STARTER_BUS_TYPE — valor desconhecido “%sâ€"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -551,7 +569,7 @@ msgstr ""
"Não foi possível determinar o endereço do barramento porque a variável de "
"ambiente DBUS_STARTER_BUS_TYPE não está definida"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Tipo de barramento %d desconhecido"
@@ -580,12 +598,12 @@ msgstr "IDs de usuário devem ser o mesmo para a ponta e o servidor"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Cancelado via GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Erro ao obter informação para o diretório “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -593,32 +611,32 @@ msgstr ""
"As permissões no diretório “%s†estão malformadas. É esperado 0700, mas foi "
"obtido 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Erro ao criar o diretório “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Operação sem suporte"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Erro ao abrir o chaveiro “%s†para leitura: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "A linha %d do chaveiro em “%s†com o conteúdo “%s†está malformado"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -626,7 +644,7 @@ msgstr ""
"O primeiro símbolo da linha %d do chaveiro em “%s†com o conteúdo “%s†está "
"malformado"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -634,167 +652,167 @@ msgstr ""
"O segundo símbolo da linha %d do chaveiro em “%s†com o conteúdo “%s†está "
"malformado"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Não foi possível localizar um anexo com o ID %d no chaveiro em “%sâ€"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Erro ao criar o arquivo de bloqueio “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Erro ao excluir o arquivo de bloqueio anterior “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Erro ao fechar o arquivo de bloqueio (desvinculado) “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Erro ao desvincular o arquivo de bloqueio “%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Erro ao abrir o chaveiro “%s†para escrita: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Adicionalmente, liberar o bloqueio de “%s†também falhou: %s) "
-#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "A conexão está fechada"
-#: gio/gdbusconnection.c:1903
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "O tempo limite foi alcançado"
-#: gio/gdbusconnection.c:2541
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"Foram encontrados sinalizadores sem suporte ao construir uma conexão do lado "
"do cliente"
-#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr ""
"Nenhuma interface “org.freedesktop.DBus.Properties†no objeto no caminho %s"
-#: gio/gdbusconnection.c:4414
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "Nenhuma propriedade “%sâ€"
-#: gio/gdbusconnection.c:4426
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "A propriedade “%s†não pode ser lida"
-#: gio/gdbusconnection.c:4437
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "A propriedade “%s†não pode ser escrita"
-#: gio/gdbusconnection.c:4457
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
"Erro ao definir a propriedade “%sâ€: o tipo esperado é “%sâ€, mas obteve “%sâ€"
-#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
-#: gio/gdbusconnection.c:6760
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "Nenhuma interface “%sâ€"
-#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Nenhuma interface “%s†no objeto no caminho %s"
-#: gio/gdbusconnection.c:5100
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "Método inexistente “%sâ€"
-#: gio/gdbusconnection.c:5131
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "O tipo da mensagem, “%sâ€, não equivale ao tipo esperado “%sâ€"
-#: gio/gdbusconnection.c:5334
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Um objeto já foi exportado para a interface %s em %s"
-#: gio/gdbusconnection.c:5561
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Não foi possível obter a propriedade %s.%s"
-#: gio/gdbusconnection.c:5617
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Não foi possível definir a propriedade %s.%s"
-#: gio/gdbusconnection.c:5796
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "O método “%s†retornou o tipo “%sâ€, mas é esperado “%sâ€"
-#: gio/gdbusconnection.c:6872
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "O método “%s†na interface “%s†com a assinatura “%s†não existe"
-#: gio/gdbusconnection.c:6993
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Uma subárvore já foi exportada para %s"
-#: gio/gdbusconnection.c:7282
+#: gio/gdbusconnection.c:7266
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "O objeto não existe no caminho “%sâ€"
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "o tipo é INVALID"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr ""
"Mensagem de METHOD_CALL: O campo de cabeçalho PATH ou MEMBER está faltando"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr ""
"Mensagem de METHOD_RETURN: O campo de cabeçalho REPLY_SERIAL está faltando"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr ""
"Mensagem de ERROR: O campo de cabeçalho REPLY_SERIAL ou ERROR_NAME está "
"faltando"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr ""
"Mensagem de SIGNAL: O campo de cabeçalho PATH, INTERFACE ou MEMBER está "
"faltando"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -802,7 +820,7 @@ msgstr ""
"Mensagem de SIGNAL: O campo de cabeçalho PATH está usando o valor reservado /"
"org/freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -810,21 +828,21 @@ msgstr ""
"Mensagem de SIGNAL: O campo de cabeçalho INTERFACE está usando o valor "
"reservado org.freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "Ao tentar ler %lu byte obteve-se %lu"
msgstr[1] "Ao tentar ler %lu bytes obteve-se %lu"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr ""
"Era esperado um byte NUL (nulo) após o texto “%sâ€, mas foi localizado o byte "
"%d"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -834,21 +852,21 @@ msgstr ""
"posição %d (tamanho do texto é %d). O texto UTF-8 válido até este ponto era "
"“%sâ€"
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Valor aninhado profundo demais"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "O valor “%s†analisado não é um objeto de caminho D-Bus válido"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "O valor “%s†analisado não é uma assinatura D-Bus válida"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -861,7 +879,7 @@ msgstr[1] ""
"Foi encontrado um vetor com tamanho de %u bytes. O tamanho máximo é de 2<<26 "
"bytes (64 MiB)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -871,16 +889,16 @@ msgstr ""
"comprimento múltiplo de %u bytes, porém foi localizado %u bytes em "
"comprimento"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
msgstr "Estruturas (tuplas) vazias não são permitidas no D-Bus"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "O valor “%s†analisado para variante não é uma assinatura D-Bus válida"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
@@ -888,7 +906,7 @@ msgstr ""
"Erro ao desserializar GVariant com o texto de tipo “%s†do formato "
"delimitado pelo D-Bus"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -897,31 +915,31 @@ msgstr ""
"Valor identificador de endian inválido. Era esperado 0x6c (“lâ€) ou 0x42 "
"(“Bâ€), mas foi localizado o valor 0x%02x"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr ""
"Versão majoritária de protocolo inválida. Era esperado 1, mas foi localizado "
"%d"
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Cabeçalho da assinatura localizado, mas não é do tipo assinatura"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"O cabeçalho de assinatura foi localizado com a assinatura “%sâ€, mas o corpo "
"da mensagem está vazio"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr ""
"O valor “%s†analisado não é uma assinatura D-Bus válida (para o corpo)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -932,11 +950,11 @@ msgstr[1] ""
"Nenhum cabeçalho de assinatura na mensagem, mas o corpo da mensagem tem %u "
"bytes"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Não foi possível desserializar a mensagem: "
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
@@ -944,7 +962,7 @@ msgstr ""
"Erro ao serializar GVariant com o texto de tipo “%s†para o formato "
"delimitado pelo D-Bus"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
@@ -952,18 +970,18 @@ msgstr ""
"O número de descritores de arquivo na mensagem (%d) difere do campo de "
"cabeçalho (%d)"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Não foi possível serializar a mensagem: "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr ""
"O corpo da mensagem tem a assinatura “%sâ€, mas não há um cabeçalho de "
"assinatura"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -972,54 +990,54 @@ msgstr ""
"O corpo da mensagem tem o tipo de assinatura “%sâ€, mas a assinatura no campo "
"de cabeçalho é “%sâ€"
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr ""
"O corpo da mensagem está vazio, mas a assinatura no campo de cabeçalho é "
"“(%s)â€"
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Retorno de erro com o corpo de tipo “%sâ€"
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Retorno de erro com o corpo vazio"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Digite qualquer tecla para fechar esta janela)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "A sessão dbus não está em execução, e o início automático falhou"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Não foi possível obter o perfil da máquina: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Não foi possível carregar %s ou %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Erro ao chamar StartServiceByName para %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Resposta %d inesperada do método StartServiceByName(\"%s\")"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1077,67 +1095,67 @@ msgstr ""
"\n"
"Use “%s COMANDO --help†para obter ajuda de cada comando.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Erro: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Erro ao analisar XML de introspecção: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Erro: %s não é um nome válido\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Erro: %s não é um caminho de objeto válido\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Conectar ao barramento de sistema"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Conectar ao barramento de sessão"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Conectar ao endereço D-Bus escolhido"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Opções de conexão de ponto final:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Opções especificando a conexão de ponto final"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Nenhuma conexão de ponto final especificada"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Múltiplas conexões de ponto final especificadas"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr ""
"Aviso: De acordo com os dados de introspecção a interface “%s†não existe\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1146,162 +1164,166 @@ msgstr ""
"Aviso: De acordo com os dados de introspecção o método “%s†não existe na "
"interface “%sâ€\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Destino opcional para o sinal (nome único)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Caminho do objeto para emitir sinal"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Nome de sinal e de interface"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Emitir um sinal."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Erro ao conectar: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Erro: %s não é um nome válido de barramento exclusivo.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Erro: O caminho do objeto não foi especificado\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Erro: O nome do sinal não foi especificado\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Erro: O nome do sinal “%s†é inválido\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Erro: %s não é um nome de interface válido\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Erro: %s não é um nome de membro válido\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Erro ao analisar o parâmetro %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Erro limpando conexão: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Nome do destino para chamar um método"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Caminho do objeto para chamar um método"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Nome de método e de interface"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Tempo limite em segundos"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Permitir autorização interativa"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Chamar um método no objeto remoto."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Erro: O destino não foi especificado\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Erro: %s não é um nome de barramento válido\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Erro: O nome do método não foi especificado\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Erro: O nome do método “%s†é inválido\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Erro ao analisar o parâmetro %d do tipo “%sâ€: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Erro ao adicionar manipulador %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Nome do destino para introspecção"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Caminho do objeto para introspecção"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Exibir XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Auto-examinar filhos"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Apenas imprimir as propriedades"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Introspecção de um objeto remoto."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Nome do destino para monitorar"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Caminho do objeto para monitorar"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Monitora um objeto remoto."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr ""
"Erro: não é possível monitorar uma conexão que não seja de barramento de "
"mensagem\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Serviço a ser ativado antes de esperar por uma outra (nome conhecido)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1309,64 +1331,69 @@ msgstr ""
"Tempo limite de espera antes de sair com um erro (segundos); 0 para nenhum "
"tempo limite (padrão)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[OPÇÃO…] NOME-BARRAMENTO"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Espera por um nome de barramento para aparecer."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Erro: Um serviço a ser ativado deve ser especificado.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "Erro: Um serviço a ser esperado deve ser especificado.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Erro: Número excessivo de argumentos.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Erro: %s não é um nome válido de barramento conhecido.\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Não autorizado para alterar configurações de depuração"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Sem nome"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "O arquivo da área de trabalho não especifica o campo Exec"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Não é possível localizar o terminal requerido para o aplicativo"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr ""
"Não é possível criar pasta de configuração do aplicativo do usuário %s: %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Não é possível criar pasta de configuração MIME do usuário %s: %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "A informação do aplicativo carece de um identificador"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Não é possível criar arquivo %s da área de trabalho do usuário"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Definição personalizada para %s"
@@ -1394,7 +1421,7 @@ msgstr "a unidade não implementa start"
msgid "drive doesn’t implement stop"
msgstr "a unidade não implementa stop"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "O backend TLS não implementa recuperação de vinculação TLS"
@@ -1435,73 +1462,73 @@ msgstr "Esperado um GEmblem para o GEmblemedIcon"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Ponto de montagem contido não existe"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Não é possível copiar sobre diretório"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Não é possível copiar diretório sobre diretório"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Arquivo alvo existe"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Não é possível copiar o diretório recursivamente"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Não há suporte a união de arquivos"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Erro ao unir o arquivo: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Não há suporte a copiar (reflink/clone) entre montagens"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Não há suporte a copiar (reflink/clone) ou é inválido"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Não há suporte a copiar (reflink/clone) ou não funcionou"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Não é possível copiar o arquivo especial"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Fornecido valor inválido de link simbólico"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Não há suporte a links simbólicos"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Não há suporte para lixeira"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Nomes de arquivo não podem conter “%câ€"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "volume não implementa montagem"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Nenhum aplicativo está registrado como manipulador deste arquivo"
@@ -1546,7 +1573,7 @@ msgstr "Não é permitido truncar fluxo de entrada"
msgid "Truncate not supported on stream"
msgstr "Não há suporte para truncar fluxo"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Nome de máquina inválido"
@@ -1633,7 +1660,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Não foi possível interpretar “%s†como uma máscara de endereço IP"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Sem espaço suficiente para o endereço do soquete"
@@ -2471,15 +2498,15 @@ msgstr "Ocorreu erro ao comprimir o arquivo %s"
msgid "text may not appear inside <%s>"
msgstr "texto não pode aparecer dentro de <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Mostra a versão do programa e sai"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Nome do arquivo de saída"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2487,45 +2514,45 @@ msgstr ""
"Os diretórios do quais serão carregados arquivos referenciados em ARQUIVO "
"(padrão: diretório atual)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "DIRETÓRIO"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr "Gera a saída no formato definido pela extensão do arquivo alvo"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Gera um cabeçalho"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr "Gera código-fonte que vincula o recurso ao seu programa"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Gera uma lista de dependência"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Nome do arquivo de dependências para gerar"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Inclui alvos falsos no arquivo de dependência gerado"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Não cria e registra o recurso automaticamente"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Não exporta funções; declara-as G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2533,11 +2560,15 @@ msgstr ""
"Não embute dados de recurso no arquivo C; presume estar vinculado "
"externamente"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "Nome do identificador C usado no código-fonte gerado"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "O compilador C alvo (padrão: a variável de ambiente CC)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2547,7 +2578,7 @@ msgstr ""
"Arquivos de especificação de recurso têm a extensão .gresource.xml,\n"
"e um arquivo de recurso tem a extensão .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Você deve fornecer exatamente um arquivo\n"
@@ -2959,7 +2990,7 @@ msgid ""
msgstr ""
"Sobrescrita para chave “%s†no esquema “%s†no arquivo de sobrescrita “%s†"
"está fora dos limites dado pelo esquema; ignorando sobrescrita para essa "
-"chave"
+"chave."
#: gio/glib-compile-schemas.c:2075
#, c-format
@@ -3343,13 +3374,13 @@ msgstr "Erro ao criar cópia de backup: %s"
msgid "Error renaming temporary file: %s"
msgstr "Erro ao renomear arquivo temporário: %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "Erro ao truncar arquivo: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Erro ao abrir arquivo “%sâ€: %s"
@@ -3371,7 +3402,7 @@ msgstr "O arquivo foi modificado externamente"
msgid "Error removing old file: %s"
msgstr "Erro ao remover arquivo antigo: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "GSeekType fornecido inválido"
@@ -3383,15 +3414,15 @@ msgstr "Solicitação de busca inválida"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Não é possível truncar GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Fluxo de saída da memória não redimensionável"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Falha ao redimensionar fluxo de saída da memória"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3399,11 +3430,11 @@ msgstr ""
"Quantidade de memória necessária para processar a escrita é maior que a "
"disponível"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Solicitada uma busca antes do começo do fluxo"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Solicitada uma busca além do fim do fluxo"
@@ -3508,18 +3539,22 @@ msgstr "A soma dos vetores passada para %s é grande demais"
msgid "Source stream is already closed"
msgstr "A fonte do fluxo já está fechada"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Erro ao resolver “%sâ€: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s não implementado"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Domínio inválido"
@@ -3634,7 +3669,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " SEÇÃO Um nome de seção elf (opcional)\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " COMANDO O comando a ser explicado (opcional)\n"
@@ -3666,7 +3701,7 @@ msgstr "CAMINHO"
msgid " PATH A resource path\n"
msgstr " CAMINHO Um caminho do recurso\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Nenhum esquema “%sâ€\n"
@@ -3697,35 +3732,35 @@ msgstr "O caminho deve terminar com uma barra (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "O caminho não pode conter duas barras adjacentes (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "O valor fornecido está fora do intervalo válido\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "A chave não é gravável\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Lista os esquemas instalados (não-recolocáveis)"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Lista os esquemas recolocáveis instalados"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Lista as chaves no ESQUEMA"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "ESQUEMA[:CAMINHO]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Lista os filhos do ESQUEMA"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3733,48 +3768,48 @@ msgstr ""
"Lista as chaves e valores, recursivamente\n"
"Se nenhum ESQUEMA for fornecido, lista todas as chaves\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[ESQUEMA[:CAMINHO]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Obtém o valor de CHAVE"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "ESQUEMA[:CAMINHO] CHAVE"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Consulta o intervalo de valores válidos para CHAVE"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Consulta a descrição para a CHAVE"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Define o valor de CHAVE para VALOR"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "ESQUEMA[:CAMINHO] CHAVE VALOR"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Restaurar CHAVE para seu valor padrão"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Restaurar todas as chaves no ESQUEMA para seus padrões"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Verifica se CHAVE é gravável"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3784,11 +3819,11 @@ msgstr ""
"Se nenhuma CHAVE for especificada, monitora todas as chaves no ESQUEMA.\n"
"Use ^C para parar o monitoramento.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "ESQUEMA[:CAMINHO] [CHAVE]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3837,7 +3872,7 @@ msgstr ""
"Use “gsettings help COMANDO†para obter ajuda detalhada.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3852,11 +3887,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " SCHEMADIR Um diretório para procurar por esquemas adicionais\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3864,214 +3899,214 @@ msgstr ""
" ESQUEMA O nome do esquema\n"
" CAMINHO O caminho, para esquemas recolocáveis\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " CHAVE A chave (opcional) com o esquema\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " CHAVE A chave com o esquema\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " VALOR O valor para definir\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Não foi possível carregar esquemas de %s: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Nenhum esquema instalado\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Nome de esquema vazio\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Nenhuma chave “%sâ€\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Soquete inválido, não inicializado"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Soquete inválido, inicialização falhou devido a: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "O soquete já está fechado"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Tempo de E/S do soquete foi esgotado"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "criando GSocket a partir do fd: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Não é possível criar soquete: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Foi especificada uma família desconhecida"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Foi especificado um protocolo desconhecido"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr ""
"Não foi possível usar operações de datagrama em um soquete não-datagrama."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Não foi possível usar operações de datagrama em um soquete com um tempo "
"limite definido."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "não foi possível obter endereço local: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "não foi possível obter endereço remoto: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "não foi possível escutar: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Erro ao vincular ao endereço %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Erro ao entrar no grupo multicast: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Erro ao sair do grupo multicast: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Não há suporte para multicast específico da origem"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Família de soquete sem suporte"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "a origem específica não é um endereço IPv4"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Nome de interface grande demais"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Interface não localizada: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "Não há suporte para multicast específico da origem IPv4"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "Não há suporte para multicast específico da origem IPv6"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Erro ao aceitar a conexão: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Conexão em progresso"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Não é possível obter erro pendente: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Erro ao receber dados: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Erro ao enviar dados: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Não é possível encerrar soquete: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Erro ao fechar soquete: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Aguardando pela condição do soquete: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Não foi possível enviar mensagem: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Vetores da mensagem muito grandes"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Erro ao enviar mensagem: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "Não há suporte a GSocketControlMessage no Windows"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Erro ao receber mensagem: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Não é possível ler as credenciais do soquete: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "g_socket_get_credentials não está implementado para este SO"
@@ -4089,11 +4124,11 @@ msgstr "Não foi possível conectar-se a %s: "
msgid "Could not connect: "
msgstr "Não foi possível conectar: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "Não há suporte ao uso de proxy sobre uma conexão não TCP."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Não há suporte ao protocolo de proxy “%sâ€."
@@ -4193,7 +4228,7 @@ msgstr "Proxy SOCKSv5 sem suporte ao tipo de endereço fornecido."
msgid "Unknown SOCKSv5 proxy error."
msgstr "Erro de proxy SOCKSv5 desconhecido."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr "Falha ao criar canal para comunicar com processo filho (%s)"
@@ -4217,44 +4252,67 @@ msgstr "Nenhum endereço válido foi localizado"
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "Erro ao resolver reversalmente “%sâ€: %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr "Erro ao analisar registro %s do DNS: pacote DNS mal formado"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "Nenhum registro DNS do tipo de requisição para “%sâ€"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "Temporariamente sem condições de resolver “%sâ€"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "Erro ao resolver “%sâ€"
-#: gio/gtlscertificate.c:431
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Pacote DNS mal formado"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+#| msgid "Failed to read from file “%sâ€: %s"
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "Falha ao analisar resposta DNS para “%sâ€: "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Chave privada codificada com PEM não localizada"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Não foi possível decodificar uma chave privada codificada com PEM"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Não foi possível analisar chave privada codificada com PEM"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Certificado codificado com PEM não localizado"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Não foi possível analisar certificado codificado com PEM"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "O backend TLS atual não oferece suporte a PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr ""
"Este GTlsBackend não oferece suporte à criação de certificados PKCS #11"
@@ -4281,55 +4339,63 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "A senha digitada está incorreta."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "Não há suporte ao envio de FD"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "Esperando 1 mensagem de controle, obtive %d"
msgstr[1] "Esperando 1 mensagem de controle, obtive %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Tipo de dado auxiliar não esperado"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "Esperando um fd, mas obtive %d\n"
msgstr[1] "Esperando um fd, mas obtive %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Recebido fd inválido"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "Não há suporte ao recebimento de FD"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Erro ao enviar credenciais: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Erro ao verificar se SO_PASSCRED está habilitado pelo soquete: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Erro ao habilitar SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Era esperado ler apenas um byte para receber credenciais, mas foi lido zero "
"byte"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Não esperava mensagem de controle, mas recebeu %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Erro ao desabilitar SO_PASSCRED: %s"
@@ -4345,7 +4411,7 @@ msgstr "Erro ao ler do descritor de arquivo: %s"
msgid "Error closing file descriptor: %s"
msgstr "Erro ao fechar o descritor de arquivo: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Sistema de arquivos root"
@@ -4356,7 +4422,7 @@ msgstr "Sistema de arquivos root"
msgid "Error writing to file descriptor: %s"
msgstr "Erro ao gravar o descritor de arquivo: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr ""
"Não há suporte a endereços de soquetes de domínio UNIX abstratos neste "
@@ -4509,8 +4575,8 @@ msgstr "Falha em expandir linha de execução “%s†com URI “%sâ€"
msgid "Unrepresentable character in conversion input"
msgstr "Caractere não representável na conversão da entrada"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Sequência de caracteres parcial no final da entrada"
@@ -5075,16 +5141,16 @@ msgstr "Canal termina em um caractere parcial"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Não é possível fazer uma leitura em bruto de g_io_channel_read_to_end"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr ""
"Não foi possível localizar arquivo de chave válido nos diretórios pesquisados"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Não é um arquivo comum"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5092,50 +5158,50 @@ msgstr ""
"Arquivo de chave contém a linha “%s†que não é um par chave-valor, grupo ou "
"comentário"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Nome de grupo inválido: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Arquivo de chave não começa com um grupo"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Nome de chave inválido: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Nome de chave inválido: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Arquivo de chave contém codificação “%s†sem suporte"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Arquivo de chave não tem grupo “%sâ€"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Arquivo de chave não tem chave “%s†no grupo “%sâ€"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "Arquivo de chave contém chave “%s†com valor “%s†que não é UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr ""
"Arquivo de chave contém chave “%s†cujo valor não pode ser interpretado."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5144,36 +5210,36 @@ msgstr ""
"Arquivo de chave contém chave “%s†no grupo “%s†que tem um valor que não "
"pode ser interpretado."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "Chave “%s†no grupo “%s†tem o valor “%s†onde %s era esperado"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Arquivo de chave contém caractere de escape no fim da linha"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Arquivo de chave contém sequência de escape “%s†inválida"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "O valor “%s†não pode ser interpretado como um número."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "Valor inteiro “%s†fora dos limites"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "O valor “%s†não pode ser interpretado como ponto flutuante."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "O valor “%s†não pode ser interpretado como um booleano."
@@ -5471,7 +5537,7 @@ msgstr "Erro ao ler a opção %s"
msgid "Missing argument for %s"
msgstr "Falta argumento para %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Opção %s desconhecida"
@@ -5576,7 +5642,7 @@ msgstr "caractere não reconhecido após (? ou (?-"
#: glib/gregex.c:361
msgid "POSIX named classes are supported only within a class"
-msgstr "classes nomeadas POSIX têm suporte apenas dentro de uma classe"
+msgstr "Classes nomeadas POSIX têm suporte apenas dentro de uma classe"
#: glib/gregex.c:364
msgid "missing terminating )"
@@ -5639,7 +5705,7 @@ msgstr "nome de classe POSIX desconhecido"
#: glib/gregex.c:413
msgid "POSIX collating elements are not supported"
-msgstr "elementos de arranjo POSIX sem suporte"
+msgstr "Elementos de arranjo POSIX sem suporte"
#: glib/gregex.c:416
msgid "character value in \\x{...} sequence is too large"
@@ -5879,121 +5945,131 @@ msgstr "Texto estava vazio (ou apenas continha espaços)"
msgid "Failed to read data from child process (%s)"
msgstr "Falha ao ler dados de processo filho (%s)"
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "Erro inesperado na leitura de dados de um processo filho (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Erro inesperado em waitpid() (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "Processo filho concluiu com código %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Processo filho foi terminado pelo sinal %ld"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Processo filho foi parado pelo sinal %ld"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Processo filho concluiu anormalmente"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Falha ao ler de canal filho (%s)"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Falha ao criar processo filho “%s†(%s)"
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Falha no fork (%s)"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Falha ao ir para diretório “%s†(%s)"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Falha ao executar processo filho “%s†(%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2550
+#, c-format
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Falha ao abrir o arquivo para remapear o descritor de arquivo (%s)"
+
+#: glib/gspawn.c:2558
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Falha ao redirecionar saída ou entrada do processo filho (%s)"
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Falha ao duplicar o descritor de arquivo para o processo filho (%s)"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Falha no fork de processo filho (%s)"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2575
#, c-format
msgid "Failed to close file descriptor for child process (%s)"
-msgstr "Falho ao fechar o descritor de arquivo para processo filho (%s)"
+msgstr "Falha ao fechar o descritor de arquivo para o processo filho (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Erro desconhecido ao executar processo filho “%sâ€"
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "Falha ao ler dados suficientes de canal pid do filho (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Falha ao ler dados de processo filho"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Falha ao executar processo filho (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Falha em dup() no processo filho (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Nome de programa inválido: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "String inválida no vetor de argumentos em %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "String inválida no ambiente: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Diretório de trabalho inválido: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Falha ao executar programa auxiliar (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -6001,21 +6077,21 @@ msgstr ""
"Erro inesperado no g_io_channel_win32_poll() ao ler dados de um processo "
"filho"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Texto vazio não é um número"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "“%s†não é um número assinado"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "O número “%s†está fora dos limites [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "“%s†não é um número não assinado"
@@ -6076,175 +6152,175 @@ msgstr "A URI não é absoluta, e nenhuma URI base foi fornecida"
msgid "Missing ‘=’ and parameter value"
msgstr "Faltando “=†e valor de parâmetro"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Falha ao alocar memória"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Caractere fora do limite para UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Sequência inválida na conversão da entrada"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Caractere fora do limite para UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u byte"
msgstr[1] "%u bytes"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6252,7 +6328,7 @@ msgstr[0] "%u bit"
msgstr[1] "%u bits"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6260,7 +6336,7 @@ msgstr[0] "%s byte"
msgstr[1] "%s bytes"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6272,32 +6348,32 @@ msgstr[1] "%s bits"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
@@ -6416,9 +6492,6 @@ msgstr "%.1f EB"
#~ msgid "Unable to find default local directory monitor type"
#~ msgstr "Não é possível localizar o tipo de diretório monitor local padrão"
-#~ msgid "URIs not supported"
-#~ msgstr "Não há suporte a URIs"
-
#~ msgid "Key file does not have key '%s'"
#~ msgstr "Arquivo de chave não tem chave \"%s\""
diff --git a/po/ro.po b/po/ro.po
index d58cdbfa0..079234450 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -10,9 +10,9 @@ msgid ""
msgstr ""
"Project-Id-Version: glib\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-02-01 17:05+0000\n"
-"PO-Revision-Date: 2022-02-19 14:41+0100\n"
-"Last-Translator: Florentina Mușat <florentina.musat.28@gmail.com>\n"
+"POT-Creation-Date: 2022-02-19 13:43+0000\n"
+"PO-Revision-Date: 2022-03-06 12:47+0100\n"
+"Last-Translator: Daniel Șerbănescu <daniel [at] serbanescu [dot] dk>\n"
"Language-Team: Gnome Romanian Translation Team <gnomero-list@lists."
"sourceforge.net>\n"
"Language: ro\n"
@@ -25,30 +25,39 @@ msgstr ""
"X-Project-Style: gnome\n"
"X-Poedit-SourceCharset: UTF-8\n"
-#: gio/gapplication.c:500
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Stabilirea aplicațiilor implicite nu este suportată încă"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"Stabilirea aplicației ca ultima folosită pentru acest tip nu este suportată"
+
+#: gio/gapplication.c:497
msgid "GApplication options"
msgstr "Opțiuni GApplication"
-#: gio/gapplication.c:500
+#: gio/gapplication.c:497
msgid "Show GApplication options"
msgstr "Arată opțiunile GApplication"
-#: gio/gapplication.c:545
+#: gio/gapplication.c:542
msgid "Enter GApplication service mode (use from D-Bus service files)"
msgstr ""
"Intră în modul de serviciu GApplication (utilizează de la fișierele de "
"serviciu D-Bus)"
-#: gio/gapplication.c:557
+#: gio/gapplication.c:554
msgid "Override the application’s ID"
msgstr "Suprascrie ID-ul aplicației"
-#: gio/gapplication.c:569
+#: gio/gapplication.c:566
msgid "Replace the running instance"
msgstr "Înlocuiește instanța care rulează"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Afișează ajutorul"
@@ -60,7 +69,7 @@ msgstr "[COMANDÄ‚]"
msgid "Print version"
msgstr "Tipărește versiunea"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Afișează informațiile despre versiune și ieși"
@@ -121,8 +130,8 @@ msgstr "Comanda pentru care să se afișeze ajutorul detaliat"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Identificatorul de aplicație în format D-Bus (eg: org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "FIȘIER"
@@ -147,7 +156,7 @@ msgstr "PARAMETRU"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Parametru opțional pentru invocarea acțiunii, în formatul GVariant"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -161,7 +170,7 @@ msgid "Usage:\n"
msgstr "Utilizare:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argumente:\n"
@@ -285,7 +294,7 @@ msgstr "Flux deja închis"
msgid "Truncate not supported on base stream"
msgstr "Trunchierea fluxului de bază nu este suportată"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -306,7 +315,7 @@ msgstr "Spațiu insuficient în destinație"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Secvență de octeți incorectă în inputul conversiei"
@@ -316,7 +325,7 @@ msgstr "Secvență de octeți incorectă în inputul conversiei"
msgid "Error during conversion: %s"
msgstr "Eroare în timpul conversiei: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Inițializarea întreruptibilă nu este implementată"
@@ -330,7 +339,7 @@ msgstr "Conversia de la setul de caractere „%s†la „%s†nu este suportat
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Nu s-a putut deschide convertorul de la „%s†la „%sâ€"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "tip %s"
@@ -344,23 +353,23 @@ msgstr "Tip necunoscută"
msgid "%s filetype"
msgstr "tip de fișier %s"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials conține date nevalide"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials nu este implementat pe acest SO"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Nu există suport pentru GCredentials pe platforma dumneavoastră"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GCredentials nu conține un ID de proces pe acest SO"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Spoofing-ul certificărilor nu este posibil pe acest SO"
@@ -368,17 +377,17 @@ msgstr "Spoofing-ul certificărilor nu este posibil pe acest SO"
msgid "Unexpected early end-of-stream"
msgstr "Flux terminat neașteptat de repede"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Cheie „%s†nesuportată în intrarea de adresă „%sâ€"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Pereche cheie/valoare fără sens în intrarea de adresă „%sâ€"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -387,28 +396,28 @@ msgstr ""
"Adresa „%s†nu este validă (este nevoie de exact una din cale, dir, tmpdir "
"sau chei abstracte)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Eroare în adresa „%s†— atributul „%s†este malformat"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Transport „%s†necunoscut sau nesuportat pentru adresa „%sâ€"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "Elementul de adresă „%s†nu conține două puncte (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "Numele de transport în elementul de adresă „%s†nu trebuie să fie gol"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -417,7 +426,7 @@ msgstr ""
"Perechea cheie/valoare %d, „%sâ€, în elementul de adresă „%sâ€, nu conÈ›ine un "
"semn de egalitate"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
@@ -425,7 +434,7 @@ msgstr ""
"Perechea cheie/valoare %d, „%sâ€, în elementul de adresă „%sâ€, nu trebuie să "
"aibă o cheie goală"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -434,7 +443,7 @@ msgstr ""
"Eroare la conversia din formatul „escaped†a cheii sau a valorii din "
"perechea cheie/valoare %d, „%sâ€, în elementul de adresă „%sâ€"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -443,79 +452,79 @@ msgstr ""
"Eroare în adresa „%s†- transportul unix necesită exact una din cheile "
"„path†sau „abstract†să fie stabilită"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr "Eroare în adresa „%s†- atributul gazdă lipsește sau este eronat"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "Eroare la adresa „%s†- atributul port lipsește sau este eronat"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr "Eroare în adresa „%s†- atributul noncefile lipsește sau este eronat"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Eroare la auto-lansare: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Eroare la deschiderea fiÈ™ierului nonce „%sâ€: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Eroare la citirea din fiÈ™ierul nonce „%sâ€: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"Eroare la citirea din fiÈ™ierul nonce „%sâ€, se aÈ™teptau 16 octeÈ›i, s-au "
"primit %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Eroare la scrierea conținutului fișierului nonce „%s†la flux:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "Adresa oferită este goală"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Nu se poate lansa o magistrală de mesaje când setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "Nu se poate lansa o magistrală de mesaje când AT_SECURE este stabilit"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr ""
"Nu se poate lansa o magistrală de mesaje fără un identificator de mașină: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Nu se poate lansa automat D-Bus fără $DISPLAY X11"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Eroare la crearea liniei de comandă „%sâ€: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Nu se poate determina adresa magistralei de sesiune (neimplementat pe acest "
"sistem de operare)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7334
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -524,7 +533,7 @@ msgstr ""
"Nu se poate determina adresa magistralei din variabila de mediu "
"DBUS_STARTER_BUS_TYPE — valoare necunoscută „%sâ€"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7343
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -532,7 +541,7 @@ msgstr ""
"Nu s-a putut determina adresa magistralei pentru că variabila de mediu "
"DBUS_STARTER_BUS_TYPE nu este setată"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Tip de magistrală %d necunoscut"
@@ -564,12 +573,12 @@ msgstr ""
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Anulat via GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:299
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Eroare în timpul obÈ›inerii de informaÈ›ii pentru directorul „%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:314
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -577,32 +586,32 @@ msgstr ""
"Permisiunile pentru dosarul „%s†sunt eronate. Se aștepta modul 0700, s-a "
"primit 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:347 gio/gdbusauthmechanismsha1.c:358
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Eroare la crearea directorului „%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:360 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Operațiune neimplementată"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:403
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Eroare la deschiderea inelului de chei „%s†pentru citire: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:426 gio/gdbusauthmechanismsha1.c:748
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "Linia %d a inelului de chei de la „%s†cu conținutul „%s†este eronată"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:440 gio/gdbusauthmechanismsha1.c:762
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -610,7 +619,7 @@ msgstr ""
"Primul jeton al liniei %d a inelului de chei de la „%s†cu conținutul „%s†"
"este eronat"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:454 gio/gdbusauthmechanismsha1.c:776
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -618,37 +627,37 @@ msgstr ""
"Al doilea jeton al liniei %d a inelului de chei de la „%s†cu conținutul "
"„%s†este eronat"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:478
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Nu s-a găsit un cookie cu id-ul %d în inelul de chei de la „%sâ€"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:524
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Eroare la crearea fiÈ™ierului de blocare „%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:588
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Eroare la È™tergerea fiÈ™ierului de blocare învechit „%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:627
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Eroare la închiderea fiÈ™ierului de blocare (deconectat) „%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:638
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Eroare la deconectarea fiÈ™ierului de blocare „%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:715
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Eroare la deschiderea inelului de chei „%s†pentru citire: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:909
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(AdiÈ›ional, a eÈ™uat È™i eliberarea blocării pentru „%sâ€: %s) "
@@ -754,31 +763,31 @@ msgstr "Un subarbore este deja exporta pentru %s"
msgid "Object does not exist at path “%sâ€"
msgstr "Obiectul nu există la calea „%sâ€"
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "tipul este NEVALID"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr ""
"Mesaj METHOD_CALL: unul din câmpurile de antet PATH sau MEMBER lipsește"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "Mesaj METHOD_RETURN: câmpul antet REPLY_SERIAL lipsește"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr ""
"Mesaj de EROARE: unul din câmpurile de antet REPLY_SERIAL sau ERROR_NAME "
"lipsește"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr ""
"Mesaj SIGNAL: unul din câmpurile de antet PATH, INTERFACE sau MEMBER lipsește"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -786,7 +795,7 @@ msgstr ""
"Mesaj SIGNAL: câmpul de antet PATH utilizează valoarea rezervată /org/"
"freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -794,7 +803,7 @@ msgstr ""
"Mesaj SIGNAL: câmpul de antet INTERFACE utilizează valoarea rezervată org."
"freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
@@ -802,12 +811,12 @@ msgstr[0] "S-a încercat să se citească %lu octet, dar s-a primit doar %lu"
msgstr[1] "S-a încercat să se citească %lu octeți, dar s-au primit doar %lu"
msgstr[2] "S-a încercat să se citească %lu de octeți, dar s-au primit doar %lu"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "S-a aÈ™teptat un octet NUL după È™irul „%sâ€, dar s-a găsit octetul %d"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -817,21 +826,21 @@ msgstr ""
"%d (lungimea șirului este %d). Șirul UTF-8 valid până la acel punct a fost "
"„%sâ€"
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Valoare imbricată prea adânc"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Valoarea parsată „%s†nu este o cale de obiect D-Bus validă"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Valoarea parsată „%s†nu este o semnătură D-Bus validă"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -847,7 +856,7 @@ msgstr[2] ""
"S-a întâlnit un șir cu lungimea de %u de octeți. Lungimea maximă este de "
"2<<26 de octeți (64 MiB)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -856,16 +865,16 @@ msgstr ""
"S-a întâlnit un È™ir de tipul „a%câ€, se aÈ™tepta să aibă o lungime un multiplu "
"de %u octeți, dar s-a constatat că are o lungime de %u octeți"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
msgstr "Structuri goale (tuple) nu sunt permise în D-Bus"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "Valoarea parsată „%s†pentru variantă nu este o semnătură D-Bus validă"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
@@ -873,7 +882,7 @@ msgstr ""
"Eroare la deserializarea GVariant cu șirul de tipul „%s†din formatul de "
"rețea D-Bus"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -882,28 +891,28 @@ msgstr ""
"Valoare de endianness nevalidă. Se aÈ™tepta 0x6c („lâ€) sau 0x42 („Bâ€), dar s-"
"a găsit valoarea 0x%02x"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Versiune majoră de protocol nevalidă. Se aștepta 1 dar s-a găsit %d"
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Antet de semnătură găsit dar nu este de tipul semnătură"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"S-a găsit un antet de semnătură cu semnătura „%sâ€, dar corpul mesajului este "
"vid"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "Valoarea parsată „%s†nu este o semnătură D-Bus validă (pentru corp)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -917,11 +926,11 @@ msgstr[2] ""
"Nu există niciun antet de semnătură în mesaj, dar corpul mesajului este de "
"%u de octeți"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Nu se poate deserializa mesajul: "
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
@@ -929,24 +938,24 @@ msgstr ""
"Eroare la serializarea GVariant cu șirul de tipul „%s†în formatul de rețea "
"D-Bus"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr ""
"Numărul de descriptori de fișier în mesaj (%d) diferă de câmpul de antet (%d)"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Nu se poate serializa mesajul: "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr ""
"Corpul mesajului are semnătura „%sâ€, dar nu există nicio semnătură de antet"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -955,53 +964,53 @@ msgstr ""
"Corpul mesajului are semnătura „%sâ€, dar semnătura din câmpul de antet este "
"„%sâ€"
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr ""
"Corpul mesajului este vid, dar semnătura din câmpul de antet este „(%s)â€"
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Eroare la întoarcere cu corpul de tipul „%sâ€"
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Rezultat de eroare cu corp vid"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Tastați orice caracter pentru a închide această fereastră)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Sesiunea dbus nu rulează, și lansarea automată a eșuat"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Nu se poate obține profilul hardware: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Nu s-a putut încărca %s sau %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Eroare la apelul StartServiceByName pentru %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Răspuns neașteptat %d de la metoda StartServiceByName(\"%s\")"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1059,13 +1068,13 @@ msgstr ""
"comandă.\n"
#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1244
+#: gio/gdbus-tool.c:1732
#, c-format
msgid "Error: %s\n"
msgstr "Eroare: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1748
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Eroare la parsarea introspecției XML: %s\n"
@@ -1077,8 +1086,8 @@ msgstr ""
"Eroare: %s nu este un nume valid\n"
"\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1063
+#: gio/gdbus-tool.c:1898 gio/gdbus-tool.c:2138
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Eroare: calea %s către obiect nu este validă\n"
@@ -1145,8 +1154,8 @@ msgstr "Numele semnalului și interfeței"
msgid "Emit a signal."
msgstr "Emite un semnal."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:1000 gio/gdbus-tool.c:1835
+#: gio/gdbus-tool.c:2067 gio/gdbus-tool.c:2287
#, c-format
msgid "Error connecting: %s\n"
msgstr "Eroare la conectare: %s\n"
@@ -1156,7 +1165,7 @@ msgstr "Eroare la conectare: %s\n"
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Eroare: %s nu este un nume de magistrală unic valid.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1043 gio/gdbus-tool.c:1878
msgid "Error: Object path is not specified\n"
msgstr "Eroare: calea către obiect nu a fost specificată\n"
@@ -1182,7 +1191,7 @@ msgid "Error: %s is not a valid member name\n"
msgstr "Eroare: %s nu este un nume de membru valid\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1175
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Eroare la parsarea parametrului %d: %s\n"
@@ -1192,104 +1201,108 @@ msgstr "Eroare la parsarea parametrului %d: %s\n"
msgid "Error flushing connection: %s\n"
msgstr "Eroare la golirea conexiunii: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:894
msgid "Destination name to invoke method on"
msgstr "Numele destinației pe care se va invoca metoda"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:895
msgid "Object path to invoke method on"
msgstr "Calea către obiectul pe care se va invoca metoda"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:896
msgid "Method and interface name"
msgstr "Metoda și numele interfeței"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:897
msgid "Timeout in seconds"
msgstr "Limita de timp în secunde"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:898
+msgid "Allow interactive authorization"
+msgstr "Permite autorizarea interactivă"
+
+#: gio/gdbus-tool.c:945
msgid "Invoke a method on a remote object."
msgstr "Invocă o metodă pe un obiect la distanță."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1017 gio/gdbus-tool.c:1852 gio/gdbus-tool.c:2092
msgid "Error: Destination is not specified\n"
msgstr "Eroare: destinația nu a fost specificată\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1028 gio/gdbus-tool.c:1869 gio/gdbus-tool.c:2103
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr ""
"Eroare: %s nu este un nume de magistrală valid\n"
"\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1078
msgid "Error: Method name is not specified\n"
msgstr "Eroare: numele metodei nu a fost specificat\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1089
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr ""
"Eroare: numele de metodă „%s†nu este valid\n"
"\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1167
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Eroare la parsarea parametrului %d cu tipul „%sâ€: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1193
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Eroare la adăugarea mânerului %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1694
msgid "Destination name to introspect"
msgstr "Numele destinației de introspectat"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1695
msgid "Object path to introspect"
msgstr "Calea obiectului de introspectat"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1696
msgid "Print XML"
msgstr "Afișează XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1697
msgid "Introspect children"
msgstr "Introspectează inferiorii"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1698
msgid "Only print properties"
msgstr "Tipărește doar proprietățile"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1787
msgid "Introspect a remote object."
msgstr "Introspectează un obiect la distanță."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1993
msgid "Destination name to monitor"
msgstr "Numele destinației de monitorizat"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1994
msgid "Object path to monitor"
msgstr "Calea către obiectul de monitorizat"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2019
msgid "Monitor a remote object."
msgstr "Monitorizează un obiect la distanță."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2077
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Eroare: nu se poate monitoriza o conexiune non-magistrală-mesaj\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2201
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr ""
"Serviciu de activat înainte de a-l aștepta pe celălalt (nume bine cunoscut)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2204
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1297,65 +1310,70 @@ msgstr ""
"Limita de timp de așteptat înainte de a ieși cu o eroare (secunde); 0 pentru "
"nicio limită de timp (implicit)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2252
msgid "[OPTION…] BUS-NAME"
msgstr "[OPȚIUNE…] NUME-MAGISTRALĂ"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2253
msgid "Wait for a bus name to appear."
msgstr "Așteaptă apariția unui nume de magistrală."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2329
msgid "Error: A service to activate for must be specified.\n"
msgstr "Eroare: trebuie specificat un serviciu pentru care să se activeze.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2334
msgid "Error: A service to wait for must be specified.\n"
msgstr "Eroare: trebuie specificat un serviciu după care să se aștepte.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2339
msgid "Error: Too many arguments.\n"
msgstr "Eroare: prea multe argumente.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2347 gio/gdbus-tool.c:2354
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Eroare: %s nu este un nume de magistrală popular valid.\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdebugcontrollerdbus.c:357
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Neautorizat pentru a modifica configurările de depanare"
+
+#: gio/gdesktopappinfo.c:2174 gio/gdesktopappinfo.c:5101
msgid "Unnamed"
msgstr "Nedenumit"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2584
msgid "Desktop file didn’t specify Exec field"
msgstr "Fișierul desktop nu a specificat un câmp Exec"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2892
msgid "Unable to find terminal required for application"
msgstr "Nu s-a găsit un terminal pentru pornirea aplicației"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3621
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr ""
"Nu se poate crea dosarul de configurare pentru aplicațiile utilizatorului "
"%s: %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Nu se poate crea dosarul de configurare MIME al utilizatorului %s: %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3867 gio/gdesktopappinfo.c:3891
msgid "Application information lacks an identifier"
msgstr "Informațiile despre aplicație nu au un indentificator"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4127
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Nu se poate crea fișierul desktop al utilizatorului %s"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4263
#, c-format
msgid "Custom definition for %s"
msgstr "Definiție personalizată pentru %s"
@@ -1384,7 +1402,7 @@ msgstr "unitatea nu implementează comanda start"
msgid "drive doesn’t implement stop"
msgstr "unitatea nu implementează comanda stop"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "Suportul TLS nu implementează obținerea legăturii TLS"
@@ -1425,77 +1443,77 @@ msgstr "Se aștepta un GEmblem pentru GEmblemedIcon"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Montarea conținută nu există"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Nu se poate copia peste director"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Nu se poate copia un director peste alt director"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Fișierul destinație există deja"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Nu se poate copia recursiv directorul"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Nu există suport pentru funcția splice"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Eroare la aplicarea funcției „splice†fișierului: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Copierea (reflink/clonarea) între două montări nu este suportată"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr ""
"Copierea (legătura de referință/clonarea) nu este suportată sau nu este "
"validă"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr ""
"Copierea (legătura de referință/clonarea) nu este suportată sau nu a "
"funcționat"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Nu se poate copia fișierul special"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "S-a primit o valoare incorectă pentru legătura simbolică"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Legăturile simbolice nu sunt implementate"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Nu există o implementare pentru coșul de gunoi"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Numele de fiÈ™iere nu pot conÈ›ine „%câ€"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "volumul nu implementează montarea"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Nu există o aplicație înregistrată pentru deschiderea acestui fișier"
@@ -1540,7 +1558,7 @@ msgstr "Nu se permite trunchierea fluxului de intrare"
msgid "Truncate not supported on stream"
msgstr "Trunchierea fluxului nu este implementată"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Nume nevalid"
@@ -1627,7 +1645,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Nu s-a putut parsa „%s†ca mască de adresă IP"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Spațiu insuficient pentru adresa socket-ului"
@@ -2483,15 +2501,15 @@ msgstr "Eroare la comprimarea fișierului %s"
msgid "text may not appear inside <%s>"
msgstr "textul nu are voie să apară în <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Arată versiunea programului și ieși"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Numele fișierului de ieșire"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2499,56 +2517,60 @@ msgstr ""
"Directoarele de unde se vor încărca fișierele referențiate în FILE "
"(implicit: directorul curent)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "DOSAR"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
"Generează rezultatul în formatul selectat de extensia numelui de fișier țintă"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Generează antetul sursei"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr "Generează codul sursă utilizat pentru a lega fișierul resursă în cod"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Generează lista de dependențe"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Numele fișierului de dependențe de generat"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Include țintele false în fișierul de dependențe generat"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Nu crea și înregistra automat resursa"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Nu exporta funcțiile; declară-le G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
msgstr "Nu îngloba date în fișierul C; presupuneți că este legat extern"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "Nume de identificator C utilizat pentru codul sursă generat"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "Compilatorul C țintă (implicit: variabila de mediu CC)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2558,7 +2580,7 @@ msgstr ""
"Fișierele specificație de resursă au extensia .gresource.xml,\n"
"iar fișierul resursă are extensia cu numele .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Ar trebui să furnizați exact un nume de fișier\n"
@@ -3372,7 +3394,7 @@ msgid "Error truncating file: %s"
msgstr "Eroare la trunchierea fișierului: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Eroare la deschiderea fiÈ™ierului „%sâ€: %s"
@@ -3394,7 +3416,7 @@ msgstr "Fișierul a fost modificat de o terță parte"
msgid "Error removing old file: %s"
msgstr "Eroare la ștergerea vechiului fișier: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "S-a primit un GSeekType nevalid"
@@ -3406,15 +3428,15 @@ msgstr "Cerere de căutare nevalidă"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Nu se poate trunchia GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Fluxul de ieșire al memoriei nu poate fi redimensionat"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Nu s-a putut redimensiona fluxul de ieșire al memoriei"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3422,11 +3444,11 @@ msgstr ""
"Cantitatea de memorie necesară pentru a procesa scrierea este mai mare decât "
"spațiul de adrese disponibil"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "S-a cerut mutarea cursorului înaintea începutului fluxului"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "S-a cerut mutarea cursorului după sfârșitul fluxului"
@@ -3529,18 +3551,18 @@ msgstr "Suma vectorilor oferiți la %s este prea mare"
msgid "Source stream is already closed"
msgstr "Sursa fluxului este deja închisă"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Eroare la rezolvarea „%sâ€: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s nu este implementat"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Domeniu nevalid"
@@ -3655,7 +3677,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " SECȚIUNE Un nume (opțional) de secțiune elf\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " COMANDĂ Comandă (opțională) de explicat\n"
@@ -3687,7 +3709,7 @@ msgstr "CALE"
msgid " PATH A resource path\n"
msgstr " CALE O cale de resursă\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Nu există schema „%sâ€\n"
@@ -3718,35 +3740,35 @@ msgstr "Calea trebuie să se termine cu o bară oblică (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Calea trebuie să nu conțină două bare oblice adiacente (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "Valoarea furnizată este în afara intervalului valid\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "Cheia nu este inscripționabilă\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Listează schemele (nerelocalizabile) instalate"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Listează schemele relocalizabile instalate"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Listează cheile din SCHEMĂ"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "SCHEMÄ‚[:CALE]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Listează copiii SCHEMEI"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3754,48 +3776,48 @@ msgstr ""
"Listează chei și valori, recursiv\n"
"Dacă nu a fost furnizată nicio SCHEMĂ, listează toate cheile\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SCHEMÄ‚[:CALE]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Obține valoarea CHEII"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "SCHEMÄ‚[:CALE] CHEIE"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Interoghează intervalul valorilor valide pentru CHEIE"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Interoghează descrierea pentru CHEIE"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Setează valoarea CHEII la VALOARE"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SCHEMÄ‚[:CALE] CHEIE VALOARE"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Resetează CHEIA la valoarea ei implicită"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Restabilește toate cheile în SCHEMA la valorile implicite"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Verifică dacă CHEIA poate fi scrisă"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3806,11 +3828,11 @@ msgstr ""
"SCHEMÄ‚.\n"
"Folosiți ^C pentru a opri monitorizarea.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SCHEMÄ‚[:CALE] [CHEIE]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3858,7 +3880,7 @@ msgstr ""
"Folosiți comanda „gsettings help COMANDÆpentru a obține ajutor detaliat.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3873,11 +3895,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " SCHEMADIR Un director pentru căutarea de scheme adiționale\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3885,215 +3907,215 @@ msgstr ""
" SCHEMÄ‚ Numele schemei\n"
" CALE Calea, pentru schemele relocalizabile\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " CHEIE Cheia (opțională) din schemă\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " CHEIE Cheia din schemă\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " VALOARE Valoarea de setat\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Nu s-au putut încărca schemele de la %s: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Nu sunt scheme instalate\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Numele schemei dat este gol \n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Nu există cheia „%sâ€\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Socket nevalid (neinițializat)"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Socket nevalid, inițializarea a eșuat din următoarea cauză: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Socket-ul este deja închis"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "A expirat limita de timp la I/O pe socket"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "se creează GSocket din fd: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Nu s-a putut crea socket-ul: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "S-a specificat o familie necunoscută"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "S-a specificat un protocol necunoscut"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "Nu se pot utiliza operațiile de datagramă pe un soclu non-datagramă."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Nu se pot utiliza operațiile de datagramă pe un soclu care are stabilită o "
"limită de timp."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "nu s-a putut obține adresa locală: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "nu s-a putut obține adresa la distanță: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "nu s-a putut asculta: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Eroare la asocierea adresei %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Eroare la alăturarea grupului multicast: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Eroare la părăsirea grupului multicast: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Nu există niciun suport pentru difuzarea multiplă specifică sursei"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Familie de soclu nesuportată"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "specific sursei nu o adresă IPv4"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Numele de interfață este prea lung"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Nu s-a putut găsi interfața: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr ""
"Nu există niciun suport pentru difuzarea multiplă specifică sursei IPv4"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr ""
"Nu există niciun suport pentru difuzarea multiplă specifică sursei IPv6"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Eroare la acceptarea conexiunii: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Conectare în progres"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Nu se poate obține eroarea în așteptare: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Eroare la primirea datelor: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Eroare la trimiterea datelor: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Nu se poate opri soclul: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Eroare la închiderea socket-ului: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Se așteaptă condiția socket-ului: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Nu s-a putut trimite mesajul: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Vectorii mesaj prea mari"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Eroare la trimiterea mesajului: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage nu este suportat pe Windows"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Eroare la primirea mesajului: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Nu se pot citi certificările soclului: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr ""
"g_socket_get_credentials nu este implementat pe acest sistem de operare"
@@ -4112,11 +4134,11 @@ msgstr "Nu s-a putut conecta la %s: "
msgid "Could not connect: "
msgstr "Nu s-a putut conecta: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "Nu se poate utiliza proxy peste o conexiune non-TCP."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Protocolul proxy „%s†nu este suportat."
@@ -4218,7 +4240,7 @@ msgstr "Proxy-ul SOCKSv5 nu acceptă tipul de adresă furnizat."
msgid "Unknown SOCKSv5 proxy error."
msgstr "Eroare necunoscută a proxy-ului SOCKSv5."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr ""
@@ -4260,27 +4282,31 @@ msgstr "Nu se poate rezolva temporar „%sâ€"
msgid "Error resolving “%sâ€"
msgstr "Eroare la rezolvarea „%sâ€"
-#: gio/gtlscertificate.c:431
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Nu s-a găsit nicio cheie privată codată PEM"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Nu se poate decripta cheia privată codată PEM"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Nu s-a putut parsa cheia privată codificată PEM"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Nu s-a găsit niciun certificat codificat PEM"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Nu s-a putut parsa certificatul codificat PEM"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "Backendul TLS curent nu suportă PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "Acest GTlsBackend nu suportă crearea de certificate PKCS #11"
@@ -4306,7 +4332,11 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "Parola introdusă nu este corectă."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "Trimiterea FD nu este suportată"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
@@ -4314,11 +4344,11 @@ msgstr[0] "S-a așteptat un mesaj de control, dar s-a primit %d"
msgstr[1] "S-a așteptat un mesaj de control, dar s-au primit %d"
msgstr[2] "S-a așteptat un mesaj de control, dar s-au primit %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Tip neașteptat de date auxiliare"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
@@ -4326,37 +4356,41 @@ msgstr[0] "S-a așteptat un fd, dar s-a primit %d\n"
msgstr[1] "S-a așteptat un fd, dar s-a primit %d\n"
msgstr[2] "S-a așteptat un fd, dar s-a primit %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "S-a primit un fd nevalid"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "Primirea FD nu este suportată"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Eroare la trimiterea credențialelor: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Eroare la verificarea dacă SO_PASSCRED este activat pe socket: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Eroare la activarea SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Se aștepta să se citească un singur octet pentru a primi credențialele, dar "
"s-au citi zero octeți"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Nu s-a așteptat un mesaj de control, dar s-a primit %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Eroare la dezactivarea SO_PASSCRED: %s"
@@ -4372,7 +4406,7 @@ msgstr "Eroare la citirea din descriptorul de fișier: %s"
msgid "Error closing file descriptor: %s"
msgstr "Eroare la închiderea descriptorului de fișier: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Rădăcina sistemului de fișiere"
@@ -4383,7 +4417,7 @@ msgstr "Rădăcina sistemului de fișiere"
msgid "Error writing to file descriptor: %s"
msgstr "Eroare la scrierea în descriptorul de fișier: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr ""
"Adresele de soclu abstracte pentru domeniul UNIX nu sunt suportate pe acest "
@@ -4535,8 +4569,8 @@ msgstr "Nu s-a putut extinde linia de exec „%s†cu URI-ul „%sâ€"
msgid "Unrepresentable character in conversion input"
msgstr "Caracter nereprezentabil în intrarea conversiei"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Secvență parțială de caractere la sfârșitul inputului"
@@ -5100,15 +5134,15 @@ msgstr "Canalul se termină cu un caracter parțial"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Nu se poate efectua o citire brută în g_io_channel_read_to_end"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "Nu s-a găsit un fișier cheie valid în directoarele de căutare"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Nu e un fișier obișnuit"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5116,44 +5150,44 @@ msgstr ""
"Fișierul cheii conține linia „%s†care nu este o pereche cheie-valoare, un "
"grup, sau un comentariu"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Nume incorect de grup: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Fișierul cheie nu începe cu un grup"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Nume incorect de cheie: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Nume nevalid de cheie: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "FiÈ™ierul cheii conÈ›ine codarea nesuportată „%sâ€"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "FiÈ™ierul cheii nu are grupul „%sâ€"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "FiÈ™ierul cheii nu are cheia „%s†în grupul „%sâ€"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr ""
"FiÈ™ierul cheii conÈ›ine cheia „%sâ€, cu valoarea „%sâ€, care nu este UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
@@ -5161,7 +5195,7 @@ msgstr ""
"Fișierul cheii conține cheia „%s†care are o valoare care nu se poate "
"interpreta."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5170,36 +5204,36 @@ msgstr ""
"FiÈ™ierul cheie conÈ›ine cheia „%s†în grupul „%sâ€, care are o valoare ce nu "
"poate fi interpretată."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "Cheia „%s†în grupul „%s†are valoarea „%s†unde %s a fost așteptat"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Fișieul cheie conține caractere „escape†la sfârșit de linie"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "FiÈ™ierul cheie conÈ›ine secvenÈ›a de eludare nevalidă „%sâ€"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "Valoarea „%s†nu poate fi interpretată ca un număr."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "Valoarea întreagă „%s†este în afara limitelor"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "Valoarea „%s†nu poate fi interpretată ca un număr rațional."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "Valoarea „%s†nu poate fi interpretată ca o valoare logică."
@@ -5504,7 +5538,7 @@ msgstr "Eroare la prelucrarea opțiunii %s"
msgid "Missing argument for %s"
msgstr "Argument lipsă pentru %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Opțiune necunoscută %s"
@@ -5924,111 +5958,123 @@ msgstr "Eroare neașteptată la citirea datelor din procesul copil (%s)"
msgid "Unexpected error in waitpid() (%s)"
msgstr "Eroare neașteptată în waitpid() (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1168 glib/gspawn-win32.c:1426
#, c-format
msgid "Child process exited with code %ld"
msgstr "Procesul inferior a ieșit cu codul %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1176
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Procesul inferior a fost terminat de semnalul %ld"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Procesul inferior a fost oprit de semnalul %ld"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process exited abnormally"
msgstr "Procesul inferior a ieșit în mod neobișnuit"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1881 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Nu s-au putut citi datele din conectorul „pipe†copil (%s)"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2241
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Nu s-a putut crea procesul inferior „%s†(%s)"
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2358
#, c-format
msgid "Failed to fork (%s)"
msgstr "Nu s-a putut clona procesul (%s)"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2518 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Nu s-a putut schimba la directorul „%s†(%s)"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2528
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Nu s-a putut executa procesul inferior „%s†(%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2538
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Nu s-a putut redirecta ieșirea sau inputul procesului copil (%s)"
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr ""
+"Nu s-a putut deschide fișierul pentru a recartografia descriptorul de "
+"fișiere (%s)"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2546
+#, c-format
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Nu s-a putut duplica descriptorul de fișier pentru procesul copil (%s)"
+
+#: glib/gspawn.c:2555
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Nu s-a putut clona procesul copil (%s)"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2563
#, c-format
msgid "Failed to close file descriptor for child process (%s)"
msgstr "Nu s-a putut închide descriptorul de fișier pentru procesul copil (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2571
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Eroare necunoscută la executarea procesului inferior „%sâ€"
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2595
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "Nu s-au putut citi date suficiente de la procesul copil (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Nu s-au putut citi datele de la procesul copil"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:519
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Nu s-a putut executa procesul copil (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Nu s-a putut clona «dup()» procesul copil (%s)"
+
+#: glib/gspawn-win32.c:469
#, c-format
msgid "Invalid program name: %s"
msgstr "Nume incorect de program: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:479 glib/gspawn-win32.c:797
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Secvență incorectă în vectorul argumentului la %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:490 glib/gspawn-win32.c:813
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Secvență incorectă în variabilele de mediu: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:793
#, c-format
msgid "Invalid working directory: %s"
msgstr "Director curent nevalid: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:858
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Nu s-a putut porni programul asociat (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1086
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -6036,21 +6082,21 @@ msgstr ""
"Eroare neașteptată în g_io_channel_win32_poll() la citirea datelor de la "
"procesul copil"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Șirul gol nu este un număr"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "„%s†nu este un număr negativ"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Numărul „%s†se află în afara intervalului [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "„%s†nu este un număr pozitiv"
@@ -6111,168 +6157,168 @@ msgstr "URI-ul nu este absolut, și nu s-a furnizat nicio bază URI"
msgid "Missing ‘=’ and parameter value"
msgstr "Lipsește „=†și valoarea parametrului"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Nu s-a putut aloca memoria"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Caracter în afara limitelor standardului UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Secvență incorectă în inputul conversiei"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Caracter în afara limitelor standardului UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
@@ -6280,7 +6326,7 @@ msgstr[0] "%u octet"
msgstr[1] "%u octeți"
msgstr[2] "%u de octeți"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6289,7 +6335,7 @@ msgstr[1] "%u biți"
msgstr[2] "%u de biți"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6298,7 +6344,7 @@ msgstr[1] "%s octeți"
msgstr[2] "%s de octeți"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6311,36 +6357,39 @@ msgstr[2] "%s de biți"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
+#~ msgid "Failed to redirect output or input of child process (%s)"
+#~ msgstr "Nu s-a putut redirecta ieșirea sau inputul procesului copil (%s)"
+
#~ msgid "Unable to load /var/lib/dbus/machine-id or /etc/machine-id: "
#~ msgstr "Nu se poate încărca /var/lib/dbus/machine-id sau /etc/machine-id: "
diff --git a/po/ru.po b/po/ru.po
index a6fd4c949..31a5f54d8 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -16,8 +16,8 @@ msgid ""
msgstr ""
"Project-Id-Version: ru\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-01-26 14:31+0000\n"
-"PO-Revision-Date: 2022-01-26 20:42+0300\n"
+"POT-Creation-Date: 2022-04-08 12:19+0000\n"
+"PO-Revision-Date: 2022-04-08 15:24+0300\n"
"Last-Translator: Aleksandr Melman <Alexmelman88@gmail.com>\n"
"Language-Team: РуÑÑкий <gnome-cyr@gnome.org>\n"
"Language: ru\n"
@@ -26,7 +26,17 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-"X-Generator: Poedit 3.0\n"
+"X-Generator: Poedit 3.0.1\n"
+
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "УÑтановка приложений по умолчанию пока не поддерживаетÑÑ"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"УÑтановка Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ ÐºÐ°Ðº поÑледнего иÑпользованного Ð´Ð»Ñ Ñ‚Ð¸Ð¿Ð° файла, который "
+"еще не поддерживаетÑÑ"
#: gio/gapplication.c:500
msgid "GApplication options"
@@ -51,7 +61,7 @@ msgid "Replace the running instance"
msgstr "Заменить запущенный ÑкземплÑÑ€"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Ðапечатать Ñправку"
@@ -63,7 +73,7 @@ msgstr "[КОМÐÐДÐ]"
msgid "Print version"
msgstr "ВывеÑти номер верии"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "ВывеÑти информацию о верÑии и выйти"
@@ -126,8 +136,8 @@ msgstr "Команда, по которой выводитÑÑ Ð¿Ð¾Ð´Ñ€Ð¾Ð±Ð½Ð°Ñ
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Идентификатор Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð² формате D-Bus (напр.: org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "ФÐЙЛ"
@@ -154,7 +164,7 @@ msgstr "ПÐРÐМЕТР"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "ÐеобÑзательный параметр Ð´Ð»Ñ Ð²Ñ‹Ð·Ð¾Ð²Ð° дейÑÑ‚Ð²Ð¸Ñ Ð² формате GVariant"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -168,7 +178,7 @@ msgid "Usage:\n"
msgstr "ИÑпользование:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Ðргументы:\n"
@@ -291,7 +301,7 @@ msgstr "Поток уже закрыт"
msgid "Truncate not supported on base stream"
msgstr "УÑечение не поддерживаетÑÑ Ð² базовом потоке"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -312,7 +322,7 @@ msgstr "ÐедоÑтаточно меÑта в целевом раÑположе
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "ÐедопуÑÑ‚Ð¸Ð¼Ð°Ñ Ð¿Ð¾ÑледовательноÑÑ‚ÑŒ байтов во входных преобразуемых данных"
@@ -322,7 +332,7 @@ msgstr "ÐедопуÑÑ‚Ð¸Ð¼Ð°Ñ Ð¿Ð¾ÑледовательноÑÑ‚ÑŒ байто
msgid "Error during conversion: %s"
msgstr "Произошла ошибка при преобразовании: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "ÐŸÑ€ÐµÑ€Ñ‹Ð²Ð°ÐµÐ¼Ð°Ñ Ð¸Ð½Ð¸Ñ†Ð¸Ð°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð½Ðµ поддерживаетÑÑ"
@@ -336,37 +346,37 @@ msgstr "Преобразование из набора Ñимволов «%s» Ð
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Ðе удалоÑÑŒ открыть преобразователь из «%s» в «%s»"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "Тип %s"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "ÐеизвеÑтный тип"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "Тип файлов %s"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "Объект GCredentials Ñодержит некорректные данные"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "Тип GCredentials не реализован Ð´Ð»Ñ Ñтой ОС"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Поддержка GCredentials Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ¹ платформы отÑутÑтвует"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "Тип GCredentials не Ñодержит идентификатора процеÑÑа Ð´Ð»Ñ Ñтой ОС"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Спуфинг учётных данных невозможен в Ñтой ОС"
@@ -374,17 +384,17 @@ msgstr "Спуфинг учётных данных невозможен в ÑÑ‚Ð
msgid "Unexpected early end-of-stream"
msgstr "Ðеожиданный ранний конец потока"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Ðеподдерживаемый ключ «%s» в Ñлементе адреÑа «%s»"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "БеÑÑмыÑÐ»ÐµÐ½Ð½Ð°Ñ ÐºÐ¾Ð¼Ð±Ð¸Ð½Ð°Ñ†Ð¸Ñ ÐºÐ»ÑŽÑ‡/значение в Ñлементе адреÑа «%s»"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -393,28 +403,28 @@ msgstr ""
"Ðеправильный Ð°Ð´Ñ€ÐµÑ Â«%s» (требуетÑÑ Ð¿ÑƒÑ‚ÑŒ, временный каталог или один из "
"абÑтрактных ключей)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Ошибка в адреÑе «%s» — неправильный формат атрибута «%s»"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "ÐеизвеÑтный или неподдерживаемый транÑпорт «%s» Ð´Ð»Ñ Ð°Ð´Ñ€ÐµÑа «%s»"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "Ð’ Ñлементе адреÑа «%s» отÑутÑтвует двоеточие (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "Ðазвание протокола в Ñлементе адреÑа “%s†не должен быть пуÑтым"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -423,7 +433,7 @@ msgstr ""
"Пара ключ/значение %d, «%s», в Ñлементе адреÑа «%s» не Ñодержит знака "
"равенÑтва"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
@@ -431,7 +441,7 @@ msgstr ""
"Пара ключ/значение %d, «%s», в Ñлементе адреÑа «%s» не должна иметь пуÑтого "
"ключа"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -440,7 +450,7 @@ msgstr ""
"Ошибка ÑнÑÑ‚Ð¸Ñ ÑÐºÑ€Ð°Ð½Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ ÐºÐ»ÑŽÑ‡Ð° или Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð² паре ключ/значение %d, "
"«%s», в Ñлементе адреÑа «%s»"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -449,82 +459,82 @@ msgstr ""
"Ошибка в адреÑе «%s» — Ð´Ð»Ñ Ñ‚Ñ€Ð°Ð½Ñпорта unix требуетÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ один "
"уÑтановленный ключ «path» или «abstract»"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr ""
"Ошибка в адреÑе «%s» — атрибут узла отÑутÑтвует или имеет неправильный формат"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr ""
"Ошибка в адреÑе «%s» — атрибут порта отÑутÑтвует или имеет неправильный "
"формат"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Ошибка в адреÑе «%s» — атрибут noncefile отÑутÑтвует или имеет неправильный "
"формат"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Ошибка автоматичеÑкого запуÑка: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Произошла ошибка при открытии nonce-файла «%s»: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Произошла ошибка при чтении nonce-файла «%s»: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"Произошла ошибка при чтении nonce-файла «%s», ожидалоÑÑŒ 16 байт, получено %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Произошла ошибка запиÑи Ñодержимого nonce-файла «%s» в поток:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "Указанный Ð°Ð´Ñ€ÐµÑ Ð¿ÑƒÑÑ‚"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
msgstr ""
-"Ðевозможно породить процеÑÑ ÑˆÐ¸Ð½Ñ‹ Ñообщений, еÑли уÑтановлен атрибут setuid"
+"Ðевозможно Ñоздать шину Ñообщений, когда уÑтановлено значение AT_SECURE"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "Ðевозможно породить процеÑÑ ÑˆÐ¸Ð½Ñ‹ Ñообщений без идентификатора машины: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Ðевозможно автоматичеÑки запуÑтить D-Bus без X11 $DISPLAY"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Произошла ошибка при Ñоздании процеÑÑа командной Ñтроки «%s»: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Ðе удалоÑÑŒ определить Ð°Ð´Ñ€ÐµÑ ÑеанÑовой шины (не реализовано Ð´Ð»Ñ Ñтой ОС)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -533,7 +543,7 @@ msgstr ""
"Ðе удалоÑÑŒ определить Ð°Ð´Ñ€ÐµÑ ÑˆÐ¸Ð½Ñ‹ из Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð¾Ð¹ Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ "
"DBUS_STARTER_BUS_TYPE — неизвеÑтное значение «%s»"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -541,7 +551,7 @@ msgstr ""
"Ðе удалоÑÑŒ определить Ð°Ð´Ñ€ÐµÑ ÑˆÐ¸Ð½Ñ‹, Ñ‚. к. значение переменной Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ "
"DBUS_STARTER_BUS_TYPE не уÑтановлено"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "ÐеизвеÑтный тип шины %d"
@@ -570,43 +580,43 @@ msgstr "Идентификаторы Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð´Ð¾Ð»Ð¶Ð½Ñ‹ быÑ
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Отменено через GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Ошибка при получении информации о каталоге «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
msgstr "Ошибочные права на каталог «%s». ОжидалоÑÑŒ 0700, получено 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Произошла ошибка при Ñоздании каталога «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "ДейÑтвие не поддерживаетÑÑ"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Произошла ошибка при открытии ÑвÑзки ключей «%s» на чтение: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "ÐÐµÐºÐ¾Ñ€Ñ€ÐµÐºÑ‚Ð½Ð°Ñ Ñтрока %d в ÑвÑзке ключей около «%s» Ñ Ñодержимым «%s»"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -614,7 +624,7 @@ msgstr ""
"ÐÐµÐºÐ¾Ñ€Ñ€ÐµÐºÑ‚Ð½Ð°Ñ Ð¿ÐµÑ€Ð²Ð°Ñ Ð»ÐµÐºÑема в Ñтроке %d в ÑвÑзке ключей около «%s» Ñ "
"Ñодержимым «%s»"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -622,160 +632,160 @@ msgstr ""
"ÐÐµÐºÐ¾Ñ€Ñ€ÐµÐºÑ‚Ð½Ð°Ñ Ð²Ñ‚Ð¾Ñ€Ð°Ñ Ð»ÐµÐºÑема в Ñтроке %d в ÑвÑзке ключей около «%s» Ñ "
"Ñодержимым «%s»"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Ðе удалоÑÑŒ найти куки Ñ Ð¸Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ð¸ÐºÐ°Ñ‚Ð¾Ñ€Ð¾Ð¼ %d в ÑвÑзке ключей «%s»"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Произошла ошибка при Ñоздании файла блокировки «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Произошла ошибка при удалении уÑтаревшего файла блокировки «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Произошла ошибка при закрытии (удалённого) файла блокировки «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Произошла ошибка при удалении файла блокировки «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Произошла ошибка при открытии ÑвÑзки ключей «%s» на запиÑÑŒ: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Также, не удалоÑÑŒ оÑвободить блокировку Ð´Ð»Ñ Â«%s»: %s) "
-#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "Соединение закрыто"
-#: gio/gdbusconnection.c:1903
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "Ð’Ñ€ÐµÐ¼Ñ Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ Ð¸Ñтекло"
-#: gio/gdbusconnection.c:2541
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr "При Ñоздании клиентÑкого ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ð¾Ð±Ð½Ð°Ñ€ÑƒÐ¶ÐµÐ½Ñ‹ неподдерживаемые флаги"
-#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr ""
"Ð˜Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Â«org.freedesktop.DBus.Properties» Ð´Ð»Ñ Ð¿ÑƒÑ‚Ð¸ %s объекта не найден"
-#: gio/gdbusconnection.c:4414
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "СвойÑтво «%s» отÑутÑтвует"
-#: gio/gdbusconnection.c:4426
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "СвойÑтво «%s» недоÑтупно Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ"
-#: gio/gdbusconnection.c:4437
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "СвойÑтво «%s» недоÑтупно Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñи"
-#: gio/gdbusconnection.c:4457
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr "Ошибка уÑтановки ÑвойÑтва «%s»: ожидалÑÑ Ñ‚Ð¸Ð¿ «%s», но получен «%s»"
-#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
-#: gio/gdbusconnection.c:6760
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "Ð˜Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Â«%s» отÑутÑтвует"
-#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Ð˜Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Â«%s» Ð´Ð»Ñ Ð¿ÑƒÑ‚Ð¸ %s объекта не найден"
-#: gio/gdbusconnection.c:5100
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "Ключ «%s» отÑутÑтвует"
-#: gio/gdbusconnection.c:5131
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Тип ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Â«%s» не Ñовпадает Ñ Ð¾Ð¶Ð¸Ð´Ð°ÐµÐ¼Ñ‹Ð¼ типом «%s»"
-#: gio/gdbusconnection.c:5334
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Объект интерфейÑа %s уже ÑкÑпортирован как %s"
-#: gio/gdbusconnection.c:5561
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Ðевозможно получить ÑвойÑтво %s.%s"
-#: gio/gdbusconnection.c:5617
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Ðевозможно уÑтановить ÑвойÑтво %s.%s"
-#: gio/gdbusconnection.c:5796
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "Метод «%s» вернул тип «%s», но ожидалоÑÑŒ «%s»"
-#: gio/gdbusconnection.c:6872
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "Метод «%s» интерфейÑа «%s» Ñ Ñигнатурой «%s» не ÑущеÑтвует"
-#: gio/gdbusconnection.c:6993
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Поддерево уже ÑкÑпортировано Ð´Ð»Ñ %s"
-#: gio/gdbusconnection.c:7282
+#: gio/gdbusconnection.c:7266
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "Объект по пути «%s» не ÑущеÑтвует"
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
-msgstr "ÐЕПРÐВИЛЬÐЫЙ тип"
+msgstr "тип ÑвлÑетÑÑ ÐЕДОПУСТИМЫМ"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "Сообщение METHOD_CALL: отÑутÑтвует поле заголовка PATH или MEMBER"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "Сообщение METHOD_RETURN: отÑутÑтвует поле заголовка REPLY_SERIAL"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr ""
"Сообщение ERROR: отÑутÑтвует поле заголовка REPLY_SERIAL или ERROR_NAME"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr ""
"Сообщение SIGNAL: отÑутÑтвует поле заголовка PATH, INTERFACE или MEMBER"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -783,7 +793,7 @@ msgstr ""
"Сообщение SIGNAL: поле заголовка PATH иÑпользует зарезервированное значение /"
"org/freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -791,7 +801,7 @@ msgstr ""
"Сообщение SIGNAL: поле заголовка INTERFACE иÑпользует зарезервированное "
"значение org.freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
@@ -799,12 +809,12 @@ msgstr[0] "ТребовалоÑÑŒ прочитать %lu байт, но проч
msgstr[1] "ТребовалоÑÑŒ прочитать %lu байта, но прочитано только %lu"
msgstr[2] "ТребовалоÑÑŒ прочитать %lu байт, но прочитано только %lu"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "ОжидалÑÑ Ð±Ð°Ð¹Ñ‚ NUL поÑле Ñтроки «%s», но найден байт %d"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -814,21 +824,21 @@ msgstr ""
"(Ñмещение %d, длина Ñтроки %d). ÐšÐ¾Ñ€Ñ€ÐµÐºÑ‚Ð½Ð°Ñ Ñтрока UTF-8 вплоть до тех байт: "
"«%s»"
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Слишком Ð³Ð»ÑƒÐ±Ð¾ÐºÐ°Ñ Ð¸ÐµÑ€Ð°Ñ€Ñ…Ð¸Ñ"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Разобранное значение «%s» не ÑвлÑетÑÑ Ð´Ð¾Ð¿ÑƒÑтимым путём объекта D-Bus"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Разобранное значение «%s» не ÑвлÑетÑÑ Ð´Ð¾Ð¿ÑƒÑтимой подпиÑью D-Bus"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -844,7 +854,7 @@ msgstr[2] ""
"Обнаружен маÑÑив длинной %u байт. МакÑÐ¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° равна 2<<26 байт (64 "
"МиБ)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -853,24 +863,24 @@ msgstr ""
"Получен маÑÑив типа «a%c», который должен иметь размер кратный %u (байт), но "
"маÑÑив имеет длину %u (байт)"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
msgstr "ПуÑтые Ñтруктуры (запиÑи) не допуÑкаютÑÑ Ð² D-Bus"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr ""
"Разобранное значение «%s» Ð´Ð»Ñ Ð²Ð°Ñ€Ð¸Ð°Ð½Ñ‚Ð° не ÑвлÑетÑÑ Ð´Ð¾Ð¿ÑƒÑтимой подпиÑью D-Bus"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
msgstr ""
"Ошибка деÑериализации GVariant Ñ Ñ‚Ð¸Ð¿Ð¾Ð¼ Ñтроки «%s» из формата D-Bus wire"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -879,27 +889,27 @@ msgstr ""
"Ðеправильный порÑдок байтов в значении. ОжидалÑÑ 0x6c ('l') или 0x42 ('B'), "
"но найдено значение 0x%02x"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Ðеправильный Ñтарший номер верÑии протокола. ОжидалÑÑ 1, но найден %d"
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Заголовок подпиÑи найден, но его тип отличаетÑÑ Ð¾Ñ‚ подпиÑи"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr "Ðайден заголовок подпиÑи Ñ Ð¿Ð¾Ð´Ð¿Ð¸Ñью «%s», но тело ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¿ÑƒÑто"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr ""
"Разобранное значение «%s» не ÑвлÑетÑÑ Ð´Ð¾Ð¿ÑƒÑтимой подпиÑью D-Bus (Ð´Ð»Ñ Ñ‚ÐµÐ»Ð°)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -911,17 +921,17 @@ msgstr[1] ""
msgstr[2] ""
"ОтÑутÑтвует заголовок подпиÑи в Ñообщении, но тело ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð·Ð°Ð½Ð¸Ð¼Ð°ÐµÑ‚ %u байт"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Ðе удалоÑÑŒ выполнить извлечение ÑообщениÑ: "
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
msgstr "Ошибка Ñериализации GVariant Ñ Ñ‚Ð¸Ð¿Ð¾Ð¼ Ñтроки «%s» в формат D-Bus wire"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
@@ -929,16 +939,16 @@ msgstr ""
"КоличеÑтво деÑкрипторов файлов в Ñообщении (%d) отличаетÑÑ Ð¾Ñ‚ указанного в "
"заголовке (%d)"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Ðе удалоÑÑŒ Ñериализовать Ñообщение: "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "Тело ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¸Ð¼ÐµÐµÑ‚ подпиÑÑŒ «%s», но нет заголовка подпиÑи"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -947,53 +957,53 @@ msgstr ""
"Тело ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¸Ð¼ÐµÐµÑ‚ тип подпиÑи «%s», но значение подпиÑи в поле заголовка "
"равно «%s»"
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr ""
"Тело ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¿ÑƒÑто, но значение подпиÑи в поле заголовка равно «(%s)»"
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Возвращена ошибка Ñ Ñ‚ÐµÐ»Ð¾Ð¼ типа «%s»"
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Возвращена ошибка Ñ Ð¿ÑƒÑтым телом"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Чтобы закрыть Ñто окно, введите любой Ñимвол)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Ð¡ÐµÐ°Ð½Ñ dbus не запущен, и автозапуÑк не выполнилÑÑ"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Ðе удалоÑÑŒ получить профиль аппаратуры: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Ðе удалоÑÑŒ загрузить %s или %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Ошибка вызова StartServiceByName Ð´Ð»Ñ %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Ðеожиданный ответ %d из метода StartServiceByName(«%s»)"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1048,67 +1058,67 @@ msgstr ""
"\n"
"Ð”Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ñправки по команде иÑпользуйте «%s КОМÐÐДР--help».\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Ошибка: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Произошла ошибка при разборе интроÑпекции XML: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Ошибка: %s не ÑвлÑетÑÑ Ð´Ð¾Ð¿ÑƒÑтимым именем\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Ошибка: %s не ÑвлÑетÑÑ Ð´Ð¾Ð¿ÑƒÑтимым объектным путём\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "ПодключитьÑÑ Ðº ÑиÑтемной шине"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "ПодключитьÑÑ Ðº пользовательÑкой шине"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "ПодключитьÑÑ Ðº заданному адреÑу D-Bus"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Параметры оконечной точки ÑоединениÑ:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Параметры, определÑющие оконечную точку ÑоединениÑ"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "ÐžÐºÐ¾Ð½ÐµÑ‡Ð½Ð°Ñ Ñ‚Ð¾Ñ‡ÐºÐ° ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ð½Ðµ указана"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Указано неÑколько оконечных точек ÑоединениÑ"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr ""
"Предупреждение: ÑоглаÑно данным интроÑпекции, Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Â«%s» не ÑущеÑтвует\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1117,160 +1127,164 @@ msgstr ""
"Предупреждение: ÑоглаÑно данным интроÑпекции, метод «%s» в интерфейÑе «%s» "
"не ÑущеÑтвует\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "ÐеобÑзательный получатель Ñигнала (уникальное имÑ)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Объектный путь, Ð´Ð»Ñ Ð²Ñ‹Ð¿ÑƒÑка Ñигнала"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Ðазвание Ñигнала и интерфейÑа"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "ПоÑлать Ñигнал."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Произошла ошибка при Ñоединении: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Ошибка: %s не ÑвлÑетÑÑ Ð´Ð¾Ð¿ÑƒÑтимым уникальным именем шины.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Ошибка: не указан объектный путь\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Ошибка: не указано Ð¸Ð¼Ñ Ñигнала\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Ошибка: неправильное Ð¸Ð¼Ñ Ñигнала «%s»\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Ошибка: %s не ÑвлÑетÑÑ Ð´Ð¾Ð¿ÑƒÑтимым именем интерфейÑа\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Ошибка: %s не ÑвлÑетÑÑ Ð´Ð¾Ð¿ÑƒÑтимым именем члена\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Произошла ошибка при разборе параметра %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Произошла ошибка при ÑброÑе подключениÑ: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Ð˜Ð¼Ñ Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ, Ð´Ð»Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ð¾Ð³Ð¾ вызываетÑÑ Ð¼ÐµÑ‚Ð¾Ð´"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Объектный путь, Ð´Ð»Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ð¾Ð³Ð¾ вызываетÑÑ Ð¼ÐµÑ‚Ð¾Ð´"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Ðазвание метода или интерфейÑа"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Ð’Ñ€ÐµÐ¼Ñ Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ Ð² Ñекундах"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Разрешить интерактивную авторизацию"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Вызывает метод на удалённом объекте."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Ошибка: не указано назначение\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Ошибка: %s не ÑвлÑетÑÑ Ð´Ð¾Ð¿ÑƒÑтимым именем шины\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Ошибка: не указано Ð¸Ð¼Ñ Ð¼ÐµÑ‚Ð¾Ð´Ð°\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Ошибка: неправильное Ð¸Ð¼Ñ Ð¼ÐµÑ‚Ð¾Ð´Ð° «%s»\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Произошла ошибка при разборе параметра %d типа «%s»: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Произошла ошибка при добавлении деÑкриптора %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Ð˜Ð¼Ñ Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð¸Ð½Ñ‚Ñ€Ð¾Ñпекции"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Объектный путь Ð´Ð»Ñ Ð¸Ð½Ñ‚Ñ€Ð¾Ñпекции"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Ðапечатать XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "ИнтроÑÐ¿ÐµÐºÑ†Ð¸Ñ Ð¿Ð¾Ñ‚Ð¾Ð¼ÐºÐ°"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Только ÑвойÑтва печати"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Выполнить интроÑпекцию удалённого объекта."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Ð˜Ð¼Ñ Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð½Ð°Ð±Ð»ÑŽÐ´ÐµÐ½Ð¸Ñ"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Объектный путь Ð´Ð»Ñ Ð½Ð°Ð±Ð»ÑŽÐ´ÐµÐ½Ð¸Ñ"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Ðаблюдать за удалённым объектом."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Ошибка: невозможно Ñледить за Ñоединением non-message-bus\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Ð¡ÐµÑ€Ð²Ð¸Ñ Ð´Ð»Ñ Ð°ÐºÑ‚Ð¸Ð²Ð°Ñ†Ð¸Ð¸ перед ожиданием другого (хорошо извеÑтное имÑ)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1278,63 +1292,68 @@ msgstr ""
"Срок ожидание до выхода Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ¾Ð¹ (Ñекунды); 0 Ð´Ð»Ñ Ð±ÐµÑконечноÑти (по "
"умолчанию)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[ПÐРÐМЕТР…] ИМЯ-ШИÐЫ"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "ДождитеÑÑŒ поÑÐ²Ð»ÐµÐ½Ð¸Ñ Ð¸Ð¼ÐµÐ½Ð¸ шины."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Ошибка: должен быть указан ÑÐµÑ€Ð²Ð¸Ñ Ð´Ð»Ñ Ð°ÐºÑ‚Ð¸Ð²Ð°Ñ†Ð¸Ð¸.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "Ошибка: должен быть указан ÑÐµÑ€Ð²Ð¸Ñ Ð´Ð»Ñ Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Ошибка: Ñлишком много аргументов.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Ошибка: %s не ÑвлÑетÑÑ Ð´Ð¾Ð¿ÑƒÑтимым извеÑтным именем шины\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Ðе вправе изменÑÑ‚ÑŒ наÑтройки отладки"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Без имени"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "В desktop-файле не указано поле Exec"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Ðе удалоÑÑŒ найти терминал, требуемый Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr "Ðе удалоÑÑŒ Ñоздать пользовательÑкую папку наÑтроек Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ %s: %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Ðе удалоÑÑŒ Ñоздать пользовательÑкую папку наÑтроек MIME %s: %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "Ð’ информации о приложении отÑутÑтвует идентификатор"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Ðе удалоÑÑŒ Ñоздать пользовательÑкий desktop-файл %s"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "ОÑобое определение Ð´Ð»Ñ %s"
@@ -1362,7 +1381,7 @@ msgstr "привод не поддерживает запуÑк"
msgid "drive doesn’t implement stop"
msgstr "привод не поддерживает оÑтановку"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "Библиотека TLS не реализует Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð½Ð° TLS binding"
@@ -1403,74 +1422,74 @@ msgstr "Ð”Ð»Ñ GEmblemedIcon ожидаетÑÑ GEmblem"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Ð¡Ð¾Ð´ÐµÑ€Ð¶Ð°Ñ‰Ð°Ñ Ñ‚Ð¾Ñ‡ÐºÐ° Ð¼Ð¾Ð½Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð½Ðµ ÑущеÑтвует"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "ÐÐµÐ»ÑŒÐ·Ñ Ñкопировать поверх каталога"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "ÐÐµÐ»ÑŒÐ·Ñ Ñкопировать каталог поверх каталога"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Целевой файл ÑущеÑтвует"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Ðе удалоÑÑŒ рекурÑивно Ñкопировать каталог"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Соединение не поддерживаетÑÑ"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Произошла ошибка при Ñоединении файла: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr ""
"Копирование (reflink/clone) между точками Ð¼Ð¾Ð½Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð½Ðµ поддерживаетÑÑ"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Копирование (reflink/clone) не поддерживаетÑÑ Ð¸Ð»Ð¸ некорректно"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Копирование (reflink/clone) не поддерживаетÑÑ Ð¸Ð»Ð¸ не работает"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "ÐÐµÐ»ÑŒÐ·Ñ Ñкопировать Ñпециальный файл"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Дано неверное значение Ñимвольной ÑÑылки"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Символьные ÑÑылки не поддерживаютÑÑ"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Корзина не поддерживаетÑÑ"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Имена файлов не могут Ñодержать «%c»"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "том не поддерживает приÑоединение"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Ðет зарегиÑтрированного Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð¾Ð±Ñ€Ð°Ð±Ð¾Ñ‚ÐºÐ¸ данного файла"
@@ -1515,7 +1534,7 @@ msgstr "УÑечение на входном потоке не разрешенÐ
msgid "Truncate not supported on stream"
msgstr "УÑечение не поддерживаетÑÑ Ð½Ð° потоке"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "ÐедопуÑтимое Ð¸Ð¼Ñ ÑƒÐ·Ð»Ð°"
@@ -1602,7 +1621,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Ðевозможно Ñчитать «%s» маÑкой IP-адреÑа"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "ÐедоÑтаточно меÑта Ð´Ð»Ñ Ð°Ð´Ñ€ÐµÑа Ñокета"
@@ -2448,15 +2467,15 @@ msgstr "Ошибка при Ñжатии файла %s"
msgid "text may not appear inside <%s>"
msgstr "текÑта не может быть внутри <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Показать верÑию программы и выйти"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Ð˜Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° Ð´Ð»Ñ ÑохранениÑ"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2464,48 +2483,48 @@ msgstr ""
"Каталоги Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ файлов, указанных в параметре FILE (по умолчанию: "
"текущий каталог)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "КÐТÐЛОГ"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
"Генерировать результат в формате в ÑоответÑтвии Ñ Ñ€Ð°Ñширением целевого файла"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Генерировать иÑходный заголовок"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr ""
"Генерировать иÑходный код, который иÑпользуетÑÑ Ð´Ð»Ñ ÑвÑзи Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð¼ реÑурÑов "
"вашего кода"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Генерировать ÑпиÑок завиÑимоÑтей"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Ð˜Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° завиÑимоÑтей Ð´Ð»Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ð¸"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Включить фиктивные цели в Ñозданный файл завиÑимоÑтей"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Ðе Ñоздавать и не региÑтрировать реÑÑƒÑ€Ñ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡ÐµÑки"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Ðе ÑкÑпортируйте функции; объÑвлÑйте их как G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2513,11 +2532,15 @@ msgstr ""
"Ðе включайте реÑурÑные данные в файл С. ПредполагаетÑÑ Ñ‡Ñ‚Ð¾ они подключаютÑÑ "
"из отдельных файлов"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "Ð˜Ð¼Ñ C-идентификатора, иÑпользуемое Ð´Ð»Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ð¸ иÑходного кода"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "Целевой компилÑтор Ñзыка C (по умолчанию: Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð°Ñ Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ CC)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2527,7 +2550,7 @@ msgstr ""
"Файлы Ñпецификации реÑурÑов имеют раÑширение .gresource.xml,\n"
"а файл реÑурÑа имеет раÑширение .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Должно быть указано только одно Ð¸Ð¼Ñ Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°\n"
@@ -3319,13 +3342,13 @@ msgstr "Произошла ошибка при Ñоздании резервно
msgid "Error renaming temporary file: %s"
msgstr "Произошла ошибка при переименовании временного файла: %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "Произошла ошибка при уÑечении файла: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Произошла ошибка при открытии файла «%s»: %s"
@@ -3347,7 +3370,7 @@ msgstr "Файл был изменён извне"
msgid "Error removing old file: %s"
msgstr "Произошла ошибка при удалении Ñтарого файла: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Передан недопуÑтимый GSeekType"
@@ -3359,15 +3382,15 @@ msgstr "ÐедопуÑтимый Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð½Ð° переход"
msgid "Cannot truncate GMemoryInputStream"
msgstr "ÐÐµÐ»ÑŒÐ·Ñ ÑƒÑечь GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Ðевозможно изменить размер выходного потока в памÑÑ‚ÑŒ"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Ðе удалоÑÑŒ изменить размер выходного потока в памÑÑ‚ÑŒ"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3375,11 +3398,11 @@ msgstr ""
"КоличеÑтво памÑти, требуемое процеÑÑом запиÑи, больше чем доÑтупное адреÑное "
"проÑтранÑтво"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "ВыполнÑÑ‚ÑŒ перемещение в начало потока"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "ВыполнÑÑ‚ÑŒ перемещение в конец потока"
@@ -3488,18 +3511,22 @@ msgstr "Сумма маÑÑивов, переданных в «%s» Ñлишко
msgid "Source stream is already closed"
msgstr "ИÑходный поток уже закрыт"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Ошибка Ñ€Ð°Ð·Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Â«%s»: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "«%s» не реализовано"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "ÐедопуÑтимый домен"
@@ -3614,7 +3641,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " РÐЗДЕЛ Ð˜Ð¼Ñ Ñ€Ð°Ð·Ð´ÐµÐ»Ð° elf (необÑзательный)\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " КОМÐÐДРКоманда Ð´Ð»Ñ Ð¿Ð¾ÑÑÐ½ÐµÐ½Ð¸Ñ (необÑзательный)\n"
@@ -3647,7 +3674,7 @@ msgstr "ПУТЬ"
msgid " PATH A resource path\n"
msgstr " ПУТЬ Путь реÑурÑа\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Схема «%s» отÑутÑтвует\n"
@@ -3678,35 +3705,35 @@ msgstr "Путь должен заканчиватьÑÑ Ñимволом коÑ
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Ð’ пути не должно быть две ÑтоÑщих Ñ€Ñдом коÑÑ‹Ñ… черты (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "ПредоÑтавленное величина лежит вне диапазона допуÑтимых значений\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "Ключ недоÑтупен Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñи\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "СпиÑок уÑтановленных (неперемещаемых) Ñхем"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "СпиÑок уÑтановленных перемещаемых Ñхем"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "СпиÑок ключей в СХЕМЕ"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "СХЕМÐ[:ПУТЬ]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "СпиÑок потомков СХЕМЫ"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3714,48 +3741,48 @@ msgstr ""
"ПеречиÑлить ключи и Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ñ€ÐµÐºÑƒÑ€Ñивно\n"
"ЕÑли указана СХЕМÐ, то перечиÑлить вÑе ключи\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[СХЕМÐ[:ПУТЬ]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Получить значение КЛЮЧÐ"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "СХЕМÐ[:ПУТЬ] КЛЮЧ"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "ЗапроÑить диапазон допуÑтимых значений КЛЮЧÐ"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "ЗапроÑить опиÑание Ð´Ð»Ñ ÐšÐ›Ð®Ð§Ð"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "ПриÑвоить величину ЗÐÐЧЕÐИЕ КЛЮЧУ"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "СХЕМÐ[:ПУТЬ] КЛЮЧ ЗÐÐЧЕÐИЕ"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Ðазначить КЛЮЧУ его значение по умолчанию"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "СброÑить вÑе ключи в СХЕМЕ в их Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾ умолчанию"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Проверить, что КЛЮЧ доÑтупен Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñи"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3765,11 +3792,11 @@ msgstr ""
"ЕÑли КЛЮЧ не задан, то Ñледить за вÑеми ключами СХЕМЫ.\n"
"Ð”Ð»Ñ Ð¾Ñтановки ÑÐ»ÐµÐ¶ÐµÐ½Ð¸Ñ Ð¸Ñпользуйте ^C.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "СХЕМÐ[:ПУТЬ] [КЛЮЧ]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3818,7 +3845,7 @@ msgstr ""
"КОМÐÐДл.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3833,11 +3860,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " КÐТ_СХЕМ Каталог Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка дополнительных Ñхем\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3845,216 +3872,216 @@ msgstr ""
" СХЕМРИдентификатор Ñхемы\n"
" ПУТЬ Путь, Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÑ‰Ð°ÐµÐ¼Ñ‹Ñ… Ñхем\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " КЛЮЧ (ÐеобÑзательный) ключ Ñхемы\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " КЛЮЧ Ключ Ñхемы\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " ЗÐÐЧЕÐИЕ ПриÑваиваемое значение\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Ðе удалоÑÑŒ загрузить Ñхемы из «%s»: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Схемы не уÑтановлены\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Указано пуÑтое Ð¸Ð¼Ñ Ñхемы\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Ключ «%s» отÑутÑтвует\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "ÐедопуÑтимый Ñокет, не инициализировано"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "ÐедопуÑтимый Ñокет, Ð¸Ð½Ð¸Ñ†Ð¸Ð°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð½Ðµ удалаÑÑŒ по причине: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Сокет уже закрыт"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Превышено Ð²Ñ€ÐµÐ¼Ñ Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ Ð²Ð²Ð¾Ð´Ð°-вывода Ñокета"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "ÑоздаётÑÑ GSocket из fd: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Ðе удалоÑÑŒ Ñоздать Ñокет: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Указано неизвеÑтное ÑемейÑтво"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Указан неизвеÑтный протокол"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr ""
"Ðевозможно иÑпользовать дейтаграммные операции на не-дейтаграммном Ñокете."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Ðевозможно иÑпользовать дейтаграммные операции на Ñокете Ñ ÑƒÑтановленным "
"тайм-аутом."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "не удалоÑÑŒ получить локальный адреÑ: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "не удалоÑÑŒ получить удаленный адреÑ: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "не удалоÑÑŒ Ñлушать: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Произошла ошибка при ÑвÑзывании к адреÑу %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Ошибка при вÑтуплении в мультикаÑтовую группу: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Ошибка при выходе из мультикаÑтовой группы: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "ОтÑутÑтвует поддержка мультикаÑта по иÑточнику"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Ðеподдерживаемое ÑемейÑтво Ñокетов"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "Ñпецифичный иÑточник, не Ð°Ð´Ñ€ÐµÑ IP4"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Ð˜Ð¼Ñ Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñа Ñлишком длинное"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Ð˜Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð½Ðµ найден: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "ОтÑутÑтвует поддержка IPv4 мультикаÑта по иÑточнику"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "ОтÑутÑтвует поддержка IPv6 мультикаÑта по иÑточнику"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Ошибка приёма подключениÑ: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "ВыполнÑетÑÑ Ñоединение"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Ðе удалоÑÑŒ получить ошибку ожиданиÑ: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Ошибка при получении данных: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Ошибка при отправлении данных: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Ðе удалоÑÑŒ выключить Ñокет: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Произошла ошибка при закрытии Ñокета: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Ожидание ÑоÑтоÑÐ½Ð¸Ñ Ñокета: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Ðе удалоÑÑŒ отправить Ñообщение: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Слишком большие маÑÑивы ÑообщениÑ"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Произошла ошибка при отправлении ÑообщениÑ: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage не поддерживаетÑÑ Ð² Windows"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Произошла ошибка при получении ÑообщениÑ: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Ðе удалоÑÑŒ прочитать Ð¿Ð¾Ð»Ð½Ð¾Ð¼Ð¾Ñ‡Ð¸Ñ Ñокета: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
-msgstr "Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ g_socket_get_credentials не реализована в Ñтой ОС"
+msgstr "g_socket_get_credentials не реализован Ð´Ð»Ñ Ð´Ð°Ð½Ð½Ð¾Ð¹ ОС"
#: gio/gsocketclient.c:191
#, c-format
@@ -4070,11 +4097,11 @@ msgstr "Ðе удалоÑÑŒ подключитьÑÑ Ðº %s: "
msgid "Could not connect: "
msgstr "Ðе удалоÑÑŒ подключитьÑÑ Ðº: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "ПрокÑирование через не-TCP Ñоединение не поддерживаетÑÑ."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Протокол прокÑи «%s» не поддерживаетÑÑ."
@@ -4176,7 +4203,7 @@ msgstr "ПрокÑи SOCKSv5 не поддерживает предложеннÑ
msgid "Unknown SOCKSv5 proxy error."
msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° прокÑи SOCKSv5."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr "Ðе удалоÑÑŒ Ñоздать канал Ð´Ð»Ñ ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ñ Ð¿Ñ€Ð¾Ñ†ÐµÑÑом-потомком (%s)"
@@ -4200,44 +4227,66 @@ msgstr "Ðе найдено ни одного допуÑтимого адреÑÐ
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "Ошибка обратного Ñ€Ð°Ð·Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Â«%s»: %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr "Ошибка при разборе запиÑи DNS %s: некорректный DNS-пакет"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "ЗапиÑÑŒ DNS Ñ Ð·Ð°Ð¿Ñ€Ð°ÑˆÐ¸Ð²Ð°ÐµÐ¼Ñ‹Ð¼ типом «%s» отÑутÑтвует"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "Временно невозможно разрешить «%s»"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "Произошла ошибка Ñ€Ð°Ð·Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Â«%s»"
-#: gio/gtlscertificate.c:431
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Ðекорректный DNS-пакет"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "Ðе удалоÑÑŒ разобрать ответ DNS Ð´Ð»Ñ \"%s\": "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Ðе найден Ñекретный ключ в формате PEM"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Ðе удалоÑÑŒ раÑшифровать Ñекретный ключ в формате PEM"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Ðе удалоÑÑŒ разобрать Ñекретный ключ в формате PEM"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Ðе найден Ñертификат в формате PEM"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Ðе удалоÑÑŒ разобрать Ñертификат в формате PEM"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "Текущий бÑкенд TLS не поддерживает PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "Ð¡ÐµÑ€Ð²Ð¸Ñ GTlsBackend не поддерживает Ñоздание Ñертификатов PKCS #11"
@@ -4263,7 +4312,11 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "Введённый пароль неверен."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "Отправка деÑкриптора файла не поддерживаетÑÑ"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
@@ -4271,11 +4324,11 @@ msgstr[0] "ОжидаетÑÑ 1 контрольное Ñообщение, поÐ
msgstr[1] "ОжидаетÑÑ 1 контрольное Ñообщение, получено %d"
msgstr[2] "ОжидаетÑÑ 1 контрольное Ñообщение, получено %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Ðеожиданный тип вÑпомогательных данных"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
@@ -4283,37 +4336,41 @@ msgstr[0] "ОжидаетÑÑ Ð¾Ð´Ð¸Ð½ файловый деÑкриптор нÐ
msgstr[1] "ОжидаетÑÑ Ð¾Ð´Ð¸Ð½ файловый деÑкриптор но получено %d\n"
msgstr[2] "ОжидаетÑÑ Ð¾Ð´Ð¸Ð½ файловый деÑкриптор но получено %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Получен недопуÑтимый файловый деÑкриптор"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "Получение деÑкриптора файла не поддерживаетÑÑ"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Произошла ошибка при отправлении мандата: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Произошла ошибка при проверке Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ SO_PASSCRED Ð´Ð»Ñ Ñокета: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Произошла ошибка при включении SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"ОжидалоÑÑŒ прочитать один байт идентификационной информации (credentials), но "
"не прочитано ни одного байта"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Контрольное Ñообщение не ожидалоÑÑŒ, но получено %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Произошла ошибка при отключении SO_PASSCRED: %s"
@@ -4329,7 +4386,7 @@ msgstr "Ошибка при чтении из файлового деÑкрипÑ
msgid "Error closing file descriptor: %s"
msgstr "Ошибка при закрытии файлового деÑкриптора: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Корень файловой ÑиÑтемы"
@@ -4340,7 +4397,7 @@ msgstr "Корень файловой ÑиÑтемы"
msgid "Error writing to file descriptor: %s"
msgstr "Ошибка при запиÑи в файловый деÑкриптор: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr ""
"ÐбÑтрактные адреÑа доменных Ñокетов UNIX не поддерживаютÑÑ Ð½Ð° Ñтой ÑиÑтеме"
@@ -4491,8 +4548,8 @@ msgstr "Ðе удалоÑÑŒ дополнить Ñтроку выполнениÑ
msgid "Unrepresentable character in conversion input"
msgstr "Во входной Ñтроке Ð´Ð»Ñ Ð¿Ñ€ÐµÐ¾Ð±Ñ€Ð°Ð·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¾Ð±Ð½Ð°Ñ€ÑƒÐ¶ÐµÐ½ неотображаемый Ñимвол"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr ""
"ÐÐµÐ¿Ð¾Ð»Ð½Ð°Ñ ÑÐ¸Ð¼Ð²Ð¾Ð»ÑŒÐ½Ð°Ñ Ð¿Ð¾ÑледовательноÑÑ‚ÑŒ ÑодержитÑÑ Ð² конце входных данных"
@@ -4809,62 +4866,62 @@ msgstr "Ð’Ñ"
#: glib/gdatetime.c:468
msgctxt "full month name with day"
msgid "January"
-msgstr "ÑнварÑ"
+msgstr "ЯнварÑ"
#: glib/gdatetime.c:470
msgctxt "full month name with day"
msgid "February"
-msgstr "февралÑ"
+msgstr "ФевралÑ"
#: glib/gdatetime.c:472
msgctxt "full month name with day"
msgid "March"
-msgstr "марта"
+msgstr "Марта"
#: glib/gdatetime.c:474
msgctxt "full month name with day"
msgid "April"
-msgstr "апрелÑ"
+msgstr "ÐпрелÑ"
#: glib/gdatetime.c:476
msgctxt "full month name with day"
msgid "May"
-msgstr "маÑ"
+msgstr "МаÑ"
#: glib/gdatetime.c:478
msgctxt "full month name with day"
msgid "June"
-msgstr "июнÑ"
+msgstr "ИюнÑ"
#: glib/gdatetime.c:480
msgctxt "full month name with day"
msgid "July"
-msgstr "июлÑ"
+msgstr "ИюлÑ"
#: glib/gdatetime.c:482
msgctxt "full month name with day"
msgid "August"
-msgstr "авгуÑта"
+msgstr "ÐвгуÑта"
#: glib/gdatetime.c:484
msgctxt "full month name with day"
msgid "September"
-msgstr "ÑентÑбрÑ"
+msgstr "СентÑбрÑ"
#: glib/gdatetime.c:486
msgctxt "full month name with day"
msgid "October"
-msgstr "октÑбрÑ"
+msgstr "ОктÑбрÑ"
#: glib/gdatetime.c:488
msgctxt "full month name with day"
msgid "November"
-msgstr "ноÑбрÑ"
+msgstr "ÐоÑбрÑ"
#: glib/gdatetime.c:490
msgctxt "full month name with day"
msgid "December"
-msgstr "декабрÑ"
+msgstr "ДекабрÑ"
#. Translators: Some languages need different grammatical forms of
#. * month names depending on whether they are standalone or in a full
@@ -4886,62 +4943,62 @@ msgstr "декабрÑ"
#: glib/gdatetime.c:555
msgctxt "abbreviated month name with day"
msgid "Jan"
-msgstr "Ñнв"
+msgstr "Янв"
#: glib/gdatetime.c:557
msgctxt "abbreviated month name with day"
msgid "Feb"
-msgstr "фев"
+msgstr "Фев"
#: glib/gdatetime.c:559
msgctxt "abbreviated month name with day"
msgid "Mar"
-msgstr "мар"
+msgstr "Мар"
#: glib/gdatetime.c:561
msgctxt "abbreviated month name with day"
msgid "Apr"
-msgstr "апр"
+msgstr "Ðпр"
#: glib/gdatetime.c:563
msgctxt "abbreviated month name with day"
msgid "May"
-msgstr "маÑ"
+msgstr "Май"
#: glib/gdatetime.c:565
msgctxt "abbreviated month name with day"
msgid "Jun"
-msgstr "июн"
+msgstr "Июн"
#: glib/gdatetime.c:567
msgctxt "abbreviated month name with day"
msgid "Jul"
-msgstr "июл"
+msgstr "Июл"
#: glib/gdatetime.c:569
msgctxt "abbreviated month name with day"
msgid "Aug"
-msgstr "авг"
+msgstr "Ðвг"
#: glib/gdatetime.c:571
msgctxt "abbreviated month name with day"
msgid "Sep"
-msgstr "Ñен"
+msgstr "Сен"
#: glib/gdatetime.c:573
msgctxt "abbreviated month name with day"
msgid "Oct"
-msgstr "окт"
+msgstr "Окт"
#: glib/gdatetime.c:575
msgctxt "abbreviated month name with day"
msgid "Nov"
-msgstr "ноÑ"
+msgstr "ÐоÑ"
#: glib/gdatetime.c:577
msgctxt "abbreviated month name with day"
msgid "Dec"
-msgstr "дек"
+msgstr "Дек"
#. Translators: 'before midday' indicator
#: glib/gdatetime.c:594
@@ -5065,15 +5122,15 @@ msgstr ""
"Ðевозможно выполнить непоÑредÑтвенное чтение в функции "
"g_io_channel_read_to_end"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "Ð’ каталогах поиÑка не удалоÑÑŒ найти допуÑтимый файл ключей"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Ðе ÑвлÑетÑÑ Ð¾Ð±Ñ‹Ñ‡Ð½Ñ‹Ð¼ файлом"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5081,44 +5138,44 @@ msgstr ""
"Файл ключей Ñодержит Ñтроку «%s», ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð½Ðµ ÑвлÑетÑÑ Ð¿Ð°Ñ€Ð¾Ð¹ «ключ-значение», "
"группой или комментарием"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "ÐедопуÑтимое Ð¸Ð¼Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ñ‹: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Файл ключей не начинаетÑÑ Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ñ‹"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "ÐедопуÑтимое Ð¸Ð¼Ñ ÐºÐ»ÑŽÑ‡Ð°: %s"
+msgid "Invalid key name: %.*s"
+msgstr "ÐедопуÑтимое Ð¸Ð¼Ñ ÐºÐ»ÑŽÑ‡Ð°: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Файл ключей Ñодержит неподдерживаемую кодировку «%s»"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Файл ключей не Ñодержит группу «%s»"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Файл ключей не Ñодержит ключа «%s» в группе «%s»"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr ""
"Файл ключей Ñодержит ключ «%s», значение которого «%s» не в кодировке UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
@@ -5126,7 +5183,7 @@ msgstr ""
"Файл ключей Ñодержит ключ «%s», значение которого не удалоÑÑŒ "
"интерпретировать."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5135,36 +5192,36 @@ msgstr ""
"Файл ключей Ñодержит ключ «%s» в группе «%s», значение которого не удалоÑÑŒ "
"интерпретировать."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "Значение ключа «%s» в группе «%s» имеет значение «%s», но ожидалоÑÑŒ %s"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Файл ключей Ñодержит Ñимвол escape в конце Ñтроки"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Файл ключей Ñодержит неверную Ñкранирующую поÑледовательноÑÑ‚ÑŒ «%s»"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "Ðе удалоÑÑŒ преобразовать значение «%s» в чиÑло."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "ЦелочиÑленное значение «%s» выходит за пределы"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "Ðе удалоÑÑŒ преобразовать «%s» в чиÑло Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ запÑтой."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "Ðе удалоÑÑŒ преобразовать «%s» в булево значение."
@@ -5458,7 +5515,7 @@ msgstr "Произошла ошибка при разборе параметра
msgid "Missing argument for %s"
msgstr "ОтÑутÑтвует аргумент Ð´Ð»Ñ %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "ÐеизвеÑтный параметр %s"
@@ -5766,7 +5823,7 @@ msgstr "Ñлишком длинное Ð¸Ð¼Ñ Ð² (*MARK), (*PRUNE), (*SKIP) илÐ
#: glib/gregex.c:520
msgid "character value in \\u.... sequence is too large"
-msgstr "Ñлишком большое значение Ñимвола в \\u…"
+msgstr "значение Ñимвола в поÑледовательноÑти \\u.... Ñлишком велико"
#: glib/gregex.c:743 glib/gregex.c:1988
#, c-format
@@ -5870,125 +5927,135 @@ msgstr "ТекÑÑ‚ был пуÑÑ‚ (или Ñодержал только проÐ
#: glib/gspawn.c:310
#, c-format
msgid "Failed to read data from child process (%s)"
-msgstr "Ðе удалоÑÑŒ прочитать данные из процеÑÑа-потомка (%s)"
+msgstr "Ðе удалоÑÑŒ прочитать данные из дочернего процеÑÑа (%s)"
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
-msgstr ""
-"Произошла Ð½ÐµÐ¾Ð¶Ð¸Ð´Ð°Ð½Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° при чтении данных из процеÑÑа-потомка (%s)"
+msgstr "ÐÐµÐ¾Ð¶Ð¸Ð´Ð°Ð½Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° при чтении данных из дочернего процеÑÑа (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Произошла Ð½ÐµÐ¾Ð¶Ð¸Ð´Ð°Ð½Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° в функции waitpid() (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "Дочерний процеÑÑ Ð·Ð°Ð²ÐµÑ€ÑˆÐ¸Ð»ÑÑ Ñ ÐºÐ¾Ð´Ð¾Ð¼ %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Дочерний процеÑÑ ÑƒÐ±Ð¸Ñ‚ по Ñигналу %ld"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Дочерний процеÑÑ Ð¾Ñтановлен по Ñигналу %ld"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Дочерний процеÑÑ Ð°Ð²Ð°Ñ€Ð¸Ð¹Ð½Ð¾ завершил работу"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
-msgstr "Ðе удалоÑÑŒ прочитать данные из канала потомка (%s)"
+msgstr "Ðе удалоÑÑŒ выполнить чтение из дочернего канала (%s)"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
-msgstr "Ðе удалоÑÑŒ выполнить процеÑÑ-потомок «%s» (%s)"
+msgstr "Ðе удалоÑÑŒ запуÑтить дочерний процеÑÑ \"%s\" (%s)"
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ fork завершилаÑÑŒ неудачно (%s)"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Ðе удалоÑÑŒ Ñменить каталог на «%s» (%s)"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
-msgstr "Ðе удалоÑÑŒ выполнить процеÑÑ-потомок «%s» (%s)"
+msgstr "Ðе удалоÑÑŒ выполнить дочерний процеÑÑ \"%s\" (%s)"
+
+#: glib/gspawn.c:2550
+#, c-format
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Ðе удалоÑÑŒ открыть файл Ð´Ð»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð´ÐµÑкриптора файла (%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2558
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Ðе удалоÑÑŒ перенаправить вывод или ввод процеÑÑа-потомка (%s)"
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Ðе удалоÑÑŒ дублировать деÑкриптор файла Ð´Ð»Ñ Ð´Ð¾Ñ‡ÐµÑ€Ð½ÐµÐ³Ð¾ процеÑÑа (%s)"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
-msgstr "При Ñоздании процеÑÑа-потомка Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ fork завершилаÑÑŒ неудачно (%s)"
+msgstr "При Ñоздании дочернего процеÑÑа Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ fork завершилаÑÑŒ неудачно (%s)"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2575
#, c-format
msgid "Failed to close file descriptor for child process (%s)"
msgstr "Ðе удалоÑÑŒ закрыть деÑкриптор файла Ð´Ð»Ñ Ð´Ð¾Ñ‡ÐµÑ€Ð½ÐµÐ³Ð¾ процеÑÑа (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
-msgstr "Произошла неизвеÑÑ‚Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° при выполнении процеÑÑа-потомка «%s»"
+msgstr "Произошла неизвеÑÑ‚Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° при выполнении дочернего процеÑÑа «%s»"
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr ""
-"Ðе удалоÑÑŒ прочитать нужное количеÑтво данных из канала процеÑÑа-потомка (%s)"
+"Ðе удалоÑÑŒ прочитать нужное количеÑтво данных из канала дочернего процеÑÑа "
+"(%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
-msgstr "Ðе удалоÑÑŒ прочитать данные из процеÑÑа-потомка"
+msgstr "Ðе удалоÑÑŒ прочитать данные из дочернего процеÑÑа"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
-msgstr "Ðе удалоÑÑŒ выполнить процеÑÑ-потомок (%s)"
+msgstr "Ðе удалоÑÑŒ выполнить дочерний процеÑÑ (%s)"
+
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Ðе удалоÑÑŒ выполнить dup() в дочернем процеÑÑе (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "ÐедопуÑтимое Ð¸Ð¼Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ñ‹: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "ÐедопуÑÑ‚Ð¸Ð¼Ð°Ñ Ñтрока в векторе аргументов под номером %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "ÐедопуÑÑ‚Ð¸Ð¼Ð°Ñ Ñтрока в окружении: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "ÐедопуÑтимый рабочий каталог: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Ðе удалоÑÑŒ выполнить вÑпомогательную программу (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -5996,21 +6063,21 @@ msgstr ""
"Произошла Ð½ÐµÐ¾Ð¶Ð¸Ð´Ð°Ð½Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° в функции g_io_channel_win32_poll() при чтении "
"данных из процеÑÑа-потомка"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "ПуÑÑ‚Ð°Ñ Ñтрока не ÑвлÑетÑÑ Ñ‡Ð¸Ñлом"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "«%s» не ÑвлÑетÑÑ Ñ‡Ð¸Ñлом Ñо знаком"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "ЧиÑло «%s» is out of bounds [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "«%s» не ÑвлÑетÑÑ Ñ‡Ð¸Ñлом без знака"
@@ -6071,170 +6138,170 @@ msgstr "URI не абÑолютный, базовый Ð°Ð´Ñ€ÐµÑ URI не ука
msgid "Missing ‘=’ and parameter value"
msgstr "Ðе хватает Ñимвола ‘=’ и Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Ðе удалоÑÑŒ выделить памÑÑ‚ÑŒ"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Символ находитÑÑ Ð²Ð½Ðµ диапазона Ð´Ð»Ñ UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr ""
"Во входной Ñтроке Ð´Ð»Ñ Ð¿Ñ€ÐµÐ¾Ð±Ñ€Ð°Ð·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¾Ð±Ð½Ð°Ñ€ÑƒÐ¶ÐµÐ½Ð° недопуÑÑ‚Ð¸Ð¼Ð°Ñ "
"поÑледовательноÑÑ‚ÑŒ"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Символ находитÑÑ Ð²Ð½Ðµ диапазона Ð´Ð»Ñ UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f кБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f МБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f ГБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f ТБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f ПБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f ЭБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f КиБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f МиБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f ГиБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f ТиБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f ПиБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f ЭиБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f кбит"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Мбит"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Гбит"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Тбит"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Пбит"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Эбит"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Кибит"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Мибит"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Гибит"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Тибит"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Пибит"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Эибит"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
@@ -6242,7 +6309,7 @@ msgstr[0] "%u байт"
msgstr[1] "%u байта"
msgstr[2] "%u байт"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6251,7 +6318,7 @@ msgstr[1] "%u бита"
msgstr[2] "%u бит"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6260,7 +6327,7 @@ msgstr[1] "%s байта"
msgstr[2] "%s байт"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6273,32 +6340,32 @@ msgstr[2] "%s бит"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f КБ"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f МБ"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f ГБ"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f ТБ"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f ПБ"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f ЭБ"
diff --git a/po/sk.po b/po/sk.po
index 724e42cae..8d6a1ced7 100644
--- a/po/sk.po
+++ b/po/sk.po
@@ -6,22 +6,22 @@
# Marcel Telka <marcel@telka.sk>, 2005, 2008.
# Peter Mráz <etkinator@gmail.com>, 2011, 2012.
# Ján Kyselica <kyselica.jan@gmail.com>, 2013.
-# Dušan Kazik <prescott66@gmail.com>, 2014, 2015.
+# Dušan Kazik <prescott66@gmail.com>, 2014-2021.
#
msgid ""
msgstr ""
"Project-Id-Version: glib\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2020-10-01 16:40+0000\n"
-"PO-Revision-Date: 2020-10-13 14:43+0200\n"
+"POT-Creation-Date: 2021-07-19 15:52+0000\n"
+"PO-Revision-Date: 2021-10-05 08:53+0200\n"
"Last-Translator: Dušan Kazik <prescott66@gmail.com>\n"
"Language-Team: Slovak <gnome-sk-list@gnome.org>\n"
"Language: sk\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n==1) ? 1 : (n>=2 && n<=4) ? 2 : 0;\n"
-"X-Generator: Poedit 2.4.1\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 1 : (n>=2 && n<=4) ? 2 : 0\n"
+"X-Generator: Gtranslator 40.0\n"
#: gio/gapplication.c:500
msgid "GApplication options"
@@ -43,14 +43,14 @@ msgstr "Preváži ID aplikácie"
#: gio/gapplication.c:569
msgid "Replace the running instance"
-msgstr ""
+msgstr "Nahradí spustenú inštanciu"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:493 gio/gsettings-tool.c:567
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
msgid "Print help"
msgstr "Zobrazí pomocníka"
-#: gio/gapplication-tool.c:47 gio/gresource-tool.c:494 gio/gresource-tool.c:562
+#: gio/gapplication-tool.c:47 gio/gresource-tool.c:495 gio/gresource-tool.c:563
msgid "[COMMAND]"
msgstr "[PRÃKAZ]"
@@ -59,99 +59,99 @@ msgid "Print version"
msgstr "Vypíše verziu"
# MČ: „Vypíše …“, podobne ako nasledujúce reťazce.
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:573
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
msgid "Print version information and exit"
msgstr "Vypíše informácie o verzii a skonÄí"
-#: gio/gapplication-tool.c:52
+#: gio/gapplication-tool.c:53
msgid "List applications"
msgstr "Vypíše zoznam aplikácií"
-#: gio/gapplication-tool.c:53
+#: gio/gapplication-tool.c:54
msgid "List the installed D-Bus activatable applications (by .desktop files)"
msgstr ""
"Vypíše zoznam nainštalovaných aplikácií aktivovateľných zbernicou D-Bus "
"(podľa súborov typu .desktop)"
# cmd desc
-#: gio/gapplication-tool.c:55
+#: gio/gapplication-tool.c:57
msgid "Launch an application"
msgstr "Spustí aplikáciu"
-#: gio/gapplication-tool.c:56
+#: gio/gapplication-tool.c:58
msgid "Launch the application (with optional files to open)"
msgstr "Spustí aplikáciu (s voliteľnými súbormi na otvorenie)"
-#: gio/gapplication-tool.c:57
+#: gio/gapplication-tool.c:59
msgid "APPID [FILE…]"
msgstr "IDAPLIKÃCIE [SÚBOR…]"
-#: gio/gapplication-tool.c:59
+#: gio/gapplication-tool.c:61
msgid "Activate an action"
msgstr "Aktivuje akciu"
-#: gio/gapplication-tool.c:60
+#: gio/gapplication-tool.c:62
msgid "Invoke an action on the application"
msgstr "Vyvolá akciu na aplikácii"
-#: gio/gapplication-tool.c:61
+#: gio/gapplication-tool.c:63
msgid "APPID ACTION [PARAMETER]"
msgstr "IDAPLIKÃCIE AKCIA [PARAMETER]"
-#: gio/gapplication-tool.c:63
+#: gio/gapplication-tool.c:65
msgid "List available actions"
msgstr "Vypíše zoznam dostupných akcií"
-#: gio/gapplication-tool.c:64
+#: gio/gapplication-tool.c:66
msgid "List static actions for an application (from .desktop file)"
msgstr "Vypíše zoznam statických akcií pre aplikáciu (zo súboru typu .desktop)"
-#: gio/gapplication-tool.c:65 gio/gapplication-tool.c:71
+#: gio/gapplication-tool.c:67 gio/gapplication-tool.c:73
msgid "APPID"
msgstr "IDAPLIKÃCIE"
-#: gio/gapplication-tool.c:70 gio/gapplication-tool.c:133 gio/gdbus-tool.c:102
+#: gio/gapplication-tool.c:72 gio/gapplication-tool.c:135 gio/gdbus-tool.c:106
#: gio/gio-tool.c:224
msgid "COMMAND"
msgstr "PRÃKAZ"
-#: gio/gapplication-tool.c:70
+#: gio/gapplication-tool.c:72
msgid "The command to print detailed help for"
msgstr "Príkaz, pre ktorý sa má vypísať podrobný pomocník"
-#: gio/gapplication-tool.c:71
+#: gio/gapplication-tool.c:73
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr ""
"Identifikátor aplikácie vo formáte zbernice D-Bus (napr.: org.príklad.viewer)"
-#: gio/gapplication-tool.c:72 gio/glib-compile-resources.c:738
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
-#: gio/gresource-tool.c:500 gio/gresource-tool.c:566
+#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "SÚBOR"
-#: gio/gapplication-tool.c:72
+#: gio/gapplication-tool.c:74
msgid "Optional relative or absolute filenames, or URIs to open"
msgstr ""
"Voliteľné relatívne alebo absolútne názvy súborov, alebo URI na otvorenie"
-#: gio/gapplication-tool.c:73
+#: gio/gapplication-tool.c:75
msgid "ACTION"
msgstr "AKCIA"
-#: gio/gapplication-tool.c:73
+#: gio/gapplication-tool.c:75
msgid "The action name to invoke"
msgstr "Názov akcie na vyvolanie"
-#: gio/gapplication-tool.c:74
+#: gio/gapplication-tool.c:76
msgid "PARAMETER"
msgstr "PARAMETER"
-#: gio/gapplication-tool.c:74
+#: gio/gapplication-tool.c:76
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Voliteľný parameter pre vyvolanie akcie vo formáte GVariant"
-#: gio/gapplication-tool.c:96 gio/gresource-tool.c:531 gio/gsettings-tool.c:659
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
#, c-format
msgid ""
"Unknown command %s\n"
@@ -160,26 +160,26 @@ msgstr ""
"Neznámy príkaz %s\n"
"\n"
-#: gio/gapplication-tool.c:101
+#: gio/gapplication-tool.c:103
msgid "Usage:\n"
msgstr "Použitie:\n"
-#: gio/gapplication-tool.c:114 gio/gresource-tool.c:556
-#: gio/gsettings-tool.c:694
+#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
+#: gio/gsettings-tool.c:699
msgid "Arguments:\n"
msgstr "Parametre:\n"
-#: gio/gapplication-tool.c:133 gio/gio-tool.c:224
+#: gio/gapplication-tool.c:135 gio/gio-tool.c:224
msgid "[ARGS…]"
msgstr "[PARAMETRE…]"
-#: gio/gapplication-tool.c:134
+#: gio/gapplication-tool.c:136
#, c-format
msgid "Commands:\n"
msgstr "Príkazy:\n"
#. Translators: do not translate 'help', but please translate 'COMMAND'.
-#: gio/gapplication-tool.c:146
+#: gio/gapplication-tool.c:148
#, c-format
msgid ""
"Use “%s help COMMAND†to get detailed help.\n"
@@ -188,7 +188,7 @@ msgstr ""
"Na získanie podrobnejÅ¡ieho pomocníka, použite „%s help PRÃKAZ“.\n"
"\n"
-#: gio/gapplication-tool.c:165
+#: gio/gapplication-tool.c:167
#, c-format
msgid ""
"%s command requires an application id to directly follow\n"
@@ -197,13 +197,13 @@ msgstr ""
"príkaz %s vyžaduje, aby ihneÄ po ňom nasledoval identifikátor aplikácie\n"
"\n"
-#: gio/gapplication-tool.c:171
+#: gio/gapplication-tool.c:173
#, c-format
msgid "invalid application id: “%sâ€\n"
msgstr "neplatný identifikátor aplikácie: „%s“\n"
#. Translators: %s is replaced with a command name like 'list-actions'
-#: gio/gapplication-tool.c:182
+#: gio/gapplication-tool.c:184
#, c-format
msgid ""
"“%s†takes no arguments\n"
@@ -212,21 +212,21 @@ msgstr ""
"Príkaz „%s“ sa nedá použiť so žiadnymi parametrami\n"
"\n"
-#: gio/gapplication-tool.c:266
+#: gio/gapplication-tool.c:268
#, c-format
msgid "unable to connect to D-Bus: %s\n"
msgstr "nepodarilo sa pripojiť k zbernici D-Bus: %s\n"
-#: gio/gapplication-tool.c:286
+#: gio/gapplication-tool.c:288
#, c-format
msgid "error sending %s message to application: %s\n"
msgstr "chyba pri odosielaní správy %s aplikácii: %s\n"
-#: gio/gapplication-tool.c:317
+#: gio/gapplication-tool.c:319
msgid "action name must be given after application id\n"
msgstr "názov akcie musí byť zadaný po identifikátore aplikácie\n"
-#: gio/gapplication-tool.c:325
+#: gio/gapplication-tool.c:327
#, c-format
msgid ""
"invalid action name: “%sâ€\n"
@@ -235,25 +235,25 @@ msgstr ""
"neplatný názov akcie: „%s“\n"
"názvy akcií musia pozostávaÅ¥ iba zo znakov, Äíslic, „-“ a „.“\n"
-#: gio/gapplication-tool.c:344
+#: gio/gapplication-tool.c:346
#, c-format
msgid "error parsing action parameter: %s\n"
msgstr "chyba pri spracovaní parametra akcie: %s\n"
-#: gio/gapplication-tool.c:356
+#: gio/gapplication-tool.c:358
msgid "actions accept a maximum of one parameter\n"
msgstr "akcie prijímajú maximálne jeden parameter\n"
-#: gio/gapplication-tool.c:411
+#: gio/gapplication-tool.c:413
msgid "list-actions command takes only the application id"
msgstr "príkaz list-actions sa dá použiť iba s identifikátorom aplikácie"
-#: gio/gapplication-tool.c:421
+#: gio/gapplication-tool.c:423
#, c-format
msgid "unable to find desktop file for application %s\n"
msgstr "nepodarilo sa nájsť súbor desktop pre aplikáciu %s\n"
-#: gio/gapplication-tool.c:466
+#: gio/gapplication-tool.c:468
#, c-format
msgid ""
"unrecognised command: %s\n"
@@ -263,8 +263,8 @@ msgstr ""
"\n"
#: gio/gbufferedinputstream.c:420 gio/gbufferedinputstream.c:498
-#: gio/ginputstream.c:179 gio/ginputstream.c:379 gio/ginputstream.c:617
-#: gio/ginputstream.c:1019 gio/goutputstream.c:223 gio/goutputstream.c:1049
+#: gio/ginputstream.c:179 gio/ginputstream.c:379 gio/ginputstream.c:648
+#: gio/ginputstream.c:1050 gio/goutputstream.c:223 gio/goutputstream.c:1049
#: gio/gpollableinputstream.c:205 gio/gpollableoutputstream.c:277
#, c-format
msgid "Too large count value passed to %s"
@@ -275,11 +275,11 @@ msgstr "PríliÅ¡ vysoký poÄet hodnôt predaný do %s"
msgid "Seek not supported on base stream"
msgstr "Presúvanie v základnom prúde nie je podporované"
-#: gio/gbufferedinputstream.c:937
+#: gio/gbufferedinputstream.c:938
msgid "Cannot truncate GBufferedInputStream"
msgstr "GBufferedInputStream sa nedá skrátiť"
-#: gio/gbufferedinputstream.c:982 gio/ginputstream.c:1208 gio/giostream.c:300
+#: gio/gbufferedinputstream.c:983 gio/ginputstream.c:1239 gio/giostream.c:300
#: gio/goutputstream.c:2198
msgid "Stream is already closed"
msgstr "Prúd je už zatvorený"
@@ -288,7 +288,7 @@ msgstr "Prúd je už zatvorený"
msgid "Truncate not supported on base stream"
msgstr "Skrátenie nie je v základnom prúde podporované"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1862 gio/gdbusprivate.c:1413
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1872 gio/gdbusprivate.c:1416
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -307,33 +307,33 @@ msgid "Not enough space in destination"
msgstr "Nedostatok miesta v cieli"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
-#: gio/gdatainputstream.c:1261 glib/gconvert.c:448 glib/gconvert.c:878
-#: glib/giochannel.c:1564 glib/giochannel.c:1606 glib/giochannel.c:2461
+#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
+#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
#: glib/gutf8.c:875 glib/gutf8.c:1328
msgid "Invalid byte sequence in conversion input"
msgstr "Neplatná sekvencia bajtov na vstupe prevodu"
-#: gio/gcharsetconverter.c:347 glib/gconvert.c:456 glib/gconvert.c:792
-#: glib/giochannel.c:1571 glib/giochannel.c:2473
+#: gio/gcharsetconverter.c:347 glib/gconvert.c:457 glib/gconvert.c:793
+#: glib/giochannel.c:1580 glib/giochannel.c:2482
#, c-format
msgid "Error during conversion: %s"
msgstr "Chyba poÄas prevodu: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1133
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
msgid "Cancellable initialization not supported"
msgstr "Zrušiteľná inicializácia nie je podporovaná"
-#: gio/gcharsetconverter.c:456 glib/gconvert.c:321 glib/giochannel.c:1392
+#: gio/gcharsetconverter.c:456 glib/gconvert.c:322 glib/giochannel.c:1401
#, c-format
msgid "Conversion from character set “%s†to “%s†is not supported"
msgstr "Prevod zo znakovej sady „%s“ do „%s“ nie je podporovaný"
-#: gio/gcharsetconverter.c:460 glib/gconvert.c:325
+#: gio/gcharsetconverter.c:460 glib/gconvert.c:326
#, c-format
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Nepodarilo sa otvoriť program na prevod z „%s“ do „%s“"
-#: gio/gcontenttype.c:452
+#: gio/gcontenttype.c:454
#, c-format
msgid "%s type"
msgstr "typ %s"
@@ -349,7 +349,7 @@ msgstr "typ súboru %s"
#: gio/gcredentials.c:323
msgid "GCredentials contains invalid data"
-msgstr ""
+msgstr "GCredentials obsahuje neplatné údaje"
#: gio/gcredentials.c:383 gio/gcredentials.c:667
msgid "GCredentials is not implemented on this OS"
@@ -372,18 +372,18 @@ msgstr "Zmena poverení nie je možná v tomto operaÄnom systéme"
msgid "Unexpected early end-of-stream"
msgstr "NeoÄakávane skorý koniec prúdu"
-#: gio/gdbusaddress.c:158 gio/gdbusaddress.c:232 gio/gdbusaddress.c:321
+#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Nepodporovaný kÄ¾ÃºÄ â€ž%s“ v položke adresy „%s“"
-#: gio/gdbusaddress.c:171
+#: gio/gdbusaddress.c:172
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Nezmyselná kombinácia kľúÄ/hodnota v položke adresy „%s“"
-#: gio/gdbusaddress.c:180
-#, fuzzy, c-format
+#: gio/gdbusaddress.c:181
+#, c-format
#| msgid ""
#| "Address “%s†is invalid (need exactly one of path, tmpdir or abstract "
#| "keys)"
@@ -391,48 +391,49 @@ msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
"keys)"
msgstr ""
-"Adresa „%s“ je neplatná (je potrebný práve jeden kÄ¾ÃºÄ path, tmpdir alebo "
-"abstract)"
+"Adresa „%s“ je neplatná (je potrebný práve jeden kÄ¾ÃºÄ path, dir, tmpdir "
+"alebo abstract)"
-#: gio/gdbusaddress.c:247 gio/gdbusaddress.c:258 gio/gdbusaddress.c:273
-#: gio/gdbusaddress.c:336 gio/gdbusaddress.c:347
+#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
+#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Chyba v adrese „%s“ — atribút „%s“ má zlý formát"
# first is transport name
-#: gio/gdbusaddress.c:417 gio/gdbusaddress.c:681
+#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Neznámy alebo nepodporovaný transport typu „%s“ pre adresu „%s“"
-#: gio/gdbusaddress.c:461
+#: gio/gdbusaddress.c:462
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "Prvok adresy „%s“ neobsahuje dvojbodku (:)"
-#: gio/gdbusaddress.c:470
+#: gio/gdbusaddress.c:471
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr ""
-#: gio/gdbusaddress.c:491
+#: gio/gdbusaddress.c:492
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
"sign"
msgstr "Pár kľúÄ/hodnota %d, „%s“ v prvku adresy „%s“ neobsahuje znak rovnosti"
-#: gio/gdbusaddress.c:502
-#, fuzzy, c-format
+#: gio/gdbusaddress.c:503
+#, c-format
#| msgid ""
#| "Key/Value pair %d, “%sâ€, in address element “%s†does not contain an "
#| "equal sign"
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
-msgstr "Pár kľúÄ/hodnota %d, „%s“ v prvku adresy „%s“ neobsahuje znak rovnosti"
+msgstr ""
+"Pár kľúÄ/hodnota %d, „%s“ v prvku adresy „%s“ nemôže obsahovaÅ¥ prázdny kľúÄ"
-#: gio/gdbusaddress.c:516
+#: gio/gdbusaddress.c:517
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -441,7 +442,7 @@ msgstr ""
"Chyba kľúÄa alebo hodnoty s nahradenými Å¡peciálne uvedenými sekvenciami v "
"páre kľúÄ/hodnota %d, „%s“ v prvku adresy „%s“"
-#: gio/gdbusaddress.c:588
+#: gio/gdbusaddress.c:589
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -450,83 +451,83 @@ msgstr ""
"Chyba v adrese „%s“ — transport typu unix vyžaduje nastavenie práve jedného "
"z kľúÄov „path“ alebo „abstract“"
-#: gio/gdbusaddress.c:624
+#: gio/gdbusaddress.c:625
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr "Chyba v adrese „%s“ — atribút hostiteľa chýba alebo má zlý formát"
-#: gio/gdbusaddress.c:638
+#: gio/gdbusaddress.c:639
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "Chyba v adrese „%s“ — atribút portu chýba alebo má zlý formát"
-#: gio/gdbusaddress.c:652
+#: gio/gdbusaddress.c:653
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr "Chyba v adrese „%s“ — atribút noncefile chýba alebo má zlý formát"
-#: gio/gdbusaddress.c:673
+#: gio/gdbusaddress.c:674
msgid "Error auto-launching: "
msgstr "Chyba pri automatickom spustení: "
-#: gio/gdbusaddress.c:726
+#: gio/gdbusaddress.c:727
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Chyba pri otváraní nonce súboru „%s“: %s"
-#: gio/gdbusaddress.c:745
+#: gio/gdbusaddress.c:746
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Chyba pri Äítaní z nonce súboru „%s“: %s"
-#: gio/gdbusaddress.c:754
+#: gio/gdbusaddress.c:755
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"Chyba pri Äítaní z nonce súboru „%s“, oÄakávaných 16 bajtov, získaných %d"
-#: gio/gdbusaddress.c:772
+#: gio/gdbusaddress.c:773
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Chyba pri zápise obsahu nounce súboru „%s“ do prúdu:"
-#: gio/gdbusaddress.c:981
+#: gio/gdbusaddress.c:988
msgid "The given address is empty"
msgstr "Daná adresa je prázdna"
# PM: tu si nie som istý
# MČ: Komentár v kóde: /* Don't run binaries as root if we're setuid. */
# MÄŒ: v tomto prípade „spawn“ znamená: Spustí a posiela dáta, cez stdin a oÄakáva dáta cez stdout, takže by som skôr dal spustiÅ¥.
-#: gio/gdbusaddress.c:1094
+#: gio/gdbusaddress.c:1101
#, c-format
msgid "Cannot spawn a message bus when setuid"
msgstr "Zbernica správ sa nedá spustiť pri setuid"
# MÄŒ: v tomto prípade „spawn“ znamená: Spustí a posiela dáta, cez stdin a oÄakáva dáta cez stdout, takže by som skôr dal spustiÅ¥.
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1108
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "Zbernica správ sa nedá spustiť bez machine-id: "
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1115
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Zbernica D-Bus sa nedá spustiť automaticky bez X11 $DISPLAY"
# MÄŒ: v tomto prípade „spawn“ znamená: Spustí a posiela dáta, cez stdin a oÄakáva dáta cez stdout, takže by som skôr dal spustiÅ¥.
-#: gio/gdbusaddress.c:1150
+#: gio/gdbusaddress.c:1157
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Chyba pri spúšťaní príkazového riadka „%s“: "
# funkcia na urÄenie adresy relaÄnej zbernice
-#: gio/gdbusaddress.c:1219
+#: gio/gdbusaddress.c:1226
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Nedá sa urÄiÅ¥ adresa relaÄnej zbernice (nie je implementovaná pre tento "
"operaÄný systém)"
-#: gio/gdbusaddress.c:1357 gio/gdbusconnection.c:7192
+#: gio/gdbusaddress.c:1397 gio/gdbusconnection.c:7261
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -535,7 +536,7 @@ msgstr ""
"Nedá sa urÄiÅ¥ adresa zbernice z premennej prostredia DBUS_STARTER_BUS_TYPE — "
"neznáma hodnota „%s“"
-#: gio/gdbusaddress.c:1366 gio/gdbusconnection.c:7201
+#: gio/gdbusaddress.c:1406 gio/gdbusconnection.c:7270
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -543,7 +544,7 @@ msgstr ""
"Nedá sa urÄiÅ¥ adresa zbernice, pretože premenná prostredia "
"DBUS_STARTER_BUS_TYPE nie je nastavená"
-#: gio/gdbusaddress.c:1376
+#: gio/gdbusaddress.c:1416
#, c-format
msgid "Unknown bus type %d"
msgstr "Neznámy typ zbernice %d"
@@ -564,16 +565,20 @@ msgstr ""
"VyÄerpané vÅ¡etky dostupné mechanizmy overenia totožnosti (pokusy: %s) "
"(dostupné: %s)"
-#: gio/gdbusauth.c:1167
+#: gio/gdbusauth.c:1171
+msgid "User IDs must be the same for peer and server"
+msgstr "Identifikátory používateľa musia byť rovnaké pre partnera a server"
+
+#: gio/gdbusauth.c:1183
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Zrušené cez GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:296
+#: gio/gdbusauthmechanismsha1.c:298
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Chyba pri získavaní informácií pre adresár „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:311
+#: gio/gdbusauthmechanismsha1.c:313
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -581,17 +586,27 @@ msgstr ""
"Oprávnenia k adresáru „%s“ sú zle formátované. OÄakávaný režim 0700, získaný "
"0%o"
-#: gio/gdbusauthmechanismsha1.c:341
+#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Chyba pri vytváraní adresára %s: %s"
-#: gio/gdbusauthmechanismsha1.c:386
+#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
+#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
+#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
+#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
+#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
+#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
+#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+msgid "Operation not supported"
+msgstr "Nepodporovaná operácia"
+
+#: gio/gdbusauthmechanismsha1.c:402
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Chyba pri otváraní zväzku kľúÄov „%s“ na Äítanie: "
-#: gio/gdbusauthmechanismsha1.c:409 gio/gdbusauthmechanismsha1.c:731
+#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "Riadok Ä. %d zväzku kľúÄov na „%s“ s obsahom „%s“ je zle formátovaný"
@@ -599,7 +614,7 @@ msgstr "Riadok Ä. %d zväzku kľúÄov na „%s“ s obsahom „%s“ je zle fo
# PK: token nie je nejaky znak? viacX
# PM: token je napríklad "%s" ide o znaky ktoré môžu byt nahradené nejakým textom napr %u - meno používateľa
# PK: token by mal byt string
-#: gio/gdbusauthmechanismsha1.c:423 gio/gdbusauthmechanismsha1.c:745
+#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -607,7 +622,7 @@ msgstr ""
"Prvý token riadka Ä. %d zväzku kľúÄov na „%s“ s obsahom „%s“ je zle "
"formátovaný"
-#: gio/gdbusauthmechanismsha1.c:437 gio/gdbusauthmechanismsha1.c:759
+#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -615,122 +630,122 @@ msgstr ""
"Druhý token riadka Ä. %d zväzku kľúÄov na „%s“ s obsahom „%s“ je zle "
"formátovaný"
-#: gio/gdbusauthmechanismsha1.c:461
+#: gio/gdbusauthmechanismsha1.c:477
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "NenaÅ¡lo sa cookie s identifikátorom %d vo zväzku kľúÄov na „%s“"
-#: gio/gdbusauthmechanismsha1.c:507
+#: gio/gdbusauthmechanismsha1.c:523
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Chyba pri vytváraní súboru uzamknutia „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:571
+#: gio/gdbusauthmechanismsha1.c:587
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Chyba pri odstraňovaní starého súboru uzamknutia „%s“: %s"
# PM: Je to súbor urÄený na vymazanie ale vymaže sa až vtedy, keÄ ho zatvorí posledný, kto ho má otvorený
-#: gio/gdbusauthmechanismsha1.c:610
+#: gio/gdbusauthmechanismsha1.c:626
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Chyba pri zatváraní (vymazávaného) súboru uzamknutia „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:621
+#: gio/gdbusauthmechanismsha1.c:637
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Chyba pri mazaní súboru uzamknutia „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:698
+#: gio/gdbusauthmechanismsha1.c:714
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Chyba pri otváraní zväzku kľúÄov „%s“ na zápis: "
-#: gio/gdbusauthmechanismsha1.c:892
+#: gio/gdbusauthmechanismsha1.c:908
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Okrem toho zlyhalo aj uvoľnenie zámky pre „%s“: %s) "
-#: gio/gdbusconnection.c:595 gio/gdbusconnection.c:2391
+#: gio/gdbusconnection.c:603 gio/gdbusconnection.c:2417
msgid "The connection is closed"
msgstr "Pripojenie je ukonÄené"
-#: gio/gdbusconnection.c:1892
+#: gio/gdbusconnection.c:1902
msgid "Timeout was reached"
msgstr "VyprÅ¡al Äasový limit"
-#: gio/gdbusconnection.c:2513
+#: gio/gdbusconnection.c:2540
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"Pri vytváraní klientského pripojenia boli nájdené nepodporované príznaky"
-#: gio/gdbusconnection.c:4163 gio/gdbusconnection.c:4510
+#: gio/gdbusconnection.c:4189 gio/gdbusconnection.c:4536
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr ""
"Rozhranie „org.freedesktop.DBus.Properties“ nie je v objekte na ceste %s"
-#: gio/gdbusconnection.c:4305
+#: gio/gdbusconnection.c:4331
#, c-format
msgid "No such property “%sâ€"
msgstr "Neexistuje vlastnosť „%s“"
-#: gio/gdbusconnection.c:4317
+#: gio/gdbusconnection.c:4343
#, c-format
msgid "Property “%s†is not readable"
msgstr "VlastnosÅ¥ „%s“ nie je Äitateľná"
-#: gio/gdbusconnection.c:4328
+#: gio/gdbusconnection.c:4354
#, c-format
msgid "Property “%s†is not writable"
msgstr "Vlastnosť „%s“ nie je zapisovateľná"
-#: gio/gdbusconnection.c:4348
+#: gio/gdbusconnection.c:4374
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
"Chyba pri nastavovaní vlastnosti „%s“: Bol oÄakávaný typ „%s“, no získaný "
"bol „%s“"
-#: gio/gdbusconnection.c:4453 gio/gdbusconnection.c:4661
-#: gio/gdbusconnection.c:6632
+#: gio/gdbusconnection.c:4479 gio/gdbusconnection.c:4687
+#: gio/gdbusconnection.c:6689
#, c-format
msgid "No such interface “%sâ€"
msgstr "Neexistuje rozhranie „%s“"
-#: gio/gdbusconnection.c:4879 gio/gdbusconnection.c:7141
+#: gio/gdbusconnection.c:4905 gio/gdbusconnection.c:7201
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Rozhranie „%s“ nie je v objekte na ceste %s"
-#: gio/gdbusconnection.c:4977
+#: gio/gdbusconnection.c:5003
#, c-format
msgid "No such method “%sâ€"
msgstr "Neexistujúca metóda „%s“"
-#: gio/gdbusconnection.c:5008
+#: gio/gdbusconnection.c:5034
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Typ správy „%s“ nezodpovedá oÄakávanému typu „%s“"
-#: gio/gdbusconnection.c:5206
+#: gio/gdbusconnection.c:5237
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Pre rozhranie %s je už exportovaný objekt na %s"
-#: gio/gdbusconnection.c:5432
+#: gio/gdbusconnection.c:5463
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Nepodarilo sa získať vlastnosť %s.%s"
-#: gio/gdbusconnection.c:5488
+#: gio/gdbusconnection.c:5519
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Nepodarilo sa nastaviť vlastnosť %s.%s"
-#: gio/gdbusconnection.c:5666
+#: gio/gdbusconnection.c:5698
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "Metóda „%s“ vrátila typ „%s“, no oÄakávaný bol „%s“"
@@ -738,37 +753,43 @@ msgstr "Metóda „%s“ vrátila typ „%s“, no oÄakávaný bol „%s“"
# MÄŒ: mám k tomuto preklady výhrady, ale keÄ to tak chcete, môže byÅ¥. KeÄ signatúra nevyhovuje, tak skôr znaÄka. Ak sa rozhodnete upraviÅ¥, tak pri vÅ¡etkých výskytoch.
# PK: http://dbus.freedesktop.org/doc/dbus-specification.html#message-protocol-signatures
# PK: mozno oznacenie
-#: gio/gdbusconnection.c:6743
+#: gio/gdbusconnection.c:6800
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "Metóda „%s“ z rozhrania „%s“ s oznaÄením „%s“ neexistuje"
-#: gio/gdbusconnection.c:6864
+#: gio/gdbusconnection.c:6921
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Podstrom je už exportovaný do %s"
-#: gio/gdbusmessage.c:1255
+#: gio/gdbusconnection.c:7209
+#, c-format
+#| msgid "Key file does not have group “%sâ€"
+msgid "Object does not exist at path “%sâ€"
+msgstr "Objekt neexistuje na ceste „%s“"
+
+#: gio/gdbusmessage.c:1266
msgid "type is INVALID"
msgstr "typ je INVALID"
-#: gio/gdbusmessage.c:1266
+#: gio/gdbusmessage.c:1277
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "Správa METHOD_CALL: chýba pole hlaviÄky PATH alebo MEMBER"
-#: gio/gdbusmessage.c:1277
+#: gio/gdbusmessage.c:1288
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "Správa METHOD_RETURN: chýba pole hlaviÄky REPLY_SERIAL"
-#: gio/gdbusmessage.c:1289
+#: gio/gdbusmessage.c:1300
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "Správa ERROR: chýba pole hlaviÄky REPLY_SERIAL alebo ERROR_NAME"
-#: gio/gdbusmessage.c:1302
+#: gio/gdbusmessage.c:1313
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "Správa SIGNAL: chýba pole hlaviÄky PATH, INTERFACE alebo MEMBER"
-#: gio/gdbusmessage.c:1310
+#: gio/gdbusmessage.c:1321
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -776,7 +797,7 @@ msgstr ""
"Správa SIGNAL: pole hlaviÄky PATH používa vyhradenú hodnotu /org/freedesktop/"
"DBus/Local"
-#: gio/gdbusmessage.c:1318
+#: gio/gdbusmessage.c:1329
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -786,7 +807,7 @@ msgstr ""
# MÄŒ: Asi bude tre daÅ¥ rozdeliÅ¥ reÅ¥azec, nenapadá mi, ako by sa druhá ÄasÅ¥ dala preložiÅ¥ neutrálne. Jedna vec je istá, pri druhom reÅ¥azci môže byÅ¥ ozískaných“ len nula, keÄže iba to je menej ako jedna. Prípadne vÅ¡ade použiÅ¥ „získaných“, malo by to narobiÅ¥ najmenej problémov.
# JK: https://bugzilla.gnome.org/show_bug.cgi?id=695234
-#: gio/gdbusmessage.c:1366 gio/gdbusmessage.c:1426
+#: gio/gdbusmessage.c:1377 gio/gdbusmessage.c:1437
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
@@ -796,12 +817,12 @@ msgstr[2] "Potrebné %lu bajty na Äítanie, no získaných iba %lu"
# *https://bugzilla.gnome.org/show_bug.cgi?id=658913
# PM: tu je to hodnota znaku nie smerníka
-#: gio/gdbusmessage.c:1380
+#: gio/gdbusmessage.c:1391
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "OÄakávaný znak NUL za reÅ¥azcom „%s“, no nájdený bajt %d"
-#: gio/gdbusmessage.c:1399
+#: gio/gdbusmessage.c:1410
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -810,22 +831,22 @@ msgstr ""
"OÄakávaný platný UTF-8 reÅ¥azec, no nájdené neplatné bajty na pozícii %d "
"(dĺžka reťazca je %d). Platný UTF-8 reťazec do toho miesta bol „%s“"
-#: gio/gdbusmessage.c:1463 gio/gdbusmessage.c:1711 gio/gdbusmessage.c:1900
+#: gio/gdbusmessage.c:1474 gio/gdbusmessage.c:1722 gio/gdbusmessage.c:1911
msgid "Value nested too deeply"
msgstr ""
-#: gio/gdbusmessage.c:1609
+#: gio/gdbusmessage.c:1620
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr ""
"Analyzovaná hodnota „%s“ nie je platnou cestou k objektu zbernice D-Bus"
-#: gio/gdbusmessage.c:1631
+#: gio/gdbusmessage.c:1642
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Analyzovaná hodnota „%s“ nie je platným oznaÄením zbernice D-Bus"
-#: gio/gdbusmessage.c:1678
+#: gio/gdbusmessage.c:1689
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -838,7 +859,7 @@ msgstr[1] ""
msgstr[2] ""
"Zistené pole s dĺžkou %u bajty. Maximálna dĺžka je 2<<26 bajtov (64 MiB)"
-#: gio/gdbusmessage.c:1698
+#: gio/gdbusmessage.c:1709
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -847,13 +868,13 @@ msgstr ""
"Zistené pole typu „a%c“, ktoré by malo mať dĺžku v násobkoch %u bajtov, ale "
"reálna dĺžka je %u bajtov"
-#: gio/gdbusmessage.c:1884
+#: gio/gdbusmessage.c:1895
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr ""
"Analyzovaná hodnota „%s“ pre variant nie je platným oznaÄením zbernice D-Bus"
-#: gio/gdbusmessage.c:1925
+#: gio/gdbusmessage.c:1936
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
@@ -862,7 +883,7 @@ msgstr ""
"formátu zbernice D-Bus"
# tu musia byt taketo uvodzovky, kedze je to tak aj v C alebo Java
-#: gio/gdbusmessage.c:2110
+#: gio/gdbusmessage.c:2121
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -872,29 +893,29 @@ msgstr ""
"nájdená hodnota 0x%02x"
#  protocol version
-#: gio/gdbusmessage.c:2123
+#: gio/gdbusmessage.c:2134
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Neplatná hlavná verzia protokolu. OÄakávaná 1, no nájdená %d"
-#: gio/gdbusmessage.c:2177 gio/gdbusmessage.c:2773
+#: gio/gdbusmessage.c:2188 gio/gdbusmessage.c:2784
msgid "Signature header found but is not of type signature"
msgstr ""
-#: gio/gdbusmessage.c:2189
+#: gio/gdbusmessage.c:2200
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"Nájdená hlaviÄka oznaÄenia s oznaÄením „%s“, no nájdené telo správy je "
"prázdne"
-#: gio/gdbusmessage.c:2204
+#: gio/gdbusmessage.c:2215
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr ""
"Analyzovaná hodnota „%s“ nie je platným oznaÄením zbernice D-Bus (pre telo)"
-#: gio/gdbusmessage.c:2236
+#: gio/gdbusmessage.c:2247
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -905,11 +926,11 @@ msgstr[1] ""
msgstr[2] ""
"V správe nie je žiadna hlaviÄka oznaÄenia, no telo správy má %u bajty"
-#: gio/gdbusmessage.c:2246
+#: gio/gdbusmessage.c:2257
msgid "Cannot deserialize message: "
msgstr "Nedá sa deserializovať správa: "
-#: gio/gdbusmessage.c:2590
+#: gio/gdbusmessage.c:2601
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
@@ -917,22 +938,24 @@ msgstr ""
"Chyba pri serializovaní Gvariant pomocou reťazca typu „%s“ z prenosového "
"formátu zbernice D-Bus"
-#: gio/gdbusmessage.c:2727
+#: gio/gdbusmessage.c:2738
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr ""
+"PoÄet popisovaÄov súboru v správe (%d) sa odliÅ¡uje od poÄtu v poli hlaviÄka "
+"(%d)"
-#: gio/gdbusmessage.c:2735
+#: gio/gdbusmessage.c:2746
msgid "Cannot serialize message: "
msgstr "Nedá sa serializovať správa: "
-#: gio/gdbusmessage.c:2788
+#: gio/gdbusmessage.c:2799
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "Telo správy má oznaÄenie „%s“, no neexistuje žiadna hlaviÄka oznaÄenia"
-#: gio/gdbusmessage.c:2798
+#: gio/gdbusmessage.c:2809
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -940,51 +963,54 @@ msgid ""
msgstr ""
"Telo správy má oznaÄenie typu „%s“, no oznaÄenie v poli hlaviÄky je „%s“"
-#: gio/gdbusmessage.c:2814
+#: gio/gdbusmessage.c:2825
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "Telo správy je prázdne, no oznaÄenie v poli hlaviÄky je „(%s)“"
-#: gio/gdbusmessage.c:3367
+#: gio/gdbusmessage.c:3380
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Chyba pri návrate s telom typu „%s“"
-#: gio/gdbusmessage.c:3375
+#: gio/gdbusmessage.c:3388
msgid "Error return with empty body"
msgstr "Chyba pri návrate s prázdnym telom"
# PM: podľa mňa ked ide o zadanie treba na konci stlaÄiÅ¥ enter, nie som si istý Äi je to tento prípad
-#: gio/gdbusprivate.c:2244
+#: gio/gdbusprivate.c:2246
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Toto okno zatvoríte zadaním ľubovolného znaku)\n"
-#: gio/gdbusprivate.c:2418
+#: gio/gdbusprivate.c:2420
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Relácia dbus nebeží a automatické spustenie zlyhalo"
-#: gio/gdbusprivate.c:2441
+#: gio/gdbusprivate.c:2443
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Nepodarilo sa získať hardvérový profil: %s"
-#: gio/gdbusprivate.c:2486
-msgid "Unable to load /var/lib/dbus/machine-id or /etc/machine-id: "
-msgstr "Nepodarilo sa naÄítaÅ¥ /var/lib/dbus/machine-id ani /etc/machine-id: "
+#. Translators: Both placeholders are file paths
+#: gio/gdbusprivate.c:2494
+#, c-format
+#| msgid "Unable to trash file %s: %s"
+msgid "Unable to load %s or %s: "
+msgstr "Nie je možné naÄítaÅ¥ %s alebo %s:"
-#: gio/gdbusproxy.c:1562
+#: gio/gdbusproxy.c:1569
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Chyba pri volaní StartServiceByName pre %s: "
-#: gio/gdbusproxy.c:1585
+#: gio/gdbusproxy.c:1592
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "NeoÄakávaná odpoveÄ %d z metódy StartServiceByName(„%s“)"
-#: gio/gdbusproxy.c:2688 gio/gdbusproxy.c:2823
+#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
#, fuzzy, c-format
#| msgid ""
#| "Cannot invoke method; proxy is for a well-known name without an owner and "
@@ -996,30 +1022,30 @@ msgstr ""
"Nedá sa vyvolať metóda; proxy je pre dobre známy názov bez vlastníka a proxy "
"bol vytvorený s príznakom G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START"
-#: gio/gdbusserver.c:755
+#: gio/gdbusserver.c:767
msgid "Abstract namespace not supported"
msgstr "Abstraktný menný priestor nie je podporovaný"
-#: gio/gdbusserver.c:848
+#: gio/gdbusserver.c:860
msgid "Cannot specify nonce file when creating a server"
msgstr "Pri vytváraní servera sa nedá zadať nonce súbor"
-#: gio/gdbusserver.c:930
+#: gio/gdbusserver.c:942
#, c-format
msgid "Error writing nonce file at “%sâ€: %s"
msgstr "Chyba pri zápise do nonce súboru na „%s“: %s"
-#: gio/gdbusserver.c:1103
+#: gio/gdbusserver.c:1117
#, c-format
msgid "The string “%s†is not a valid D-Bus GUID"
msgstr "Reťazec „%s“ nie je platný D-Bus GUID"
-#: gio/gdbusserver.c:1143
+#: gio/gdbusserver.c:1157
#, c-format
msgid "Cannot listen on unsupported transport “%sâ€"
msgstr "Nedá sa poÄúvaÅ¥ na nepodporovanom transporte „%s“"
-#: gio/gdbus-tool.c:107
+#: gio/gdbus-tool.c:111
#, c-format
msgid ""
"Commands:\n"
@@ -1044,61 +1070,67 @@ msgstr ""
"\n"
"Pomocníka pre každý z príkazov získate zadaním „%s PRÃKAZ --help“.\n"
-#: gio/gdbus-tool.c:197 gio/gdbus-tool.c:264 gio/gdbus-tool.c:336
-#: gio/gdbus-tool.c:360 gio/gdbus-tool.c:850 gio/gdbus-tool.c:1187
-#: gio/gdbus-tool.c:1672
+#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
+#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
+#: gio/gdbus-tool.c:1724
#, c-format
msgid "Error: %s\n"
msgstr "Chyba: %s\n"
-#: gio/gdbus-tool.c:208 gio/gdbus-tool.c:277 gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Chyba pri analýze XML vútorného preskúmania: %s\n"
-#: gio/gdbus-tool.c:246
+#: gio/gdbus-tool.c:250
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Chyba: %s nie je platný názov\n"
-#: gio/gdbus-tool.c:394
+#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
+#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#, c-format
+msgid "Error: %s is not a valid object path\n"
+msgstr "Chyba: %s nie platná cesta objektu\n"
+
+#: gio/gdbus-tool.c:403
msgid "Connect to the system bus"
msgstr "Pripojiť k systémovej zbernici"
-#: gio/gdbus-tool.c:395
+#: gio/gdbus-tool.c:404
msgid "Connect to the session bus"
msgstr "PripojiÅ¥ k relaÄnej zbernici"
-#: gio/gdbus-tool.c:396
+#: gio/gdbus-tool.c:405
msgid "Connect to given D-Bus address"
msgstr "Pripojiť k danej adrese zbernice D-Bus"
-#: gio/gdbus-tool.c:406
+#: gio/gdbus-tool.c:415
msgid "Connection Endpoint Options:"
msgstr "Voľby koncového bodu pripojenia:"
-#: gio/gdbus-tool.c:407
+#: gio/gdbus-tool.c:416
msgid "Options specifying the connection endpoint"
msgstr "Voľby urÄujúce koncový bod pripojenia"
-#: gio/gdbus-tool.c:430
+#: gio/gdbus-tool.c:439
#, c-format
msgid "No connection endpoint specified"
msgstr "NeurÄený žiadny koncový bod pripojenia"
-#: gio/gdbus-tool.c:440
+#: gio/gdbus-tool.c:449
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "UrÄených viacero koncových bodov pripojenia"
-#: gio/gdbus-tool.c:513
+#: gio/gdbus-tool.c:522
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr ""
"Upozornenie: Podľa údajov vnútorného preskúmania rozhranie „%s“ neexistuje\n"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:531
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1107,162 +1139,163 @@ msgstr ""
"Upozornenie: Podľa údajov vnútorného preskúmania metóda „%s“ neexistuje na "
"rozhraní „%s“\n"
-#: gio/gdbus-tool.c:584
+#: gio/gdbus-tool.c:593
msgid "Optional destination for signal (unique name)"
msgstr "Voliteľný cieľ pre signál (jedineÄný názov)"
-#: gio/gdbus-tool.c:585
+#: gio/gdbus-tool.c:594
msgid "Object path to emit signal on"
msgstr "Cesta objektu, ktorému vyslať signál"
-#: gio/gdbus-tool.c:586
+#: gio/gdbus-tool.c:595
msgid "Signal and interface name"
msgstr "Názov signálu a rozhrania"
-#: gio/gdbus-tool.c:619
+#: gio/gdbus-tool.c:628
msgid "Emit a signal."
msgstr "Vyslať signál."
-#: gio/gdbus-tool.c:674 gio/gdbus-tool.c:981 gio/gdbus-tool.c:1775
-#: gio/gdbus-tool.c:2007 gio/gdbus-tool.c:2227
+#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
+#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
#, c-format
msgid "Error connecting: %s\n"
msgstr "Chyba pri pripájaní: %s\n"
-#: gio/gdbus-tool.c:694
+#: gio/gdbus-tool.c:703
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Chyba: %s nie je platný jedineÄný názov zbernice.\n"
-#: gio/gdbus-tool.c:713 gio/gdbus-tool.c:1024 gio/gdbus-tool.c:1818
+#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
msgid "Error: Object path is not specified\n"
msgstr "Chyba: Cesta objektu nie je urÄená\n"
-#: gio/gdbus-tool.c:736 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1838
-#: gio/gdbus-tool.c:2078
-#, c-format
-msgid "Error: %s is not a valid object path\n"
-msgstr "Chyba: %s nie platná cesta objektu\n"
-
-#: gio/gdbus-tool.c:756
+#: gio/gdbus-tool.c:765
msgid "Error: Signal name is not specified\n"
msgstr "Chyba: Názov signálu nie je urÄený\n"
-#: gio/gdbus-tool.c:770
+#: gio/gdbus-tool.c:779
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Chyba: Názov signálu „%s“ nie je platný\n"
-#: gio/gdbus-tool.c:782
+#: gio/gdbus-tool.c:791
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Chyba: %s nie je platný názov rozhrania\n"
-#: gio/gdbus-tool.c:788
+#: gio/gdbus-tool.c:797
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Chyba: %s nie je platný názov Älena objektu\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:825 gio/gdbus-tool.c:1156
+#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Chyba pri spracovaní parametra %d: %s\n"
-#: gio/gdbus-tool.c:857
+#: gio/gdbus-tool.c:866
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Chyba pri vyprázdnení pripojenia: %s\n"
-#: gio/gdbus-tool.c:884
+#: gio/gdbus-tool.c:893
msgid "Destination name to invoke method on"
msgstr "Názov cieľa, na ktorom sa má zavolať metóda"
# PK: Nazov ciela, na ktorom zavolat metodu
-#: gio/gdbus-tool.c:885
+#: gio/gdbus-tool.c:894
msgid "Object path to invoke method on"
msgstr "Cesta objektu na zavolanie metódy"
-#: gio/gdbus-tool.c:886
+#: gio/gdbus-tool.c:895
msgid "Method and interface name"
msgstr "Názov metódy a rozhrania"
-#: gio/gdbus-tool.c:887
+#: gio/gdbus-tool.c:896
msgid "Timeout in seconds"
msgstr "Časový limit v sekundách"
-#: gio/gdbus-tool.c:926
+#: gio/gdbus-tool.c:942
msgid "Invoke a method on a remote object."
msgstr "Zavolať metódu na vzdialenom objekte."
-#: gio/gdbus-tool.c:998 gio/gdbus-tool.c:1792 gio/gdbus-tool.c:2032
+#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
msgid "Error: Destination is not specified\n"
msgstr "Chyba: Cieľ nie je urÄený\n"
-#: gio/gdbus-tool.c:1009 gio/gdbus-tool.c:1809 gio/gdbus-tool.c:2043
+#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Chyba: %s nie je platný názov zbernice\n"
-#: gio/gdbus-tool.c:1059
+#: gio/gdbus-tool.c:1075
msgid "Error: Method name is not specified\n"
msgstr "Chyba: Názov metódy nie je urÄený\n"
-#: gio/gdbus-tool.c:1070
+#: gio/gdbus-tool.c:1086
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Chyba: Názov metódy „%s“ nie je platný\n"
-#: gio/gdbus-tool.c:1148
+#: gio/gdbus-tool.c:1164
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Chyba pri spracovaní parametra %d typu „%s“: %s\n"
-#: gio/gdbus-tool.c:1634
+# PÅ : file handle (win32) je ekvivalent file descriptor - dovolil som si to preložiÅ¥ rovnako. KeÄže používané manipulátor, alebo rukoväť sú oba zlé preklady (obsluha je handler)... A dokonca aj v slovenskom preklade Správcu úloh vo win je použitý popisovaÄ.
+#: gio/gdbus-tool.c:1190
+#, fuzzy, c-format
+#| msgid "Error reading from handle: %s"
+msgid "Error adding handle %d: %s\n"
+msgstr "Chyba pri Äítaní z popisovaÄa: %s"
+
+#: gio/gdbus-tool.c:1686
msgid "Destination name to introspect"
msgstr "Názov cieľa na vnútorné preskúmanie"
-#: gio/gdbus-tool.c:1635
+#: gio/gdbus-tool.c:1687
msgid "Object path to introspect"
msgstr "Cesta objektu na vnútorné preskúmanie"
-#: gio/gdbus-tool.c:1636
+#: gio/gdbus-tool.c:1688
msgid "Print XML"
msgstr "Vypísať XML"
-#: gio/gdbus-tool.c:1637
+#: gio/gdbus-tool.c:1689
msgid "Introspect children"
msgstr "Vnútorne preskúmať potomka"
-#: gio/gdbus-tool.c:1638
+#: gio/gdbus-tool.c:1690
msgid "Only print properties"
msgstr "Iba vypísať vlastnosti"
-#: gio/gdbus-tool.c:1727
+#: gio/gdbus-tool.c:1779
msgid "Introspect a remote object."
msgstr "Vnútorne preskúmať vzdialený objekt."
-#: gio/gdbus-tool.c:1933
+#: gio/gdbus-tool.c:1985
msgid "Destination name to monitor"
msgstr "Názov cieľa na sledovanie"
-#: gio/gdbus-tool.c:1934
+#: gio/gdbus-tool.c:1986
msgid "Object path to monitor"
msgstr "Cesta objektu na sledovanie"
-#: gio/gdbus-tool.c:1959
+#: gio/gdbus-tool.c:2011
msgid "Monitor a remote object."
msgstr "Sledovať vzdialený objekt."
-#: gio/gdbus-tool.c:2017
+#: gio/gdbus-tool.c:2069
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr ""
-#: gio/gdbus-tool.c:2141
+#: gio/gdbus-tool.c:2193
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Služba, ktorá sa má aktivovaÅ¥ pred Äakaním na inú (so známym menom)"
-#: gio/gdbus-tool.c:2144
+#: gio/gdbus-tool.c:2196
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1270,63 +1303,63 @@ msgstr ""
"ÄŒasový limit (v sekundách) pre Äakanie, po uplynutí ktorého sa ukonÄí "
"chybou; 0 bez limitu (predvolené)"
-#: gio/gdbus-tool.c:2192
+#: gio/gdbus-tool.c:2244
msgid "[OPTION…] BUS-NAME"
msgstr "[VOĽBA…] NÃZOV_ZBERNICE"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2245
msgid "Wait for a bus name to appear."
msgstr "Čakať na zjavenie názvu zbernice."
-#: gio/gdbus-tool.c:2269
+#: gio/gdbus-tool.c:2321
msgid "Error: A service to activate for must be specified.\n"
msgstr "Chyba: Musí byÅ¥ urÄená služba, ktorá sa má aktivovaÅ¥.\n"
-#: gio/gdbus-tool.c:2274
+#: gio/gdbus-tool.c:2326
msgid "Error: A service to wait for must be specified.\n"
msgstr "Chyba: Musí byÅ¥ urÄená služba, na ktorú sa má ÄakaÅ¥.\n"
-#: gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:2331
msgid "Error: Too many arguments.\n"
msgstr "Chyba: Príliš veľa parametrov.\n"
-#: gio/gdbus-tool.c:2287 gio/gdbus-tool.c:2294
+#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Chyba: %s nie je platný známy názov zbernice.\n"
-#: gio/gdesktopappinfo.c:2073 gio/gdesktopappinfo.c:4893
+#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4932
msgid "Unnamed"
msgstr "Bez názvu"
-#: gio/gdesktopappinfo.c:2483
+#: gio/gdesktopappinfo.c:2516
msgid "Desktop file didn’t specify Exec field"
msgstr "V súbore desktop nie je urÄené pole Exec"
-#: gio/gdesktopappinfo.c:2763
+#: gio/gdesktopappinfo.c:2801
msgid "Unable to find terminal required for application"
msgstr "Nepodarilo sa nájsť terminál vyžadovaný pre aplikáciu"
-#: gio/gdesktopappinfo.c:3414
+#: gio/gdesktopappinfo.c:3452
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr "Nedá sa vytvoriÅ¥ používateľský konfiguraÄný prieÄinok aplikácie %s: %s"
-#: gio/gdesktopappinfo.c:3418
+#: gio/gdesktopappinfo.c:3456
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Nedá sa vytvoriÅ¥ používateľský konfiguraÄný prieÄinok MIME %s: %s"
-#: gio/gdesktopappinfo.c:3660 gio/gdesktopappinfo.c:3684
+#: gio/gdesktopappinfo.c:3698 gio/gdesktopappinfo.c:3722
msgid "Application information lacks an identifier"
msgstr "V informáciách o aplikácii chýba identifikátor"
-#: gio/gdesktopappinfo.c:3920
+#: gio/gdesktopappinfo.c:3958
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Nedá sa vytvoriť používateľský desktop súbor %s"
-#: gio/gdesktopappinfo.c:4056
+#: gio/gdesktopappinfo.c:4094
#, c-format
msgid "Custom definition for %s"
msgstr "Vlastná definícia pre %s"
@@ -1356,7 +1389,7 @@ msgstr "mechanika neimplementuje spustenie"
msgid "drive doesn’t implement stop"
msgstr "mechanika neimplementuje zastavenie"
-#: gio/gdtlsconnection.c:1120 gio/gtlsconnection.c:921
+#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
msgid "TLS backend does not implement TLS binding retrieval"
msgstr ""
@@ -1393,93 +1426,83 @@ msgstr "Chybný poÄet tokenov (%d) v kódovaní GEmblemedIcon"
msgid "Expected a GEmblem for GEmblemedIcon"
msgstr "OÄakávaný GEmblem pre GEmblemedIcon"
-#: gio/gfile.c:1044 gio/gfile.c:1282 gio/gfile.c:1420 gio/gfile.c:1658
-#: gio/gfile.c:1713 gio/gfile.c:1771 gio/gfile.c:1855 gio/gfile.c:1912
-#: gio/gfile.c:1976 gio/gfile.c:2031 gio/gfile.c:3722 gio/gfile.c:3777
-#: gio/gfile.c:4070 gio/gfile.c:4540 gio/gfile.c:4951 gio/gfile.c:5036
-#: gio/gfile.c:5126 gio/gfile.c:5223 gio/gfile.c:5310 gio/gfile.c:5411
-#: gio/gfile.c:8121 gio/gfile.c:8211 gio/gfile.c:8295
-#: gio/win32/gwinhttpfile.c:453
-msgid "Operation not supported"
-msgstr "Nepodporovaná operácia"
-
#. Translators: This is an error message when
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1543
+#: gio/gfile.c:1561
msgid "Containing mount does not exist"
msgstr "Obklopujúce pripojenie neexistuje"
-#: gio/gfile.c:2590 gio/glocalfile.c:2430
+#: gio/gfile.c:2608 gio/glocalfile.c:2477
msgid "Can’t copy over directory"
msgstr "Nedá sa prepísať adresár pri kopírovaní"
-#: gio/gfile.c:2650
+#: gio/gfile.c:2668
msgid "Can’t copy directory over directory"
msgstr "Nedá sa prepísať adresár adresárom pri kopírovaní"
-#: gio/gfile.c:2658
+#: gio/gfile.c:2676
msgid "Target file exists"
msgstr "Cieľový súbor existuje"
-#: gio/gfile.c:2677
+#: gio/gfile.c:2695
msgid "Can’t recursively copy directory"
msgstr "Adresár sa nedá kopírovať rekurzívne"
-#: gio/gfile.c:2952
+#: gio/gfile.c:2996
msgid "Splice not supported"
msgstr "Operácia zreťazovania vstupu s výstupom nie je podporovaná"
# http://developer.gnome.org/gio/2.32/GOutputStream.html#g-output-stream-splice
-#: gio/gfile.c:2956 gio/gfile.c:3001
+#: gio/gfile.c:3000
#, c-format
msgid "Error splicing file: %s"
msgstr "Chyba pri zreťazovaní súboru: %s"
-#: gio/gfile.c:3117
+#: gio/gfile.c:3152
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Kopírovanie (odkaz/klon) medzi pripojeniami nie je podporované"
-#: gio/gfile.c:3121
+#: gio/gfile.c:3156
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr ""
"Kopírovanie (odkaz/klon) medzi pripojeniami nie je podporované alebo je "
"neplatné"
-#: gio/gfile.c:3126
+#: gio/gfile.c:3161
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr ""
"Kopírovanie (odkaz/klon) medzi pripojeniami nie je podporované alebo "
"nefunguje"
-#: gio/gfile.c:3190
+#: gio/gfile.c:3226
msgid "Can’t copy special file"
msgstr "Špeciálny súbor sa nedá kopírovať"
-#: gio/gfile.c:4003
+#: gio/gfile.c:4035
msgid "Invalid symlink value given"
msgstr "Neplatný daný symbolický odkaz"
-#: gio/gfile.c:4013 glib/gfileutils.c:2349
+#: gio/gfile.c:4045 glib/gfileutils.c:2354
msgid "Symbolic links not supported"
msgstr "Symbolické odkazy nie sú podporované"
-#: gio/gfile.c:4181
+#: gio/gfile.c:4213
msgid "Trash not supported"
msgstr "Zahodenie do Koša nie je podporované"
# literal character
-#: gio/gfile.c:4293
+#: gio/gfile.c:4325
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Názvy súborov nemôžu obsahovať „%c“"
-#: gio/gfile.c:6774 gio/gvolume.c:364
+#: gio/gfile.c:6806 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "zväzok neimplementuje pripojenie"
-#: gio/gfile.c:6888 gio/gfile.c:6936
+#: gio/gfile.c:6920 gio/gfile.c:6968
msgid "No application is registered as handling this file"
msgstr "Žiadna aplikácia nie je zaregistrovaná na spracovanie tohto súboru"
@@ -1498,12 +1521,12 @@ msgstr "Enumerátor súborov má nevykonanú operáciu"
msgid "File enumerator is already closed"
msgstr "Enumerátor súborov je už uzatvorený"
-#: gio/gfileicon.c:236
+#: gio/gfileicon.c:250
#, c-format
msgid "Can’t handle version %d of GFileIcon encoding"
msgstr "Nedá sa spracovať kódovanie GFileIcon verzie %d"
-#: gio/gfileicon.c:246
+#: gio/gfileicon.c:260
msgid "Malformed input data for GFileIcon"
msgstr "Zle formátované vstupné údaje pre GFileIcon"
@@ -1527,7 +1550,7 @@ msgid "Truncate not supported on stream"
msgstr "Skrátenie nie je v prúde podporované"
#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
-#: glib/gconvert.c:1778
+#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Neplatný názov hostiteľa"
@@ -1552,7 +1575,13 @@ msgstr "Vyžaduje sa overenie totožnosti sprostredkovateľa HTTP"
msgid "HTTP proxy connection failed: %i"
msgstr "Pripojenie k sprostredkovateľovi HTTP zlyhalo: %i"
-#: gio/ghttpproxy.c:269
+#: gio/ghttpproxy.c:266
+#, fuzzy
+#| msgid "HTTP proxy connection failed: %i"
+msgid "HTTP proxy response too big"
+msgstr "Pripojenie k sprostredkovateľovi HTTP zlyhalo: %i"
+
+#: gio/ghttpproxy.c:283
msgid "HTTP proxy server closed connection unexpectedly."
msgstr "Server sprostredkovateľa HTTP neoÄakávane preruÅ¡il pripojenie."
@@ -1614,7 +1643,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Nepodarilo sa analyzovať „%s“ ako masku adresy IP"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:220
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
msgid "Not enough space for socket address"
msgstr "Nie je dostatok miesta pre adresu soketu"
@@ -1632,7 +1661,7 @@ msgstr "Vstupný prúd neimplementuje Äítanie"
#. Translators: This is an error you get if there is
#. * already an operation running against this stream when
#. * you try to start one
-#: gio/ginputstream.c:1218 gio/giostream.c:310 gio/goutputstream.c:2208
+#: gio/ginputstream.c:1249 gio/giostream.c:310 gio/goutputstream.c:2208
msgid "Stream has outstanding operation"
msgstr "Prúd má nevykonanú operáciu"
@@ -1674,58 +1703,64 @@ msgid "Show information about locations"
msgstr "Zobrazí informácie o umiestneniach"
#: gio/gio-tool.c:232
+#, fuzzy
+#| msgid "List static actions for an application (from .desktop file)"
+msgid "Launch an application from a desktop file"
+msgstr "Vypíše zoznam statických akcií pre aplikáciu (zo súboru typu .desktop)"
+
+#: gio/gio-tool.c:233
msgid "List the contents of locations"
msgstr "Vypíše obsah umiestnení"
-#: gio/gio-tool.c:233
+#: gio/gio-tool.c:234
msgid "Get or set the handler for a mimetype"
msgstr "Získa alebo nastaví obslužný program pre typ MIME"
-#: gio/gio-tool.c:234
+#: gio/gio-tool.c:235
msgid "Create directories"
msgstr "Vytvorí adresáre"
-#: gio/gio-tool.c:235
+#: gio/gio-tool.c:236
msgid "Monitor files and directories for changes"
msgstr "Sleduje zmeny súborov a adresárov"
-#: gio/gio-tool.c:236
+#: gio/gio-tool.c:237
msgid "Mount or unmount the locations"
msgstr "Pripojí alebo odpojí umiestnenia"
-#: gio/gio-tool.c:237
+#: gio/gio-tool.c:238
msgid "Move one or more files"
msgstr "Presunie jeden alebo viac súborov"
-#: gio/gio-tool.c:238
+#: gio/gio-tool.c:239
msgid "Open files with the default application"
msgstr "Otvorí súbory predvolenou aplikáciou"
-#: gio/gio-tool.c:239
+#: gio/gio-tool.c:240
msgid "Rename a file"
msgstr "Premenuje súbor"
-#: gio/gio-tool.c:240
+#: gio/gio-tool.c:241
msgid "Delete one or more files"
msgstr "Odstráni jeden alebo viac súborov"
-#: gio/gio-tool.c:241
+#: gio/gio-tool.c:242
msgid "Read from standard input and save"
msgstr "Číta z predvoleného vstupu a ukladá"
-#: gio/gio-tool.c:242
+#: gio/gio-tool.c:243
msgid "Set a file attribute"
msgstr "Nastaví atribút súboru"
-#: gio/gio-tool.c:243
+#: gio/gio-tool.c:244
msgid "Move files or directories to the trash"
msgstr "Presunie súbory alebo adresáre do Koša"
-#: gio/gio-tool.c:244
+#: gio/gio-tool.c:245
msgid "Lists the contents of locations in a tree"
msgstr "Vypíše obsah umiestnení v stromovom zobrazení"
-#: gio/gio-tool.c:246
+#: gio/gio-tool.c:247
#, c-format
msgid "Use %s to get detailed help.\n"
msgstr "Na získanie podrobnejšieho pomocníka, použite %s.\n"
@@ -1735,12 +1770,12 @@ msgid "Error writing to stdout"
msgstr "Chyba pri zápise na štandardný výstup"
#. Translators: commandline placeholder
-#: gio/gio-tool-cat.c:133 gio/gio-tool-info.c:333 gio/gio-tool-list.c:172
+#: gio/gio-tool-cat.c:133 gio/gio-tool-info.c:340 gio/gio-tool-list.c:172
#: gio/gio-tool-mkdir.c:48 gio/gio-tool-monitor.c:37 gio/gio-tool-monitor.c:39
#: gio/gio-tool-monitor.c:41 gio/gio-tool-monitor.c:43
-#: gio/gio-tool-monitor.c:203 gio/gio-tool-mount.c:1199 gio/gio-tool-open.c:70
+#: gio/gio-tool-monitor.c:204 gio/gio-tool-mount.c:1199 gio/gio-tool-open.c:70
#: gio/gio-tool-remove.c:48 gio/gio-tool-rename.c:45 gio/gio-tool-set.c:89
-#: gio/gio-tool-trash.c:90 gio/gio-tool-tree.c:239
+#: gio/gio-tool-trash.c:220 gio/gio-tool-tree.c:239
msgid "LOCATION"
msgstr "UMIESTNENIE"
@@ -1759,9 +1794,9 @@ msgstr ""
"použiÅ¥ nieÄo ako \n"
"smb://server/resource/file.txt ako umiestnenie."
-#: gio/gio-tool-cat.c:162 gio/gio-tool-info.c:364 gio/gio-tool-mkdir.c:76
-#: gio/gio-tool-monitor.c:228 gio/gio-tool-mount.c:1250 gio/gio-tool-open.c:96
-#: gio/gio-tool-remove.c:72 gio/gio-tool-trash.c:145
+#: gio/gio-tool-cat.c:162 gio/gio-tool-info.c:371 gio/gio-tool-mkdir.c:76
+#: gio/gio-tool-monitor.c:229 gio/gio-tool-mount.c:1250 gio/gio-tool-open.c:96
+#: gio/gio-tool-remove.c:72 gio/gio-tool-trash.c:303
msgid "No locations given"
msgstr "Neposkytnuté žiadne umiestnenia"
@@ -1898,24 +1933,24 @@ msgstr "uri: %s\n"
msgid "local path: %s\n"
msgstr "miestna cesta: %s\n"
-#: gio/gio-tool-info.c:199
+#: gio/gio-tool-info.c:205
#, c-format
msgid "unix mount: %s%s %s %s %s\n"
msgstr ""
-#: gio/gio-tool-info.c:279
+#: gio/gio-tool-info.c:286
msgid "Settable attributes:\n"
msgstr "Nastaviteľné atribúty:\n"
-#: gio/gio-tool-info.c:303
+#: gio/gio-tool-info.c:310
msgid "Writable attribute namespaces:\n"
msgstr "Menné priestory zapisovateľného atribútu:\n"
-#: gio/gio-tool-info.c:338
+#: gio/gio-tool-info.c:345
msgid "Show information about locations."
msgstr "Zobrazí informácie o umiestneniach."
-#: gio/gio-tool-info.c:340
+#: gio/gio-tool-info.c:347
msgid ""
"gio info is similar to the traditional ls utility, but using GIO\n"
"locations instead of local files: for example, you can use something\n"
@@ -1931,6 +1966,47 @@ msgstr ""
"menného priestoru, napr. unix, alebo zadaním '*', Äo zastupuje vÅ¡etky "
"vlastnosti"
+#. Translators: commandline placeholder
+#: gio/gio-tool-launch.c:54
+msgid "DESKTOP-FILE [FILE-ARG …]"
+msgstr ""
+
+#: gio/gio-tool-launch.c:57
+msgid ""
+"Launch an application from a desktop file, passing optional filename "
+"arguments to it."
+msgstr ""
+
+#: gio/gio-tool-launch.c:77
+#, fuzzy
+#| msgid "No files given"
+msgid "No desktop file given"
+msgstr "Neposkytnuté žiadne súbory"
+
+#: gio/gio-tool-launch.c:85
+#, fuzzy
+#| msgid "There is no GCredentials support for your platform"
+msgid "The launch command is not currently supported on this platform"
+msgstr "Neexistuje podpora GCredentials pre vašu platformu"
+
+#: gio/gio-tool-launch.c:98
+#, fuzzy, c-format
+#| msgid "Unable to trash file %s: %s"
+msgid "Unable to load ‘%s‘: %s"
+msgstr "Nepodarilo sa zahodiť súbor %s do Koša: %s"
+
+#: gio/gio-tool-launch.c:107
+#, fuzzy, c-format
+#| msgid "Failed to load info for handler “%sâ€"
+msgid "Unable to load application information for ‘%s‘"
+msgstr "Zlyhalo naÄítanie informácii pre obslužný program „%s“"
+
+#: gio/gio-tool-launch.c:119
+#, fuzzy, c-format
+#| msgid "Default application for “%sâ€: %s\n"
+msgid "Unable to launch application ‘%s’: %s"
+msgstr "Predvolená aplikácia pre „%s“: %s\n"
+
#: gio/gio-tool-list.c:37 gio/gio-tool-tree.c:32
msgid "Show hidden files"
msgstr "Zobrazí skryté súbory"
@@ -2078,7 +2154,7 @@ msgstr ""
msgid "Watch for mount events"
msgstr "Sleduje udalosti pripojení"
-#: gio/gio-tool-monitor.c:208
+#: gio/gio-tool-monitor.c:209
msgid "Monitor files or directories for changes."
msgstr "Sledovať zmeny súborov a adresárov."
@@ -2209,7 +2285,7 @@ msgstr ""
"Otvára súbory predvolenou aplikáciou, ktorá\n"
"je zaregistrovanou na obsluhu súborov zadaného typu."
-#: gio/gio-tool-remove.c:31 gio/gio-tool-trash.c:31
+#: gio/gio-tool-remove.c:31 gio/gio-tool-trash.c:33
msgid "Ignore nonexistent files, never prompt"
msgstr "Ignoruje neexistujúce súbory, nepýta sa"
@@ -2323,14 +2399,56 @@ msgstr "Hodnota neurÄená"
msgid "Invalid attribute type “%sâ€"
msgstr "Neplatný typ atribútu „%s“"
-#: gio/gio-tool-trash.c:32
+#: gio/gio-tool-trash.c:34
msgid "Empty the trash"
msgstr "Vyprázdni Kôš"
-#: gio/gio-tool-trash.c:95
-msgid "Move files or directories to the trash."
+#: gio/gio-tool-trash.c:35
+#, fuzzy
+#| msgid "List the contents of the locations."
+msgid "List files in the trash with their original locations"
+msgstr "Vypíše obsah umiestnení."
+
+#: gio/gio-tool-trash.c:36
+msgid ""
+"Restore a file from trash to its original location (possibly recreating the "
+"directory)"
+msgstr ""
+
+#: gio/gio-tool-trash.c:106
+#, fuzzy
+#| msgid "Unable to find terminal required for application"
+msgid "Unable to find original path"
+msgstr "Nepodarilo sa nájsť terminál vyžadovaný pre aplikáciu"
+
+#: gio/gio-tool-trash.c:123
+#, fuzzy
+#| msgid "Unable to create socket: %s"
+msgid "Unable to recreate original location: "
+msgstr "Nepodarilo sa vytvoriť soket: %s"
+
+#: gio/gio-tool-trash.c:136
+#, fuzzy
+#| msgid "unable to find desktop file for application %s\n"
+msgid "Unable to move file to its original location: "
+msgstr "nepodarilo sa nájsť súbor desktop pre aplikáciu %s\n"
+
+#: gio/gio-tool-trash.c:225
+#, fuzzy
+#| msgid "Move files or directories to the trash."
+msgid "Move/Restore files or directories to the trash."
msgstr "Presúva súbory alebo adresáre do Koša."
+#: gio/gio-tool-trash.c:227
+msgid ""
+"Note: for --restore switch, if the original location of the trashed file \n"
+"already exists, it will not be overwritten unless --force is set."
+msgstr ""
+
+#: gio/gio-tool-trash.c:258
+msgid "Location given doesn't start with trash:///"
+msgstr ""
+
#: gio/gio-tool-tree.c:33
msgid "Follow symbolic links, mounts and shortcuts"
msgstr "Nasleduje symbolické odkazy, pripojenia a skratky"
@@ -2975,7 +3093,7 @@ msgstr "Nenájdené žiadne súbory schém: existujúci výstupný súbor odstrÃ
msgid "Invalid filename %s"
msgstr "Neplatný názov súboru %s"
-#: gio/glocalfile.c:980
+#: gio/glocalfile.c:982
#, c-format
msgid "Error getting filesystem info for %s: %s"
msgstr "Chyba pri získavaní informácií o súborovom systéme pre %s: %s"
@@ -2984,127 +3102,129 @@ msgstr "Chyba pri získavaní informácií o súborovom systéme pre %s: %s"
#. * the enclosing (user visible) mount of a file, but none
#. * exists.
#.
-#: gio/glocalfile.c:1121
+#: gio/glocalfile.c:1123
#, c-format
msgid "Containing mount for file %s not found"
msgstr "Obklopujúce pripojenie pre súbor %s sa nepodarilo nájsť"
-#: gio/glocalfile.c:1144
+#: gio/glocalfile.c:1146
msgid "Can’t rename root directory"
msgstr "Koreňový adresár sa nedá premenovať"
-#: gio/glocalfile.c:1162 gio/glocalfile.c:1185
+#: gio/glocalfile.c:1164 gio/glocalfile.c:1187
#, c-format
msgid "Error renaming file %s: %s"
msgstr "Chyba pri premenovaní súboru %s: %s"
-#: gio/glocalfile.c:1169
+#: gio/glocalfile.c:1171
msgid "Can’t rename file, filename already exists"
msgstr "Nedá sa premenovať súbor, názov súboru už existuje"
-#: gio/glocalfile.c:1182 gio/glocalfile.c:2324 gio/glocalfile.c:2352
-#: gio/glocalfile.c:2491 gio/glocalfileoutputstream.c:650
+#: gio/glocalfile.c:1184 gio/glocalfile.c:2371 gio/glocalfile.c:2399
+#: gio/glocalfile.c:2538 gio/glocalfileoutputstream.c:656
msgid "Invalid filename"
msgstr "Neplatný názov súboru"
-#: gio/glocalfile.c:1350 gio/glocalfile.c:1361
+#: gio/glocalfile.c:1352 gio/glocalfile.c:1363
#, c-format
msgid "Error opening file %s: %s"
msgstr "Chyba pri otváraní súboru %s: %s"
-#: gio/glocalfile.c:1486
+#: gio/glocalfile.c:1488
#, c-format
msgid "Error removing file %s: %s"
msgstr "Chyba pri odstraňovaní súboru %s: %s"
-#: gio/glocalfile.c:1969
+#: gio/glocalfile.c:1982 gio/glocalfile.c:1993
#, c-format
msgid "Error trashing file %s: %s"
msgstr "Chyba pri zahadzovaní súboru %s do Koša: %s"
-#: gio/glocalfile.c:2010
-#, c-format
-msgid "Unable to create trash dir %s: %s"
+#: gio/glocalfile.c:2031
+#, fuzzy, c-format
+#| msgid "Unable to create trash dir %s: %s"
+msgid "Unable to create trash directory %s: %s"
msgstr "Nepodarilo sa vytvoriť adresár Kôš %s: %s"
-#: gio/glocalfile.c:2030
+#: gio/glocalfile.c:2052
#, c-format
msgid "Unable to find toplevel directory to trash %s"
msgstr "Nepodarilo sa nájsť adresár najvyššej úrovne pre Kôš %s"
-#: gio/glocalfile.c:2038
+#: gio/glocalfile.c:2060
#, fuzzy, c-format
#| msgid "Copy (reflink/clone) between mounts is not supported"
msgid "Trashing on system internal mounts is not supported"
msgstr "Kopírovanie (odkaz/klon) medzi pripojeniami nie je podporované"
-#: gio/glocalfile.c:2118 gio/glocalfile.c:2138
-#, c-format
-msgid "Unable to find or create trash directory for %s"
+#: gio/glocalfile.c:2146 gio/glocalfile.c:2174
+#, fuzzy, c-format
+#| msgid "Unable to find or create trash directory for %s"
+msgid "Unable to find or create trash directory %s to trash %s"
msgstr "Nepodarilo sa nájsť ani vytvoriť adresár Kôš pre %s"
-#: gio/glocalfile.c:2173
+#: gio/glocalfile.c:2220
#, c-format
msgid "Unable to create trashing info file for %s: %s"
msgstr ""
"Nepodarilo sa vytvoriÅ¥ informaÄný súbor o zahadzovaní do KoÅ¡a pre %s: %s"
-#: gio/glocalfile.c:2235
+#: gio/glocalfile.c:2282
#, c-format
msgid "Unable to trash file %s across filesystem boundaries"
msgstr ""
"Nepodarilo sa zahodiť súbor do Koša cez hranice súborových systémov: %s"
-#: gio/glocalfile.c:2239 gio/glocalfile.c:2295
+#: gio/glocalfile.c:2286 gio/glocalfile.c:2342
#, c-format
msgid "Unable to trash file %s: %s"
msgstr "Nepodarilo sa zahodiť súbor %s do Koša: %s"
-#: gio/glocalfile.c:2301
+#: gio/glocalfile.c:2348
#, c-format
msgid "Unable to trash file %s"
msgstr "Nepodarilo sa zahodiť súbor %s do Koša"
-#: gio/glocalfile.c:2327
+#: gio/glocalfile.c:2374
#, c-format
msgid "Error creating directory %s: %s"
msgstr "Chyba pri vytváraní adresára %s: %s"
-#: gio/glocalfile.c:2356
+#: gio/glocalfile.c:2403
#, c-format
msgid "Filesystem does not support symbolic links"
msgstr "Súborový systém nepodporuje symbolické odkazy"
-#: gio/glocalfile.c:2359
+#: gio/glocalfile.c:2406
#, c-format
msgid "Error making symbolic link %s: %s"
msgstr "Chyba pri vytváraní symbolického odkazu %s: %s"
-#: gio/glocalfile.c:2402 gio/glocalfile.c:2437 gio/glocalfile.c:2494
+#: gio/glocalfile.c:2449 gio/glocalfile.c:2484 gio/glocalfile.c:2541
#, c-format
msgid "Error moving file %s: %s"
msgstr "Chyba pri presúvaní súboru %s: %s"
-#: gio/glocalfile.c:2425
+#: gio/glocalfile.c:2472
msgid "Can’t move directory over directory"
msgstr "Nedá sa prepísaÅ¥ adresár adresárom poÄas presúvania"
-#: gio/glocalfile.c:2451 gio/glocalfileoutputstream.c:1039
-#: gio/glocalfileoutputstream.c:1053 gio/glocalfileoutputstream.c:1068
-#: gio/glocalfileoutputstream.c:1085 gio/glocalfileoutputstream.c:1099
+#: gio/glocalfile.c:2498 gio/glocalfileoutputstream.c:1108
+#: gio/glocalfileoutputstream.c:1122 gio/glocalfileoutputstream.c:1137
+#: gio/glocalfileoutputstream.c:1154 gio/glocalfileoutputstream.c:1168
msgid "Backup file creation failed"
msgstr "Vytvorenie súboru zálohy zlyhalo"
-#: gio/glocalfile.c:2470
+#: gio/glocalfile.c:2517
#, c-format
msgid "Error removing target file: %s"
msgstr "Chyba pri odstraňovaní cieľového súboru: %s"
-#: gio/glocalfile.c:2484
+#: gio/glocalfile.c:2531
msgid "Move between mounts not supported"
msgstr "Presun medzi pripojeniami nie je podporovaný"
-#: gio/glocalfile.c:2658
+#: gio/glocalfile.c:2705
#, c-format
msgid "Could not determine the disk usage of %s: %s"
msgstr "Nepodarilo sa urÄiÅ¥ využitie disku %s: %s"
@@ -3126,187 +3246,187 @@ msgstr "Neplatný názov rozšíreného atribútu"
msgid "Error setting extended attribute “%sâ€: %s"
msgstr "Chyba pri nastavovaní rozšíreného atribútu „%s“: %s"
-#: gio/glocalfileinfo.c:1666 gio/win32/gwinhttpfile.c:191
+#: gio/glocalfileinfo.c:1709 gio/win32/gwinhttpfile.c:191
msgid " (invalid encoding)"
msgstr " (neplatné kódovanie)"
-#: gio/glocalfileinfo.c:1825 gio/glocalfileoutputstream.c:915
+#: gio/glocalfileinfo.c:1868 gio/glocalfileoutputstream.c:943
+#: gio/glocalfileoutputstream.c:995
#, c-format
msgid "Error when getting information for file “%sâ€: %s"
msgstr "Chyba pri získavaní informácií pre súbor „%s“: %s"
-#: gio/glocalfileinfo.c:2091
+#: gio/glocalfileinfo.c:2134
#, c-format
msgid "Error when getting information for file descriptor: %s"
msgstr "Chyba pri získavaní informácií pre popisovaÄ súboru: %s"
-#: gio/glocalfileinfo.c:2136
+#: gio/glocalfileinfo.c:2179
msgid "Invalid attribute type (uint32 expected)"
msgstr "Neplatný typ atribútu (oÄakávané uint32)"
-#: gio/glocalfileinfo.c:2154
+#: gio/glocalfileinfo.c:2197
msgid "Invalid attribute type (uint64 expected)"
msgstr "Neplatný typ atribútu (oÄakávané uint64)"
-#: gio/glocalfileinfo.c:2173 gio/glocalfileinfo.c:2192
+#: gio/glocalfileinfo.c:2216 gio/glocalfileinfo.c:2235
msgid "Invalid attribute type (byte string expected)"
msgstr "Neplatný typ atribútu (oÄakávaný bajtový reÅ¥azec)"
-#: gio/glocalfileinfo.c:2239
+#: gio/glocalfileinfo.c:2282
msgid "Cannot set permissions on symlinks"
msgstr "Pre symbolické odkazy sa nedajú nastaviť oprávnenia"
-#: gio/glocalfileinfo.c:2255
+#: gio/glocalfileinfo.c:2298
#, c-format
msgid "Error setting permissions: %s"
msgstr "Chyba pri nastavovaní oprávnení: %s"
-#: gio/glocalfileinfo.c:2306
+#: gio/glocalfileinfo.c:2349
#, c-format
msgid "Error setting owner: %s"
msgstr "Chyba pri nastavovaní vlastníka: %s"
-#: gio/glocalfileinfo.c:2329
+#: gio/glocalfileinfo.c:2372
msgid "symlink must be non-NULL"
msgstr "symbolický odkaz nesmie byť NULL"
-#: gio/glocalfileinfo.c:2339 gio/glocalfileinfo.c:2358
-#: gio/glocalfileinfo.c:2369
+#: gio/glocalfileinfo.c:2382 gio/glocalfileinfo.c:2401
+#: gio/glocalfileinfo.c:2412
#, c-format
msgid "Error setting symlink: %s"
msgstr "Chyba pri nastavovaní symbolického odkazu: %s"
-#: gio/glocalfileinfo.c:2348
+#: gio/glocalfileinfo.c:2391
msgid "Error setting symlink: file is not a symlink"
msgstr ""
"Chyba pri nastavovaní symbolického odkazu: súbor nie je symbolický odkaz"
-#: gio/glocalfileinfo.c:2420
+#: gio/glocalfileinfo.c:2463
#, c-format
msgid "Extra nanoseconds %d for UNIX timestamp %lld are negative"
msgstr "%d nanosekúnd navyÅ¡e pre UNIXovú Äasovú znaÄku %lld je záporných"
-#: gio/glocalfileinfo.c:2429
+#: gio/glocalfileinfo.c:2472
#, c-format
msgid "Extra nanoseconds %d for UNIX timestamp %lld reach 1 second"
msgstr "%d nanosekúnd navyÅ¡e pre UNIXovú Äasovú znaÄku %lld dosiahlo 1 sekundu"
-#: gio/glocalfileinfo.c:2439
+#: gio/glocalfileinfo.c:2482
#, c-format
msgid "UNIX timestamp %lld does not fit into 64 bits"
msgstr "UNIXová Äasová znaÄka %lld sa nevmestí do 64 bitov"
-#: gio/glocalfileinfo.c:2450
+#: gio/glocalfileinfo.c:2493
#, c-format
msgid "UNIX timestamp %lld is outside of the range supported by Windows"
msgstr ""
"UNIXová Äasová znaÄka %lld je mimo rozsahu podporovaného systémom Windows"
-#: gio/glocalfileinfo.c:2514
+#: gio/glocalfileinfo.c:2570
#, c-format
msgid "File name “%s†cannot be converted to UTF-16"
msgstr "Názov súboru „%s“ nemôže byť prevedený na kódovanie UTF-16"
-#: gio/glocalfileinfo.c:2533
+#: gio/glocalfileinfo.c:2589
#, c-format
msgid "File “%s†cannot be opened: Windows Error %lu"
msgstr "Súbor „%s“ sa nedá otvoriť: Chyba systému Windows %lu"
-#: gio/glocalfileinfo.c:2546
+#: gio/glocalfileinfo.c:2602
#, c-format
msgid "Error setting modification or access time for file “%sâ€: %lu"
msgstr "Chyba pri nastavovaní Äasu prístupu alebo zmeny súboru „%s“: %lu"
-#: gio/glocalfileinfo.c:2647
+#: gio/glocalfileinfo.c:2703
#, c-format
msgid "Error setting modification or access time: %s"
msgstr "Chyba pri nastavovaní Äasu prístupu alebo zmeny: %s"
-#: gio/glocalfileinfo.c:2670
+#: gio/glocalfileinfo.c:2726
msgid "SELinux context must be non-NULL"
msgstr "Kontext pre SELinux nesmie byť NULL"
-#: gio/glocalfileinfo.c:2685
+#: gio/glocalfileinfo.c:2733
+msgid "SELinux is not enabled on this system"
+msgstr "SELinux nie je na tomto systéme povolený"
+
+#: gio/glocalfileinfo.c:2743
#, c-format
msgid "Error setting SELinux context: %s"
msgstr "Chyba pri nastavovaní kontextu pre SELinux: %s"
-#: gio/glocalfileinfo.c:2692
-msgid "SELinux is not enabled on this system"
-msgstr "SELinux nie je na tomto systéme povolený"
-
-#: gio/glocalfileinfo.c:2784
+#: gio/glocalfileinfo.c:2836
#, c-format
msgid "Setting attribute %s not supported"
msgstr "Nastavovanie atribútu %s nie je podporované"
-#: gio/glocalfileinputstream.c:168 gio/glocalfileoutputstream.c:795
+#: gio/glocalfileinputstream.c:163 gio/glocalfileoutputstream.c:801
#, c-format
msgid "Error reading from file: %s"
msgstr "Chyba pri Äítaní zo súboru: %s"
-#: gio/glocalfileinputstream.c:199 gio/glocalfileinputstream.c:211
-#: gio/glocalfileinputstream.c:225 gio/glocalfileinputstream.c:333
-#: gio/glocalfileoutputstream.c:557 gio/glocalfileoutputstream.c:1117
-#, c-format
-msgid "Error seeking in file: %s"
-msgstr "Chyba pri presúvaní v súbore: %s"
-
-#: gio/glocalfileinputstream.c:255 gio/glocalfileoutputstream.c:347
-#: gio/glocalfileoutputstream.c:441
+#: gio/glocalfileinputstream.c:194 gio/glocalfileoutputstream.c:353
+#: gio/glocalfileoutputstream.c:447
#, c-format
msgid "Error closing file: %s"
msgstr "Chyba pri zatváraní súboru: %s"
-#: gio/glocalfilemonitor.c:865
+#: gio/glocalfileinputstream.c:272 gio/glocalfileoutputstream.c:563
+#: gio/glocalfileoutputstream.c:1186
+#, c-format
+msgid "Error seeking in file: %s"
+msgstr "Chyba pri presúvaní v súbore: %s"
+
+#: gio/glocalfilemonitor.c:866
msgid "Unable to find default local file monitor type"
msgstr "Nepodarilo sa nájsť predvolený typ sledovania lokálneho súboru"
-#: gio/glocalfileoutputstream.c:214 gio/glocalfileoutputstream.c:292
-#: gio/glocalfileoutputstream.c:328 gio/glocalfileoutputstream.c:816
+#: gio/glocalfileoutputstream.c:220 gio/glocalfileoutputstream.c:298
+#: gio/glocalfileoutputstream.c:334 gio/glocalfileoutputstream.c:822
#, c-format
msgid "Error writing to file: %s"
msgstr "Chyba pri zápise do súboru: %s"
-#: gio/glocalfileoutputstream.c:374
+#: gio/glocalfileoutputstream.c:380
#, c-format
msgid "Error removing old backup link: %s"
msgstr "Chyba pri odstraňovaní starého záložného odkazu: %s"
-#: gio/glocalfileoutputstream.c:388 gio/glocalfileoutputstream.c:401
+#: gio/glocalfileoutputstream.c:394 gio/glocalfileoutputstream.c:407
#, c-format
msgid "Error creating backup copy: %s"
msgstr "Chyba pri vytváraní záložnej kópie: %s"
-#: gio/glocalfileoutputstream.c:419
+#: gio/glocalfileoutputstream.c:425
#, c-format
msgid "Error renaming temporary file: %s"
msgstr "Chyba pri premenúvaní doÄasného súboru: %s"
-#: gio/glocalfileoutputstream.c:603 gio/glocalfileoutputstream.c:1168
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
#, c-format
msgid "Error truncating file: %s"
msgstr "Chyba pri skracovaní súboru: %s"
-#: gio/glocalfileoutputstream.c:656 gio/glocalfileoutputstream.c:894
-#: gio/glocalfileoutputstream.c:1149 gio/gsubprocess.c:380
+#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
+#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Chyba pri otváraní súboru %s: %s"
-#: gio/glocalfileoutputstream.c:928
+#: gio/glocalfileoutputstream.c:957
msgid "Target file is a directory"
msgstr "Cieľový súbor je adresár"
-#: gio/glocalfileoutputstream.c:933
+#: gio/glocalfileoutputstream.c:971
msgid "Target file is not a regular file"
msgstr "Cieľový súbor nie je obyÄajný súbor"
-#: gio/glocalfileoutputstream.c:945
+#: gio/glocalfileoutputstream.c:1013
msgid "The file was externally modified"
msgstr "Súbor bol externe zmenený"
-#: gio/glocalfileoutputstream.c:1133
+#: gio/glocalfileoutputstream.c:1202
#, c-format
msgid "Error removing old file: %s"
msgstr "Chyba pri odstraňovaní starého súboru: %s"
@@ -3466,16 +3586,16 @@ msgid "Invalid domain"
msgstr "Neplatná doména"
# %s je cesta
-#: gio/gresource.c:672 gio/gresource.c:931 gio/gresource.c:970
-#: gio/gresource.c:1094 gio/gresource.c:1166 gio/gresource.c:1239
-#: gio/gresource.c:1320 gio/gresourcefile.c:476 gio/gresourcefile.c:599
+#: gio/gresource.c:681 gio/gresource.c:943 gio/gresource.c:983
+#: gio/gresource.c:1107 gio/gresource.c:1179 gio/gresource.c:1253
+#: gio/gresource.c:1334 gio/gresourcefile.c:476 gio/gresourcefile.c:599
#: gio/gresourcefile.c:736
#, c-format
msgid "The resource at “%s†does not exist"
msgstr "Zdroj v „%s“ neexistuje"
# %s je cesta
-#: gio/gresource.c:837
+#: gio/gresource.c:848
#, c-format
msgid "The resource at “%s†failed to decompress"
msgstr "Zdroj v „%s“ sa nepodarilo rozbaliť"
@@ -3493,11 +3613,11 @@ msgstr "Zdroj v „%s“ nie je adresár"
msgid "Input stream doesn’t implement seek"
msgstr "Vstupný prúd neimplementuje presúvanie"
-#: gio/gresource-tool.c:499
+#: gio/gresource-tool.c:500
msgid "List sections containing resources in an elf FILE"
msgstr "Zoznam Äastí obsahujúcich zdroje v SÚBORE vo formáte elf"
-#: gio/gresource-tool.c:505
+#: gio/gresource-tool.c:506
msgid ""
"List resources\n"
"If SECTION is given, only list resources in this section\n"
@@ -3507,15 +3627,15 @@ msgstr ""
"Ak je zadaná ÄŒASŤ, budú to iba zdroje tejto Äasti\n"
"Ak je zadaná CESTA, bude to iba zoznam zodpovedajúcich zdrojov"
-#: gio/gresource-tool.c:508 gio/gresource-tool.c:518
+#: gio/gresource-tool.c:509 gio/gresource-tool.c:519
msgid "FILE [PATH]"
msgstr "SÚBOR [CESTA]"
-#: gio/gresource-tool.c:509 gio/gresource-tool.c:519 gio/gresource-tool.c:526
+#: gio/gresource-tool.c:510 gio/gresource-tool.c:520 gio/gresource-tool.c:527
msgid "SECTION"
msgstr "ČASŤ"
-#: gio/gresource-tool.c:514
+#: gio/gresource-tool.c:515
msgid ""
"List resources with details\n"
"If SECTION is given, only list resources in this section\n"
@@ -3527,15 +3647,15 @@ msgstr ""
"Ak je zadaná CESTA, bude to iba zoznam zodpovedajúcich zdrojov\n"
"Podrobnosti zahŕňajú Äasti, veľkosti a kompresie"
-#: gio/gresource-tool.c:524
+#: gio/gresource-tool.c:525
msgid "Extract a resource file to stdout"
msgstr "Extrahuje súbor zdrojov do stdout"
-#: gio/gresource-tool.c:525
+#: gio/gresource-tool.c:526
msgid "FILE PATH"
msgstr "CESTA SÚBORU"
-#: gio/gresource-tool.c:539
+#: gio/gresource-tool.c:540
msgid ""
"Usage:\n"
" gresource [--section SECTION] COMMAND [ARGS…]\n"
@@ -3560,7 +3680,7 @@ msgstr ""
" details Zoznam zdrojov s podrobnosťami\n"
" extract Extrahuje zdroj\n"
-#: gio/gresource-tool.c:553
+#: gio/gresource-tool.c:554
#, c-format
msgid ""
"Usage:\n"
@@ -3576,19 +3696,19 @@ msgstr ""
"\n"
# http://en.wikipedia.org/wiki/Executable_and_Linkable_Format
-#: gio/gresource-tool.c:560
+#: gio/gresource-tool.c:561
msgid " SECTION An (optional) elf section name\n"
msgstr " ÄŒASŤ (voliteľný) názov Äasti elf\n"
-#: gio/gresource-tool.c:564 gio/gsettings-tool.c:701
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
msgid " COMMAND The (optional) command to explain\n"
msgstr " PRÃKAZ (voliteľný) príkaz na vysvetlenie\n"
-#: gio/gresource-tool.c:570
+#: gio/gresource-tool.c:571
msgid " FILE An elf file (a binary or a shared library)\n"
msgstr " SÚBOR elf súbor (binárny súbor alebo zdieľaná knižnica)\n"
-#: gio/gresource-tool.c:573
+#: gio/gresource-tool.c:574
msgid ""
" FILE An elf file (a binary or a shared library)\n"
" or a compiled resource file\n"
@@ -3596,23 +3716,23 @@ msgstr ""
" SÚBOR Súbor vo formáte elf (binárny súbor alebo zdieľaná knižnica)\n"
" alebo preložený súbor zdrojov\n"
-#: gio/gresource-tool.c:577
+#: gio/gresource-tool.c:578
msgid "[PATH]"
msgstr "[CESTA]"
-#: gio/gresource-tool.c:579
+#: gio/gresource-tool.c:580
msgid " PATH An (optional) resource path (may be partial)\n"
msgstr " CESTA (voliteľná) cesta k súboru zdrojov (môže byÅ¥ ÄiastoÄná)\n"
-#: gio/gresource-tool.c:580
+#: gio/gresource-tool.c:581
msgid "PATH"
msgstr "CESTA"
-#: gio/gresource-tool.c:582
+#: gio/gresource-tool.c:583
msgid " PATH A resource path\n"
msgstr " CESTA Cesta k súboru zdrojov\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:906
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Neexistuje schéma „%s“\n"
@@ -3643,35 +3763,35 @@ msgstr "Cesta musí konÄiÅ¥ lomkou (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Cesta nesmie obsahovať dve po sebe nasledujúce lomky (//)\n"
-#: gio/gsettings-tool.c:536
+#: gio/gsettings-tool.c:541
msgid "The provided value is outside of the valid range\n"
msgstr "Poskytnutá hodnota nepatrí do platného rozsahu\n"
-#: gio/gsettings-tool.c:543
+#: gio/gsettings-tool.c:548
msgid "The key is not writable\n"
msgstr "KÄ¾ÃºÄ nie je zapisovateľný\n"
-#: gio/gsettings-tool.c:579
+#: gio/gsettings-tool.c:584
msgid "List the installed (non-relocatable) schemas"
msgstr "Vypíše nainštalované (nepremiestniteľné) schémy"
-#: gio/gsettings-tool.c:585
+#: gio/gsettings-tool.c:590
msgid "List the installed relocatable schemas"
msgstr "Vypíše nainštalované premiestniteľné schémy"
-#: gio/gsettings-tool.c:591
+#: gio/gsettings-tool.c:596
msgid "List the keys in SCHEMA"
msgstr "Vypíše kľúÄe v SCHÉME"
-#: gio/gsettings-tool.c:592 gio/gsettings-tool.c:598 gio/gsettings-tool.c:641
+#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH]"
msgstr "SCHÉMA[:CESTA]"
-#: gio/gsettings-tool.c:597
+#: gio/gsettings-tool.c:602
msgid "List the children of SCHEMA"
msgstr "Vypíše potomkov SCHÉMY"
-#: gio/gsettings-tool.c:603
+#: gio/gsettings-tool.c:608
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3679,48 +3799,48 @@ msgstr ""
"Vypíše rekurzívne vÅ¡etky kľúÄe a hodnoty\n"
"Ak SCHÉMA nie je zadaná, vypíše vÅ¡etky kľúÄe\n"
-#: gio/gsettings-tool.c:605
+#: gio/gsettings-tool.c:610
msgid "[SCHEMA[:PATH]]"
msgstr "[SCHÉMA[:CESTA]]"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:615
msgid "Get the value of KEY"
msgstr "Získa hodnotu KĽÚČA"
-#: gio/gsettings-tool.c:611 gio/gsettings-tool.c:617 gio/gsettings-tool.c:623
-#: gio/gsettings-tool.c:635 gio/gsettings-tool.c:647
+#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
+#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
msgid "SCHEMA[:PATH] KEY"
msgstr "SCHÉMA[:CESTA] KĽÚČ"
-#: gio/gsettings-tool.c:616
+#: gio/gsettings-tool.c:621
msgid "Query the range of valid values for KEY"
msgstr "Spýta sa na platný rozsah hodnôt KĽÚČA"
-#: gio/gsettings-tool.c:622
+#: gio/gsettings-tool.c:627
msgid "Query the description for KEY"
msgstr "Spýta sa na popis KĽÚČA"
-#: gio/gsettings-tool.c:628
+#: gio/gsettings-tool.c:633
msgid "Set the value of KEY to VALUE"
msgstr "Nastaví hodnotu KĽÚČA na HODNOTU"
-#: gio/gsettings-tool.c:629
+#: gio/gsettings-tool.c:634
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SCHÉMA[:CESTA] KĽÚČ HODNOTA"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:639
msgid "Reset KEY to its default value"
msgstr "Nastaví KĽÚČ na jeho predvolenú hodnotu"
-#: gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:645
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Nastaví vÅ¡etky kľúÄe v SCHÉME na ich predvolené hodnoty"
-#: gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:651
msgid "Check if KEY is writable"
msgstr "Skontroluje, Äi je KĽÚČ zapisovateľný"
-#: gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:657
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3730,11 +3850,11 @@ msgstr ""
"Ak KĽÚČ nie urÄený, sleduje vÅ¡etky kľúÄe v SCHÉME.\n"
"Sledovanie zastavíte pomocou ^C.\n"
-#: gio/gsettings-tool.c:655
+#: gio/gsettings-tool.c:660
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SCHÉMA[:CESTA] [KĽÚČ]"
-#: gio/gsettings-tool.c:667
+#: gio/gsettings-tool.c:672
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3782,7 +3902,7 @@ msgstr ""
"PodrobnejÅ¡ieho pomocníka získate pomocou „gsettings help PRÃKAZ“.\n"
"\n"
-#: gio/gsettings-tool.c:691
+#: gio/gsettings-tool.c:696
#, c-format
msgid ""
"Usage:\n"
@@ -3797,11 +3917,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:697
+#: gio/gsettings-tool.c:702
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " ADRESÃR_SCHÉMY Adresár, v ktorom sa majú hľadaÅ¥ dodatoÄné schémy\n"
-#: gio/gsettings-tool.c:705
+#: gio/gsettings-tool.c:710
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3809,32 +3929,32 @@ msgstr ""
" SCHÉMA Názov schémy\n"
" CESTA Cesta pre premiestniteľné schémy\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:715
msgid " KEY The (optional) key within the schema\n"
msgstr " KĽÚČ (voliteľný) kÄ¾ÃºÄ vo vnútri schémy\n"
-#: gio/gsettings-tool.c:714
+#: gio/gsettings-tool.c:719
msgid " KEY The key within the schema\n"
msgstr " KĽÚČ KÄ¾ÃºÄ vo vnútri schémy\n"
-#: gio/gsettings-tool.c:718
+#: gio/gsettings-tool.c:723
msgid " VALUE The value to set\n"
msgstr " HODNOTA Hodnota, ktorá sa má nastaviť\n"
-#: gio/gsettings-tool.c:773
+#: gio/gsettings-tool.c:778
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Nepodarilo sa naÄítaÅ¥ schémy z %s: %s\n"
-#: gio/gsettings-tool.c:785
+#: gio/gsettings-tool.c:790
msgid "No schemas installed\n"
msgstr "Nie sú nainštalované žiadne schémy\n"
-#: gio/gsettings-tool.c:864
+#: gio/gsettings-tool.c:869
msgid "Empty schema name given\n"
msgstr "Poskytnutý prázdny názov schémy\n"
-#: gio/gsettings-tool.c:919
+#: gio/gsettings-tool.c:924
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Neexistuje kÄ¾ÃºÄ â€ž%s“\n"
@@ -3852,7 +3972,7 @@ msgstr "Neplatný soket, inicializácia zlyhala kvôli: %s"
msgid "Socket is already closed"
msgstr "Soket je už zatvorený"
-#: gio/gsocket.c:443 gio/gsocket.c:3180 gio/gsocket.c:4403 gio/gsocket.c:4461
+#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
msgid "Socket I/O timed out"
msgstr "VyprÅ¡al Äasový limit V/V soketu"
@@ -3861,186 +3981,192 @@ msgstr "VyprÅ¡al Äasový limit V/V soketu"
msgid "creating GSocket from fd: %s"
msgstr "vytvára sa GSocket z popisovanÄa súboru: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:661 gio/gsocket.c:668
+#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
#, c-format
msgid "Unable to create socket: %s"
msgstr "Nepodarilo sa vytvoriť soket: %s"
-#: gio/gsocket.c:661
+#: gio/gsocket.c:671
msgid "Unknown family was specified"
msgstr "Bola zadaná neznáma rodina protokolov"
-#: gio/gsocket.c:668
+#: gio/gsocket.c:678
msgid "Unknown protocol was specified"
msgstr "Bol zadaný neznámy protokol"
-#: gio/gsocket.c:1159
+#: gio/gsocket.c:1169
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr ""
"Nedajú sa použiť operácie soketu datagram na sokete nepodporujúcom datagram."
-#: gio/gsocket.c:1176
+#: gio/gsocket.c:1186
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Nedajú sa použiť operácie soketu datagram na sokete s nastavením vypršaním "
"Äasu."
-#: gio/gsocket.c:1983
+#: gio/gsocket.c:1993
#, c-format
msgid "could not get local address: %s"
msgstr "nepodarilo sa získať lokálnu adresu: %s"
-#: gio/gsocket.c:2029
+#: gio/gsocket.c:2039
#, c-format
msgid "could not get remote address: %s"
msgstr "nepodarilo sa získať vzdialenú adresu: %s"
-#: gio/gsocket.c:2095
+#: gio/gsocket.c:2105
#, c-format
msgid "could not listen: %s"
msgstr "nepodarilo sa poÄúvaÅ¥: %s"
-#: gio/gsocket.c:2199
+#: gio/gsocket.c:2209
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Chyba pri viazaní sa na adresu %s: %s"
-#: gio/gsocket.c:2375 gio/gsocket.c:2412 gio/gsocket.c:2522 gio/gsocket.c:2547
-#: gio/gsocket.c:2610 gio/gsocket.c:2668 gio/gsocket.c:2686
+#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
+#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Chyba pri pripájaní sa k multicast skupine: %s"
-#: gio/gsocket.c:2376 gio/gsocket.c:2413 gio/gsocket.c:2523 gio/gsocket.c:2548
-#: gio/gsocket.c:2611 gio/gsocket.c:2669 gio/gsocket.c:2687
+#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
+#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Chyba pri odpájaní sa od multicast skupiny: %s"
# PM: SSM je termín neprekladal som to
# http://en.wikipedia.org/wiki/Source-specific_multicast
-#: gio/gsocket.c:2377
+#: gio/gsocket.c:2387
msgid "No support for source-specific multicast"
msgstr "Nie je podpora pre source-specific multicast"
-#: gio/gsocket.c:2524
+#: gio/gsocket.c:2534
msgid "Unsupported socket family"
msgstr "Nepodporovaná rodina soketu"
-#: gio/gsocket.c:2549
+#: gio/gsocket.c:2559
msgid "source-specific not an IPv4 address"
msgstr ""
-#: gio/gsocket.c:2573
+#: gio/gsocket.c:2583
#, c-format
msgid "Interface name too long"
msgstr "Názov rozhrania je príliš dlhý"
-#: gio/gsocket.c:2586 gio/gsocket.c:2636
+#: gio/gsocket.c:2596 gio/gsocket.c:2646
#, c-format
msgid "Interface not found: %s"
msgstr "Nenašlo sa rozhranie: %s"
# PM: SSM je termín neprekladal som to
# http://en.wikipedia.org/wiki/Source-specific_multicast
-#: gio/gsocket.c:2612
+#: gio/gsocket.c:2622
msgid "No support for IPv4 source-specific multicast"
msgstr "Nie je podpora pre IPv4 source-specific multicast"
# PM: SSM je termín neprekladal som to
# http://en.wikipedia.org/wiki/Source-specific_multicast
-#: gio/gsocket.c:2670
+#: gio/gsocket.c:2680
msgid "No support for IPv6 source-specific multicast"
msgstr "Nie je podpora pre IPv6 source-specific multicast"
-#: gio/gsocket.c:2879
+#: gio/gsocket.c:2889
#, c-format
msgid "Error accepting connection: %s"
msgstr "Chyba pri prijímaní pripojenia: %s"
-#: gio/gsocket.c:3005
+#: gio/gsocket.c:3015
msgid "Connection in progress"
msgstr "Prebieha pripájanie"
-#: gio/gsocket.c:3056
+#: gio/gsocket.c:3066
msgid "Unable to get pending error: "
msgstr "Nepodarilo sa získaÅ¥ chybu urÄenú na spracovanie: "
-#: gio/gsocket.c:3245
+#: gio/gsocket.c:3255
#, c-format
msgid "Error receiving data: %s"
msgstr "Chyba pri prijímaní údajov: %s"
-#: gio/gsocket.c:3442
+#: gio/gsocket.c:3452
#, c-format
msgid "Error sending data: %s"
msgstr "Chyba pri odosielaní údajov: %s"
-#: gio/gsocket.c:3629
+#: gio/gsocket.c:3639
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Nepodarilo sa vypnúť soket: %s"
-#: gio/gsocket.c:3710
+#: gio/gsocket.c:3720
#, c-format
msgid "Error closing socket: %s"
msgstr "Chyba pri zatváraní soketu: %s"
-#: gio/gsocket.c:4396
+#: gio/gsocket.c:4413
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Čaká sa na stav soketu: %s"
-#: gio/gsocket.c:4774 gio/gsocket.c:4776 gio/gsocket.c:4923 gio/gsocket.c:5008
-#: gio/gsocket.c:5186 gio/gsocket.c:5226 gio/gsocket.c:5228
+#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#, fuzzy, c-format
+#| msgid "Error sending message: %s"
+msgid "Unable to send message: %s"
+msgstr "Chyba pri odosielaní správy: %s"
+
+#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+msgid "Message vectors too large"
+msgstr ""
+
+#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
+#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
#, c-format
msgid "Error sending message: %s"
msgstr "Chyba pri odosielaní správy: %s"
-#: gio/gsocket.c:4950
+#: gio/gsocket.c:5026
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage nie je podporovaný vo Windows"
-#: gio/gsocket.c:5419 gio/gsocket.c:5492 gio/gsocket.c:5718
+#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
#, c-format
msgid "Error receiving message: %s"
msgstr "Chyba pri prijímaní správy: %s"
-#: gio/gsocket.c:5990 gio/gsocket.c:6038
+#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Nepodarilo sa preÄítaÅ¥ poverenia soketu: %s"
-#: gio/gsocket.c:6047
+#: gio/gsocket.c:6136
msgid "g_socket_get_credentials not implemented for this OS"
msgstr ""
"g_socket_get_credentials nie je pre tento operaÄný systém implementovaný"
-#: gio/gsocketclient.c:182
+#: gio/gsocketclient.c:191
#, c-format
msgid "Could not connect to proxy server %s: "
msgstr "Nepodarilo sa pripojiť k proxy serveru %s: "
-#: gio/gsocketclient.c:196
+#: gio/gsocketclient.c:205
#, c-format
msgid "Could not connect to %s: "
msgstr "Nepodarilo sa pripojiť k %s: "
-#: gio/gsocketclient.c:198
+#: gio/gsocketclient.c:207
msgid "Could not connect: "
msgstr "Nepodarilo sa pripojiť: "
-#: gio/gsocketclient.c:1037 gio/gsocketclient.c:1866
-msgid "Unknown error on connect"
-msgstr "Neznáma chyba pripájania"
-
-#: gio/gsocketclient.c:1091 gio/gsocketclient.c:1668
+#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
msgid "Proxying over a non-TCP connection is not supported."
msgstr "Pripojenie cez proxy nepoužívajúce TCP nie je podporované."
-#: gio/gsocketclient.c:1120 gio/gsocketclient.c:1698
+#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Protokol proxy „%s“ nie je podporovaný."
@@ -4173,26 +4299,30 @@ msgstr "Služba nie je doÄasne schopná preložiÅ¥ adresu „%s“"
msgid "Error resolving “%sâ€"
msgstr "Chyba pri preklade adresy „%s“"
-#: gio/gtlscertificate.c:243
+#: gio/gtlscertificate.c:419
msgid "No PEM-encoded private key found"
msgstr "NenaÅ¡iel sa súkromný kÄ¾ÃºÄ v PEM kódovaní"
-#: gio/gtlscertificate.c:253
+#: gio/gtlscertificate.c:429
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Nepodá sa rozÅ¡ifrovaÅ¥ súkromný kÄ¾ÃºÄ v kódovaní PEM"
-#: gio/gtlscertificate.c:264
+#: gio/gtlscertificate.c:440
msgid "Could not parse PEM-encoded private key"
msgstr "Nepodarilo sa analyzovaÅ¥ súkromný kÄ¾ÃºÄ v kódovaní PEM"
-#: gio/gtlscertificate.c:291
+#: gio/gtlscertificate.c:467
msgid "No PEM-encoded certificate found"
msgstr "Nenašiel sa certifikát v kódovaní PEM"
-#: gio/gtlscertificate.c:300
+#: gio/gtlscertificate.c:476
msgid "Could not parse PEM-encoded certificate"
msgstr "Neporarilo sa analyzovať certifikát v kódovaní PEM"
+#: gio/gtlscertificate.c:832
+msgid "This GTlsBackend does not support creating PKCS #11 certificates"
+msgstr ""
+
#: gio/gtlspassword.c:111
msgid ""
"This is the last chance to enter the password correctly before your access "
@@ -4276,29 +4406,29 @@ msgstr "NeoÄakávala sa riadiaca správa, no získané %d"
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Chyba poÄas zakazovania SO_PASSCRED: %s"
-#: gio/gunixinputstream.c:362 gio/gunixinputstream.c:383
+#: gio/gunixinputstream.c:357 gio/gunixinputstream.c:378
#, c-format
msgid "Error reading from file descriptor: %s"
msgstr "Chyba pri Äítaní z popisovaÄa súboru: %s"
-#: gio/gunixinputstream.c:416 gio/gunixoutputstream.c:525
+#: gio/gunixinputstream.c:411 gio/gunixoutputstream.c:520
#: gio/gwin32inputstream.c:217 gio/gwin32outputstream.c:204
#, c-format
msgid "Error closing file descriptor: %s"
msgstr "Chyba pri zatváraní popisovaÄa súboru: %s"
-#: gio/gunixmounts.c:2755 gio/gunixmounts.c:2808
+#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
msgid "Filesystem root"
msgstr "Koreň súborového systému"
-#: gio/gunixoutputstream.c:362 gio/gunixoutputstream.c:382
-#: gio/gunixoutputstream.c:469 gio/gunixoutputstream.c:489
-#: gio/gunixoutputstream.c:635
+#: gio/gunixoutputstream.c:357 gio/gunixoutputstream.c:377
+#: gio/gunixoutputstream.c:464 gio/gunixoutputstream.c:484
+#: gio/gunixoutputstream.c:630
#, c-format
msgid "Error writing to file descriptor: %s"
msgstr "Chyba pri zápise do popisovaÄa súboru: %s"
-#: gio/gunixsocketaddress.c:243
+#: gio/gunixsocketaddress.c:244
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr ""
"V tomto systéme nie sú podporované abstraktné adresy soketov unixových domén"
@@ -4375,160 +4505,160 @@ msgstr "Spustí službu dbus"
msgid "Wrong args\n"
msgstr "Chybné parametre\n"
-#: glib/gbookmarkfile.c:768
+#: glib/gbookmarkfile.c:777
#, c-format
msgid "Unexpected attribute “%s†for element “%sâ€"
msgstr "NeoÄakávaný atribút „%s“ prvku „%s“"
-#: glib/gbookmarkfile.c:779 glib/gbookmarkfile.c:859 glib/gbookmarkfile.c:869
-#: glib/gbookmarkfile.c:982
+#: glib/gbookmarkfile.c:788 glib/gbookmarkfile.c:868 glib/gbookmarkfile.c:878
+#: glib/gbookmarkfile.c:991
#, c-format
msgid "Attribute “%s†of element “%s†not found"
msgstr "Atribút „%s“ prvku „%s“ nenájdený"
-#: glib/gbookmarkfile.c:1191 glib/gbookmarkfile.c:1256
-#: glib/gbookmarkfile.c:1320 glib/gbookmarkfile.c:1330
+#: glib/gbookmarkfile.c:1200 glib/gbookmarkfile.c:1265
+#: glib/gbookmarkfile.c:1329 glib/gbookmarkfile.c:1339
#, c-format
msgid "Unexpected tag “%sâ€, tag “%s†expected"
msgstr "NeoÄakávaná znaÄka „%s“, bola oÄakávaná znaÄka „%s“"
-#: glib/gbookmarkfile.c:1216 glib/gbookmarkfile.c:1230
-#: glib/gbookmarkfile.c:1298 glib/gbookmarkfile.c:1344
+#: glib/gbookmarkfile.c:1225 glib/gbookmarkfile.c:1239
+#: glib/gbookmarkfile.c:1307 glib/gbookmarkfile.c:1353
#, c-format
msgid "Unexpected tag “%s†inside “%sâ€"
msgstr "NeoÄakávaná znaÄka „%s“ vo vnútri „%s“"
-#: glib/gbookmarkfile.c:1624
+#: glib/gbookmarkfile.c:1633
#, c-format
msgid "Invalid date/time ‘%s’ in bookmark file"
msgstr "Neplatný dátum alebo Äas „%s“ v súbore záložky"
-#: glib/gbookmarkfile.c:1827
+#: glib/gbookmarkfile.c:1836
msgid "No valid bookmark file found in data dirs"
msgstr "V dátových adresároch nebol nájdený žiadny platný súbor záložiek"
-#: glib/gbookmarkfile.c:2028
+#: glib/gbookmarkfile.c:2037
#, c-format
msgid "A bookmark for URI “%s†already exists"
msgstr "Záložka pre identifikátor URI „%s“ už existuje"
-#: glib/gbookmarkfile.c:2077 glib/gbookmarkfile.c:2235
-#: glib/gbookmarkfile.c:2320 glib/gbookmarkfile.c:2400
-#: glib/gbookmarkfile.c:2485 glib/gbookmarkfile.c:2619
-#: glib/gbookmarkfile.c:2752 glib/gbookmarkfile.c:2887
-#: glib/gbookmarkfile.c:2929 glib/gbookmarkfile.c:3026
-#: glib/gbookmarkfile.c:3147 glib/gbookmarkfile.c:3341
-#: glib/gbookmarkfile.c:3482 glib/gbookmarkfile.c:3701
-#: glib/gbookmarkfile.c:3790 glib/gbookmarkfile.c:3879
-#: glib/gbookmarkfile.c:3998
+#: glib/gbookmarkfile.c:2086 glib/gbookmarkfile.c:2244
+#: glib/gbookmarkfile.c:2329 glib/gbookmarkfile.c:2409
+#: glib/gbookmarkfile.c:2494 glib/gbookmarkfile.c:2628
+#: glib/gbookmarkfile.c:2761 glib/gbookmarkfile.c:2896
+#: glib/gbookmarkfile.c:2938 glib/gbookmarkfile.c:3035
+#: glib/gbookmarkfile.c:3156 glib/gbookmarkfile.c:3350
+#: glib/gbookmarkfile.c:3491 glib/gbookmarkfile.c:3710
+#: glib/gbookmarkfile.c:3799 glib/gbookmarkfile.c:3888
+#: glib/gbookmarkfile.c:4007
#, c-format
msgid "No bookmark found for URI “%sâ€"
msgstr "Nebola nájedená záložka pre identifikátor URI „%s“"
-#: glib/gbookmarkfile.c:2409
+#: glib/gbookmarkfile.c:2418
#, c-format
msgid "No MIME type defined in the bookmark for URI “%sâ€"
msgstr "V záložke pre identifikátor URI „%s“ nie je definovaný žiadny typ MIME"
-#: glib/gbookmarkfile.c:2494
+#: glib/gbookmarkfile.c:2503
#, c-format
msgid "No private flag has been defined in bookmark for URI “%sâ€"
msgstr ""
"V záložke pre identifikátor URI „%s“ nebol definovaný žiadny súkromný príznak"
-#: glib/gbookmarkfile.c:3035
+#: glib/gbookmarkfile.c:3044
#, c-format
msgid "No groups set in bookmark for URI “%sâ€"
msgstr "V záložke pre identifikátor URI „%s“ neboli nastavené žiadne skupiny"
-#: glib/gbookmarkfile.c:3503 glib/gbookmarkfile.c:3711
+#: glib/gbookmarkfile.c:3512 glib/gbookmarkfile.c:3720
#, c-format
msgid "No application with name “%s†registered a bookmark for “%sâ€"
msgstr "Žiadna aplikácia s názvom „%s“ nezaregistrovala záložku pre „%s“"
-#: glib/gbookmarkfile.c:3734
+#: glib/gbookmarkfile.c:3743
#, c-format
msgid "Failed to expand exec line “%s†with URI “%sâ€"
msgstr "Zlyhalo rozvinutie spustiteľného riadka „%s“ o identifikátor URI „%s“"
-#: glib/gconvert.c:467
+#: glib/gconvert.c:468
msgid "Unrepresentable character in conversion input"
msgstr "Nezobraziteľný znak na vstupe prevodu"
-#: glib/gconvert.c:494 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
+#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
#: glib/gutf8.c:1324
msgid "Partial character sequence at end of input"
msgstr "ÄŒiastoÄná sekvencia znakov na konci vstupu"
-#: glib/gconvert.c:763
+#: glib/gconvert.c:764
#, c-format
msgid "Cannot convert fallback “%s†to codeset “%sâ€"
msgstr "Nedá sa previesť náhradné „%s“ do kódovej stránky „%s“"
-#: glib/gconvert.c:935
+#: glib/gconvert.c:936
#, fuzzy
#| msgid "Invalid byte sequence in conversion input"
msgid "Embedded NUL byte in conversion input"
msgstr "Neplatná sekvencia bajtov na vstupe prevodu"
-#: glib/gconvert.c:956
+#: glib/gconvert.c:957
#, fuzzy
#| msgid "Invalid byte sequence in conversion input"
msgid "Embedded NUL byte in conversion output"
msgstr "Neplatná sekvencia bajtov na vstupe prevodu"
-#: glib/gconvert.c:1641
+#: glib/gconvert.c:1688
#, c-format
msgid "The URI “%s†is not an absolute URI using the “file†scheme"
msgstr ""
"Identifikátor URI „%s“ nie je absolútny identifikátor URI používajúci schému "
"„file“"
-#: glib/gconvert.c:1651
+#: glib/gconvert.c:1698
#, c-format
msgid "The local file URI “%s†may not include a “#â€"
msgstr "Identifikátor URI lokálneho súboru „%s“ nesmie obsahovať „#“"
-#: glib/gconvert.c:1668
+#: glib/gconvert.c:1715
#, c-format
msgid "The URI “%s†is invalid"
msgstr "Identifikátor URI „%s“ je neplatný"
-#: glib/gconvert.c:1680
+#: glib/gconvert.c:1727
#, c-format
msgid "The hostname of the URI “%s†is invalid"
msgstr "Názov hostiteľa URI „%s“ je neplatný"
-#: glib/gconvert.c:1696
+#: glib/gconvert.c:1743
#, c-format
msgid "The URI “%s†contains invalidly escaped characters"
msgstr "Identifikátor URI „%s“ obsahuje neplatné špeciálne uvedené znaky"
-#: glib/gconvert.c:1768
+#: glib/gconvert.c:1815
#, c-format
msgid "The pathname “%s†is not an absolute path"
msgstr "Cesta „%s“ nie je absolútna"
#. Translators: this is the preferred format for expressing the date and the time
-#: glib/gdatetime.c:220
+#: glib/gdatetime.c:226
msgctxt "GDateTime"
msgid "%a %b %e %H:%M:%S %Y"
msgstr "%a %-d. %B %Y, %H:%M:%S %Z"
#. Translators: this is the preferred format for expressing the date
-#: glib/gdatetime.c:223
+#: glib/gdatetime.c:229
msgctxt "GDateTime"
msgid "%m/%d/%y"
msgstr "%d.%m.%Y"
#. Translators: this is the preferred format for expressing the time
-#: glib/gdatetime.c:226
+#: glib/gdatetime.c:232
msgctxt "GDateTime"
msgid "%H:%M:%S"
msgstr "%H:%M:%S"
#. Translators: this is the preferred format for expressing 12 hour time
-#: glib/gdatetime.c:229
+#: glib/gdatetime.c:235
msgctxt "GDateTime"
msgid "%I:%M:%S %p"
msgstr "%H:%M:%S"
@@ -4549,62 +4679,62 @@ msgstr "%H:%M:%S"
#. * non-European) there is no difference between the standalone and
#. * complete date form.
#.
-#: glib/gdatetime.c:268
+#: glib/gdatetime.c:274
msgctxt "full month name"
msgid "January"
msgstr "január"
-#: glib/gdatetime.c:270
+#: glib/gdatetime.c:276
msgctxt "full month name"
msgid "February"
msgstr "február"
-#: glib/gdatetime.c:272
+#: glib/gdatetime.c:278
msgctxt "full month name"
msgid "March"
msgstr "marec"
-#: glib/gdatetime.c:274
+#: glib/gdatetime.c:280
msgctxt "full month name"
msgid "April"
msgstr "apríl"
-#: glib/gdatetime.c:276
+#: glib/gdatetime.c:282
msgctxt "full month name"
msgid "May"
msgstr "máj"
-#: glib/gdatetime.c:278
+#: glib/gdatetime.c:284
msgctxt "full month name"
msgid "June"
msgstr "jún"
-#: glib/gdatetime.c:280
+#: glib/gdatetime.c:286
msgctxt "full month name"
msgid "July"
msgstr "júl"
-#: glib/gdatetime.c:282
+#: glib/gdatetime.c:288
msgctxt "full month name"
msgid "August"
msgstr "august"
-#: glib/gdatetime.c:284
+#: glib/gdatetime.c:290
msgctxt "full month name"
msgid "September"
msgstr "september"
-#: glib/gdatetime.c:286
+#: glib/gdatetime.c:292
msgctxt "full month name"
msgid "October"
msgstr "október"
-#: glib/gdatetime.c:288
+#: glib/gdatetime.c:294
msgctxt "full month name"
msgid "November"
msgstr "november"
-#: glib/gdatetime.c:290
+#: glib/gdatetime.c:296
msgctxt "full month name"
msgid "December"
msgstr "december"
@@ -4626,132 +4756,132 @@ msgstr "december"
#. * other platform. Here are abbreviated month names in a form
#. * appropriate when they are used standalone.
#.
-#: glib/gdatetime.c:322
+#: glib/gdatetime.c:328
msgctxt "abbreviated month name"
msgid "Jan"
msgstr "jan"
-#: glib/gdatetime.c:324
+#: glib/gdatetime.c:330
msgctxt "abbreviated month name"
msgid "Feb"
msgstr "feb"
-#: glib/gdatetime.c:326
+#: glib/gdatetime.c:332
msgctxt "abbreviated month name"
msgid "Mar"
msgstr "mar"
-#: glib/gdatetime.c:328
+#: glib/gdatetime.c:334
msgctxt "abbreviated month name"
msgid "Apr"
msgstr "apr"
-#: glib/gdatetime.c:330
+#: glib/gdatetime.c:336
msgctxt "abbreviated month name"
msgid "May"
msgstr "máj"
-#: glib/gdatetime.c:332
+#: glib/gdatetime.c:338
msgctxt "abbreviated month name"
msgid "Jun"
msgstr "jún"
-#: glib/gdatetime.c:334
+#: glib/gdatetime.c:340
msgctxt "abbreviated month name"
msgid "Jul"
msgstr "júl"
-#: glib/gdatetime.c:336
+#: glib/gdatetime.c:342
msgctxt "abbreviated month name"
msgid "Aug"
msgstr "aug"
-#: glib/gdatetime.c:338
+#: glib/gdatetime.c:344
msgctxt "abbreviated month name"
msgid "Sep"
msgstr "sep"
-#: glib/gdatetime.c:340
+#: glib/gdatetime.c:346
msgctxt "abbreviated month name"
msgid "Oct"
msgstr "okt"
-#: glib/gdatetime.c:342
+#: glib/gdatetime.c:348
msgctxt "abbreviated month name"
msgid "Nov"
msgstr "nov"
-#: glib/gdatetime.c:344
+#: glib/gdatetime.c:350
msgctxt "abbreviated month name"
msgid "Dec"
msgstr "dec"
-#: glib/gdatetime.c:359
+#: glib/gdatetime.c:365
msgctxt "full weekday name"
msgid "Monday"
msgstr "pondelok"
-#: glib/gdatetime.c:361
+#: glib/gdatetime.c:367
msgctxt "full weekday name"
msgid "Tuesday"
msgstr "utorok"
-#: glib/gdatetime.c:363
+#: glib/gdatetime.c:369
msgctxt "full weekday name"
msgid "Wednesday"
msgstr "streda"
-#: glib/gdatetime.c:365
+#: glib/gdatetime.c:371
msgctxt "full weekday name"
msgid "Thursday"
msgstr "Å¡tvrtok"
-#: glib/gdatetime.c:367
+#: glib/gdatetime.c:373
msgctxt "full weekday name"
msgid "Friday"
msgstr "piatok"
-#: glib/gdatetime.c:369
+#: glib/gdatetime.c:375
msgctxt "full weekday name"
msgid "Saturday"
msgstr "sobota"
-#: glib/gdatetime.c:371
+#: glib/gdatetime.c:377
msgctxt "full weekday name"
msgid "Sunday"
msgstr "nedela"
-#: glib/gdatetime.c:386
+#: glib/gdatetime.c:392
msgctxt "abbreviated weekday name"
msgid "Mon"
msgstr "po"
-#: glib/gdatetime.c:388
+#: glib/gdatetime.c:394
msgctxt "abbreviated weekday name"
msgid "Tue"
msgstr "ut"
-#: glib/gdatetime.c:390
+#: glib/gdatetime.c:396
msgctxt "abbreviated weekday name"
msgid "Wed"
msgstr "st"
-#: glib/gdatetime.c:392
+#: glib/gdatetime.c:398
msgctxt "abbreviated weekday name"
msgid "Thu"
msgstr "Å¡t"
-#: glib/gdatetime.c:394
+#: glib/gdatetime.c:400
msgctxt "abbreviated weekday name"
msgid "Fri"
msgstr "pi"
-#: glib/gdatetime.c:396
+#: glib/gdatetime.c:402
msgctxt "abbreviated weekday name"
msgid "Sat"
msgstr "so"
-#: glib/gdatetime.c:398
+#: glib/gdatetime.c:404
msgctxt "abbreviated weekday name"
msgid "Sun"
msgstr "ne"
@@ -4773,62 +4903,62 @@ msgstr "ne"
#. * (western European, non-European) there is no difference between the
#. * standalone and complete date form.
#.
-#: glib/gdatetime.c:462
+#: glib/gdatetime.c:468
msgctxt "full month name with day"
msgid "January"
msgstr "januára"
-#: glib/gdatetime.c:464
+#: glib/gdatetime.c:470
msgctxt "full month name with day"
msgid "February"
msgstr "februára"
-#: glib/gdatetime.c:466
+#: glib/gdatetime.c:472
msgctxt "full month name with day"
msgid "March"
msgstr "marca"
-#: glib/gdatetime.c:468
+#: glib/gdatetime.c:474
msgctxt "full month name with day"
msgid "April"
msgstr "apríla"
-#: glib/gdatetime.c:470
+#: glib/gdatetime.c:476
msgctxt "full month name with day"
msgid "May"
msgstr "mája"
-#: glib/gdatetime.c:472
+#: glib/gdatetime.c:478
msgctxt "full month name with day"
msgid "June"
msgstr "júna"
-#: glib/gdatetime.c:474
+#: glib/gdatetime.c:480
msgctxt "full month name with day"
msgid "July"
msgstr "júla"
-#: glib/gdatetime.c:476
+#: glib/gdatetime.c:482
msgctxt "full month name with day"
msgid "August"
msgstr "augusta"
-#: glib/gdatetime.c:478
+#: glib/gdatetime.c:484
msgctxt "full month name with day"
msgid "September"
msgstr "septembra"
-#: glib/gdatetime.c:480
+#: glib/gdatetime.c:486
msgctxt "full month name with day"
msgid "October"
msgstr "októbra"
-#: glib/gdatetime.c:482
+#: glib/gdatetime.c:488
msgctxt "full month name with day"
msgid "November"
msgstr "novembra"
-#: glib/gdatetime.c:484
+#: glib/gdatetime.c:490
msgctxt "full month name with day"
msgid "December"
msgstr "decembra"
@@ -4850,80 +4980,80 @@ msgstr "decembra"
#. * month names almost ready to copy and paste here. In other systems
#. * due to a bug the result is incorrect in some languages.
#.
-#: glib/gdatetime.c:549
+#: glib/gdatetime.c:555
msgctxt "abbreviated month name with day"
msgid "Jan"
msgstr "jan"
-#: glib/gdatetime.c:551
+#: glib/gdatetime.c:557
msgctxt "abbreviated month name with day"
msgid "Feb"
msgstr "feb"
-#: glib/gdatetime.c:553
+#: glib/gdatetime.c:559
msgctxt "abbreviated month name with day"
msgid "Mar"
msgstr "mar"
-#: glib/gdatetime.c:555
+#: glib/gdatetime.c:561
msgctxt "abbreviated month name with day"
msgid "Apr"
msgstr "apr"
-#: glib/gdatetime.c:557
+#: glib/gdatetime.c:563
msgctxt "abbreviated month name with day"
msgid "May"
msgstr "máj"
-#: glib/gdatetime.c:559
+#: glib/gdatetime.c:565
msgctxt "abbreviated month name with day"
msgid "Jun"
msgstr "jún"
-#: glib/gdatetime.c:561
+#: glib/gdatetime.c:567
msgctxt "abbreviated month name with day"
msgid "Jul"
msgstr "júl"
-#: glib/gdatetime.c:563
+#: glib/gdatetime.c:569
msgctxt "abbreviated month name with day"
msgid "Aug"
msgstr "aug"
-#: glib/gdatetime.c:565
+#: glib/gdatetime.c:571
msgctxt "abbreviated month name with day"
msgid "Sep"
msgstr "sep"
-#: glib/gdatetime.c:567
+#: glib/gdatetime.c:573
msgctxt "abbreviated month name with day"
msgid "Oct"
msgstr "okt"
-#: glib/gdatetime.c:569
+#: glib/gdatetime.c:575
msgctxt "abbreviated month name with day"
msgid "Nov"
msgstr "nov"
-#: glib/gdatetime.c:571
+#: glib/gdatetime.c:577
msgctxt "abbreviated month name with day"
msgid "Dec"
msgstr "dec"
# PM: ale myslím si ze by to malo byÅ¥ preložené, lebo ak si niekto v hodinách prepne na 12 hodinový formát tak si potom nebude vedieÅ¥ nastaviÅ¥ správny Äas
#. Translators: 'before midday' indicator
-#: glib/gdatetime.c:588
+#: glib/gdatetime.c:594
msgctxt "GDateTime"
msgid "AM"
msgstr "Doobeda"
#. Translators: 'after midday' indicator
-#: glib/gdatetime.c:591
+#: glib/gdatetime.c:597
msgctxt "GDateTime"
msgid "PM"
msgstr "Poobede"
-#: glib/gdir.c:154
+#: glib/gdir.c:156
#, c-format
msgid "Error opening directory “%sâ€: %s"
msgstr "Chyba pri otváraní adresára „%s“: %s"
@@ -4951,91 +5081,91 @@ msgstr "Súbor „%s“ je príliš veľký"
msgid "Failed to read from file “%sâ€: %s"
msgstr "Zlyhalo Äítanie zo súboru „%s“: %s"
-#: glib/gfileutils.c:902 glib/gfileutils.c:974 glib/gfileutils.c:1466
+#: glib/gfileutils.c:904 glib/gfileutils.c:979 glib/gfileutils.c:1468
#, c-format
msgid "Failed to open file “%sâ€: %s"
msgstr "Zlyhalo otvorenie súboru „%s“: %s"
-#: glib/gfileutils.c:914
+#: glib/gfileutils.c:917
#, c-format
msgid "Failed to get attributes of file “%sâ€: fstat() failed: %s"
msgstr "Zlyhalo získanie atribútov súboru „%s“: fstat() zlyhalo: %s"
-#: glib/gfileutils.c:944
+#: glib/gfileutils.c:948
#, c-format
msgid "Failed to open file “%sâ€: fdopen() failed: %s"
msgstr "Zlyhalo otvorenie súboru „%s“: fdopen() zlyhalo: %s"
-#: glib/gfileutils.c:1044
+#: glib/gfileutils.c:1049
#, c-format
msgid "Failed to rename file “%s†to “%sâ€: g_rename() failed: %s"
msgstr "Zlyhalo premenovanie súboru „%s“ na „%s“: g_rename() zlyhalo: %s"
-#: glib/gfileutils.c:1169
+#: glib/gfileutils.c:1175
#, c-format
msgid "Failed to write file “%sâ€: write() failed: %s"
msgstr "Zlyhal zápis súboru „%s“: write() zlyhalo: %s"
-#: glib/gfileutils.c:1189
+#: glib/gfileutils.c:1196
#, c-format
msgid "Failed to write file “%sâ€: fsync() failed: %s"
msgstr "Zlyhal zápis súboru „%s“: fsync() zlyhalo: %s"
-#: glib/gfileutils.c:1357 glib/gfileutils.c:1769
+#: glib/gfileutils.c:1357 glib/gfileutils.c:1772
#, c-format
msgid "Failed to create file “%sâ€: %s"
msgstr "Zlyhalo vytvorenie súboru „%s“: %s"
-#: glib/gfileutils.c:1401
+#: glib/gfileutils.c:1402
#, c-format
msgid "Existing file “%s†could not be removed: g_unlink() failed: %s"
msgstr "Existujúci súbor „%s“ nemohol byť odstránený: g_unlink() zlyhalo: %s"
-#: glib/gfileutils.c:1735
+#: glib/gfileutils.c:1737
#, c-format
msgid "Template “%s†invalid, should not contain a “%sâ€"
msgstr "Šablóna „%s“ je neplatná, nesmie obsahovať „%s“"
-#: glib/gfileutils.c:1748
+#: glib/gfileutils.c:1750
#, c-format
msgid "Template “%s†doesn’t contain XXXXXX"
msgstr "Šablóna „%s“ neobsahuje XXXXXX"
-#: glib/gfileutils.c:2306 glib/gfileutils.c:2334
+#: glib/gfileutils.c:2310 glib/gfileutils.c:2339
#, c-format
msgid "Failed to read the symbolic link “%sâ€: %s"
msgstr "Zlyhalo naÄítanie symbolického odkazu „%s“: %s"
-#: glib/giochannel.c:1396
+#: glib/giochannel.c:1405
#, c-format
msgid "Could not open converter from “%s†to “%sâ€: %s"
msgstr "Nepodarilo sa otvoriť program na prevod z „%s“ do „%s“: %s"
-#: glib/giochannel.c:1749
+#: glib/giochannel.c:1758
msgid "Can’t do a raw read in g_io_channel_read_line_string"
msgstr "Nedá sa urobiÅ¥ priame Äítanie v g_io_channel_read_line_string"
-#: glib/giochannel.c:1796 glib/giochannel.c:2054 glib/giochannel.c:2141
+#: glib/giochannel.c:1805 glib/giochannel.c:2063 glib/giochannel.c:2150
msgid "Leftover unconverted data in read buffer"
msgstr "Zanechané neprevedené údaje v zásobníku na Äítanie"
-#: glib/giochannel.c:1877 glib/giochannel.c:1954
+#: glib/giochannel.c:1886 glib/giochannel.c:1963
msgid "Channel terminates in a partial character"
msgstr "Kanál skonÄil s neúplným znakom"
-#: glib/giochannel.c:1940
+#: glib/giochannel.c:1949
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Nedá sa urobiÅ¥ priame Äítanie v g_io_channel_read_to_end"
-#: glib/gkeyfile.c:789
+#: glib/gkeyfile.c:790
msgid "Valid key file could not be found in search dirs"
msgstr "Nepodarilo sa nájsÅ¥ platný súbor kľúÄov vo vyhľadávacích adresároch"
-#: glib/gkeyfile.c:826
+#: glib/gkeyfile.c:827
msgid "Not a regular file"
msgstr "Nie je bežný súbor"
-#: glib/gkeyfile.c:1275
+#: glib/gkeyfile.c:1282
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5043,49 +5173,49 @@ msgstr ""
"Súbor kľúÄov obsahuje riadok „%s“, ktorý nie je párom kľúÄ-hodnota, "
"skupinou, ani komentárom"
-#: glib/gkeyfile.c:1332
+#: glib/gkeyfile.c:1339
#, c-format
msgid "Invalid group name: %s"
msgstr "Neplatný názov skupiny: %s"
-#: glib/gkeyfile.c:1354
+#: glib/gkeyfile.c:1361
msgid "Key file does not start with a group"
msgstr "Súbor kľúÄov nezaÄína skupinou"
-#: glib/gkeyfile.c:1380
+#: glib/gkeyfile.c:1387
#, c-format
msgid "Invalid key name: %s"
msgstr "Neplatný názov kľúÄa: %s"
-#: glib/gkeyfile.c:1407
+#: glib/gkeyfile.c:1414
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Súbor kľúÄov obsahuje nepodporované kódovane „%s“"
-#: glib/gkeyfile.c:1650 glib/gkeyfile.c:1823 glib/gkeyfile.c:3276
-#: glib/gkeyfile.c:3340 glib/gkeyfile.c:3470 glib/gkeyfile.c:3602
-#: glib/gkeyfile.c:3748 glib/gkeyfile.c:3977 glib/gkeyfile.c:4044
+#: glib/gkeyfile.c:1663 glib/gkeyfile.c:1836 glib/gkeyfile.c:3289
+#: glib/gkeyfile.c:3353 glib/gkeyfile.c:3483 glib/gkeyfile.c:3615
+#: glib/gkeyfile.c:3761 glib/gkeyfile.c:3996 glib/gkeyfile.c:4063
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Súbor kľúÄov nemá skupinu „%s“"
-#: glib/gkeyfile.c:1778
+#: glib/gkeyfile.c:1791
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Súbor kľúÄov nemá kÄ¾ÃºÄ â€ž%s“ v skupine „%s“"
-#: glib/gkeyfile.c:1940 glib/gkeyfile.c:2056
+#: glib/gkeyfile.c:1953 glib/gkeyfile.c:2069
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "Súbor kľúÄov obsahuje kÄ¾ÃºÄ â€ž%s“ s hodnotou „%s“, ktorá nie je UTF-8"
-#: glib/gkeyfile.c:1960 glib/gkeyfile.c:2076 glib/gkeyfile.c:2518
+#: glib/gkeyfile.c:1973 glib/gkeyfile.c:2089 glib/gkeyfile.c:2531
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr "Súbor kľúÄov obsahuje kÄ¾ÃºÄ â€ž%s“, ktorý má neinterpretovateľnú hodnotu."
-#: glib/gkeyfile.c:2736 glib/gkeyfile.c:3105
+#: glib/gkeyfile.c:2749 glib/gkeyfile.c:3118
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5094,36 +5224,36 @@ msgstr ""
"Súbor kľúÄov obsahuje kÄ¾ÃºÄ â€ž%s“ v skupine „%s“, ktorý má neinterpretovateľnú "
"hodnotu."
-#: glib/gkeyfile.c:2814 glib/gkeyfile.c:2891
+#: glib/gkeyfile.c:2827 glib/gkeyfile.c:2904
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "KÄ¾ÃºÄ â€ž%s“ v skupine „%s“ má hodnotu „%s“, priÄom bola oÄakávaná %s"
-#: glib/gkeyfile.c:4284
+#: glib/gkeyfile.c:4306
msgid "Key file contains escape character at end of line"
msgstr "Súbor kľúÄov obsahuje znak escape na konci riadku"
-#: glib/gkeyfile.c:4306
+#: glib/gkeyfile.c:4328
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Súbor kľúÄov obsahuje neplatnú Å¡peciálnu (escape) sekvenciu „%s“"
-#: glib/gkeyfile.c:4450
+#: glib/gkeyfile.c:4472
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "Hodnota „%s“ nemôže byÅ¥ interpretovaná ako Äíslo."
-#: glib/gkeyfile.c:4464
+#: glib/gkeyfile.c:4486
#, c-format
msgid "Integer value “%s†out of range"
msgstr "CeloÄíselná hodnota „%s“ je mimo rozsah"
-#: glib/gkeyfile.c:4497
+#: glib/gkeyfile.c:4519
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "Hodnota „%s“ nemôže byÅ¥ interpretovaná ako reálne Äíslo."
-#: glib/gkeyfile.c:4536
+#: glib/gkeyfile.c:4558
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "Hodnota „%s“ nemôže byť interpretovaná ako logická hodnota."
@@ -5444,251 +5574,251 @@ msgstr "Hodnota double „%s“ pre %s je mimo rozsah"
msgid "Error parsing option %s"
msgstr "Chyba analyzovania voľby %s"
-#: glib/goption.c:1570 glib/goption.c:1683
+#: glib/goption.c:1561 glib/goption.c:1674
#, c-format
msgid "Missing argument for %s"
msgstr "Chýbajúci parameter pre %s"
-#: glib/goption.c:2194
+#: glib/goption.c:2185
#, c-format
msgid "Unknown option %s"
msgstr "Neznáma voľba %s"
-#: glib/gregex.c:257
+#: glib/gregex.c:255
msgid "corrupted object"
msgstr "poškodený objekt"
-#: glib/gregex.c:259
+#: glib/gregex.c:257
msgid "internal error or corrupted object"
msgstr "vnútorná chyba alebo poškodený objekt"
-#: glib/gregex.c:261
+#: glib/gregex.c:259
msgid "out of memory"
msgstr "nedostatok pamäte"
-#: glib/gregex.c:266
+#: glib/gregex.c:264
msgid "backtracking limit reached"
msgstr "dosiahnutý limit spätného hľadania"
-#: glib/gregex.c:278 glib/gregex.c:286
+#: glib/gregex.c:276 glib/gregex.c:284
msgid "the pattern contains items not supported for partial matching"
msgstr "vzor obsahuje položky nepodporované pri ÄiastoÄnom porovnávaní"
-#: glib/gregex.c:280
+#: glib/gregex.c:278
msgid "internal error"
msgstr "vnútorná chyba"
-#: glib/gregex.c:288
+#: glib/gregex.c:286
msgid "back references as conditions are not supported for partial matching"
msgstr ""
"spätné odkazy použité ako podmienky nie sú podporované pri ÄiastoÄnom "
"porovnávaní"
-#: glib/gregex.c:297
+#: glib/gregex.c:295
msgid "recursion limit reached"
msgstr "dosiahnutý limit rekurzie"
-#: glib/gregex.c:299
+#: glib/gregex.c:297
msgid "invalid combination of newline flags"
msgstr "neplatná kombinácia príznakov nového riadka"
-#: glib/gregex.c:301
+#: glib/gregex.c:299
msgid "bad offset"
msgstr "zlý ofset"
-#: glib/gregex.c:303
+#: glib/gregex.c:301
msgid "short utf8"
msgstr "krátke utf8"
# Ide o omyl programátora: case PCRE_ERROR_RECURSELOOP: return _("recursion loop");
-#: glib/gregex.c:305
+#: glib/gregex.c:303
msgid "recursion loop"
msgstr "rekurzívna sluÄka"
-#: glib/gregex.c:309
+#: glib/gregex.c:307
msgid "unknown error"
msgstr "neznáma chyba"
-#: glib/gregex.c:329
+#: glib/gregex.c:327
msgid "\\ at end of pattern"
msgstr "\\ na konci vzoru"
-#: glib/gregex.c:332
+#: glib/gregex.c:330
msgid "\\c at end of pattern"
msgstr "\\c na konci vzoru"
-#: glib/gregex.c:335
+#: glib/gregex.c:333
msgid "unrecognized character following \\"
msgstr "nerozpoznaný znak nasledujúci za \\"
-#: glib/gregex.c:338
+#: glib/gregex.c:336
msgid "numbers out of order in {} quantifier"
msgstr "nesprávne poradie Äísel v kvantifikátore {}"
-#: glib/gregex.c:341
+#: glib/gregex.c:339
msgid "number too big in {} quantifier"
msgstr "príliÅ¡ veľké Äíslo v kvantifikátore {}"
-#: glib/gregex.c:344
+#: glib/gregex.c:342
msgid "missing terminating ] for character class"
msgstr "chýbajúca koncová ] pre triedu znakov"
-#: glib/gregex.c:347
+#: glib/gregex.c:345
msgid "invalid escape sequence in character class"
msgstr "neplatná špeciálna (escape) sekvencia v triede znakov"
-#: glib/gregex.c:350
+#: glib/gregex.c:348
msgid "range out of order in character class"
msgstr "nesprávne poradie rozsahu v triede znakov"
-#: glib/gregex.c:353
+#: glib/gregex.c:351
msgid "nothing to repeat"
msgstr "nie je Äo opakovaÅ¥"
-#: glib/gregex.c:357
+#: glib/gregex.c:355
msgid "unexpected repeat"
msgstr "neoÄakávané opakovanie"
-#: glib/gregex.c:360
+#: glib/gregex.c:358
msgid "unrecognized character after (? or (?-"
msgstr "nerozpoznaný znak za (? alebo (?-"
-#: glib/gregex.c:363
+#: glib/gregex.c:361
msgid "POSIX named classes are supported only within a class"
msgstr "triedy s názvami POSIX sú podporované iba v triedach"
-#: glib/gregex.c:366
+#: glib/gregex.c:364
msgid "missing terminating )"
msgstr "chýbajúca koncová )"
-#: glib/gregex.c:369
+#: glib/gregex.c:367
msgid "reference to non-existent subpattern"
msgstr "odkaz na neexistujúci podvzor"
-#: glib/gregex.c:372
+#: glib/gregex.c:370
msgid "missing ) after comment"
msgstr "chýbajúca ) po komentári"
-#: glib/gregex.c:375
+#: glib/gregex.c:373
msgid "regular expression is too large"
msgstr "regulárny výraz je príliš veľký"
-#: glib/gregex.c:378
+#: glib/gregex.c:376
msgid "failed to get memory"
msgstr "nepodarilo sa získať pamäť"
-#: glib/gregex.c:382
+#: glib/gregex.c:380
msgid ") without opening ("
msgstr ") bez otváracej ("
-#: glib/gregex.c:386
+#: glib/gregex.c:384
msgid "code overflow"
msgstr "preteÄenie kódu"
-#: glib/gregex.c:390
+#: glib/gregex.c:388
msgid "unrecognized character after (?<"
msgstr "nerozpoznaný znak za (?<"
-#: glib/gregex.c:393
+#: glib/gregex.c:391
msgid "lookbehind assertion is not fixed length"
msgstr "spätné tvrdenie nemá pevnú dĺžku"
-#: glib/gregex.c:396
+#: glib/gregex.c:394
msgid "malformed number or name after (?("
msgstr "zle formátované Äíslo alebo názov za (?("
-#: glib/gregex.c:399
+#: glib/gregex.c:397
msgid "conditional group contains more than two branches"
msgstr "podmienková skupina obsahuje viac ako dve zátvorky"
-#: glib/gregex.c:402
+#: glib/gregex.c:400
msgid "assertion expected after (?("
msgstr "tvrdenie oÄakávané za (?("
#. translators: '(?R' and '(?[+-]digits' are both meant as (groups of)
#. * sequences here, '(?-54' would be an example for the second group.
#.
-#: glib/gregex.c:409
+#: glib/gregex.c:407
msgid "(?R or (?[+-]digits must be followed by )"
msgstr "za (?R alebo (?[+-]Äíslice musí nasledovaÅ¥ )"
-#: glib/gregex.c:412
+#: glib/gregex.c:410
msgid "unknown POSIX class name"
msgstr "neznámy POSIX názov triedy"
-#: glib/gregex.c:415
+#: glib/gregex.c:413
msgid "POSIX collating elements are not supported"
msgstr "porovnávacie POSIX prvky nie sú podporované"
-#: glib/gregex.c:418
+#: glib/gregex.c:416
msgid "character value in \\x{...} sequence is too large"
msgstr "hodnota znaku v postupnosti \\x{...} je príliš veľká"
-#: glib/gregex.c:421
+#: glib/gregex.c:419
msgid "invalid condition (?(0)"
msgstr "neplatná podmienka (?(0)"
-#: glib/gregex.c:424
+#: glib/gregex.c:422
msgid "\\C not allowed in lookbehind assertion"
msgstr "\\C nie je povolené v spätnom tvrdení"
-#: glib/gregex.c:431
+#: glib/gregex.c:429
msgid "escapes \\L, \\l, \\N{name}, \\U, and \\u are not supported"
msgstr "\\L, \\l, \\N{name}, \\U, a \\u nie sú podporované"
-#: glib/gregex.c:434
+#: glib/gregex.c:432
msgid "recursive call could loop indefinitely"
msgstr "rekurzívne volanie by sa mohlo donekoneÄna opakovaÅ¥"
-#: glib/gregex.c:438
+#: glib/gregex.c:436
msgid "unrecognized character after (?P"
msgstr "nerozpoznaný znak za (?P"
-#: glib/gregex.c:441
+#: glib/gregex.c:439
msgid "missing terminator in subpattern name"
msgstr "chýba ukonÄovací Älen v názve podvzoru"
-#: glib/gregex.c:444
+#: glib/gregex.c:442
msgid "two named subpatterns have the same name"
msgstr "dva pomenované podvzory majú rovnaký názov"
-#: glib/gregex.c:447
+#: glib/gregex.c:445
msgid "malformed \\P or \\p sequence"
msgstr "zle formátovaná postupnosť \\P alebo \\p"
-#: glib/gregex.c:450
+#: glib/gregex.c:448
msgid "unknown property name after \\P or \\p"
msgstr "neznámy názov vlastnosti za \\P alebo \\p"
-#: glib/gregex.c:453
+#: glib/gregex.c:451
msgid "subpattern name is too long (maximum 32 characters)"
msgstr "názov podvzoru je príliš dlhý (maximum je 32 znakov)"
-#: glib/gregex.c:456
+#: glib/gregex.c:454
msgid "too many named subpatterns (maximum 10,000)"
msgstr "príliš mnoho pomenovaných podvzorov (maximum je 10 000)"
-#: glib/gregex.c:459
+#: glib/gregex.c:457
msgid "octal value is greater than \\377"
msgstr "osmiÄková hodnota je väÄÅ¡ia ako \\377"
-#: glib/gregex.c:463
+#: glib/gregex.c:461
msgid "overran compiling workspace"
msgstr "preteÄený priestor pre preklad"
-#: glib/gregex.c:467
+#: glib/gregex.c:465
msgid "previously-checked referenced subpattern not found"
msgstr "predtým kontrolovaný odkazovaný podvzor nenájdený"
-#: glib/gregex.c:470
+#: glib/gregex.c:468
msgid "DEFINE group contains more than one branch"
msgstr "skupina DEFINE obsahuje viac ako jednu vetvu"
-#: glib/gregex.c:473
+#: glib/gregex.c:471
msgid "inconsistent NEWLINE options"
msgstr "nekonzistentné voľby NEWLINE"
-#: glib/gregex.c:476
+#: glib/gregex.c:474
msgid ""
"\\g is not followed by a braced, angle-bracketed, or quoted name or number, "
"or by a plain number"
@@ -5696,134 +5826,134 @@ msgstr ""
"za \\g nenasleduje názov v guľatých ani lomených zátvorkách, názov alebo "
"Äíslo v úvodzovkách ani nekódované Äíslo"
-#: glib/gregex.c:480
+#: glib/gregex.c:478
msgid "a numbered reference must not be zero"
msgstr "oÄíslovaný odkaz nesmie byÅ¥ nula"
-#: glib/gregex.c:483
+#: glib/gregex.c:481
msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
msgstr "parameter nie je pre (*ACCEPT), (*FAIL) a (*COMMIT) dovolený"
-#: glib/gregex.c:486
+#: glib/gregex.c:484
msgid "(*VERB) not recognized"
msgstr "(*VERB) nebolo rozpoznané"
-#: glib/gregex.c:489
+#: glib/gregex.c:487
msgid "number is too big"
msgstr "Äíslo je príliÅ¡ veľké"
-#: glib/gregex.c:492
+#: glib/gregex.c:490
msgid "missing subpattern name after (?&"
msgstr "za (?& chýba názov podvzoru"
-#: glib/gregex.c:495
+#: glib/gregex.c:493
msgid "digit expected after (?+"
msgstr "za (?+ sa oÄakáva Äíslica"
-#: glib/gregex.c:498
+#: glib/gregex.c:496
msgid "] is an invalid data character in JavaScript compatibility mode"
msgstr ""
"] nie je platný dátový znak v režime kompatibility s jazykom JavaScript"
-#: glib/gregex.c:501
+#: glib/gregex.c:499
msgid "different names for subpatterns of the same number are not allowed"
msgstr "rôzne názvy pre podvzory s rovnakým Äíslom nie sú povolené"
-#: glib/gregex.c:504
+#: glib/gregex.c:502
msgid "(*MARK) must have an argument"
msgstr "(*MARK) musí mať parameter"
-#: glib/gregex.c:507
+#: glib/gregex.c:505
msgid "\\c must be followed by an ASCII character"
msgstr "za \\c musí nasledovať znak ASCII"
-#: glib/gregex.c:510
+#: glib/gregex.c:508
msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
msgstr ""
"za \\k nenasleduje názov v zátvorkách, lomených zátvorkách alebo úvodzovkách"
-#: glib/gregex.c:513
+#: glib/gregex.c:511
msgid "\\N is not supported in a class"
msgstr "\\N nie je v triede podporované"
# PM:nie som si istý
# MÄŒ: Hmm. Musel som pozrieÅ¥ zdrojáky pcre, aby som sa troÅ¡ku ztoho vymotal. Pri doprednom vyhľadávaní (lookahead) si stroj regulárneho výrazu odkladá odkazy na už asociované (zjednoduÅ¡ene nájdené) Äasti textu k regulárnemu výrazu. Ak je ich priveľa, nezmestia sa do pamäte, malloc zlyhá, vráti túto chybovú hlášku. Myslím, že preklad aj originál mi povedali rovnako veľa informácií.
-#: glib/gregex.c:516
+#: glib/gregex.c:514
msgid "too many forward references"
msgstr "príliš mnoho dopredných odkazov"
-#: glib/gregex.c:519
+#: glib/gregex.c:517
msgid "name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)"
msgstr "názov v (*MARK), (*PRUNE), (*SKIP) alebo (*THEN) je príliš dlhý"
-#: glib/gregex.c:522
+#: glib/gregex.c:520
msgid "character value in \\u.... sequence is too large"
msgstr "hodnota znaku v postupnosti \\u.... je príliš veľká"
-#: glib/gregex.c:745 glib/gregex.c:1983
+#: glib/gregex.c:743 glib/gregex.c:1988
#, c-format
msgid "Error while matching regular expression %s: %s"
msgstr "Chyba poÄas porovnávania regulárneho výrazu %s: %s"
-#: glib/gregex.c:1316
+#: glib/gregex.c:1321
msgid "PCRE library is compiled without UTF8 support"
msgstr "Knižnica PCRE je preložená bez podpory UTF8"
-#: glib/gregex.c:1320
+#: glib/gregex.c:1325
msgid "PCRE library is compiled without UTF8 properties support"
msgstr "Knižnica PCRE je preložená bez podpory vlastností UTF8"
-#: glib/gregex.c:1328
+#: glib/gregex.c:1333
msgid "PCRE library is compiled with incompatible options"
msgstr "Knižnica PCRE je preložená s nekompatibilnými voľbami"
-#: glib/gregex.c:1357
+#: glib/gregex.c:1362
#, c-format
msgid "Error while optimizing regular expression %s: %s"
msgstr "Chyba poÄas optimalizovania regulárneho výrazu %s: %s"
-#: glib/gregex.c:1437
+#: glib/gregex.c:1442
#, c-format
msgid "Error while compiling regular expression %s at char %d: %s"
msgstr "Chyba poÄas prekladu regulárneho výrazu %s pri znaku %d: %s"
-#: glib/gregex.c:2419
+#: glib/gregex.c:2427
msgid "hexadecimal digit or “}†expected"
msgstr "oÄakávaná Å¡estnástková Äíslica alebo „}“"
-#: glib/gregex.c:2435
+#: glib/gregex.c:2443
msgid "hexadecimal digit expected"
msgstr "oÄakávaná Å¡estnástková Äíslica"
-#: glib/gregex.c:2475
+#: glib/gregex.c:2483
msgid "missing “<†in symbolic reference"
msgstr "chýba „<“ v symbolickom odkaze"
-#: glib/gregex.c:2484
+#: glib/gregex.c:2492
msgid "unfinished symbolic reference"
msgstr "neukonÄený symbolický odkaz"
-#: glib/gregex.c:2491
+#: glib/gregex.c:2499
msgid "zero-length symbolic reference"
msgstr "symbolický odkaz s nulovou dĺžkou"
-#: glib/gregex.c:2502
+#: glib/gregex.c:2510
msgid "digit expected"
msgstr "oÄakávaná Äíslica"
-#: glib/gregex.c:2520
+#: glib/gregex.c:2528
msgid "illegal symbolic reference"
msgstr "neplatný symbolický odkaz"
-#: glib/gregex.c:2583
+#: glib/gregex.c:2591
msgid "stray final “\\â€"
msgstr "zabudnuté koncové „\\“"
-#: glib/gregex.c:2587
+#: glib/gregex.c:2595
msgid "unknown escape sequence"
msgstr "neznáma špeciálna (escape) sekvencia"
-#: glib/gregex.c:2597
+#: glib/gregex.c:2605
#, c-format
msgid "Error while parsing replacement text “%s†at char %lu: %s"
msgstr "Chyba poÄas analyzovania nahrádzajúceho textu „%s“ pri znaku %lu: %s"
@@ -5854,82 +5984,82 @@ msgstr ""
msgid "Text was empty (or contained only whitespace)"
msgstr "Text bol prázdny (alebo obsahoval iba medzery)"
-#: glib/gspawn.c:323
+#: glib/gspawn.c:308
#, c-format
msgid "Failed to read data from child process (%s)"
msgstr "Zlyhalo Äítanie údajov z dcérskeho procesu (%s)"
-#: glib/gspawn.c:468
+#: glib/gspawn.c:458
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "NeoÄakávaná chyba pri Äítaní údajov z dcérskeho procesu (%s)"
-#: glib/gspawn.c:553
+#: glib/gspawn.c:543
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "NeoÄakávaná chyba vo waitpid() (%s)"
-#: glib/gspawn.c:1061 glib/gspawn-win32.c:1329
+#: glib/gspawn.c:1152 glib/gspawn-win32.c:1407
#, c-format
msgid "Child process exited with code %ld"
msgstr "Dcérsky proces skonÄil s kódom %ld"
-#: glib/gspawn.c:1069
+#: glib/gspawn.c:1160
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Dcérsky proces bol zabitý signálom %ld"
-#: glib/gspawn.c:1076
+#: glib/gspawn.c:1167
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Dcérsky proces bol zastavený signálom %ld"
-#: glib/gspawn.c:1083
+#: glib/gspawn.c:1174
#, c-format
msgid "Child process exited abnormally"
msgstr "Dcérsky proces skonÄil neobvykle"
-#: glib/gspawn.c:1532 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1793 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Zlyhalo Äítanie zo zreÅ¥azenia s potomkom (%s)"
-#: glib/gspawn.c:1788
+#: glib/gspawn.c:2095
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Zlyhalo vytvorenie dcérskeho procesu „%s“ (%s)"
-#: glib/gspawn.c:1871
+#: glib/gspawn.c:2212
#, c-format
msgid "Failed to fork (%s)"
msgstr "Zlyhalo vytvorenie vetvy (%s)"
-#: glib/gspawn.c:2026 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2372 glib/gspawn-win32.c:381
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Zlyhala zmena adresára na „%s“ (%s)"
-#: glib/gspawn.c:2036
+#: glib/gspawn.c:2382
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Zlyhalo spustenie dcérskeho procesu „%s“ (%s)"
-#: glib/gspawn.c:2046
+#: glib/gspawn.c:2392
#, c-format
msgid "Failed to redirect output or input of child process (%s)"
msgstr "Zlyhalo presmerovanie vstupu alebo výstupu dcérskeho procesu (%s)"
-#: glib/gspawn.c:2055
+#: glib/gspawn.c:2401
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Zlyhalo vytvorenie vetvy dcérskeho procesu (%s)"
-#: glib/gspawn.c:2063
+#: glib/gspawn.c:2409
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Neznáma chyba pri spúšťaní dcérskeho procesu „%s“"
-#: glib/gspawn.c:2087
+#: glib/gspawn.c:2433
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr ""
@@ -5954,27 +6084,27 @@ msgstr "Zlyhalo spustenie dcérskeho procesu (%s)"
msgid "Invalid program name: %s"
msgstr "Neplatný názov programu: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:725
+#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Neplatný reťazec vo vektore parametra na %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:740
+#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Neplatný reťazec v prostredí: %s"
-#: glib/gspawn-win32.c:721
+#: glib/gspawn-win32.c:775
#, c-format
msgid "Invalid working directory: %s"
msgstr "Neplatný pracovný adresár: %s"
-#: glib/gspawn-win32.c:783
+#: glib/gspawn-win32.c:837
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Zlyhalo spustenie pomocného programu (%s)"
-#: glib/gspawn-win32.c:1056
+#: glib/gspawn-win32.c:1064
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -5982,73 +6112,79 @@ msgstr ""
"NeoÄakávaná chyba v g_io_channel_win32_poll() pri Äítaní údajov z dcérskeho "
"procesu"
-#: glib/gstrfuncs.c:3303 glib/gstrfuncs.c:3405
+#: glib/gstrfuncs.c:3338 glib/gstrfuncs.c:3440
msgid "Empty string is not a number"
msgstr "Prázdny reÅ¥azec nie je Äíslo"
-#: glib/gstrfuncs.c:3327
+#: glib/gstrfuncs.c:3362
#, c-format
msgid "“%s†is not a signed number"
msgstr "„%s“ nie je Äíslo so znamienkom"
-#: glib/gstrfuncs.c:3337 glib/gstrfuncs.c:3441
+#: glib/gstrfuncs.c:3372 glib/gstrfuncs.c:3476
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Číslo „%s“ je mimo rozsah [%s, %s]"
-#: glib/gstrfuncs.c:3431
+#: glib/gstrfuncs.c:3466
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "„%s“ nie je Äíslo bez znamienka"
-#: glib/guri.c:313
+#: glib/guri.c:315
#, no-c-format
msgid "Invalid %-encoding in URI"
msgstr "Neplatné kódovanie použitím znaku % v URI"
-#: glib/guri.c:330
+#: glib/guri.c:332
msgid "Illegal character in URI"
msgstr "Neplatný znak v URI"
-#: glib/guri.c:359
+#: glib/guri.c:366
msgid "Non-UTF-8 characters in URI"
msgstr ""
-#: glib/guri.c:533
+#: glib/guri.c:546
#, c-format
msgid "Invalid IPv6 address ‘%.*s’ in URI"
msgstr ""
-#: glib/guri.c:588
+#: glib/guri.c:601
#, c-format
msgid "Illegal encoded IP address ‘%.*s’ in URI"
msgstr ""
-#: glib/guri.c:620 glib/guri.c:632
+#: glib/guri.c:613
+#, fuzzy, c-format
+#| msgid "Could not parse port ‘%.*s’ in URI"
+msgid "Illegal internationalized hostname ‘%.*s’ in URI"
+msgstr "Nepodarilo sa analyzovať port „%.*s“ v URI"
+
+#: glib/guri.c:645 glib/guri.c:657
#, c-format
msgid "Could not parse port ‘%.*s’ in URI"
msgstr "Nepodarilo sa analyzovať port „%.*s“ v URI"
-#: glib/guri.c:639
+#: glib/guri.c:664
#, c-format
msgid "Port ‘%.*s’ in URI is out of range"
msgstr "Port „%.*s“ v URI je mimo rozsah"
-#: glib/guri.c:1119 glib/guri.c:1183
+#: glib/guri.c:1224 glib/guri.c:1288
#, c-format
msgid "URI ‘%s’ is not an absolute URI"
msgstr "URI „%s“ nie je absolútnym URI"
-#: glib/guri.c:1125
+#: glib/guri.c:1230
#, c-format
msgid "URI ‘%s’ has no host component"
msgstr ""
-#: glib/guri.c:1330
+#: glib/guri.c:1435
msgid "URI is not absolute, and no base URI was provided"
msgstr ""
-#: glib/guri.c:2082
+#: glib/guri.c:2213
msgid "Missing ‘=’ and parameter value"
msgstr "Chýba znak „=“ a hodnota parametra"
@@ -6070,150 +6206,150 @@ msgid "Character out of range for UTF-16"
msgstr "Znak mimo rozsah UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2759
+#: glib/gutils.c:2727
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2761
+#: glib/gutils.c:2729
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2763
+#: glib/gutils.c:2731
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2765
+#: glib/gutils.c:2733
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2767
+#: glib/gutils.c:2735
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2769
+#: glib/gutils.c:2737
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2773
+#: glib/gutils.c:2741
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2775
+#: glib/gutils.c:2743
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2777
+#: glib/gutils.c:2745
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2779
+#: glib/gutils.c:2747
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2781
+#: glib/gutils.c:2749
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2783
+#: glib/gutils.c:2751
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2787
+#: glib/gutils.c:2755
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2789
+#: glib/gutils.c:2757
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2791
+#: glib/gutils.c:2759
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2793
+#: glib/gutils.c:2761
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2795
+#: glib/gutils.c:2763
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2797
+#: glib/gutils.c:2765
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2801
+#: glib/gutils.c:2769
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2803
+#: glib/gutils.c:2771
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2805
+#: glib/gutils.c:2773
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2807
+#: glib/gutils.c:2775
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2809
+#: glib/gutils.c:2777
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2811
+#: glib/gutils.c:2779
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2845 glib/gutils.c:2962
+#: glib/gutils.c:2813 glib/gutils.c:2930
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
@@ -6221,7 +6357,7 @@ msgstr[0] "%u bajtov"
msgstr[1] "%u bajt"
msgstr[2] "%u bajty"
-#: glib/gutils.c:2849
+#: glib/gutils.c:2817
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6230,7 +6366,7 @@ msgstr[1] "%u bit"
msgstr[2] "%u bity"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2916
+#: glib/gutils.c:2884
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6239,7 +6375,7 @@ msgstr[1] "%s bajt"
msgstr[2] "%s bajty"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2921
+#: glib/gutils.c:2889
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6252,36 +6388,43 @@ msgstr[2] "%s bity"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2975
+#: glib/gutils.c:2943
#, c-format
msgid "%.1f KB"
msgstr "%.1f kB"
-#: glib/gutils.c:2980
+#: glib/gutils.c:2948
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2985
+#: glib/gutils.c:2953
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:2990
+#: glib/gutils.c:2958
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:2995
+#: glib/gutils.c:2963
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3000
+#: glib/gutils.c:2968
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
+#~ msgid "Unable to load /var/lib/dbus/machine-id or /etc/machine-id: "
+#~ msgstr ""
+#~ "Nepodarilo sa naÄítaÅ¥ /var/lib/dbus/machine-id ani /etc/machine-id: "
+
+#~ msgid "Unknown error on connect"
+#~ msgstr "Neznáma chyba pripájania"
+
#~ msgid "Error in address “%s†— the family attribute is malformed"
#~ msgstr "Chyba v adrese „%s“ — atribút rodiny má zlý formát"
@@ -6339,9 +6482,6 @@ msgstr "%.1f EB"
#~ msgid "No such interface"
#~ msgstr "Také rozhranie neexistuje"
-#~ msgid "No files given"
-#~ msgstr "Neposkytnuté žiadne súbory"
-
#~ msgid "Error getting writable attributes: %s\n"
#~ msgstr "Chyba pri získavaní zapisovateľných atribútov: %s\n"
diff --git a/po/sl.po b/po/sl.po
index fe45ab16a..5ea1af7c7 100644
--- a/po/sl.po
+++ b/po/sl.po
@@ -3,14 +3,14 @@
# This file is distributed under the same license as the glib package.
#
# Andraž Tori <andraz.tori1@guest.arnes.si> 2000.
-# Matej UrbanÄiÄ <mateju@src.gnome.org>, 2007–2022.
+# Matej UrbanÄiÄ <mateju@src.gnome.org>, 2007–2022 .
#
msgid ""
msgstr ""
"Project-Id-Version: glib master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-01-30 15:25+0000\n"
-"PO-Revision-Date: 2022-01-30 21:50+0100\n"
+"POT-Creation-Date: 2022-03-22 16:26+0000\n"
+"PO-Revision-Date: 2022-03-22 19:31+0100\n"
"Last-Translator: Matej UrbanÄiÄ <mateju@src.gnome.org>\n"
"Language-Team: Slovenian GNOME Translation Team <gnome-si@googlegroups.com>\n"
"Language: sl_SI\n"
@@ -22,6 +22,15 @@ msgstr ""
"X-Poedit-SourceCharset: utf-8\n"
"X-Generator: Poedit 3.0\n"
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Nastavljanje privzetih programov ni podprto"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"Nastavljanje programa kot nazadnje uporabljenega za vrsto datotek ni podprto"
+
#: gio/gapplication.c:500
msgid "GApplication options"
msgstr "Možnosti programa GApplication"
@@ -43,7 +52,7 @@ msgid "Replace the running instance"
msgstr "Zamenjaj trenutno zagnan primerek"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "IzpiÅ¡i pomoÄ"
@@ -55,7 +64,7 @@ msgstr "[UKAZ]"
msgid "Print version"
msgstr "IzpiÅ¡i razliÄico"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "IzpiÅ¡i podatke o razliÄici in konÄaj"
@@ -119,8 +128,8 @@ msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr ""
"DoloÄila programa v zapisu vodila D-Bus (na primer: org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "DATOTEKA"
@@ -146,7 +155,7 @@ msgstr "PARAMETER"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Neobvezen parameter za priklic dejanja, v zapisu GVariant"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -160,7 +169,7 @@ msgid "Usage:\n"
msgstr "Uporaba:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argumenti:\n"
@@ -283,7 +292,7 @@ msgstr "Pretok je že zaprt"
msgid "Truncate not supported on base stream"
msgstr "RazÄlenitev na osnovnem pretoku ni dovoljena"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -304,7 +313,7 @@ msgstr "Ni dovolj prostora za cilju"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Neveljavno zaporedje bajtov na vhodu pretvorbe"
@@ -314,7 +323,7 @@ msgstr "Neveljavno zaporedje bajtov na vhodu pretvorbe"
msgid "Error during conversion: %s"
msgstr "Napaka med pretvorbo: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Dejanje prekinitve zagona ni podprto"
@@ -328,37 +337,37 @@ msgstr "Pretvorba iz nabora znakov »%s« v »%s« ni podprta"
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Ni mogoÄe odpreti pretvornika iz »%s« v »%s«"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "%s vrsta"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Neznana vrsta"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "%s vrsta datoteke"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials vsebuje neveljavne podatke"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "Na tem OS predmet GCredentials ni podprt"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Okolje ne podpira možnosti GCredentials"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "Predmet GCredentials na tem sistemu ne vsebuje ustreznega ID opravila"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Na tem OS vohljanje po poverilih ni podprto"
@@ -366,17 +375,17 @@ msgstr "Na tem OS vohljanje po poverilih ni podprto"
msgid "Unexpected early end-of-stream"
msgstr "NepriÄakovan prezgodnji konec pretoka"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Nepodprt kljuÄ Â»%s« v vnosu naslova »%s«"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Nesmiselna kombinacija za par kljuÄ/vrednost v vnosu naslova »%s«"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -384,35 +393,35 @@ msgid ""
msgstr ""
"Naslov »%s« ni veÄkavem (zahtevana je pot, zaÄasna mapa ali abstraktni kljuÄ)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Napaka v naslovu »%s« – atribut »%s« je nepravilno oblikovan"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Neznan ali nepodprt prenos »%s« za naslov »%s«"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "Predmet naslova »%s« ne vsebuje dvopiÄja ( : )"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "Transportno ime v naslovu predmeta »%s« ne sme biti prazno polje"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
"sign"
msgstr "Par kljuÄ/vrednost %d, »%s« v predmetu naslova »%s« ne vsebuje enaÄaja"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
@@ -420,7 +429,7 @@ msgstr ""
"Par kljuÄ/vrednost %d, »%s« v predmetu naslova »%s« ne sme vsebovati "
"praznega kljuÄa"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -429,7 +438,7 @@ msgstr ""
"Napaka neubežnega kljuÄa ali vrednosti v paru kljuÄ/vrednost %d, »%s«, v "
"predmetu naslova »%s«"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -438,82 +447,83 @@ msgstr ""
"Napaka v naslovu »%s« – prenos unix zahteva enega izmed kljuÄev »path« ali "
"»abstract«"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr ""
"Napaka v naslovu »%s« – atribut gostitelja manjka ali pa je nepravilno "
"oblikovan"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr ""
"Napaka v naslovu »%s« – manjka atribut vrat ali pa ali je nepravilno "
"oblikovan"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Napaka v naslovu »%s« – atribut enkratne datoteke manjka ali pa je "
"nepravilno oblikovan"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
-msgstr "Napaka samodejnega zaganjanja:"
+msgstr "Napaka samodejnega zaganjanja: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Napaka med odpiranjem enkratne datoteke »%s«: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Napaka med branjem iz enkratne datoteke »%s«: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"Napaka med branjem iz enkratne datoteke »%s«; priÄakovanih 16 bajtov, "
"pridobljenih pa %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Napaka med pisanjem vsebine enkratne datoteke »%s« v pretok:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "Podan naslov je prazen."
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Ni mogoÄe oživiti vodila sporoÄila med izvajanjem ukaza setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr ""
+"Ni mogoÄe oživiti vodila sporoÄila, Äe je nastavljena možnost AT_SECURE"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
-msgstr "Ni mogoÄe oživiti vodila sporoÄila brez predmeta machine-id:"
+msgstr "Ni mogoÄe oživiti vodila sporoÄila brez predmeta machine-id: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Ni mogoÄe samodejno zagnati vodila D-Bus brez nastavitve X11 $DISPLAY"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Napaka med oživljanjem ukazne vrstice »%s«: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr "Ni mogoÄe doloÄiti naslova vodila seje (ni podprto v tem OS)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -522,7 +532,7 @@ msgstr ""
"Ni mogoÄe doloÄiti naslova vodila iz okoljske spremenljivke "
"DBUS_STARTER_BUS_TYPE – neznana vrednost »%s«"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -530,7 +540,7 @@ msgstr ""
"Ni mogoÄe doloÄiti naslova vodila, kajti okoljska spremenljivka "
"DBUS_STARTER_BUS_TYPE ni nastavljena"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Neznana vrsta vodila %d"
@@ -559,12 +569,12 @@ msgstr "Uporabniški ID mora biti enak za odjemalca in strežnik"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Prekinjeno s strani GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Napaka med pridobivanjem podrobnosti mape »%s«: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -572,32 +582,32 @@ msgstr ""
"Dovoljenja na mapi »%s« so napaÄno oblikovana. PriÄakovano je dovoljenje "
"0700, pridobljeno pa 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Napaka med ustvarjanjem mape »%s«: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Opravilo ni podprto"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
-msgstr "Napaka med odpiranjem zbirke kljuÄev »%s« za branje:"
+msgstr "Napaka med odpiranjem zbirke kljuÄev »%s« za branje: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "Vrstica %d zbirke kljuÄev »%s« z vsebino »%s« je neustrezno oblikovana"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -605,7 +615,7 @@ msgstr ""
"Prvi žeton vrstice %d zbirke kljuÄev pri »%s« z vsebino »%s« je neustrezno "
"oblikovan"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -613,162 +623,162 @@ msgstr ""
"Drugi žeton vrstice %d zbirke kljuÄev pri »%s« z vsebino »%s« je neustrezno "
"oblikovana"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "PiÅ¡kotka z ID %d v zbirki kljuÄev »%s« ni mogoÄe najti"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Napaka med ustvarjanjem datoteke zaklepa »%s«: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Napaka brisanja stare datoteke zaklepa »%s«: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Napaka med zapiranjem (nepovezane) datoteke zaklepa »%s«: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Napaka med razvezovanjem datoteke zaklepa »%s«: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Napaka med odpiranjem zbirke kljuÄev »%s« za branje: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
-msgstr "(V nadaljevanju je spodletelo tudi sproÅ¡Äanje zaklepa »%s«: %s)"
+msgstr "(V nadaljevanju je spodletelo tudi sproÅ¡Äanje zaklepa »%s«: %s) "
-#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "Povezava je zaprta"
-#: gio/gdbusconnection.c:1903
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "ÄŒas zakasnitve je potekel"
-#: gio/gdbusconnection.c:2541
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"Med izgrajevanjem povezave s strani odjemalca so bile odkrite nepodprte "
"zastavice"
-#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr ""
"Vmesnik »org.freedesktop.DBus.Properties« na predmetu na poti %s ne obstaja"
-#: gio/gdbusconnection.c:4414
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "Lastnost »%s« ne obstaja"
-#: gio/gdbusconnection.c:4426
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "Lastnost »%s« ni berljiva"
-#: gio/gdbusconnection.c:4437
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "Lastnost »%s« ni zapisljiva"
-#: gio/gdbusconnection.c:4457
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
"Napaka med nastavljanjem lastnosti »%s«: priÄakovana je vrsta »%s«, javljena "
"pa »%s«."
-#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
-#: gio/gdbusconnection.c:6760
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "Vmesnik »%s« ne obstaja"
-#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Vmesnik »%s« na predmetu na poti %s ne obstaja"
-#: gio/gdbusconnection.c:5100
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "NaÄin »%s« ne obstaja"
-#: gio/gdbusconnection.c:5131
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Vrsta sporoÄila »%s« se ne sklada s priÄakovano vrsto »%s«"
-#: gio/gdbusconnection.c:5334
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Za vmesnik %s pri %s je predmet že izvožen"
-#: gio/gdbusconnection.c:5561
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Ni mogoÄe pridobiti lastnosti %s.%s"
-#: gio/gdbusconnection.c:5617
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Ni mogoÄe doloÄiti lastnosti %s.%s"
-#: gio/gdbusconnection.c:5796
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "NaÄin »%s« je vrnil vrsto »%s«, priÄakovana pa je vrsta »%s«"
-#: gio/gdbusconnection.c:6872
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "NaÄin »%s« na vmesniku »%s« s podpisom »%s« ne obstaja"
-#: gio/gdbusconnection.c:6993
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Podrejeno drevo je že izvoženo za %s"
-#: gio/gdbusconnection.c:7282
+#: gio/gdbusconnection.c:7266
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "Predmeta na poti »%s« ni mogoÄe najti."
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "vrsta je neveljavna"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "SporoÄilo METHOD_CALL: manjka polje glave PATH ali MEMBER"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "SporoÄilo METHOD_RETURN: manjka polje glave REPLY_SERIAL"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "SporoÄilo ERROR: manjka polje glave REPLY_SERIAL ali ERROR_NAME"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "SporoÄilo SIGNAL: manjka polje glave PATH, INTERFACE ali MEMBER"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -776,7 +786,7 @@ msgstr ""
"SporoÄilo SIGNAL: polje glave PATH uporablja rezervirano vrednost /org/"
"freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -785,21 +795,21 @@ msgstr ""
"freedesktop.DBus.Local"
# Double multiple plural?
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "Med poskusom branja %lu bajtov je bilo prejetih le %lu"
-msgstr[1] "Med poskusom branja %lu bajtov je bil prejet le %lu."
-msgstr[2] "Med poskusom branja %lu bajtov sta bila prejeta le %lu."
-msgstr[3] "Med poskusom branja %lu bajtov so bili prejeti le %lu."
+msgstr[1] "Med poskusom branja %lu bajtov je bil prejet le %lu"
+msgstr[2] "Med poskusom branja %lu bajtov sta bila prejeta le %lu"
+msgstr[3] "Med poskusom branja %lu bajtov so bili prejeti le %lu"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "Po nizu »%s« je priÄakovan bajt NUL, vendar je bil zaznan %d"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -809,21 +819,21 @@ msgstr ""
"bajtov na bajtnem odmiku %d (dolžina niza %d). Do takrat veljaven UTF-8 niz "
"je »%s«"
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Vrednost je gnezdene pregloboko"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "RazÄlenjena vrednost »%s« ni veljavna pot predmeta vodila D-Bus"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "RazÄlenjena vrednost »%s« ni veljaven podpis vodila D-Bus"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -842,7 +852,7 @@ msgstr[3] ""
"Najdeno je polje dolžine %u bajtov, najveÄja dovoljena pa je 2<<26 bajtov "
"(64 MiB)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -851,16 +861,16 @@ msgstr ""
"Zaznano je polje vrste »'a%c«, priÄakovana pa je vrednost veÄkratnika %u "
"bajtov, zaznanih pa je %u bajtov dolžine"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
msgstr "V vodilu D-Bus prazne vrednosti niso dovoljene"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "RazÄlenjena vrednost »%s« ni veljaven podpis vodila D-Bus"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
@@ -868,7 +878,7 @@ msgstr ""
"Napaka med loÄevanjem GVariant iz zaporedja z vrsto niza »%s« iz D-Bus žiÄne "
"oblike"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -877,29 +887,29 @@ msgstr ""
"Neveljavna vrednost vrstnega reda zlogov. PriÄakovana je ali vrednost 0x6c "
"(» l «) ali 0x42 (» B «), najdena pa je vrednost 0x%02x"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr ""
"Neveljavna veÄja razliÄica protokola. PriÄakovana je 1, najdenih pa jih je "
"veÄ (%d)"
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Glava podpisa je najdena, vendar ni ustrezno oblikovana"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"Glava podpisa s podpisom »%s« je najdena, vendar je telo sporoÄila prazno"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "RazÄlenjena vrednost »%s« ni veljaven podpis vodila D-Bus (za telo)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -912,11 +922,11 @@ msgstr[2] ""
msgstr[3] ""
"V sporoÄilu ni glave podpisa, vendar je telo sporoÄila dolgo %u bajte"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "SporoÄila ni mogoÄe loÄiti iz zaporedja: "
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
@@ -924,22 +934,22 @@ msgstr ""
"Napaka pri združevanju GVariant v zaporedje z vrsto niza »%s« v D-Bus žiÄno "
"obliko"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr "Å tevilo opisnikov v sporoÄilu (%d) se razlikuje od polja glave (%d)"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "SporoÄila ni bilo mogoÄe združiti v zaporedje: "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "Telo sporoÄila ima podpis »%s«, vendar v glavi ni podpisa"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -947,52 +957,52 @@ msgid ""
msgstr ""
"Telo sporoÄila ima podpis vrste »%s«, vendar je podpis v polju glave »%s«"
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "Telo sporoÄila je prazno, vendar je v polju glave podpis »(%s)«"
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Napaka vrnjena s telesom vrste »%s«"
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Napaka vrnjena s praznim telesom"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(S pritiskom na katerikoli znak, se okno zapre)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Vodilo seje DBus ni zagnano, zato je samodejni zagon spodletel"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Ni mogoÄe pridobiti strojnega profila: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
-msgstr "Ni mogoÄe naložiti %s oziroma %s:"
+msgstr "Ni mogoÄe naložiti %s oziroma %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Napaka med klicanjem predmeta StartServiceByName za %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "NepriÄakovan odgovor %d iz naÄina StartServiceByName(»%s«)"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1047,66 +1057,66 @@ msgstr ""
"\n"
"Uporabite »%s COMMAND --help« za pomoÄ o posameznem ukazu.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Napaka: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Napaka med samopreverjanjem XML: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Napaka: %s ni veljavno ime\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Napaka: %s ni veljavna pot predmeta\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Poveži s sistemskim vodilom"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Poveži z vodilom seje"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Poveži s podanim naslovom vodila D-Bus"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Možnosti konÄnih toÄk povezave:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Možnosti, ki doloÄajo konÄne toÄke povezave"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Ni doloÄene konÄne toÄke povezave"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "DoloÄenih je veÄ povezav konÄne toÄke"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr "Opozorilo: na osnovi podatkov samopregleda, vmesnik »%s« ne obstaja\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1115,160 +1125,164 @@ msgstr ""
"Opozorilo: na osnovi podatkov samopregleda, naÄin »%s« ne obstaja na "
"vmesniku »%s«\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Izbirni cilj za signal (enoznaÄno ime)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Pot predmeta za oddajanje signala"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Ime signala in vmesnika"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Oddaj signal."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Napaka med povezovanjem: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Napaka: %s ni veljavno enoznaÄno ime vodila.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Napaka: pot predmeta ni doloÄena\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Napaka: ime signala ni doloÄeno\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Napaka: ime signala »%s« ni veljavno\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Napaka: %s ni veljavno ime vmesnika.\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Napaka: %s ni veljavno ime predmeta.\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Napaka med razÄlenjevanjem parametra %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Napaka med poÄiÅ¡Äenjem povezave: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Ime cilja za sklicanje naÄina"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Pot do predmeta za sklicanje naÄina"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Ime naÄina in vmesnika"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "ÄŒasovni zamik v sekundah"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Dovoli interaktivno overjanje"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "SkliÄi naÄin na oddaljenem predmetu."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Napaka: cilj ni doloÄen\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Napaka: %s ni veljavno ime vodila\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Napaka: ime naÄina ni doloÄeno\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Napaka: ime naÄina »%s« ni veljavno\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Napaka med razÄlenjevanjem parametra %d vrste »%s«: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Napaka med dodajanjem roÄnika: %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Samopreverjanje ciljnega imena"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Samopreverjanje poti predmeta"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Natisni XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Samopreverjanje podrejenih predmetov"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Natisni le lastnosti"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Samopreverjanje oddaljenega predmeta."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Nadzor ciljnega imena"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Nadzor poti predmeta"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Nadzoruj oddaljeni predmet."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Napaka: ni mogoÄe nadzirati povezav mimo sporoÄilnega vtiÄa\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Storitev, ki naj se zaÄne, preden zaÄne program Äakati na drugo (ime)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1276,65 +1290,71 @@ msgstr ""
"ÄŒasovni zamik, po katerem je program konÄan z napako (v sekundah); vrednost "
"0 onemogoÄi zamik (privzeto)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[MOŽNOST …] IME-VODILA"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "PoÄakaj na izpis imena vodila."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Napaka: storitev za omogoÄanje mora biti doloÄena.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr ""
"Napaka: storitev za Äakanje mora biti doloÄena.\n"
"\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Napaka: navedenih je preveÄ argumentov.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Napaka: %s ni veljavno enoznaÄno ime vodila.\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr ""
+"Za spreminjanje nastavitev razhroÅ¡Äevanja so zahtevana posebna dovoljenja"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Neimenovano"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "Namizna datoteka ne vsebuje doloÄenega polja Exec"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Ni mogoÄe najti terminala, ki ga zahteva program"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr "Ni mogoÄe ustvariti nastavitvene mape uporabnikovega programa %s: %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Ni mogoÄe ustvariti uporabnikove nastavitvene mape MIME %s: %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "Podatki programa so brez doloÄila"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Ni mogoÄe ustvariti uporabnikove datoteke namizja %s"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "DoloÄilo po meri za %s"
@@ -1362,7 +1382,7 @@ msgstr "pogon ne vkljuÄuje možnosti zagona"
msgid "drive doesn’t implement stop"
msgstr "pogon ne vkljuÄuje možnosti zaustavitve"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "Ozadnji program TLS ne vkljuÄuje pridobivanje vezi TLS"
@@ -1403,74 +1423,74 @@ msgstr "PriÄakovan GEmblem za GEmblemedIcon"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "ObstojeÄa enota ne obstaja"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Ni mogoÄe kopirati prek mape"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Ni mogoÄe kopirati mape prek mape"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Ciljna datoteka obstaja"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Ni mogoÄe kopirati drevesne zgradbe map"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Splice ni podprt"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Napaka med prepletanjem datoteke: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr ""
"Kopiranje (sklic povezave/kloniranje) med razliÄnimi priklopi ni podprto"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Kopiranje (sklic povezave/kloniranje) ni podprto ali pa ni veljavno"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Kopiranje (sklic povezave/kloniranje) ni podprto, ali pa ni delovalo"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Ni mogoÄe kopirati posebne datoteke"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Neveljavna vrednost simbolne povezave"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Simbolne povezave niso podprte"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Smeti niso podprte"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Ni mogoÄe uporabiti »%c« v imenu datoteke"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "enota ne podpira priklopa"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Na voljo ni programa z a upravljanje s to datoteko"
@@ -1515,7 +1535,7 @@ msgstr "RazÄlenitev ni dovoljena na dovodnem pretoku"
msgid "Truncate not supported on stream"
msgstr "RazÄlenitev ni podprta na pretoku"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Neveljavno ime gostitelja"
@@ -1602,7 +1622,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Ni mogoÄe razÄleniti »%s« kot maske naslova IP"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Ni dovolj prostora za naslov vtiÄa"
@@ -2438,70 +2458,74 @@ msgstr "Napaka med stiskanjem datoteke %s"
msgid "text may not appear inside <%s>"
msgstr "besedilo se ne sme pojaviti znotraj <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "IzpiÅ¡i podrobnosti razliÄice in konÄaj"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Ime izhodne datoteke"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
msgstr ""
"Mape, iz katerih naj bodo prebrane datoteke (privzeto je to trenutna mapa)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "MAPA"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr "Ustvari odvod v obliki, izbrani s pripono imena ciljne datoteke"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Ustvari glavo vira"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr "Ustvari izvorno kodo za povezavo datoteke virov z vašo kodo"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Ustvari seznam odvisnosti."
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Ime ustvarjene datoteke odvisnosti za ustvarjanje"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "VkljuÄi lažne cilje v ustvarjeni datoteki odvisnosti"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Vira ne ustvari in ne vpiši samodejno"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Ne izvozi funkcij; te je treba deklarirati v G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
msgstr "Ne vgrajuj podatkov vira v datoteko C; predvidi zunanjo povezavo"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "DoloÄilo imena jezika C za ustvarjanje izvorne kode"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "Ciljni prevajalnik C (privzeto: okoljska spremenljivka CC)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2511,7 +2535,7 @@ msgstr ""
"Datoteke doloÄil vira imajo pripone .gresource.xml,\n"
"datoteke vira pa pripono .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Podati je treba natanko eno ime datoteke\n"
@@ -3302,13 +3326,13 @@ msgstr "Napaka med ustvarjanjem varnostne kopije: %s"
msgid "Error renaming temporary file: %s"
msgstr "Napaka med preimenovanjem zaÄasne datoteke: %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "Napaka med obrezovanjem datoteke: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Napaka med odpiranjem datoteke »%s«: %s"
@@ -3330,7 +3354,7 @@ msgstr "Datoteka je bila zunanje spremenjena"
msgid "Error removing old file: %s"
msgstr "Napaka med odstranjevanjem datoteke: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Privzet neveljaven GSeekType"
@@ -3342,15 +3366,15 @@ msgstr "Neveljavna zahteva iskanja"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Ni mogoÄe razÄleniti GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Odvoda pretoka pomnilnika ni mogoÄe razÅ¡iriti"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Razširjanje pretoka odvoda pomnilnika je spodletelo."
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3358,11 +3382,11 @@ msgstr ""
"KoliÄina pomnilnika zahtevana za pisanje je veÄja kot je razpoložljivi "
"prostor naslova"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Zahtevano iskanje pred zaÄetkom pretoka"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Zahtevano iskanje za koncem pretoka"
@@ -3436,11 +3460,11 @@ msgstr "Ni mogoÄe ustvariti nadzornika omrežja: %s"
#: gio/gnetworkmonitornetlink.c:120
msgid "Could not create network monitor: "
-msgstr "Ni mogoÄe ustvariti nadzornika omrežja:"
+msgstr "Ni mogoÄe ustvariti nadzornika omrežja: "
#: gio/gnetworkmonitornetlink.c:183
msgid "Could not get network status: "
-msgstr "Ni mogoÄe pridobiti stanja omrežja:"
+msgstr "Ni mogoÄe pridobiti stanja omrežja: "
#: gio/gnetworkmonitornm.c:311
#, c-format
@@ -3465,18 +3489,22 @@ msgstr "Vsota vektorjev, poslanih na %s, je prevelika."
msgid "Source stream is already closed"
msgstr "Izvorni pretok je že zaprt"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Napaka med razreševanjem »%s«: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "Za funkcijo %s ni zagotovljene podpore."
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Neveljavna domena"
@@ -3591,7 +3619,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " ODSEK Ime (izbirno) izbora elf\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " UKAZ Ukaz (izbirno) za razlago\n"
@@ -3623,7 +3651,7 @@ msgstr "POT"
msgid " PATH A resource path\n"
msgstr " POT Pot vira\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Shema »%s« ne obstaja.\n"
@@ -3654,35 +3682,35 @@ msgstr "Zapis poti se mora konÄati s poÅ¡evnico (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Pot ne sme vsebovati dveh zaporednih poševnic (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "Ponujena vrednost je izven veljavnega obmoÄja\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "KljuÄ ni zapisljiv\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "IzpiÅ¡i nameÅ¡Äene (nedodeljive) sheme"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Seznam naloženih dodeljivih SHEM"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "IzpiÅ¡i seznam kljuÄev SHEME"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "SHEMA[:POT]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Izpiši seznam podrejenih predmetov SHEME"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3690,48 +3718,48 @@ msgstr ""
"Rekurzivno izpiÅ¡i kljuÄe in vrednosti,\n"
"Äe ni podana SHEMA, pa izpiÅ¡i vse kljuÄe\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SHEMA[:POT]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Pridobi vrednost KLJUÄŒA"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "SHEMA[:POT] KLJUČ"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Poizvej obmoÄje veljavnih vrednosti KLJUÄŒA"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Preveri opis za KLJUČ"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Nastavi vrednosti KLJUÄŒA na VREDNOST"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SHEMA[:POT] KLJUČ VREDNOST"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Ponastavi KLJUČ na privzeto vrednost"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Ponastavi vse kljuÄe SHEME na privzete vrednosti"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Preveri ali je KLJUČ zapisljiv"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3741,11 +3769,11 @@ msgstr ""
"V kolikor KLJUÄŒ ni doloÄen, nadzoruj vse kljuÄe SHEME.\n"
"Pritisni ^C za zaustavitev nadzora.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SHEMA[:POT] [KLJUČ]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3793,7 +3821,7 @@ msgstr ""
"Z ukazom »gsettings help UKAZ« se izpiÅ¡e podrobna pomoÄ.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3808,11 +3836,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " MAPASHEM Mapa za iskanje dodatnih shem\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3820,213 +3848,213 @@ msgstr ""
" SHEMA Ime sheme\n"
" POT Pot do dodeljive sheme\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " KLJUÄŒ KljuÄ (izbirno) znotraj sheme\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " KLJUÄŒ KljuÄ znotraj sheme\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " VREDNOST Vrednost za nastavitev\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Ni mogoÄe odpreti shem iz %s: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Ni nameÅ¡Äenih shem\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Ni podanega imena sheme.\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "KljuÄ Â»%s« ne obstaja.\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Neveljaven vtiÄ, ni zagnano"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Neveljaven vtiÄ, zaganjanje je spodletelo: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "VtiÄ je že zaprt"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "VtiÄ V/I naprave je Äasovno potekel"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "ustvarjanje GSocet preko fd: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Ni mogoÄe ustvariti vtiÄa: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "DoloÄena je neznana družina"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "DoloÄen je neznan protokol"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "Ni mogoÄe uporabiti opravil datagrama na vtiÄu, ki jih ne podpira."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Ni mogoÄe uporabiti opravil datagrama na vtiÄu z nastavljenim Äasovnim "
"pretekom"
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "ni mogoÄe pridobiti krajevnega naslova: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "ni mogoÄe pridobiti oddaljenega naslova: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "ni mogoÄe slediti: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Napaka vezave na naslov %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Napaka povezovanja v skupino za veÄsmerno oddajanje: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Napaka zapuÅ¡Äanja skupine za veÄsmerno oddajanje: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Ni podpore za veÄsmerno oddajanje lastno viru"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Nepodprta skupina vtiÄa"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "doloÄeno po viru in ne po naslovu IPv4"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Ime vmesnika je predolgo"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Vmesnika ni mogoÄe najti: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "Ni podpore za veÄsmerno oddajanje v protokolu IPv4"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "Ni podpore za veÄsmerno oddajanje v protokolu IPv6"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Napaka med sprejemanjem povezave: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Povezava v teku"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Ni mogoÄe pridobiti uvrÅ¡Äene napake:"
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Napaka med prejemanjem podatkov: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Napaka med pošiljanjem podatkov: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Ni mogoÄe izklopiti vtiÄa: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Napaka med zapiranjem vtiÄa: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "ÄŒakanje na stanje vtiÄa: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Ni mogoÄe poslati sporoÄila: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Vektorji sporoÄila so preobsežni."
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Napaka med poÅ¡iljanjem sporoÄila: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "Predmet GSocketControlMessage na sistemih Windows ni podprt"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Napaka med prejemanjem sporoÄila: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Ni mogoÄe prebrati poveril vtiÄa: %s."
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "Operacijski sistem ne podpira možnosti g_socket_get_credentials"
@@ -4038,17 +4066,17 @@ msgstr "Ni se mogoÄe povezati s posredniÅ¡kim strežnikom %s:"
#: gio/gsocketclient.c:205
#, c-format
msgid "Could not connect to %s: "
-msgstr "Ni se mogoÄe povezati s strežnikom %s:"
+msgstr "Ni se mogoÄe povezati s strežnikom %s: "
#: gio/gsocketclient.c:207
msgid "Could not connect: "
-msgstr "Ni se mogoÄe povezati:"
+msgstr "Ni se mogoÄe povezati: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "Posredovanje preko ne-TCP povezave ni podprto."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Protokol posredniškega strežnika »%s« ni podprt."
@@ -4148,7 +4176,7 @@ msgstr "SOCKSv5 posredniški strežnik ne podpira ponujene vrste naslova"
msgid "Unknown SOCKSv5 proxy error."
msgstr "Neznana napaka posredniškega strežnika SOCKSv5."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr "Ni mogoÄe ustvariti cevi za stik z opravilom podrejenega predmeta (%s)"
@@ -4172,44 +4200,66 @@ msgstr "Ni mogoÄe najti veljavnega naslova"
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "Napaka med obratnim razreševanjem »%s«: %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr "Napaka razÄlenjevanja zapisa DNS %s: nepravilno oblikovan paket DNS"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "Ni zapisa DNS za zahtevano vrsto »%s«"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "Trenutno ni mogoÄe razreÅ¡iti »%s«"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "Napaka med razreševanjem »%s«"
-#: gio/gtlscertificate.c:431
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Nepravilno oblikovan paket DNS"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "RazÄlenjevanje odziva DNS za »%s« je spodletelo: "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Potrdila kodiranega s protokolom PEM ni mogoÄe najti."
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Ni mogoÄe odÅ¡ifrirati s protokolom PEM Å¡ifriranega osebnega kljuÄa"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Ni mogoÄe razÄleniti s protokolom PEM kodiranega zasebnega kljuÄa."
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Potrdila kodiranega s protokolom PEM ni mogoÄe najti."
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Ni mogoÄe razÄleniti s protokolom PEM kodiranega potrdila."
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "Ozadnji program TLS ne podpira potrdil PKCS #12."
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "Ozadnji program GTlsBackend ne podpira ustvarjanja potrdil PKCS #11."
@@ -4234,7 +4284,11 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "Vneseno geslo je nepravilno."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "Pošiljanje FD ni podprto"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
@@ -4243,11 +4297,11 @@ msgstr[1] "PriÄakovano eno nadzorno sporoÄilo, prejeto pa je %d sporoÄilo"
msgstr[2] "PriÄakovano eno nadzorno sporoÄilo, prejeti pa sta %d sporoÄili"
msgstr[3] "PriÄakovano eno nadzorno sporoÄilo, prejeta pa so %d sporoÄila"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "NepriÄakovana vrsta dodatnih podatkov"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
@@ -4256,37 +4310,41 @@ msgstr[1] "PriÄakovan en fd, prejet pa je %d\n"
msgstr[2] "PriÄakovan en fd, prejeta pa sta %d\n"
msgstr[3] "PriÄakovan en fd, prejetih pa so %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Prejet neveljaven fd"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "Prejemanje FD ni podprto"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Napaka med pošiljanjem poveril:"
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Napaka med preverjanjem ali je predmet O_PASSCRED omogoÄen za vtiÄ: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Napaka omogoÄanja predmeta SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Pri prejemanju poveril je priÄakovano branje enega bajta, vendar se je "
"prebralo niÄ bajtov"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Nadzorno sporoÄilo ni priÄakovano, vendar pa je prejeto %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Napaka med onemogoÄanjem SO_PASSCRED: %s"
@@ -4302,7 +4360,7 @@ msgstr "Napaka med branjem iz opisovalnika datoteke: %s"
msgid "Error closing file descriptor: %s"
msgstr "Napaka med zapiranjem opisovalnika datoteke: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Koren datoteÄnega sistema"
@@ -4313,7 +4371,7 @@ msgstr "Koren datoteÄnega sistema"
msgid "Error writing to file descriptor: %s"
msgstr "Napaka med pisanjem v opisovalnik datoteke: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "Abstraktni naslovi vtiÄa domene UNIX na tem sistemu niso podprti"
@@ -4463,8 +4521,8 @@ msgstr "Razširjanje ukazne vrstice »%s« z naslovom URI »%s« je spodletelo."
msgid "Unrepresentable character in conversion input"
msgstr "Nepredstavljiv znak na dovodu pretvorbe"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "NedokonÄano zaporedje znakov na koncu vhoda"
@@ -5035,15 +5093,15 @@ msgstr "Kanal je prekinjen v delnem znaku"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Ni mogoÄe prebrati v g_io_channel_read_to_end"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "Veljavnega kljuÄa v iskanih mapah ni mogoÄe najti"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Ni obiÄajna datoteka"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5051,52 +5109,52 @@ msgstr ""
"Datoteka kljuÄa vsebuje vrstico »%s«, ki ni par kljuÄ-vrednost, skupina ali "
"opomba"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Neveljavno ime skupine: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Datoteka s kljuÄem se ne zaÄne s skupino"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Neveljavno ime kljuÄa: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Neveljavno ime kljuÄa: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Datoteka kljuÄa vsebuje nepodprto kodiranje »%s«"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Datoteka s kljuÄem ni del skupine »%s«"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Datoteka s kljuÄem nima kljuÄa »%s« v skupini »%s«"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr ""
"Datoteka kljuÄa vsebuje kljuÄ Â»%s« z vrednostjo »%s«, ki ni zapisan v naboru "
"UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr ""
"Datoteka kljuÄa vsebuje kljuÄ Â»%s« z vrednostjo, ki je ni mogoÄe tolmaÄiti."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5105,37 +5163,37 @@ msgstr ""
"Datoteka kljuÄa vsebuje kljuÄ Â»%s« v skupini »%s« z vrednostjo, ki je ni "
"mogoÄe tolmaÄiti."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr ""
"KljuÄ Â»%s« v skupini »%s« ima vrednost »%s«, priÄakovana pa je vrednost %s."
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Datoteka s kljuÄem vsebuje ubežni znak na koncu vrstice"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Datoteka kljuÄa vsebuje neveljavno ubežno zaporedje »%s«"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "Vrednosti »%s« ni mogoÄe obravnavati kot Å¡tevilo."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "Celoštevilska vrednost »%s« je izven obsega"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "Vrednosti »%s« ni mogoÄe obravnavati kot Å¡tevilo s plavajoÄo vejico."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "Vrednosti »%s« ni mogoÄe obravnavati kot logiÄno Boolovo vrednost."
@@ -5429,7 +5487,7 @@ msgstr "Napaka med razÄlenjevanjem %s"
msgid "Missing argument for %s"
msgstr "Manjka argument za %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Neznana možnost %s"
@@ -5829,121 +5887,131 @@ msgstr "Besedilo je bilo prazno (ali pa vsebuje le presledne znake)"
msgid "Failed to read data from child process (%s)"
msgstr "Ni mogoÄe prebrati podatkov podrejenega procesa (%s)"
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "NepriÄakovana napaka branja podatkov podrejenega opravila (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "NepriÄakovana napaka v waitpid() (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "Podrejeni proces se je zakljuÄil s kodo %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Podrejeni proces je uniÄen s signalom %ld"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Podrejeni proces se je ustavil s signalom %ld"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Podrejeni proces se je zakljuÄil nenaravno"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Ni mogoÄe prebrati iz cevi podrejenega procesa (%s)"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Ni mogoÄe ustvariti podrejenega opravila »%s« (%s)"
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Ni mogoÄa razvejitev (%s)"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Ni mogoÄe spremeniti v mapo »%s« (%s)"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Ni mogoÄe izvesti podrejenega opravila »%s« (%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2550
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Ni mogoÄe preusmeriti vhoda ali izhoda podrejenega procesa (%s)"
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Ni mogoÄe odpreti datoteke za preslikavo opisnika datoteke (%s)"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2558
+#, c-format
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Ni mogoÄe podvojiti opisnika datoteke podrejenega procesa (%s)"
+
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Ni mogoÄe razvejiti podrejenega procesa (%s)"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2575
#, c-format
msgid "Failed to close file descriptor for child process (%s)"
msgstr "Ni mogoÄe zapreti opisnika datoteke podrejenega procesa (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Neznana napaka med izvajanjem podrejenega opravila »%s«"
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "Ni mogoÄe prebrati dovolj podatkov iz cevi podrejenega procesa (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Ni mogoÄe prebrati podatkov iz opravila podrejenega predmeta"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Ni mogoÄe izvesti podrejenega opravila (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Ni mogoÄe izvesti ukaza dup() podrejenega procesa (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Neveljavno ime programa: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Neveljaven niz v vektorju argumenta pri %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Neveljaven niz okolja: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Neveljavna delovna mapa: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Napaka med izvajanjem pomožnega programa (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -5951,21 +6019,21 @@ msgstr ""
"NepriÄakovana napaka v g_io_channel_win32_poll() med branjem podatkov "
"procesa podrejenega predmeta"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Prazen niz ni Å¡tevilska vrednost"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "»%s« ni podpisano število"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Å tevilo »%s« je izven obmoÄja [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "»%s« ni nepodpisano število"
@@ -6026,168 +6094,168 @@ msgstr "Naslov URI ni absoluten naslov in ni podanega osnovnega naslova URI"
msgid "Missing ‘=’ and parameter value"
msgstr "Manjka znak »=« in vrednost parametra"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Ni mogoÄe dodeliti pomnilnika"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Znak izven obmoÄja za UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Neveljavno zaporedje na vhodu pretvorbe"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Znak izven obmoÄja za UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
@@ -6196,7 +6264,7 @@ msgstr[1] "%u bajt"
msgstr[2] "%u bajta"
msgstr[3] "%u bajti"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6206,7 +6274,7 @@ msgstr[2] "%u bita"
msgstr[3] "%u biti"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6216,7 +6284,7 @@ msgstr[2] "%s bajta"
msgstr[3] "%s bajti"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6230,32 +6298,32 @@ msgstr[3] "%s biti"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
@@ -6379,8 +6447,5 @@ msgstr "%.1f EB"
#~ msgid "Association creation not supported on win32"
#~ msgstr "Ustvarjanje asociativnih povezav ni podprto na win32 sistemih"
-#~ msgid "URIs not supported"
-#~ msgstr "naslovi URI niso podprti"
-
#~ msgid "Key file does not have key '%s'"
#~ msgstr "Datoteka s kljuÄem nima kljuÄa '%s'"
diff --git a/po/sr.po b/po/sr.po
index 5b1d96d46..7160e38fa 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -4,18 +4,18 @@
# Translators:
# Данило Шеган <danilo@gnome.org>, 2004–2005.
# Слободан Д. Средојевић <slobo@akrep.be>, 2006.
-# Милош Поповић <gpopac@gmail.com>, 2010–2015.
-# Марко Ðœ. КоÑтић <marko.m.kostic@gmail.com>, 2016.
# Бранко Кокановић <branko.kokanovic@gmail.com>, 2010.
+# Милош Поповић <gpopac@gmail.com>, 2010–2015.
# МироÑлав Ðиколић <miroslavnikolic@rocketmail.com>, 2011–2022.
+# Марко Ðœ. КоÑтић <marko.m.kostic@gmail.com>, 2016.
msgid ""
msgstr ""
"Project-Id-Version: 2.8\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-02-22 17:38+0000\n"
-"PO-Revision-Date: 2022-03-03 05:32+0200\n"
+"POT-Creation-Date: 2022-03-10 19:46+0000\n"
+"PO-Revision-Date: 2022-03-17 07:56+0200\n"
"Last-Translator: МироÑлав Ðиколић <miroslavnikolic@rocketmail.com>\n"
-"Language-Team: Serbian <(nothing)>\n"
+"Language-Team: Serbian <gnome-sr@googlegroups.org>\n"
"Language: sr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -24,6 +24,18 @@ msgstr ""
"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Project-Style: gnome\n"
+#: gio/gappinfo.c:333
+#| msgid "Setting attribute %s not supported"
+msgid "Setting default applications not supported yet"
+msgstr "ПоÑтављање оÑновних програма још није подржано"
+
+#: gio/gappinfo.c:366
+#| msgid "Setting attribute %s not supported"
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"ПоÑтављање програма као што је поÑледњи пут коришћен за врÑту није још "
+"подржано"
+
#: gio/gapplication.c:500
msgid "GApplication options"
msgstr "Опције Гпрограма"
@@ -46,7 +58,7 @@ msgid "Replace the running instance"
msgstr "Замени покренути примерак"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Штампа помоћ"
@@ -58,7 +70,7 @@ msgstr "[ÐÐРЕДБÐ]"
msgid "Print version"
msgstr "ИÑпиÑује издање"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "ИÑпиÑује податке о издању и излази"
@@ -121,8 +133,8 @@ msgstr "Ðаредба за коју ће иÑпиÑати опширнију п
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Одредник програма у запиÑу Д-Ñабирнице (нпр: „org.example.viewer“)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "ДÐТОТЕКÐ"
@@ -149,7 +161,7 @@ msgstr "ПÐРÐМЕТÐР"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Изборни параметар за призивање радње, у запиÑу Гваријанта"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -163,7 +175,7 @@ msgid "Usage:\n"
msgstr "Употреба:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Ðргументи:\n"
@@ -286,7 +298,7 @@ msgstr "Ток је већ затворен"
msgid "Truncate not supported on base stream"
msgstr "Ðије подржано ÑаÑецање оÑновног тока"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -307,7 +319,7 @@ msgstr "Ðема довољно меÑта у одредишту"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "ÐеиÑправан низ бајтова у улазу који претварам"
@@ -317,7 +329,7 @@ msgstr "ÐеиÑправан низ бајтова у улазу који пре
msgid "Error during conversion: %s"
msgstr "Грешка приликом претварања: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Ðије подржано покретање уз могућноÑÑ‚ отказивања"
@@ -331,7 +343,7 @@ msgstr "Претварање из Ñкупа знакова „%s“ у „%s“
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Ðе могу да покренем претварање из „%s“ у „%s“"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "%s врÑта"
@@ -345,23 +357,23 @@ msgstr "Ðепозната врÑта"
msgid "%s filetype"
msgstr "%s врÑта датотеке"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "Г-акредитиви Ñадрже неиÑправне податке"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "Гуверења ниÑу подржана на оперативном ÑиÑтему"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Ðемате подршку за Гуверења на овој платформи"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "Гуверења не Ñадрже ИБ процеÑа на овом оперативном ÑиÑтему"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Заваравање уверења није могуће на овом оперативном ÑиÑтему"
@@ -369,17 +381,17 @@ msgstr "Заваравање уверења није могуће на овом
msgid "Unexpected early end-of-stream"
msgstr "Ðеочекиван, преран крај тока"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Кључ „%s“ није подржан унутар адреÑе „%s“"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Безначајна комбинација кључ/вредноÑÑ‚ унутар адреÑе „%s“"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -388,28 +400,28 @@ msgstr ""
"ÐдреÑа „%s“ је неиÑправна (потребна Ñамо једна путања, директоријум, "
"привремени директоријум или апÑтрактни кључ)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Грешка унутар адреÑе „%s“ — оÑобина „%s“ није иÑправна"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Ðепознати или неподржани Ð¿Ñ€ÐµÐ½Ð¾Ñ â€ž%s“ за адреÑе „%s“"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "Елемент адреÑе „%s“ не Ñадржи две тачке (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "Ðазив транÑпорта у елементу адреÑе „%s“ не Ñме бити празан"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -417,7 +429,7 @@ msgid ""
msgstr ""
"Пар кључ/вредноÑÑ‚ %d, „%s“, у елементу адреÑе „%s“ не Ñадржи знак једнакоÑти"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
@@ -425,7 +437,7 @@ msgstr ""
"Пар кључ/вредноÑÑ‚ %d, „%s“, у елементу адреÑе „%s“ не Ñме задржати празан "
"кључ"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -434,7 +446,7 @@ msgstr ""
"Грешка при неизбегавању кључа или вредноÑти у пару Кључ/ВредноÑти %d, „%s“, "
"у елементу адреÑе „%s“"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -443,84 +455,85 @@ msgstr ""
"Грешка у адреÑи „%s“ — ЈуникÑов Ð¿Ñ€ÐµÐ½Ð¾Ñ Ð·Ð°Ñ…Ñ‚ÐµÐ²Ð° поÑтављање кључа "
"„path“ (путања) или „abstract“ (резиме)"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr ""
"Грешка унутар адреÑе „%s“ — атрибут домаћина недоÑтаје или је неиÑправан"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "Грешка унутар адреÑе „%s“ — порт недоÑтаје или је неиÑправан"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Грешка унутар адреÑе „%s“ — атрибут датотеке једнократних Ñлучајних бројева "
"недоÑтаје или је неиÑправан"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Грешка у Ñамопокретању: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr ""
"Грешка приликом отварања датотеке једнократних Ñлучајних бројева „%s“: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Грешка при читању датотеке једнократних Ñлучајних бројева „%s“: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"Грешка при читању датотеке једнократних Ñлучајних бројева „%s“, очекивано 16 "
"бајтова, а добијено %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr ""
"Грешка приликом упиÑа Ñадржаја датотеке једнократних Ñлучајних бројева „%s“ "
"у ток:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "Дата адреÑа је празна"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Ðе могу да покренем магиÑтралу порука када подешавам јиб"
+#| msgid "Cannot spawn a message bus when setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "Ðе могу да изродим магиÑтралу поруке када је поÑтављено „AT_SECURE“"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "Ðе могу да покренем магиÑтралу порука без идентификације машине: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Ðе могу да Ñамопокренем Д-Ñабирницу без „X11 $DISPLAY“"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Грешка при покретању наредбе „%s“: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Ðе могу да одредим адреÑу магиÑтрале ÑеÑије (није направљено за овај "
"оперативни ÑиÑтем)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7334
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -529,7 +542,7 @@ msgstr ""
"Ðе могу да одредим адреÑу магиÑтрале ÑеÑије из променљиве окружења "
"DBUS_STARTER_BUS_TYPE — непозната вредноÑÑ‚ „%s“"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7343
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -537,7 +550,7 @@ msgstr ""
"Ðе могу да одредим адреÑу магиÑтрале ÑеÑије јер није поÑтављена променљива "
"окружења DBUS_STARTER_BUS_TYPE"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Ðепознат тип магиÑтрале %d"
@@ -566,12 +579,12 @@ msgstr "КориÑнички ИБ-ови морају бити иÑти и за
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Поништено преко GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Грешка приликом добављања података за директоријум „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -579,39 +592,39 @@ msgstr ""
"Овлашћења фаÑцикле „%s“ Ñу неиÑправна. Очекивана вредноÑÑ‚ је била 0700, а "
"добијено је 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Грешка Ñтварања директоријума „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Радња није подржана"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Грешка приликом отварања привеÑка кључева „%s“ за читање: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "Линија %d привеÑка кључева на „%s“ Ñа Ñадржајем „%s“ није иÑправна"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
"Први токен линије %d привеÑка кључева на „%s“ Ñа Ñадржајем „%s“ није иÑправан"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -619,37 +632,37 @@ msgstr ""
"Други токен линије %d привеÑка кључева на „%s“ Ñа Ñадржајем „%s“ није "
"иÑправан"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "ÐиÑам нашао колачић Ñа идентификацијом %d у привеÑку кључева на „%s“"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Грешка при прављењу датотеке закључавања „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Грешка при бриÑању заоÑтале датотеке закључавања „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Грешка приликом затварања (неповезане) датотеке закључавања „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Грешка приликом одвезивању датотеке закључавања „%s“: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Грешка приликом отварања привеÑка кључева „%s“ за пиÑање: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Додатно, отпуштање кључа Ñа „%s“ такође није уÑпело: %s) "
@@ -750,30 +763,30 @@ msgstr "Поддрво је већ извезено за %s"
#: gio/gdbusconnection.c:7282
#, c-format
msgid "Object does not exist at path “%sâ€"
-msgstr "Објекат не поÑтоји на путањи „%s“"
+msgstr "Објекат не поÑтоји у путањи „%s“"
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "врÑта је ÐЕИСПРÐÐ’ÐÐ"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "Порука ПОЗИВÐ_МЕТОДÐ: недоÑтају поља заглавља ПУТÐЊРили ЧЛÐÐ"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "Порука РЕЗУЛТÐТ_МЕТОДÐ: недоÑтаје поље заглавља ОДГОВОРИ_СЕРИЈСКИ"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr ""
"Порука ГРЕШКЕ: недоÑтају поља заглавља ОДГОВОРИ_СЕРИЈСКИ или ÐÐЗИВ_ГРЕШКЕ"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "Порука СИГÐÐЛÐ: недоÑтају поља заглавља ПУТÐЊÐ, СУЧЕЉЕ или ЧЛÐÐ"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -781,7 +794,7 @@ msgstr ""
"Порука СИГÐÐЛÐ: поље заглавља ПУТÐЊРкориÑти резервиÑану вредноÑÑ‚ „/org/"
"freedesktop/DBus/Local“"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -789,7 +802,7 @@ msgstr ""
"Порука СИГÐÐЛÐ: поље заглавља СУЧЕЉЕ кориÑти резервиÑану вредноÑÑ‚ „org."
"freedesktop.DBus.Local“"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
@@ -798,12 +811,12 @@ msgstr[1] "Покушах да читам %lu бајта, али добих Ñа
msgstr[2] "Покушах да читам %lu бајтова, али добих Ñамо %lu"
msgstr[3] "Покушах да читам један бајт, али добих Ñамо %lu"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "Очекивао Ñам NUL бајт поÑле ниÑке „%s“, али Ñам нашао бајт %d"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -812,21 +825,21 @@ msgstr ""
"Очекивах иÑправну УТФ-8 ниÑку, али нађох неиÑправне бајтове на бајт померају "
"%d (дужина ниÑке је %d). ИÑправна ниÑка до тог дела је била „%s“"
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "ВредноÑÑ‚ је угнеждена предубоко"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Рашчлањена вредноÑÑ‚ „%s“ није иÑправна путања објекта Д-магиÑтрале"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Рашчлањена вредноÑÑ‚ „%s“ није иÑправан Ð¿Ð¾Ñ‚Ð¿Ð¸Ñ Ð”-магиÑтрале"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -843,7 +856,7 @@ msgstr[3] ""
"Ðаишао Ñам на низ дужине једног бајта. Ðајвећа дужина је 2<<26 бајтова (64 "
"MiB)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -852,17 +865,17 @@ msgstr ""
"Ðаиђох на низ врÑте „a%c“, очекивах да је дужина умножак од %u бајта, али "
"нађох да је дуг %u бајта"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
msgstr "Празне Ñтруктуре (н-торке) ниÑу дозвољене у Д-Ñабирници"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr ""
"Рашчлањена вредноÑÑ‚ „%s“ за варијанту није иÑправан Ð¿Ð¾Ñ‚Ð¿Ð¸Ñ Ð”-магиÑтрале"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
@@ -870,7 +883,7 @@ msgstr ""
"Грешка при деÑеријализацији Гваријанта Ñа ниÑком врÑте „%s“ из жичаног "
"формата Д-магиÑтрале"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -879,27 +892,27 @@ msgstr ""
"ÐеиÑправна вредноÑÑ‚ за крајњоÑÑ‚. Очекивао Ñам 0x6c („l“) или 0x42 („Bд) али "
"Ñам нашао вредноÑÑ‚ 0x%02x"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "ÐеиÑправна главно издање протокола. Очекивано 1, али нађено %d"
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "ÐŸÐ¾Ñ‚Ð¿Ð¸Ñ Ð·Ð°Ð³Ð»Ð°Ð²Ñ™Ð° је пронађен али он није врÑте потпиÑ"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr "ÐŸÐ¾Ñ‚Ð¿Ð¸Ñ Ð·Ð°Ð³Ð»Ð°Ð²Ñ™Ð° Ñа потпиÑом „%s“ је нађен, али је тело поруке празно"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr ""
"Рашчлањена вредноÑÑ‚ „%s“ није иÑправан Ð¿Ð¾Ñ‚Ð¿Ð¸Ñ Ð”-магиÑтрале (за тело поруке)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -908,11 +921,11 @@ msgstr[1] "Ðема заглавља потпиÑа у поруци, али те
msgstr[2] "Ðема заглавља потпиÑа у поруци, али тело поруке има %u бајтова"
msgstr[3] "Ðема заглавља потпиÑа у поруци, али тело поруке има један бајт"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Ðе могу да деÑеријализујем поруку: "
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
@@ -920,75 +933,75 @@ msgstr ""
"Грешка при Ñеријализацији Гваријанта Ñа ниÑком врÑте „%s“ из жичаног формата "
"Д-магиÑтрале"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr ""
"Број опиÑника датотеке у поруци (%d) Ñе разликује од заглавља поља (%d)"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Ðе могу да Ñеријализујем поруку: "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "Тело поруке има Ð¿Ð¾Ñ‚Ð¿Ð¸Ñ â€ž%s“, али недоÑтаје заглавље потпиÑа"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
"“%sâ€"
msgstr "Тело поруке има тип потпиÑа „%s“, али Ð¿Ð¾Ñ‚Ð¿Ð¸Ñ Ñƒ пољу заглавља је „%s“"
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "Тело поруке је празно,,, али је Ð¿Ð¾Ñ‚Ð¿Ð¸Ñ Ñƒ пољу заглавља „(%s)“"
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Добијена је грешка Ñа телом поруке типа „%s“"
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Добијена је грешка Ñа празним телом поруке"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Упишите било који знак да затворите овај прозор)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Д-магиÑтрала ÑеÑије није покренута, Ñамопокретање није уÑпело"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Ðе могу да добавим профил физичких делова: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Ðе могу да учитам „%s“ или „%s“: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Грешка при позиву покрени уÑлугу према називу за %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Ðеочекиван одговор %d од StartServiceByName(„%s“) метода"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1046,67 +1059,67 @@ msgstr ""
"\n"
"КориÑтите „%s ÐÐРЕДБР--help“ да добијете помоћ за појединачне наредбе.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Грешка: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Грешка при рашчлањивању XML-а добијеног иÑпитивањем: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Грешка: „%s“ није иÑправан назив\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Грешка: %s није иÑправна путања до објеката\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Повезивање на ÑиÑтемÑку магиÑтрали"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Повезивање на магиÑтралу ÑеÑије"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Повезивање на задату Д-Ð±Ð°Ñ Ð°Ð´Ñ€ÐµÑу"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Опције крајње тачке везе:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Опције које одређују крајњу тачку везе"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Ðије наведена крајња тачка везе"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Ðаведено више крајњих тачака везе"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr ""
"Упозорење: Према подацима добијеним иÑпитивањем, Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÑ˜Ñ â€ž%s“ не поÑтоји\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1115,160 +1128,165 @@ msgstr ""
"Упозорење: Према подацима добијеним иÑпитивањем, метод „%s“ не поÑтоји на "
"интерфејÑу „%s“\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Опционална деÑтинација Ñигнала (јединÑтвено име)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Путања објекта за емитовање Ñигнала"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Ðазив Ñигнала и Ñучеља"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Емитује Ñигнал."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Грешка у повезивању: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Грешка: „%s“ није иÑправан назив јединÑтвене магиÑтрале.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Грешка: Ðије изабрана путања до објекта\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Грешка: Име Ñигнала није одређено\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Грешка: Име Ñигнала „%s“ није одређено\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Грешка: „%s“ није иÑправан назив Ñучеља\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Грешка: „%s“ није иÑправан назив члана\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Грешка при обради параметра %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Грешка иÑпирања везе: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Ðазив одредишта на коме треба позвати метод"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Путања објекта на коме треба позвати метод"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Име метода и интерфејÑа"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Време иÑтека у Ñекундама"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+#| msgid "Show information about locations"
+msgid "Allow interactive authorization"
+msgstr "Дозвољава међудејÑтвено овлашћивање"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Позивање метода на удаљеном објекту."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Грешка: Ðије изабрано одредиште\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Грешка: „%s“ није иÑправан назив магиÑтрале\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Грешка: Име начина није одређено\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Грешка: Име начина „%s“ није одређено\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Грешка при обради параметра %d врÑте „%s“: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Грешка додавања ручке %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Ðазив одредишта за иÑпитивање"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Путања објекта за иÑпитивање"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Штампа ИкÑМЛ"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "ПреиÑпитује чланове"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Само штампа ÑвојÑтва"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "ИÑпитајте удаљени објекат."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Ðазив одредишта за надгледање"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Путања објекта за надгледање"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Ðадгледање удаљеног објекта."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Грешка: не могу да надгледам везу на Ñабирници која није за поруке\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "УÑлуга за активирање пре чекања на другу (добро знан назив)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1276,63 +1294,68 @@ msgstr ""
"Време за чекање пре излаÑка Ñа грешком (Ñекунде); 0 — без временÑког рока "
"(оÑновно)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[ОПЦИЈÐ…] ÐÐЗИВ_ÐœÐГИСТРÐЛЕ"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Чека да Ñе појави назив магиÑтрале."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Грешка: УÑлуга за активирање мора бити наведена.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "Грешка: УÑлуга за чекање мора бити наведена.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Грешка: Превише аргумената.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Грешка: „%s“ није иÑправан назив добро знане магиÑтрале.\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "ÐиÑте овлашћени да измените поÑтавке прочишћавања"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Ðеименовано"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "Датотека за радну површ не Ñадржи Exec уноÑ"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Ðе могу да нађем терминал ради покретања овог програма"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr "Ðе могу да направим фаÑциклу за кориÑникова подешавања %s: %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Ðе могу да направим фаÑциклу за кориÑникова МИМЕ подешавања %s: %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "Подацима о програму недоÑтаје идентификатор"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Ðе могу да направим датотеку радне површи %s"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Произвољне одреднице за %s"
@@ -1360,7 +1383,7 @@ msgstr "уређај не подржава „покрени“"
msgid "drive doesn’t implement stop"
msgstr "уређај не подржава „зауÑтави“"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "ТЛС позадинац не подржава добаваљање ТЛС повезивања"
@@ -1401,73 +1424,73 @@ msgstr "Очекивано је ГЕмблем за иконицу ГЕмблеÐ
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Садржано монтирање не поÑтоји"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Ðе могу да умножим преко директоријума"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Ðе могу да умножим директоријум преко директоријума"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Циљна датотека већ поÑтоји"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Ðе могу да умножим директоријум и његов Ñадржај"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Дељење није подржано"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Грешка приликом дељења датотеке: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Ðије подржано умножавање (reflink/clone) између монтираних уређаја"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Умножавање (reflink/clone) није подржано или је неиÑправно"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Умножавање (reflink/clone) није подржано или не ради"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Ðе могу да умножим Ñпецијалну датотеку"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Дата је неиÑправна Ñимболичка веза"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Симболичке везе ниÑу подржане"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Ðије подржано Ñмеће"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Имена датотека не могу да Ñадрже „%c“"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "није подржано монтирање диÑка"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Ðи један програм не може да отвори ову датотеку"
@@ -1512,7 +1535,7 @@ msgstr "СаÑецање није дозвољену над улазним тоÐ
msgid "Truncate not supported on stream"
msgstr "СаÑецање није дозвољено над током"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "ÐеиÑправно име домаћина"
@@ -1599,7 +1622,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Ðе могу да обрадим „%s“ као маÑку ИП адреÑе"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Ðема довољно меÑта за адреÑу утичнице"
@@ -2437,15 +2460,15 @@ msgstr "Грешка при Ñажимању датотеке „%s“"
msgid "text may not appear inside <%s>"
msgstr "текÑÑ‚ не може да Ñе појављује унутар <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Приказује издање програма и излази"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Ðазив излазне датотеке"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2453,45 +2476,45 @@ msgstr ""
"Директоријуми из којих ће датотеке дефиниÑане у ДÐТОТЕЦИ бити учитане "
"(подразумевано: тренутни директоријум)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "ДИРЕКТОРИЈУМ"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr "Ствара излаз у формату изабраном проширењем назива циљне датотеке"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Ствара заглавље извора"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr "Ствара изворни код коришћен да повеже датотеку реÑурÑа у ваш код"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Ствара ÑпиÑак завиÑноÑти"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Ðазив датотеке завиÑноÑти за Ñтварање"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Укључује лажне мете у Ñтвореној датотеци завиÑноÑти"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Ðе Ñтвара ÑамоÑтално и не бележи извор"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Ðе извози функције; објављује их „Г_ГÐУЦ_УÐУТРÐШЊИМ“"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2499,11 +2522,15 @@ msgstr ""
"Ðе угнежђујте реÑурÑне податке у Це датотеку, умеÑто тога претпоÑтавите да "
"је повезан (линкована) Ñпоља"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "Ðазив Ц одредника коришћеног за Ñтворени изворни код"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "Ц преводилац мете (оÑновно: променљива ЦЦ окружења)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2513,7 +2540,7 @@ msgstr ""
"Датотеке одреднице реÑурÑа имају проширење „.gresource.xml“,\n"
"а датотеке реÑурÑа имају проширење „.gresource“."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Треба да наведете тачно један назив датотеке\n"
@@ -3305,7 +3332,7 @@ msgid "Error truncating file: %s"
msgstr "Грешка при ÑаÑецању датотеке: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Грешка отварања датотеке „%s“: %s"
@@ -3327,7 +3354,7 @@ msgstr "Датотека је измењена Ñпољним програмом
msgid "Error removing old file: %s"
msgstr "Грешка приликом уклањања Ñтаре датотеке: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Ðије иÑправно одређена врÑта ГПретраге"
@@ -3339,25 +3366,25 @@ msgstr "ÐеиÑправан захтев претраге"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Ðе могу да Ñкратим улазни ток ГМеморије"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Величина излазне меморије Ñе не може променити"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "ÐиÑам уÑпеода променим величину излазног меморијÑког тока"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
msgstr "Има више меморије за ÑƒÐ¿Ð¸Ñ Ð½ÐµÐ³Ð¾ што има меÑта у датој адреÑи"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Захтевано је премотавање на део пре почетка тока"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Захтевано је премотавање на део након завршетка тока"
@@ -3460,18 +3487,18 @@ msgstr "Збир вектора доÑтављених у „%s“ је прев
msgid "Source stream is already closed"
msgstr "Изворни ток је већ затворен"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Грешка у разрешавању „%s“: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "Ставка „%s“ није израђена"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "ÐеиÑправан домен"
@@ -3586,7 +3613,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " ОДЕЉÐК Ðазив (опционално) елф одељка\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " ÐÐРЕДБРÐаредба (опционално) за објашњавање\n"
@@ -3618,7 +3645,7 @@ msgstr "ПУТÐЊÐ"
msgid " PATH A resource path\n"
msgstr " ПУТÐЊРПутања реÑурÑа\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Ðема такве шеме „%s“\n"
@@ -3649,35 +3676,35 @@ msgstr "Путања мора да Ñе заврши коÑом цртом (/)\n
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Путања не Ñме да Ñадржи две ÑуÑедне коÑе црте (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "Обезбеђена вредноÑÑ‚ је изван важећег опÑега\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "У овај кључ Ñе не може упиÑивати\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Ðаводи инÑталиране (непремеÑтљиве) шеме"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Ðаводи инÑталиране премеÑтљиве шеме"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Ðаводи кључеве у ШЕМИ"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "ШЕМР[:ПУТÐЊÐ]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Ðаводи проиÑтекле из ШЕМЕ"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3685,48 +3712,48 @@ msgstr ""
"Ðаводи кључеве и вредноÑти, рекурзивно\n"
"Ðко СХЕМРније дата, наводи Ñве кључеве\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[ШЕМÐ[:ПУТÐЊÐ]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Добавља вредноÑÑ‚ кључа"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "ШЕМР[:ПУТÐЊÐ] КЉУЧ"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Пропитује опÑег важећих вредноÑти за КЉУЧ"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Пропитује Ð¾Ð¿Ð¸Ñ Ð·Ð° КЉУЧ"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "ПоÑтавља вредноÑÑ‚ КЉУЧРна ВРЕДÐОСТ"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "ШЕМР[:ПУТÐЊÐ] КЉУЧ ВРЕДÐОСТ"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Поново поÑтавља КЉУЧ на подразумевану вредноÑÑ‚"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Враћа Ñве кључеве у СХЕМИ на оÑновне вредноÑти"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Проверава да ли је КЉУЧ упиÑив"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3736,11 +3763,11 @@ msgstr ""
"Ðко није наведен ниједан КЉУЧ, прати Ñве кључеве у ШЕМИ.\n"
"КориÑтите „^C“ да зауÑтавите праћење.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "ШЕМР[:ПУТÐЊÐ] [КЉУЧ]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3788,7 +3815,7 @@ msgstr ""
"КориÑтите „gsettings help ÐÐРЕДБГ да добијете детаљнију помоћ.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3803,11 +3830,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " ШЕМÐДИР Директоријум за тражење додатних шема\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3815,213 +3842,213 @@ msgstr ""
" ШЕМРИме шеме\n"
" ПУТÐЊРПутања, за премеÑтиве шеме\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " КЉУЧ (изборни) кључ унутар шеме\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " КЉУЧ Кључ унутар шеме\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " ВРЕДÐОСТ ВредноÑÑ‚ за подешавање\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Ðе могу да учитам шеме из „%s“: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Ðиједна шема није инÑталирана\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Дат је празан назив шеме\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Ðема таквог кључа „%s“\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "ÐеиÑправна утичница, није покренуто"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "ÐеиÑправна утичница, покретање није уÑпело због: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Утичница је већ затворена"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "ИÑтекло време за У/И утичнице"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "правим ГУтичницу из фд-а: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Ðе могу да направим утичницу: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Задата је непозната породица"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Задат је непознати протокол"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "Ðе могу да кориÑтим датаграм радње над недатаграмÑком утичницом."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Ðе могу да кориÑтим датаграмÑке радње над утичницом Ñа подешеним иÑтицањем "
"времена."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "не могу да добијем локалну адреÑу: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "не могу да добијем удаљену адреÑу: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "не могу да Ñлушам: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Грешка при повезивању на адреÑу %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Грешка приликом приÑтупања групи вишеÑтруког емитовања: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Грешка приликом напуштања групе вишеÑтруког емитовања: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Ðема подршке за поÑебно вишеÑтруко емитовање извора"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Ðије подржана породица утичнице"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "поÑебни извор није ИПв4 адреÑа"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Ðазив интерфејÑа је предугачак"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Ð˜Ð½Ñ‚ÐµÑ€Ñ„ÐµÑ˜Ñ Ð½Ð¸Ñ˜Ðµ нађен: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "Ðема подршке за поÑебно вишеÑтруко емитовање ИПв4 извора"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "Ðема подршке за поÑебно вишеÑтруко емитовање ИПв6 извора"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "грешка у прихватању везе: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Повезивање је у току"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Ðе могу да добијем грешку на чекању: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Грешка у примању података: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Грешка у Ñлању података: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Ðе могу да угаÑим утичницу: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Грешка у затварању утичнице: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Чекам уÑлов утичнице: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Ðе могу да пошаљем поруку: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Вектори поруке Ñу превелики"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Грешка при Ñлању поруке: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "Порука управљања Гутичницом није подржана на Виндоузу"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Грешка при примању поруке: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Ðе могу да прочитам уверења утичнице: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "г_утичница_добавља_уверења није примењена за овај оперативни ÑиÑтем"
@@ -4039,11 +4066,11 @@ msgstr "Ðе могу да Ñе повежем на „%s“: "
msgid "Could not connect: "
msgstr "Ðе могу да Ñе повежем: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "ПоÑредовање преко везе која није ТЦП није подржано."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Протокол поÑредника „%s“ није подржан."
@@ -4142,13 +4169,14 @@ msgstr "СОЦКСв5 поÑредник не подржава дати тип Ð
msgid "Unknown SOCKSv5 proxy error."
msgstr "Ðепозната грешка СОЦКСв5 поÑредника."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr "ÐиÑам уÑпео да направим Ñпојку за везу Ñа потпроцеÑом (%s)"
#: gio/gtestdbus.c:619
#, c-format
+#| msgid "Seek not supported on stream"
msgid "Pipes are not supported in this platform"
msgstr "Спојке ниÑу подржане на овој платформи"
@@ -4183,27 +4211,32 @@ msgstr "Привремено не могу да разрешим „%s“"
msgid "Error resolving “%sâ€"
msgstr "Грешка у разрешивању „%s“"
-#: gio/gtlscertificate.c:431
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "ÐиÑам пронашао ПЕМ шифровани приватни кључ"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Ðе могу да дешифрујем ПЕМ шифровани приватни кључ"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Ðе могу да рашчланим ПЕМ шифровани приватни кључ"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "ÐиÑам пронашао ПЕМ шифровано уверење"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Ðе могу да рашчланим ПЕМ шифровано уверење"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+#| msgid "This GTlsBackend does not support creating PKCS #11 certificates"
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "Тренутни ТЛС позадинац не подржава ПКЦС #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "Овај Ð“Ð¢Ð»Ñ Ð¿Ð¾Ð·Ð°Ð´Ð¸Ð½Ð°Ñ† не подржава Ñтварање ПКЦС #11 уверења"
@@ -4229,7 +4262,12 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "Унешена лозинка је погрешна."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+#| msgid "Setting attribute %s not supported"
+msgid "Sending FD is not supported"
+msgstr "Слање опиÑника датотеке није подржано"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
@@ -4238,11 +4276,11 @@ msgstr[1] "Очекујем једну контролну поруку, доби
msgstr[2] "Очекујем једну контролну поруку, добио Ñам %d"
msgstr[3] "Очекујем једну контролну поруку, добио Ñам %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Ðеочекивана врÑта подређених података"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
@@ -4251,38 +4289,43 @@ msgstr[1] "Очекујем један опиÑник датотеке, али Ð
msgstr[2] "Очекујем један опиÑник датотеке, али добих %d\n"
msgstr[3] "Очекујем један опиÑник датотеке, али добих %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Примљен је неиÑправни fd"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+#| msgid "URIs not supported"
+msgid "Receiving FD is not supported"
+msgstr "Примање опиÑника датотеке није подржано"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Грешка у Ñлању акредитива: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr ""
"Грешка приликом провере да ли је „SO_PASSCRED“ омогућен за утичницу: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Грешка приликом омогућавања „SO_PASSCRED“: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Очекивано да Ñе прочита један бајт за добијање акредитива, али је прочитано "
"нула бајтова"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Ðе очекивах контролну поруку, али добих %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Грешка приликом онемогућавања „SO_PASSCRED“: %s"
@@ -4298,7 +4341,7 @@ msgstr "Грешка приликом читања из опиÑивача даÑ
msgid "Error closing file descriptor: %s"
msgstr "Грешка приликом затварања опиÑника датотеке: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Корени ÑиÑтем датотека"
@@ -4309,7 +4352,7 @@ msgstr "Корени ÑиÑтем датотека"
msgid "Error writing to file descriptor: %s"
msgstr "Грешка приликом пиÑања у опиÑивач датотеке: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "ÐпÑтрактна ЈУÐИКС утичница адреÑа домена није подржана на овом ÑиÑтему"
@@ -4461,8 +4504,8 @@ msgstr "ÐиÑам уÑпеода проширим комадну линију â
msgid "Unrepresentable character in conversion input"
msgstr "Ðеприказив знак у уноÑу за претварање"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Ðепотпун низ знакова на крају улаза"
@@ -5038,16 +5081,16 @@ msgstr "Канал Ñе завршава делимичним знаком"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Ðе могу да читам без обраде у г_уи_каналу_читај_до_краја"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr ""
"Ðе могу да нађем иÑправну датотеку Ñа кључевима међу директоријумима претраге"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Ðије обична датотека"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5055,49 +5098,50 @@ msgstr ""
"Датотека Ñа кључевима Ñадржи ред „%s“ што не чини пар кључ-вредноÑÑ‚, групу "
"или примедбу"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "ÐеиÑправан назив групе: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Датотека Ñа кључевима не почиње групом"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "ÐеиÑправан назив кључа: %s"
+#| msgid "Invalid key name: %s"
+msgid "Invalid key name: %.*s"
+msgstr "ÐеиÑправан назив кључа: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Датотека Ñа кључевима Ñадржи неподржано кодирање „%s“"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Датотека Ñа кључевима нема групу „%s“"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Датотека Ñа кључевима не Ñадржи кључ „%s“ у групи „%s“"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "Датотека Ñа кључевима Ñадржи кључ „%s“ вредноÑти „%s“ што није УТФ-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr "Датотека Ñа кључевима Ñадржи кључ „%s“ неразумљиве вредноÑти."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5105,36 +5149,36 @@ msgid ""
msgstr ""
"Датотека Ñа кључевима Ñадржи кључ „%s“ у групи „%s“ неразумљиве вредноÑти."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "Кључ „%s“ у групи „%s“ има вредноÑÑ‚ „%s“ где је очекивано %s"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Датотека Ñа кључевима Ñадржи знак иÑтицања на крају реда"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Датотека Ñа кључевима Ñадржи недозвољен низ иÑтицања „%s“"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "ВредноÑÑ‚ „%s“ Ñе не може Ñматрати бројем."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "Целобројна вредноÑÑ‚ „%s“ је изван опÑега"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "ВредноÑÑ‚ „%s“ Ñе не може Ñматрати реалним бројем једноÑтруке тачноÑти."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "ВредноÑÑ‚ „%s“ Ñе не може Ñматрати иÑтинитоÑном."
@@ -5429,7 +5473,7 @@ msgstr "Грешка при рашчлањивању могућноÑти %s"
msgid "Missing argument for %s"
msgstr "ÐедоÑтаје аргумент за %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Ðепозната опција %s"
@@ -5832,123 +5876,137 @@ msgstr "Садржај празан (или Ñадржи Ñамо белине)"
msgid "Failed to read data from child process (%s)"
msgstr "ÐеуÑпело читање података од потпроцеÑа (%s)"
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "Ðеочекивана грешка приликом читања података из дете процеÑа (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Ðеочекивана грешка у функцији „waitpid()“ (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "ÐŸÐ¾Ñ‚Ð¿Ñ€Ð¾Ñ†ÐµÑ Ñ˜Ðµ изашао Ñа шифром %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "ÐŸÐ¾Ñ‚Ð¿Ñ€Ð¾Ñ†ÐµÑ Ñ˜Ðµ убијен Ñигналом %ld"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "ÐŸÐ¾Ñ‚Ð¿Ñ€Ð¾Ñ†ÐµÑ Ñ˜Ðµ зауÑтављен Ñигналом %ld"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "ÐŸÐ¾Ñ‚Ð¿Ñ€Ð¾Ñ†ÐµÑ Ñ˜Ðµ неочекивано прекинут"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "ÐиÑам уÑпео да читам из Ñпојке порода (%s)"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "ÐиÑам уÑпео да извршим Ð¿Ð¾Ñ‚Ð¿Ñ€Ð¾Ñ†ÐµÑ â€ž%s“ (%s)"
# за Ñада овако, можда гранање, умножавање? виљушкање ;-)
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "ÐиÑам уÑпео да иÑцепим (%s)"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "ÐиÑам уÑпео да пређем у директоријум „%s“ (%s)"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "ÐиÑам уÑпео да извршим Ð¿Ð¾Ñ‚Ð¿Ñ€Ð¾Ñ†ÐµÑ â€ž%s“ (%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2550
+#, c-format
+#| msgid "Failed to open file “%sâ€: open() failed: %s"
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr ""
+"ÐиÑам уÑпео да отворим датотеку да поново мапирам опиÑника датотеке (%s)"
+
+#: glib/gspawn.c:2558
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "ÐиÑам уÑпео да преуÑмерим улаз или излаз потпроцеÑа (%s)"
+#| msgid "Failed to redirect output or input of child process (%s)"
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "ÐиÑам уÑпео да удвоÑтручим опиÑника датотеке за изрођени Ð¿Ñ€Ð¾Ñ†ÐµÑ (%s)"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "ÐиÑам уÑпео да иÑцепим Ð¿Ð¾Ñ‚Ð¿Ñ€Ð¾Ñ†ÐµÑ (%s)"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2575
#, c-format
#| msgid "Failed to read data from child process (%s)"
msgid "Failed to close file descriptor for child process (%s)"
-msgstr "ÐиÑам уÑпео да затворим опиÑника датотеке за Ð¿Ð¾Ñ‚Ð¿Ñ€Ð¾Ñ†ÐµÑ (%s)"
+msgstr "ÐиÑам уÑпео да затворим опиÑника датотеке за изрођени Ð¿Ñ€Ð¾Ñ†ÐµÑ (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Ðепозната грешка при извршавању потпроцеÑа „%s“"
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "Ðије уÑпео да прочита довољно података из цевке ка потпроцеÑу (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "ÐиÑам уÑпео да читам податке из потпроцеÑа"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "ÐиÑам уÑпео да извршим Ð¿Ð¾Ñ‚Ð¿Ñ€Ð¾Ñ†ÐµÑ (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+#| msgid "Failed to fork child process (%s)"
+msgid "Failed to dup() in child process (%s)"
+msgstr "ÐиÑам уÑпео да „dup()“ у изрођеном процеÑу (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Ðије иÑправан назив програма: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Ðије иÑправна ниÑка — члан вектора у %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Ðије иÑправна ниÑка у окружењу: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Ðије иÑправна радна фаÑцикла: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "ÐиÑам уÑпео да извршим помоћнички програм (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -5956,21 +6014,21 @@ msgstr ""
"Ðеочекивана грешка док Ñу у „g_io_channel_win32_poll()“ читани подаци из "
"потпроцеÑа"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Празна ниÑка није број"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "„%s“ није потпиÑан број"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Број „%s“ је ван граница [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "„%s“ није непотпиÑан број"
@@ -6031,168 +6089,168 @@ msgstr "Путања није апÑолутна, а оÑновна путања
msgid "Missing ‘=’ and parameter value"
msgstr "ÐедоÑтаје „=“ и вредноÑÑ‚ параметра"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "ÐиÑам уÑпео да доделим меморију"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Знак ван опÑега за УТФ-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Ðије иÑправан низ у уноÑу за претварање"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Знак ван опÑега за УТФ-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
@@ -6201,7 +6259,7 @@ msgstr[1] "%u бајта"
msgstr[2] "%u бајта"
msgstr[3] "Један бајт"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6211,7 +6269,7 @@ msgstr[2] "%u битова"
msgstr[3] "Један бит"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6221,7 +6279,7 @@ msgstr[2] "%s бајтова"
msgstr[3] "Један бајт"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6235,32 +6293,32 @@ msgstr[3] "Један бит"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
@@ -6380,9 +6438,6 @@ msgstr "%.1f EB"
#~ msgid "Association creation not supported on win32"
#~ msgstr "ÐиÑу подржане промене придруживања за win32"
-#~ msgid "URIs not supported"
-#~ msgstr "ÐдреÑе ниÑу подржане"
-
#~ msgid "Key file does not have key '%s'"
#~ msgstr "Датотека Ñа кључевима нема кључ „%s“"
diff --git a/po/sv.po b/po/sv.po
index e7ea646bf..e85290900 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -4,13 +4,14 @@
# Daniel Nylander <po@danielnylander.se>, 2006-2012.
# Sebastian Rasmussen <sebras@gmail.com>, 2014, 2015.
# Anders Jonsson <anders.jonsson@norsjovallen.se>, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022.
+# Luna Jernberg <droidbittin@gmail.com>, 2021, 2022.
#
msgid ""
msgstr ""
"Project-Id-Version: glib\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-01-26 19:23+0000\n"
-"PO-Revision-Date: 2022-01-26 21:25+0100\n"
+"POT-Creation-Date: 2022-03-22 15:19+0000\n"
+"PO-Revision-Date: 2022-03-22 16:33+0100\n"
"Last-Translator: Anders Jonsson <anders.jonsson@norsjovallen.se>\n"
"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
"Language: sv\n"
@@ -20,6 +21,14 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 3.0.1\n"
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Inställning av standardprogram stöds inte ännu"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr "Inställning av program som senast använt för typ stöds inte ännu"
+
#: gio/gapplication.c:500
msgid "GApplication options"
msgstr "GApplication-alternativ"
@@ -41,7 +50,7 @@ msgid "Replace the running instance"
msgstr "Ersätt den körande instansen"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Skriv ut hjälp"
@@ -53,7 +62,7 @@ msgstr "[KOMMANDO]"
msgid "Print version"
msgstr "Skriv ut version"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Skriv ut versionsinformation och avsluta"
@@ -115,8 +124,8 @@ msgstr "Kommandot att skriva ut detaljerad hjälp för"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Programidentifierare i D-Bus-format (t.ex: org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "FIL"
@@ -141,7 +150,7 @@ msgstr "PARAMETER"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Frivillig parameter till åtgärdsstarten, i GVariant-format"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -155,7 +164,7 @@ msgid "Usage:\n"
msgstr "Användning:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argument:\n"
@@ -278,7 +287,7 @@ msgstr "Strömmen är redan stängd"
msgid "Truncate not supported on base stream"
msgstr "Kapning stöds inte på basströmmen"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -299,7 +308,7 @@ msgstr "Inte tillräckligt med utrymme i målet"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Ogiltig bytesekvens i konverteringsindata"
@@ -309,7 +318,7 @@ msgstr "Ogiltig bytesekvens i konverteringsindata"
msgid "Error during conversion: %s"
msgstr "Fel vid konvertering: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Avbrytningsbar initiering stöds inte"
@@ -323,37 +332,37 @@ msgstr "Konvertering frÃ¥n teckentabellen â€%s†till â€%s†stöds inte"
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Kunde inte öppna konverteraren frÃ¥n â€%s†till â€%sâ€"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "%s-typ"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Okänd typ"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "%s-filtyp"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials innehåller ogiltiga data"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "GCredentials är inte implementerat för detta operativsystem"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Det finns inget stöd för GCredentials för din plattform"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "GCredentials innehåller inte ett process-ID för detta OS"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Inloggningsuppgiftsspoofning är inte möjligt i detta OS"
@@ -361,17 +370,17 @@ msgstr "Inloggningsuppgiftsspoofning är inte möjligt i detta OS"
msgid "Unexpected early end-of-stream"
msgstr "Oväntat tidig end-of-stream"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Nyckeln â€%s†stöds inte i adressposten â€%sâ€"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "Betydelselös kombination av nyckel/värde-par i adressposten â€%sâ€"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -380,28 +389,28 @@ msgstr ""
"Adressen â€%s†är ogiltig (behöver exakt en av sökväg, katalog, "
"temporärkatalog eller abstrakta nycklar)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Fel i adressen â€%s†— attributet â€%s†är felformulerat"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Transport â€%s†är okänd eller saknar stöd för adressen â€%sâ€"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "Adresselementet â€%s†innehÃ¥ller inte ett kolontecken (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "Transportnamn i adresselementet â€%s†fÃ¥r inte vara tomt"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -410,14 +419,14 @@ msgstr ""
"Nyckel/Värde-par %d, â€%sâ€, i adresselementet â€%s†innehÃ¥ller inte ett "
"likhetstecken"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
msgstr ""
"Nyckel/Värde-par %d, â€%sâ€, i adresselementet â€%s†fÃ¥r inte ha en tom nyckel"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -426,7 +435,7 @@ msgstr ""
"Fel vid borttagning av escape i nyckel eller värde i Nyckel/Värde-par %d, "
"â€%sâ€, i adresselementet â€%sâ€"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -435,77 +444,77 @@ msgstr ""
"Fel i adressen â€%s†— unix-transporten kräver att exakt en av nycklarna "
"â€path†eller â€abstract†har ställts in"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr "Fel i adressen â€%s†— värdattributet saknas eller är felformulerat"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "Fel i adressen â€%s†— portattributet saknas eller är felformulerat"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Fel i adressen â€%s†— attributet noncefile saknas eller är felformulerat"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Fel vid automatisk körning: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Fel vid öppning av nonce-filen â€%sâ€: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Fel vid läsning frÃ¥n nonce-filen â€%sâ€: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr "Fel vid läsning frÃ¥n nonce-filen â€%sâ€, förväntade 16 byte, fick %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "Fel vid skrivning av innehÃ¥ll i nonce-filen â€%s†till ström:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "Angivna adressen är tom"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "Kan inte starta en meddelandebuss med setuid satt"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "Kan inte starta en meddelandebuss när AT_SECURE har ställts in"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "Kan inte starta en meddelandebuss utan ett maskin-id: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Kan inte starta D-Bus automatiskt utan X11-miljövariabeln $DISPLAY"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Fel vid körning av kommandoraden â€%sâ€: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Kan inte fastställa adress för sessionsbuss (inte implementerat för detta "
"operativsystem)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -514,7 +523,7 @@ msgstr ""
"Kan inte fastställa bussadressen från miljövariabeln DBUS_STARTER_BUS_TYPE — "
"okänt värde â€%sâ€"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -522,7 +531,7 @@ msgstr ""
"Kan inte fastställa bussadress därför att miljövariabeln "
"DBUS_STARTER_BUS_TYPE inte är inställd"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Okänd busstyp %d"
@@ -551,12 +560,12 @@ msgstr "Användar-ID:n måste vara samma för motpart och server"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "Avbröts via GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Fel vid hämtning av information för katalogen â€%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -564,32 +573,32 @@ msgstr ""
"Rättigheter pÃ¥ katalogen â€%s†är felformulerade. Förväntade rättigheten "
"0700, fick 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "Fel vid skapandet av katalogen â€%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Åtgärden stöds inte"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Fel vid öppnandet av nyckelringen â€%s†för läsning: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "Rad %d av nyckelringen vid â€%s†med innehÃ¥ll â€%s†är felformulerad"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -597,7 +606,7 @@ msgstr ""
"Första token pÃ¥ rad %d av nyckelringen i â€%s†med innehÃ¥llet â€%s†är "
"felformulerad"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -605,57 +614,57 @@ msgstr ""
"Andra token pÃ¥ rad %d av nyckelringen i â€%s†med innehÃ¥llet â€%s†är "
"felformulerad"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Hittade inte kaka med id %d i nyckelringen vid â€%sâ€"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Fel vid skapandet av lÃ¥sfilen â€%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Fel vid borttagning av gamla lÃ¥sfilen â€%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "Fel vid stängning av (avlänkad) lÃ¥sfil â€%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "Fel vid avlänkning av lÃ¥sfilen â€%sâ€: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "Fel vid öppning av nyckelringen â€%s†för skrivning: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(I tillägg misslyckades även upplÃ¥sningen för â€%sâ€: %s) "
-#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "Anslutningen är stängd"
-#: gio/gdbusconnection.c:1903
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "Tidsgränsen uppnåddes"
-#: gio/gdbusconnection.c:2541
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"Flaggor som inte stöds påträffades vid konstruktion av en anslutning på "
"klientsidan"
-#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
@@ -663,104 +672,104 @@ msgstr ""
"Inget sÃ¥dant gränssnitt â€org.freedesktop.DBus.Properties†pÃ¥ objekt med "
"sökvägen %s"
-#: gio/gdbusconnection.c:4414
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "Ingen sÃ¥dan egenskap â€%sâ€"
-#: gio/gdbusconnection.c:4426
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "Egenskapen â€%s†är inte läsbar"
-#: gio/gdbusconnection.c:4437
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "Egenskapen â€%s†är inte skrivbar"
-#: gio/gdbusconnection.c:4457
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
"Fel vid inställning av egenskapen â€%sâ€: Förväntade typen â€%s†men fick â€%sâ€"
-#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
-#: gio/gdbusconnection.c:6760
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "Inget sÃ¥dan gränssnitt â€%sâ€"
-#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Inget sÃ¥dant gränssnitt â€%s†pÃ¥ objekt med sökvägen %s"
-#: gio/gdbusconnection.c:5100
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "Ingen sÃ¥dan metod â€%sâ€"
-#: gio/gdbusconnection.c:5131
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Typ av meddelande, â€%sâ€, matchar inte förväntade typen â€%sâ€"
-#: gio/gdbusconnection.c:5334
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Ett objekt är redan exporterat för gränssnittet %s vid %s"
-#: gio/gdbusconnection.c:5561
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Kunde inte hämta egenskap %s.%s"
-#: gio/gdbusconnection.c:5617
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Kunde inte sätta egenskap %s.%s"
-#: gio/gdbusconnection.c:5796
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "Metoden â€%s†returnerade typen â€%sâ€, men förväntade â€%sâ€"
-#: gio/gdbusconnection.c:6872
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "Metoden â€%s†pÃ¥ gränssnittet â€%s†med signaturen â€%s†finns inte"
-#: gio/gdbusconnection.c:6993
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Ett underträd har redan exporterats för %s"
-#: gio/gdbusconnection.c:7282
+#: gio/gdbusconnection.c:7266
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "Objektet finns inte pÃ¥ sökvägen â€%sâ€"
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "typ är OGILTIG"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "METHOD_CALL-meddelande: rubrikfältet PATH eller MEMBER saknas"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "METHOD_RETURN-meddelande: rubrikfältet REPLY_SERIAL saknas"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "FELmeddelande: rubrikfältet REPLY_SERIAL eller ERROR_NAME saknas"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "SIGNAL-meddelande: rubrikfältet PATH, INTERFACE eller MEMBER saknas"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -768,7 +777,7 @@ msgstr ""
"SIGNAL-meddelande: Rubrikfältet PATH använder det reserverade värdet /org/"
"freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -776,19 +785,19 @@ msgstr ""
"SIGNAL-meddelande: Rubrikfältet INTERFACE använder det reserverade värdet "
"org.freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "Ville läsa %lu byte men fick bara %lu"
msgstr[1] "Ville läsa %lu byte men fick bara %lu"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "Förväntade NUL-byte efter strängen â€%s†men hittade byte %d"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -798,21 +807,21 @@ msgstr ""
"(längd av strängen är %d). Den giltiga UTF-8-strängen fram till den punkten "
"var â€%sâ€"
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Värde nästlat för djupt"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Tolkat värde â€%s†är inte en giltig D-Bus-objektsökväg"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Tolkat värde â€%s†är inte en giltig D-Bus-signatur"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -823,7 +832,7 @@ msgstr[0] ""
msgstr[1] ""
"Påträffade array med längden %u byte. Maximal längd är 2<<26 byte (64 MiB)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -832,16 +841,16 @@ msgstr ""
"PÃ¥träffade array av typ â€a%câ€, förväntad att ha en längd som är en multipel "
"av %u byte, men visade sig vara %u byte lång"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
msgstr "Tomma strukturer (tupler) tillåts inte i D-Bus"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "Tolkat värde â€%s†för variant är inte en giltig D-Bus-signatur"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
@@ -849,7 +858,7 @@ msgstr ""
"Fel vid deserialisering av GVariant med typsträngen â€%s†frÃ¥n D-Bus-"
"transportformatet"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -858,38 +867,38 @@ msgstr ""
"Ogiltigt värde för byteordning. Förväntade 0x6c (â€lâ€) eller 0x42 (â€Bâ€) men "
"hittade värdet 0x%02x"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Ogiltig större protokollversion. Förväntade 1 men hittade %d"
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "Signaturrubrik hittades men är inte av typen signatur"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"Signaturrubrik med signaturen â€%s†hittades men meddelandekroppen är tom"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "Tolkat värde â€%s†är inte en giltig D-Bus-signatur (för kropp)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
msgstr[0] "Ingen signaturrubrik i meddelande men meddelandekroppen är %u byte"
msgstr[1] "Ingen signaturrubrik i meddelande men meddelandekroppen är %u byte"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Kan inte deserialisera meddelande: "
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
@@ -897,23 +906,23 @@ msgstr ""
"Fel vid serialisering av GVariant med typsträngen â€%s†till D-Bus-"
"transportformatet"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr "Antal filhandtag i meddelande (%d) skiljer sig från rubrikfältet (%d)"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Kan inte serialisera meddelandet: "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr ""
"Meddelandekroppen har signaturen â€%s†men det finns ingen signaturrubrik"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -922,52 +931,52 @@ msgstr ""
"Meddelandekroppen har typsignaturen â€%s†men signaturen i rubrikfältet är "
"â€%sâ€"
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "Meddelandekroppen är tom men signaturen i rubrikfältet är â€(%s)â€"
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Fel returnerades med kropp av typen â€%sâ€"
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Fel returnerade med tom kropp"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Skriv vilket tecken som helst för att stänga detta fönster)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Sessions-dbus kör inte, och autostart misslyckades"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Kunde inte hämta hårdvaruprofil: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Kunde inte läsa in %s eller %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Fel vid anrop av StartServiceByName för %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Oväntat svar %d frÃ¥n StartServiceByName(â€%sâ€)-metod"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1022,66 +1031,66 @@ msgstr ""
"\n"
"Använd â€%s KOMMANDO --help†för hjälp med varje kommando.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Fel: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "Fel vid tolkning av introspektions-XML: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Fel: %s är inte ett giltigt namn\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Fel: %s är inte en giltig objektsökväg\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Anslut till systembussen"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Anslut till sessionsbussen"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Anslut till angiven D-Bus-adress"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Flaggor för anslutningspunkt:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Flaggor som anger anslutningens ändpunkt"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Ingen anslutningsändpunkt har angivits"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Flera anslutningsändpunkter har angivits"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr "Varning: Enligt introspektionsdata finns inte gränssnittet â€%sâ€\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1090,160 +1099,164 @@ msgstr ""
"Varning: Enligt introspektionsdata finns inte metoden â€%s†pÃ¥ gränssnittet "
"â€%sâ€\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Frivilligt mål för signal (unikt namn)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Objektsökväg att sända signalen på"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Signal- och gränssnittsnamn"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Sänd en signal."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Fel vid anslutning: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Fel: %s är inte ett giltigt unikt bussnamn.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Fel: Objektsökväg har inte angivits\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Fel: Signalnamnet är inte angivet\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Fel: Signalnamnet â€%s†är ogiltigt\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Fel: %s är inte ett giltigt gränssnittsnamn\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Fel: %s är inte ett giltigt medlemsnamn\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "Fel vid tolkning av parameter %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Fel vid tömning av anslutning: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Målnamn att anropa metod på"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Objektsökväg att anropa metod på"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Metod- och gränssnittsnamn"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Tidsgräns i sekunder"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Tillåt interaktiv auktorisering"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Anropa en metod på ett fjärrobjekt."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Fel: MÃ¥l har inte angivits\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Fel: %s är inte ett giltigt bussnamn\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Fel: Metodnamnet är inte angivet\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Fel: Metodnamnet â€%s†är ogiltigt\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "Fel vid tolkning av parameter %d av typen â€%sâ€: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Fel vid tillägg av handtag %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "MÃ¥lnamn att introspektera"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Objektsökväg att introspektera"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Skriv ut XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Introspektera barn"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Skriv endast ut egenskaper"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Introspektera ett fjärrobjekt."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Målnamn att övervaka"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Objektsökväg att övervaka"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Övervaka ett fjärrobjekt."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Fel: kan inte övervaka en anslutning som ej är på meddelandebuss\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Tjänst att aktivera innan den andra väntas på (välkänt namn)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1251,63 +1264,68 @@ msgstr ""
"Tidsgräns att vänta på innan vi avslutar med ett fel (sekunder); 0 för ingen "
"tidsgräns (standard)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[FLAGGA…] BUSSNAMN"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Vänta på att ett bussnamn ska dyka upp."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Fel: En tjänst att aktivera för måste anges.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "Fel: En tjänst att vänta på måste anges.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Fel: För många argument.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Fel: %s är inte ett giltigt välkänt bussnamn.\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Inte behörig att ändra felsökningsinställningar"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Namnlös"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "Desktop-filen angav inget Exec-fält"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Kunde inte hitta terminal som krävs för programmet"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr "Kan inte skapa programkonfigurationsmapp för användare %s: %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Kan inte skapa MIME-konfigurationsmapp för användare %s: %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "Programinformation saknar en identifierare"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Kan inte skapa desktop-fil %s för användare"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "Anpassad definition för %s"
@@ -1335,7 +1353,7 @@ msgstr "enheten har inte implementerat start"
msgid "drive doesn’t implement stop"
msgstr "enheten har inte implementerat stop"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "TLS-bakänden implementerar inte hämtande av TLS-bindning"
@@ -1376,73 +1394,73 @@ msgstr "Förväntade en GEmblem för GEmblemedIcon"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Innefattande montering finns inte"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Kan inte kopiera över katalog"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Kan inte kopiera katalog över katalog"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "MÃ¥lfilen finns"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Kan inte kopiera katalogen rekursivt"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Splice stöds inte"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Fel vid splice av fil: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "Kopiering (reflänk/klon) mellan monteringar stöds inte"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Kopiering (reflänk/klon) stöds inte eller är ogiltigt"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Kopiering (reflänk/klon) stöds inte eller fungerade inte"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Kan inte kopiera specialfil"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Ogiltigt värde för symbolisk länk angivet"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Symboliska länkar stöds inte"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Papperskorgen stöds inte"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Filnamn fÃ¥r inte innehÃ¥lla â€%câ€"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "volymen har inte implementerat montering"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Inget program är registrerat för hantering av denna fil"
@@ -1487,7 +1505,7 @@ msgstr "Kapning tillåts inte på inmatningsströmmen"
msgid "Truncate not supported on stream"
msgstr "Kapning stöds inte på strömmen"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Ogiltigt värdnamn"
@@ -1574,7 +1592,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Kunde inte tolka â€%s†som IP-adressmask"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Inte tillräckligt med utrymme för uttagsadress"
@@ -2410,15 +2428,15 @@ msgstr "Fel vid komprimering av filen %s"
msgid "text may not appear inside <%s>"
msgstr "text får inte vara inuti <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Visa programversion och avsluta"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Namn på utmatningsfilen"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2426,56 +2444,60 @@ msgstr ""
"Katalogerna där filer som hänvisas till i FIL ska läsas från (standard: "
"aktuell katalog)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "KATALOG"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr "Generera utmatning i formatet valt av målfilnamnets filändelse"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Generera källkods-header"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr "Generera källkod som används för att länka in resursfilen i din kod"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Generera beroendelista"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Namn på beroendefilen att generera"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Inkludera phony-mål i den genererade beroendefilen"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Skapa och registrera inte resursen automatiskt"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Exportera inte funktioner; deklarera dem som G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
msgstr ""
"Bädda inte in resursdata i C-filen; anta att de är länkade externt istället"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "C-identifierarnamn som används för den genererade källkoden"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "Mål-C-kompilatorn (standard: CC-miljövariabeln)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2485,7 +2507,7 @@ msgstr ""
"Resursspecifikationsfiler har filändelsen .gresource.xml,\n"
"och resursfilen har filändelsen .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Du bör ange exakt ett filnamn\n"
@@ -3275,13 +3297,13 @@ msgstr "Fel vid skapande av säkerhetskopia: %s"
msgid "Error renaming temporary file: %s"
msgstr "Fel vid namnbyte på temporärfil: %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "Fel vid kapning av fil: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Fel vid öppning av filen â€%sâ€: %s"
@@ -3303,7 +3325,7 @@ msgstr "Filen blev externt ändrad"
msgid "Error removing old file: %s"
msgstr "Fel vid borttagning av gammal fil: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Ogiltig GSeekType angavs"
@@ -3315,15 +3337,15 @@ msgstr "Ogiltig sökbegäran"
msgid "Cannot truncate GMemoryInputStream"
msgstr "Kan inte kapa av GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Storlek för minnesutmatningsström är inte ändringsbar"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Misslyckades med att ändra storlek på minnesutmatningsström"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3331,11 +3353,11 @@ msgstr ""
"Den mängd minne som krävs för att behandla skrivningen är större än "
"tillgänglig adressrymd"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Begärde sökning innan början av strömmen"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Begärde sökning bortom slutet av strömmen"
@@ -3438,18 +3460,22 @@ msgstr "Summan av vektorer skickade till %s är för stor"
msgid "Source stream is already closed"
msgstr "Källströmmen är redan stängd"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Fel vid uppslag av â€%sâ€: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s inte implementerad"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Ogiltig domän"
@@ -3564,7 +3590,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " SEKTION Ett (eventuellt) elf-sektionsnamn\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " KOMMANDO (Eventuellt) kommando att förklara\n"
@@ -3596,7 +3622,7 @@ msgstr "SÖKVÄG"
msgid " PATH A resource path\n"
msgstr " SÖKVÄG En resurssökväg\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Inget sÃ¥dant schema â€%sâ€\n"
@@ -3627,35 +3653,35 @@ msgstr "Sökvägen måste sluta med ett snedstreck (/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Sökvägen får inte innehålla två efterföljande snedstreck (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "Tillhandahållet värde är utanför det giltiga intervallet\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "Nyckeln är inte skrivbar\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Lista installerade (icke-flyttbara) scheman"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Lista installerade, flyttbara scheman"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Lista nycklarna i SCHEMA"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "SCHEMA[:SÖKVÄG]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Lista barnen i SCHEMA"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3663,48 +3689,48 @@ msgstr ""
"Lista nycklar och värden, rekursivt\n"
"Om inget SCHEMA anges, lista alla nycklar\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[SCHEMA[:SÖKVÄG]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Få värdet för NYCKEL"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "SCHEMA[:SÖKVÄG] NYCKEL"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Fråga efter giltiga värden för NYCKEL"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Fråga efter beskrivningen för NYCKEL"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "Ställ in värdet för NYCKEL till VÄRDE"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "SCHEMA[:SÖKVÄG] NYCKEL VÄRDE"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Återställ NYCKEL till dess standardvärde"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Nollställ alla nycklar i SCHEMA till sina standardvärden"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Kontrollera om NYCKEL är skrivbar"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3714,11 +3740,11 @@ msgstr ""
"Om ingen NYCKEL anges, övervaka alla nycklar i SCHEMA.\n"
"Använd ^C för att avsluta övervakningen.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "SCHEMA[:SÖKVÄG] [NYCKEL]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3766,7 +3792,7 @@ msgstr ""
"Använd â€gsettings help KOMMANDO†för detaljerad hjälp.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3781,11 +3807,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " SCHEMAKAT En katalog att söka i efter ytterligare scheman\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3793,211 +3819,211 @@ msgstr ""
" SCHEMA Namnet på schemat\n"
" SÖKVÄG Sökvägen, för flyttbara scheman\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " NYCKEL (Eventuell) nyckel inom schemat\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " NYCKEL Nyckeln inom schemat\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " VÄRDE Värdet att ställa in\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Kunde inte läsa in schema från %s: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Inga scheman installerade\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Tomt schemanamn angavs\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Ingen sÃ¥dan nyckel â€%sâ€\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Ogiltigt uttag, inte initierat"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Ogiltigt uttag, initiering misslyckades på grund av: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Uttaget är redan stängt"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Tidsgräns för in/ut på uttaget överstegs"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "skapar GSocket från fd: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Kunde inte skapa uttag: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Okänd familj angavs"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Okänt protokoll angavs"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "Kan inte använda datagramåtgärder på ett icke-datagram-uttag."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr "Kan inte använda datagramåtgärder på ett uttag med en satt tidsgräns."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "kunde inte få lokal adress: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "kunde inte få fjärradress: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "kunde inte lyssna: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Fel vid bindning till adressen %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Fel vid medlemskap i multicast-grupp: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Fel vid lämnande av multicast-grupp: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Inget stöd för källspecifik multicast"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Uttagsfamiljen stöds inte"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "källspecifik är inte en IPv4-adress"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Gränssnittsnamnet är för långt"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Gränssnitt hittades inte: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "Inget stöd för IPv4-källspecifik multicast"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "Inget stöd för IPv6-källspecifik multicast"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Fel vid godkännande av anslutning: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Anslutningsförsök pågår"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Kunde inte få tag på väntande fel: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Fel vid mottagning av data: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Fel vid sändning av data: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Kunde inte stänga ner uttag: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Fel vid stängning av uttag: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Väntar på uttagstillstånd: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Kunde inte skicka meddelande: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Meddelandevektorerna är för stora"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Fel vid sändning av meddelande: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage stöds inte på Windows"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Fel vid mottagning av meddelande: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Kunde inte läsa uttagets inloggningsuppgifter: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr ""
"g_socket_get_credentials har inte implementerats för detta operativsystem"
@@ -4016,11 +4042,11 @@ msgstr "Kunde inte ansluta till %s: "
msgid "Could not connect: "
msgstr "Kunde inte ansluta: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "Att skicka via proxy över en icke-TCP-anslutning stöds inte."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Proxyprotokollet â€%s†stöds inte."
@@ -4120,7 +4146,7 @@ msgstr "SOCKSv5-proxyservern saknar stöd för angiven adresstyp."
msgid "Unknown SOCKSv5 proxy error."
msgstr "Okänt fel i SOCKSv5-proxyserver."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr "Misslyckades med att skapa rör för kommunikation med barnprocess (%s)"
@@ -4144,44 +4170,66 @@ msgstr "Inga giltiga adresser hittades"
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "Fel vid omvänt uppslag av â€%sâ€: %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr "Fel vid tolkning av DNS %s-post: felformulerat DNS-paket"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "Inga DNS-poster av den begärda typen för â€%sâ€"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "Kan för tillfället inte slÃ¥ upp â€%sâ€"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "Fel vid uppslag av â€%sâ€"
-#: gio/gtlscertificate.c:431
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Felformulerat DNS-paket"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "Misslyckades med att tolka DNS-svar för â€%sâ€: "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Ingen PEM-kodad privat nyckel hittades"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Kan inte dekryptera PEM-kodad privat nyckel"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Kunde inte tolka PEM-kodad privat nyckel"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Inget PEM-kodat certifikat hittades"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Kunde inte tolka PEM-kodat certifikat"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "Den aktuella TLS-bakänden stöder inte PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "Denna GTlsBackend stöder inte skapande av PKCS #11-certifikat"
@@ -4207,55 +4255,63 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "Det angivna lösenordet är felaktigt."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "Sändning av FD stöds inte"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "Förväntade 1 kontrollmeddelande, fick %d"
msgstr[1] "Förväntade 1 kontrollmeddelande, fick %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Oväntad typ av underordnade data"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "Förväntade en fd, men fick %d\n"
msgstr[1] "Förväntade en fd, men fick %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Tog emot ogiltig fd"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "Mottagning av FD stöds inte"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Fel vid sändning av inloggningsuppgifter: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Fel vid kontroll om SO_PASSCRED har aktiverats för uttaget: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "Fel vid aktivering av SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Förväntade att läsa ett enda byte för mottagning av inloggningsuppgifter men "
"läste noll byte"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Förväntade inte kontrollmeddelande, men fick %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "Fel vid inaktivering av SO_PASSCRED: %s"
@@ -4271,7 +4327,7 @@ msgstr "Fel vid läsning från filhandtag: %s"
msgid "Error closing file descriptor: %s"
msgstr "Fel vid stängning av filhandtag: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Filsystemsrot"
@@ -4282,7 +4338,7 @@ msgstr "Filsystemsrot"
msgid "Error writing to file descriptor: %s"
msgstr "Fel vid skrivning till filhandtag: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "Abstrakta UNIX-domänuttagsadresser stöds inte på detta system"
@@ -4432,8 +4488,8 @@ msgstr "Misslyckades med att expandera exec-raden â€%s†med URI â€%sâ€"
msgid "Unrepresentable character in conversion input"
msgstr "Tecken som ej går att uttrycka i konverteringsindata"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Ofullständig teckensekvens vid slutet av indata"
@@ -5005,15 +5061,15 @@ msgstr "Kanalen slutar med ett ofullständigt tecken"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "Kan inte göra en rå läsning i g_io_channel_read_to_end"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "Giltig nyckelfil kunde inte hittas i sökkatalogerna"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Inte en vanlig fil"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5021,43 +5077,43 @@ msgstr ""
"Nyckelfilen innehÃ¥ller raden â€%s†som inte är ett nyckel-värde-par, grupp "
"eller kommentar"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Ogiltigt gruppnamn: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Nyckelfilen börjar inte med en grupp"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Ogiltigt nyckelnamn: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Ogiltigt nyckelnamn: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Nyckelfilen innehÃ¥ller kodningen â€%s†som inte stöds"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Nyckelfilen har inte gruppen â€%sâ€"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Nyckelfilen har inte nyckeln â€%s†i gruppen â€%sâ€"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "Nyckelfilen innehÃ¥ller nyckeln â€%s†med värdet â€%s†som inte är UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
@@ -5065,7 +5121,7 @@ msgstr ""
"Nyckelfilen innehÃ¥ller nyckeln â€%s†som innehÃ¥ller ett värde som inte kan "
"tolkas."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5074,36 +5130,36 @@ msgstr ""
"Nyckelfilen innehÃ¥ller nyckeln â€%s†i gruppen â€%s†vilken innehÃ¥ller ett "
"värde som inte kan tolkas."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "Nyckeln â€%s†i gruppen â€%s†innehÃ¥ller värdet â€%s†där %s förväntades"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Nyckelfilen innehåller kontrolltecken i slutet på en rad"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Nyckelfilen innehÃ¥ller ogiltiga kontrollsekvensen â€%sâ€"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "Värdet â€%s†kan inte tolkas som ett tal."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "Heltalsvärdet â€%s†är utanför intervallet"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "Värdet â€%s†kan inte tolkas som ett flyttal."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "Värdet â€%s†kan inte tolkas som ett booleskt värde."
@@ -5397,7 +5453,7 @@ msgstr "Fel vid tolkning av flaggan %s"
msgid "Missing argument for %s"
msgstr "Argument saknas för %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Okänd flagga %s"
@@ -5800,124 +5856,133 @@ msgstr "Texten var tom (eller innehöll bara tomrum)"
msgid "Failed to read data from child process (%s)"
msgstr "Misslyckades med att läsa data från barnprocess (%s)"
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "Oväntat fel vid läsning av data från en barnprocess (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Oväntat fel i waitpid() (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "Barnprocess avslutades med kod %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Barnprocess dödat av signal %ld"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Barnprocess stoppad av signal %ld"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Barnprocess avslutades onormalt"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Misslyckades med att läsa från rör till barn (%s)"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Misslyckades med att starta barnprocessen â€%s†(%s)"
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Misslyckades med att grena (%s)"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Misslyckades med att byta till katalogen â€%s†(%s)"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Misslyckades med att köra barnprocessen â€%s†(%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2550
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr ""
-"Misslyckades med att dirigera om utdata eller indata från barnprocess (%s)"
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Misslyckades med att öppna fil för att mappa om filhandtag (%s)"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2558
+#, c-format
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Misslyckades med att duplicera filhandtag för barnprocess (%s)"
+
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Misslyckades med att skapa barnprocess (%s)"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2575
#, c-format
msgid "Failed to close file descriptor for child process (%s)"
-msgstr "Misslyckades med att stänga filbeskrivare för barnprocess (%s)"
+msgstr "Misslyckades med att stänga filhandtag för barnprocess (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Okänt fel vid körning av barnprocessen â€%sâ€"
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr ""
"Misslyckades med att läsa tillräckligt med data från röret till barnets pid "
"(%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Misslyckades med att läsa data från barnprocessen"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Misslyckades med att köra barnprocess (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Misslyckades med att köra dup() i barnprocess (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Ogiltigt programnamn: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Ogiltig sträng i argumentvektorn vid %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Ogiltig sträng i miljön: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Ogiltig arbetskatalog: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Misslyckades med att köra hjälparprogram (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -5925,21 +5990,21 @@ msgstr ""
"Oväntat fel i g_io_channel_win32_poll() vid inläsning av data från en "
"barnprocess"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Tom sträng är inte ett tal"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "â€%s†är inte ett tal med tecken"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "Talet â€%s†är utanför gränserna [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "â€%s†är inte ett teckenlöst tal"
@@ -6000,175 +6065,175 @@ msgstr "URI är inte absolut, och ingen bas-URI angavs"
msgid "Missing ‘=’ and parameter value"
msgstr "Saknar â€=†och parametervärde"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Misslyckades med att allokera minne"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Tecknet är utanför intervallet för UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Ogiltig sekvens i konverteringsindata"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Tecknet är utanför intervallet för UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u byte"
msgstr[1] "%u byte"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6176,7 +6241,7 @@ msgstr[0] "%u bit"
msgstr[1] "%u bitar"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6184,7 +6249,7 @@ msgstr[0] "%s byte"
msgstr[1] "%s byte"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6196,32 +6261,32 @@ msgstr[1] "%s bitar"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
diff --git a/po/tr.po b/po/tr.po
index bf2d56f9d..94c606959 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -10,24 +10,33 @@
# Kaan Özdinçer <kaanozdincer@gmail.com>, 2015.
# Muhammet Kara <muhammetk@gmail.com>, 2011, 2014, 2015, 2016.
# Serdar SaÄŸlam <teknomobil@yandex.com>, 2019.
-# Emin Tufan Çetin <etcetin@gmail.com>, 2017-2022.
+# Emin Tufan Çetin <etcetin@gmail.com>, 2017, 2018, 2019, 2020, 2021, 2022.
#
msgid ""
msgstr ""
"Project-Id-Version: glib\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-02-19 13:43+0000\n"
-"PO-Revision-Date: 2022-02-20 18:09+0300\n"
+"POT-Creation-Date: 2022-03-22 15:19+0000\n"
+"PO-Revision-Date: 2022-03-23 11:03+0300\n"
"Last-Translator: Emin Tufan Çetin <etcetin@gmail.com>\n"
-"Language-Team: Turkish <gnome-turk@gnome.org>\n"
+"Language-Team: Türkçe <gnome-turk@gnome.org>\n"
"Language: tr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Poedit 3.0.1\n"
+"X-Generator: Poedit 2.4.3\n"
"X-POOTLE-MTIME: 1433280446.000000\n"
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Öntanımlı uygulama belirleme henüz desteklenmiyor"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"Uygulamayı tür için son kullanılan olarak belirleme henüz desteklenmiyor"
+
#: gio/gapplication.c:500
msgid "GApplication options"
msgstr "GApplication seçenekleri"
@@ -46,10 +55,10 @@ msgstr "Uygulama kimliğini çiğne"
#: gio/gapplication.c:569
msgid "Replace the running instance"
-msgstr "Çalışan örneği değiştirin"
+msgstr "Çalışan örneği değiştir"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Yardımı yazdır"
@@ -61,7 +70,7 @@ msgstr "[KOMUT]"
msgid "Print version"
msgstr "Sürüm yazdır"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "Sürüm bilgisini yazdır ve çık"
@@ -80,7 +89,7 @@ msgstr "Uygulama baÅŸlat"
#: gio/gapplication-tool.c:58
msgid "Launch the application (with optional files to open)"
-msgstr "Uygulamayı başlat (açmak için isteğe bağlı dosyalarla)"
+msgstr "Uygulamayı başlat (açılacak isteğe bağlı dosyalarla)"
#: gio/gapplication-tool.c:59
msgid "APPID [FILE…]"
@@ -123,8 +132,8 @@ msgstr "Ayrıntılı yardım yazdırmak için komut"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "D-Bus biçiminde uygulama tanımlayıcı (örneğin: org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "DOSYA"
@@ -149,7 +158,7 @@ msgstr "PARAMETRE"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "GVariant biçiminde başlatma eylemi için isteğe bağlı parametre"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -163,7 +172,7 @@ msgid "Usage:\n"
msgstr "Kullanım:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Argümanlar:\n"
@@ -286,7 +295,7 @@ msgstr "Akış zaten kapalı"
msgid "Truncate not supported on base stream"
msgstr "Taban akış üzerinde sonunun kesilmesi desteklenmiyor"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -307,7 +316,7 @@ msgstr "Hedefte yeterli alan yok"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Dönüşüm girdisinde geçersiz bayt dizisi"
@@ -317,7 +326,7 @@ msgstr "Dönüşüm girdisinde geçersiz bayt dizisi"
msgid "Error during conversion: %s"
msgstr "Dönüşüm sırasında hata oluştu: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Ä°ptal edilebilir baÅŸlatma desteklenmiyor"
@@ -331,55 +340,55 @@ msgstr "“%s†karakter kümesinden “%s†karakter kümesine dönüşüm de
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "“%sâ€den “%sâ€e dönüştürücü açılamıyor"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "%s türü"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Bilinmeyen tür"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "%s dosya türü"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials geçersiz veri içeriyor"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "Bu işletim sisteminde GCredentials sağlanmamış"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Platformunuz için GCredentials desteği yok"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
-msgstr "Bu işletim sisteminde GCredentials bir süreç kimliği içermez"
+msgstr "GCredentials bu işletim sisteminde süreç kimliği içermez"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
-msgstr "Bu işletim sisteminde kimlik sızdırma mümkün değildir"
+msgstr "Bu işletim sisteminde kimlik sızdırma olanaksızdır"
#: gio/gdatainputstream.c:304
msgid "Unexpected early end-of-stream"
msgstr "Beklenmeyen erken akış-sonu"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "“%2$s†adres girdisinde desteklenmeyen anahtar “%1$sâ€"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "“%s†adres girdisinde anlamsız anahtar/değer çifti birleşimi"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -387,28 +396,28 @@ msgid ""
msgstr ""
"“%s†adresi geçersiz (tam bir yol, dir, tmpdir veya soyut anahtarlar gerekir)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "“%s†adresinde hata — “%s†özniteliği hatalı oluşturulmuş"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "“%2$s†adresi için bilinmeyen ya da desteklenmeyen aktarım “%1$sâ€"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "Adres ögesi “%s†iki nokta üst üste (:) içermez"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "“%s†adres ögesindeki aktarım adı boş olmamalı"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -417,7 +426,7 @@ msgstr ""
"“%3$s†adres ögesi içindeki, Anahtar/Değer çifti %1$d, “%2$s†eşittir imi "
"içermiyor"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
@@ -425,7 +434,7 @@ msgstr ""
"“%3$s†adres ögesi içindeki, Anahtar/Değer çifti %1$d, “%2$s†boş anahtar "
"olmamalıdır"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -434,7 +443,7 @@ msgstr ""
"“%3$s†adres ögesindeki, Anahtar/Değer çifti %1$d, “%2$s†içinde ters kaçış "
"tuşu veya değeri hatası"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -443,78 +452,78 @@ msgstr ""
"“%s†adresinde hata — unix aktarımı, “path†veya “abstract†anahtarlarından "
"bir tanesinin kesinlikle ayarlanmış olmasını gerektirir"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr "“%s†adresinde hata — host özniteliği eksik ya da hatalı oluşturulmuş"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr ""
"“%s†adresinde hata — bağlantı noktası özniteliği eksik ya da hatalı "
"oluÅŸturulmuÅŸ"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"“%s†adresinde hata — noncefile özniteliği eksik ya da hatalı oluşturulmuş"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "KendiliÄŸinden baÅŸlatmada hata: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "Tek seferlik dosya “%s†açılırken hata: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "Tek seferlik dosya “%s†okunurken hata: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr "Tek seferlik dosya “%s†okunurken hata, beklenen 16 bayt, alınan %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "“%s†tek seferlik dosyasının akış için içeriklerini yazmada hata:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "Verilen adres boÅŸ"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "setuid gerektiğinde ileti veri yolu oluşturulamıyor"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "AT_SECURE belirtildiÄŸinde ileti veri yolu oluÅŸturulamaz"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "machine-id olmadan ileti veri yolu oluşturulamıyor: "
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "X11 $DISPLAY olmadan D-BUS kendiliğinden başlatılamaz"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "“%s†komut satırı oluşturulurken hata: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Oturum veri yolu adresi saptanamıyor (bu işletim sistemi için uygulanmadı)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -523,7 +532,7 @@ msgstr ""
"DBUS_STARTER_BUS_TYPE ortam değişkeninden veri yolu adresi saptanamıyor — "
"bilinmeyen deÄŸer “%sâ€"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -531,7 +540,7 @@ msgstr ""
"DBUS_STARTER_BUS_TYPE ortam değişkenine değer atanmadığından dolayı veri "
"yolu adresi belirlenemiyor"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Bilinmeyen veriyolu türü %d"
@@ -560,12 +569,12 @@ msgstr "Kullanıcı kimlikleri eş ve sunucu için aynı olmalıdır"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "GDBusAuthObserver::authorize-authenticated-peer yolu ile iptal edildi"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "“%s†dizini için bilgi alınırken hata: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
@@ -573,32 +582,32 @@ msgstr ""
"“%s†dizini üzerindeki izinler bozulmuştur. 0700 kipi beklenmiştir, ama 0%o "
"alınmıştır"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "“%s†dizini oluşturulurken hata: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "Ä°ÅŸlem desteklenmiyor"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "Okumak için “%s†anahtarlığı açılırken hata: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "“%3$s†içerikli “%2$s†konumundaki anahtarlığın %1$d. satırı bozulmuş"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -606,7 +615,7 @@ msgstr ""
"“%3$s†içerikli “%2$s†konumundaki anahtarlığın %1$d. satırının ilk "
"belirteci bozulmuÅŸ"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -614,159 +623,159 @@ msgstr ""
"“%3$s†içerikli “%2$s†konumundaki anahtarlığın %1$d. satırının ikinci "
"belirteci bozulmuÅŸ"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "“%2$s†konumundaki anahtarlıkta %1$d kimlikli çerez bulunamadı"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "Kilit dosyası “%s†oluşturulurken hata: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "Eski kilit dosyası “%s†silinirken hata: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "(Bağlantısı olmayan) kilit dosyası “%s†kapatılırken hata: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "“%s†kilit dosyasının bağlantısı kaldırılırken hata: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "“%s†anahtarlığını yazma için açarken hata: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Ayrıca, “%s†için kilidi açma başarısız oldu: %s) "
-#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "Bağlantı kapalı"
-#: gio/gdbusconnection.c:1903
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "Zaman aşımı gerçekleşti"
-#: gio/gdbusconnection.c:2541
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"İstemci taraflı bağlantı kurulurken desteklenmeyen etiketlerle karşılaşıldı"
-#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr ""
"%s yolundaki nesnede “org.freedesktop.DBus.Properties†gibi bir arayüz yok"
-#: gio/gdbusconnection.c:4414
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "“%s†gibi bir özellik yok"
-#: gio/gdbusconnection.c:4426
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "“%s†özelliği okunabilir değil"
-#: gio/gdbusconnection.c:4437
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "“%s†özelliği yazılabilir değil"
-#: gio/gdbusconnection.c:4457
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr "“%s†özelliği ayarlanırken hata: “%s†türü beklendi, “%s†elde edildi"
-#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
-#: gio/gdbusconnection.c:6760
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "“%s†gibi bir arabirim yok"
-#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "%2$s yolundaki nesnede “%1$s†gibi bir arayüz yok"
-#: gio/gdbusconnection.c:5100
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "“%s†gibi bir anahtar yok"
-#: gio/gdbusconnection.c:5131
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "“%s†iletisinin türü, beklenen “%s†türü ile örtüşmüyor"
-#: gio/gdbusconnection.c:5334
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "%2$s konumundaki %1$s arayüzü için bir nesne zaten dışa aktarıldı"
-#: gio/gdbusconnection.c:5561
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "%s.%s özelliği alınamadı"
-#: gio/gdbusconnection.c:5617
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "%s.%s özelliği ayarlanamadı"
-#: gio/gdbusconnection.c:5796
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "“%s†yöntemi “%s†türü döndürdü, ancak “%s†bekleniyordu"
-#: gio/gdbusconnection.c:6872
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "“%3$s†imzalı “%2$s†arayüzü üzerinde “%1$s†yöntemi yok"
-#: gio/gdbusconnection.c:6993
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "%s için bir alt ağaç zaten dışa aktarılmış"
-#: gio/gdbusconnection.c:7282
+#: gio/gdbusconnection.c:7266
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "Nesne, “%s†yolunda yok"
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "tür GEÇERSİZ"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "METHOD_CALL iletisi: PATH ya da MEMBER başlık alanı eksik"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "METHOD_RETURN iletisi: REPLY_SERIAL başlık alanı eksik"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "ERROR iletisi: REPLY_SERIAL ya da ERROR_NAME başlık alanı eksik"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "SIGNAL iletisi: PATH, INTERFACE ya da MEMBER başlık alanı eksik"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -774,7 +783,7 @@ msgstr ""
"SIGNAL iletisi: PATH başlık alanı, ayrılmış olan /org/freedesktop/DBus/Local "
"değerini kullanıyor"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -782,18 +791,18 @@ msgstr ""
"SIGNAL iletisi: INTERFACE başlık alanı, ayrılmış olan org.freedesktop.DBus."
"Local değerini kullanıyor"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "%lu bayt okumak istendi ancak yalnızca %lu var"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "“%s†dizgesinden sonra NUL baytı beklendi, ama %d baytı bulundu"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -802,21 +811,21 @@ msgstr ""
"Geçerli bir UTF-8 dizgesi beklendi ama %d bayt konumunda geçersiz baytlar "
"bulundu (dizge uzunluÄŸu %d). Bu noktaya kadar geçerli olan dizge ÅŸudur: “%sâ€"
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Değer çok derine yuvalanmış"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Ayrıştırılan deÄŸer “%sâ€, geçerli bir D-Bus nesne yolu deÄŸil"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Ayrıştırılan deÄŸer “%sâ€, geçerli bir D-Bus imzası deÄŸil"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -826,7 +835,7 @@ msgstr[0] ""
"%u bayt uzunluğunda dizi ile karşılaşıldı. Olabilecek en çok uzunluk 2<<26 "
"bayt (64 MiB)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -835,23 +844,23 @@ msgstr ""
"“a%c†türünde dizi ile karşılaşıldı, birden çok %u bayt uzunluğu "
"beklenmektedir ancak %u bayt uzunluk bulundu"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
msgstr "D-Bus’ta boş yapılara (demetler) izin verilmez"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "Varyant için ayrıştırılmış “%s†değeri geçeriz bir D-Bus imzasıdır"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
msgstr ""
"GVariant, D-Bus tel biçiminden “%s†dizge türüyle geri dönüştürülürken hata"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -860,57 +869,57 @@ msgstr ""
"Geçersiz endian deÄŸeri. 0x6c (“lâ€) veya 0x42 (“Bâ€) bekleniyordu ancak 0x%02x "
"deÄŸeri bulundu"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "Geçersiz önemli iletişim kuralı sürümü. 1 beklendi, %d bulundu"
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "İmza başlığı bulundu, ancak tür imzası değil"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr "“%s†imzalı bir imza başlığı bulundu ama ileti gövdesi boş"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "Ayrıştırılan değer “%s†geçerli bir D-Bus imzası değil (gövde için)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
msgstr[0] "İletide imza başlığı yok ancak ileti gövdesi %u bayt"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "İleti geri dönüştürülemiyor: "
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
msgstr "GVariant, D-Bus tel biçimine “%s†dizge türüyle dönüştürülürken hata"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr "İletideki dosya açıklayıcı sayısı (%d) başlık alanından (%d) farklı"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "İleti dönüştürülemiyor: "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "İleti gövdesi “%s†imzasına sahip ancak imza başlığı yok"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -918,52 +927,52 @@ msgid ""
msgstr ""
"Ä°leti gövdesi “%s†tür imzasına sahip ancak baÅŸlık alanındaki imza “%sâ€"
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "Ä°leti gövdesi boÅŸ, ancak baÅŸlık alanındaki imza “(%s)â€"
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "“%s†türünden bir gövdeyle dönüş hatası"
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Boş gövdeyle dönüş hatası"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Pencereyi kapatmak için herhangi bir karakter girin)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Dbus oturumu çalışmıyor ve kendiliğinden başlatma başarısız oldu"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Donanım profili alınamıyor: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "%s ya da %s yüklenemedi: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "%s için StartServiceByName çağrısında hata: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "StartServiceByName %d yönteminden beklenmeyen yanıt (\"%s\")"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1010,234 +1019,238 @@ msgid ""
msgstr ""
"Komutlar:\n"
" help Bu bilgiyi gösterir\n"
-" introspect Bir uzak nesyene içgözlem yap\n"
-" monitor Bir uzak nesneyi gözlemle\n"
-" call Bir uzak nesne üzerinde yöntem çağır\n"
-" emit Bir sinyal yay\n"
+" introspect Uzak nesneye iç gözlem yap\n"
+" monitor Uzak nesneyi gözlemle\n"
+" call Uzak nesne üzerinde yöntem çağır\n"
+" emit Sinyal yay\n"
" wait Veri yolu adının belirmesini bekle\n"
"\n"
-"Her bir komut hakkında yardım almak için “%s KOMUT --help†kullanın.\n"
+"Her komutla ilgili yardım almak için “%s KOMUT --help†kullan.\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Hata: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
-msgstr "İçgözlem XML’ini ayrıştırmada hata: %s\n"
+msgstr "İç gözlem XML’ini ayrıştırmada hata: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Hata: %s geçerli bir ad değil\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Hata: %s geçerli bir nesne yolu değil\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Sistem veriyoluna baÄŸlan"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Oturum veriyoluna baÄŸlan"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Verilen D-Bus adresine baÄŸlan"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Bağlantı Uç Noktası Seçenekleri:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Bağlantı uç noktasını belirleyen seçenekler"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Bağlantı uç noktası belirtilmedi"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Birden çok bağlantı uç noktası belirtildi"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
-msgstr "Uyarı: İçgözlem verilerine göre, “%s†arayüzü yok\n"
+msgstr "Uyarı: İç gözlem verilerine göre, “%s†arayüzü yok\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
"interface “%sâ€\n"
-msgstr "Uyarı: İçgözlem verilerine göre, “%s†yöntemi “%s†arayüzünde yok\n"
+msgstr "Uyarı: İç gözlem verilerine göre, “%s†yöntemi “%s†arayüzünde yok\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Sinyal için isteğe bağlı hedef nokta (eşsiz ad)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Üzerinde sinyal yaymak için nesne yolu"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Sinyal ve arayüz adı"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "Bir sinyal yayınla."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "Bağlanırken hata: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Hata: %s geçerli bir özgün veriyolu adı değil\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Hata: Nesne yolu belirtilmedi\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Hata: Sinyal adı belirtilmedi\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Hata: Sinyal adı “%s†geçersiz\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Hata: %s geçerli bir arayüz adı değil\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Hata: %s geçerli bir üye adı değil\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "%d parametresini ayrıştırırken hata oluştu: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "Bağlantı boşaltılırken hata: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Üzerinde yöntem çalıştırılacak hedef nokta adı"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Yöntemin üzerinde çalıştırılacağı nesne yolu"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Yöntem ve arayüz adı"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Saniye cinsinden zaman aşımı"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "EtkileÅŸimli yetkilendirmeye izin ver"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Uzak bir nesne üzerinde yöntem çalıştır."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Hata: Hedef belirtilmedi\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Hata: %s geçerli bir veri yolu adı değil\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Hata: Yöntem adı belirtilmedi\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Hata: Yöntem adı “%s†geçersiz\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "“%2$s†türünün %1$d parametresi ayrıştırılırken hata: %3$s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "%d iÅŸleyici eklenemedi: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
-msgstr "İçgözlem için hedef nokta adı"
+msgstr "İç gözlem için hedef nokta adı"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
-msgstr "İçgözlem yapmak için nesne yolu"
+msgstr "İç gözlem yapılacak nesne yolu"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "XML yazdır"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "Alt iç gözlemi"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Yalnızca özellikleri yazdır"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
-msgstr "Uzak nesneye içgözlem yap."
+msgstr "Uzak nesneye iç gözlem yap."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Gözlemlenecek hedefin adı"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Gözlemlenecek nesne yolu"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "Uzak nesneyi gözlemle."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "Hata: non-message-bus gözlemlenemiyor\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "Bir diğeri (tanınmış ad) için beklemeden önce aktifleştirilecek hizmet"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1245,63 +1258,68 @@ msgstr ""
"Bir hatayla çıkılmadan önce beklenecek zaman aşımı süresi (saniye); zaman "
"aşımı olmaması için 0 (öntanımlı)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[SEÇENEK…] VERİYOLU-ADI"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Veri yolu adının belirmesini bekle."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
-msgstr "Hata: AktifleÅŸtirilecek bir hizmet belirtilmelidir.\n"
+msgstr "Hata: AktifleÅŸtirilecek hizmet belirtilmelidir.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
-msgstr "Hata: Beklenecek bir hizmet belirtilmelidir.\n"
+msgstr "Hata: Beklenecek hizmet belirtilmelidir.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Hata: Çok fazla argüman.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
-msgstr "Hata: %s geçerli bilinen bir veri yolu adı değil\n"
+msgstr "Hata: %s geçerli bilinen bir veri yolu adı değil.\n"
+
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Hata ayıklama ayarlarını değiştirmeye yetkili değil"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Adlandırılmamış"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "Desktop dosyası Exec alanı belirtmemiş"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Uygulama için gerekli uçbirim bulunamadı"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr "Kullanıcı uygulaması yapılandırma klasörü %s oluşturulamıyor: %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Kullanıcı MIME yapılandırma klasörü %s oluşturulamıyor: %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
-msgstr "Uygulama bilgisi bir tanımlayıcıya sahip değildir"
+msgstr "Uygulama bilgisinde tanımlayıcı eksik"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Kullanıcı masaüstü dosyası %s oluşturulamıyor"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "%s için özel tanım"
@@ -1329,7 +1347,7 @@ msgstr "sürücü start uygulamıyor"
msgid "drive doesn’t implement stop"
msgstr "sürücü stop uygulamıyor"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "TLS arka yüzü, TLS bağlanım geri alımı gerçeklemiyor"
@@ -1350,7 +1368,7 @@ msgstr "GEmblem kodlamasının %d sürümü işlenemiyor"
#: gio/gemblem.c:333
#, c-format
msgid "Malformed number of tokens (%d) in GEmblem encoding"
-msgstr "GEmblem kodlaması içerisinde bozuk sayıda token (%d)"
+msgstr "GEmblem kodlaması içerisinde bozuk belirteç sayısı (%d)"
#: gio/gemblemedicon.c:362
#, c-format
@@ -1360,7 +1378,7 @@ msgstr "GEmblemedIcon kodlamasının %d sürümü işlenemiyor"
#: gio/gemblemedicon.c:372
#, c-format
msgid "Malformed number of tokens (%d) in GEmblemedIcon encoding"
-msgstr "GEmblemedIcon kodlaması içerisinde bozuk sayıda token (%d)"
+msgstr "GEmblemedIcon kodlaması içerisinde bozuk belirteç sayısı (%d)"
#: gio/gemblemedicon.c:395
msgid "Expected a GEmblem for GEmblemedIcon"
@@ -1370,77 +1388,77 @@ msgstr "GEmblemedIcon için bir Gemblem beklendi"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "BaÄŸlama yok"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Dizin üzerine kopyalanamıyor"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Dizin dizin üzerine kopyalanamıyor"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Hedef dosya var"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Dizin iç içe kopyalanamıyor"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "Splice desteklenmiyor"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Dosya uç uca eklenirken hata: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr ""
"Bağlı sistemler arasında kopyalama (referans bağlantı/çoğaltmak) "
"desteklenmiyor"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "Kopyalama desteklenmiyor ya da geçersiz"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "Kopyalama (bağlama/klonlama) destenlenmiyor ya da çalışmadı"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Özel dosya kopyalanamıyor"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Geçersiz simgesel bağ değeri verildi"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Simgesel baÄŸlar desteklenmiyor"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Çöp desteklenmiyor"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Dosya adları “%c†içeremez"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "bölüm, bağlamayı yerine getirmiyor"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
-msgstr "Bu dosyayı işlemek için hiçbir uygulama kayıtlı değil"
+msgstr "Bu dosyayı işleme amacıyla kayıtlı uygulama yok"
#: gio/gfileenumerator.c:212
msgid "Enumerator is closed"
@@ -1449,7 +1467,7 @@ msgstr "Enumerator kapalı"
#: gio/gfileenumerator.c:219 gio/gfileenumerator.c:278
#: gio/gfileenumerator.c:377 gio/gfileenumerator.c:476
msgid "File enumerator has outstanding operation"
-msgstr "Dosya numaralandırıcı sıradışı işleme sahip"
+msgstr "Dosya numaralandırıcı sıra dışı işleme sahip"
#: gio/gfileenumerator.c:368 gio/gfileenumerator.c:467
msgid "File enumerator is already closed"
@@ -1483,7 +1501,7 @@ msgstr "Sonunu kesmeye giriş akışında izin verilmiyor"
msgid "Truncate not supported on stream"
msgstr "Akış üzerinde sonunun kesilmesi desteklenmiyor"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Geçersiz makine adı"
@@ -1520,7 +1538,7 @@ msgstr "HTTP vekil sunucusu bağlantıyı beklenmedik biçimde kesti."
#: gio/gicon.c:298
#, c-format
msgid "Wrong number of tokens (%d)"
-msgstr "Yanlış sayıda token (%d)"
+msgstr "Yanlış belirteç sayısı (%d)"
#: gio/gicon.c:318
#, c-format
@@ -1570,7 +1588,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "“%sâ€, IP adresi maskesi olarak ayrıştırılamadı"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Yuva adresi için yeterli alan yok"
@@ -1590,7 +1608,7 @@ msgstr "Giriş akımı okumayı uygulamıyor"
#. * you try to start one
#: gio/ginputstream.c:1249 gio/giostream.c:310 gio/goutputstream.c:2208
msgid "Stream has outstanding operation"
-msgstr "Akışın sıradışı işlemi var"
+msgstr "Akışın sıra dışı işlemi var"
#: gio/gio-tool.c:160
msgid "Copy with file"
@@ -1662,7 +1680,7 @@ msgstr "Dosyaları öntanımlı uygulamayla aç"
#: gio/gio-tool.c:240
msgid "Rename a file"
-msgstr "Bir dosyayı yeniden adlandır"
+msgstr "Dosyayı yeniden adlandır"
#: gio/gio-tool.c:241
msgid "Delete one or more files"
@@ -1674,7 +1692,7 @@ msgstr "Standart girdiden oku ve kaydet"
#: gio/gio-tool.c:243
msgid "Set a file attribute"
-msgstr "Bir dosya özniteliği belirle"
+msgstr "Dosya özniteliği belirle"
#: gio/gio-tool.c:244
msgid "Move files or directories to the trash"
@@ -1682,7 +1700,7 @@ msgstr "Dosyaları veya dizinleri çöpe taşı"
#: gio/gio-tool.c:245
msgid "Lists the contents of locations in a tree"
-msgstr "Konumların içeriklerini bir ağaçta listele"
+msgstr "Konumların içeriklerini ağaçta listele"
#: gio/gio-tool.c:247
#, c-format
@@ -1714,7 +1732,7 @@ msgid ""
"like smb://server/resource/file.txt as location."
msgstr ""
"gio cat geleneksel cat aracı gibi çalışır, ancak yerel dosyalar\n"
-"yerine GIO konumlarını kullanır: örneğin, smb://server/resource/file.txt\n"
+"yerine GIO konumlarını kullanır: örneğin, smb://sunucu/kaynak/dosya.txt\n"
"gibi bir ÅŸeyi konum olarak kullanabilirsiniz."
#: gio/gio-tool-cat.c:162 gio/gio-tool-info.c:371 gio/gio-tool-mkdir.c:76
@@ -1777,7 +1795,7 @@ msgid ""
"like smb://server/resource/file.txt as location."
msgstr ""
"gio copy geleneksel cp aracı gibi çalışır, ancak yerel dosyalar\n"
-"yerine GIO konumlarını kullanır: örneğin, smb://server/resource/file.txt\n"
+"yerine GIO konumlarını kullanır: örneğin, smb://sunucu/kaynak/dosya.txt\n"
"gibi bir ÅŸeyi konum olarak kullanabilirsiniz."
#: gio/gio-tool-copy.c:149
@@ -1880,7 +1898,7 @@ msgid ""
"namespace, e.g. unix, or by “*â€, which matches all attributes"
msgstr ""
"gio info geleneksel ls aracı gibi çalışır, ancak yerel dosyalar\n"
-"yerine GIO konumlarını kullanır: örneğin, smb://server/resource/file.txt\n"
+"yerine GIO konumlarını kullanır: örneğin, smb://sunucu/kaynak/dosya.txt\n"
"gibi bir şeyi konum olarak kullanabilirsiniz. Dosya öznitelikleri\n"
"GIO adıyla birlikte belirtilebilir, örneğin standard::icon; veya yalnızca\n"
"ad boşluğu, örneğin unix; veya tüm öznitelikleri eşleyen “*†gibi"
@@ -1949,7 +1967,7 @@ msgid ""
"be specified with their GIO name, e.g. standard::icon"
msgstr ""
"gio list geleneksel ls aracı gibi çalışır, ancak yerel dosyalar\n"
-"yerine GIO konumlarını kullanır: örneğin, smb://server/resource/file.txt\n"
+"yerine GIO konumlarını kullanır: örneğin, smb://sunucu/kaynak/dosya.txt\n"
"gibi bir şeyi konum olarak kullanabilirsiniz. Dosya öznitelikleri\n"
"GIO adıyla birlikte belirtilebilir, örneğin standard::icon"
@@ -2031,7 +2049,7 @@ msgid ""
"like smb://server/resource/mydir as location."
msgstr ""
"gio mkdir geleneksel mkdir aracı gibi çalışır, ancak yerel dosyalar\n"
-"yerine GIO konumlarını kullanır: örneğin, smb://server/resource/mydir\n"
+"yerine GIO konumlarını kullanır: örneğin, smb://sunucu/kaynak/dizinim\n"
"gibi bir ÅŸeyi konum olarak kullanabilirsiniz."
#: gio/gio-tool-monitor.c:37
@@ -2170,7 +2188,7 @@ msgid ""
"like smb://server/resource/file.txt as location"
msgstr ""
"gio move geleneksel mv aracı gibi çalışır, ancak yerel dosyalar\n"
-"yerine GIO konumlarını kullanır: örneğin, smb://server/resource/file.txt\n"
+"yerine GIO konumlarını kullanır: örneğin, smb://sunucu/kaynak/dosya.txt\n"
"gibi bir ÅŸeyi konum olarak kullanabilirsiniz"
#: gio/gio-tool-move.c:143
@@ -2406,62 +2424,63 @@ msgstr "%s dosyası sıkıştırma hatası"
msgid "text may not appear inside <%s>"
msgstr "<%s> içinde metin bulunamaz"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "Programın sürümünü göster ve çık"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Çıktı dosyasının adı"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
msgstr ""
-"FILEʼda belirtilen dosyaların yükleneceği dizinler (öntanımlı: geçerli dizin)"
+"DOSYAʼda belirtilen dosyaların yükleneceği dizinler (öntanımlı: geçerli "
+"dizin)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "DÄ°ZÄ°N"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr "Hedef dosya adı uzantısı tarafından seçilen biçimde çıktı oluştur"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Kaynak başlığı oluştur"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr ""
"Kodunuz içinde kaynak dosyasına bağlanmak için kullanılacak kaynak kodu "
"oluÅŸturun"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Bağımlılık listesi oluştur"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Oluşturulacak bağımlılık dosyasının adı"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Oluşturulan bağımlılık dosyasında sahte hedefleri içer"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Kaynağı kendiliğinden oluşturma ve kaydetme"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "İşlevleri dışarı aktarma; onları G_GNUC_INTERNAL beyan et"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2469,11 +2488,15 @@ msgstr ""
"Kaynak verileri C dosyasına gömme; bunun yerine harici olarak bağlandığını "
"varsay"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "C oluşturulan kaynak kod için kullanılan tanımlayıcı ad"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "Hedef C derleyici (öntanımlı: CC ortam değişkeni)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2483,7 +2506,7 @@ msgstr ""
"Kaynak özellikleri dosyaları .gresource.xml uzantısına sahiptir\n"
"ve kaynak dosyaları uzantısı .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Tam olarak bir adet dosya adı vermelisiniz\n"
@@ -3275,13 +3298,13 @@ msgstr "Yedek kopyası oluşturulurken hata: %s"
msgid "Error renaming temporary file: %s"
msgstr "Geçici dosya yeniden adlandırılırken hata: %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "Dosyanın sonu kesilirken hata: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "“%s†dosyası açılırken hata: %s"
@@ -3303,7 +3326,7 @@ msgstr "Dosya dışarıdan değiştirilmiş"
msgid "Error removing old file: %s"
msgstr "Eski dosya silinirken hata: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Geçersiz GSeekType sağlandı"
@@ -3315,15 +3338,15 @@ msgstr "Geçersiz atlama isteği"
msgid "Cannot truncate GMemoryInputStream"
msgstr "GMemoryInputStream sonu silinemiyor"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Bellek çıktı akışı yeniden boyutlandırılamaz"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Hafız çıktı açışı yeniden boyutlandırma başarısız oldu"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3331,11 +3354,11 @@ msgstr ""
"Yazma işlemi için gereken bellek miktarı, kullanılabilir adres uzayından "
"daha büyük"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Akış başlamadan önce arama istendi"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Akışın sonu dışında arama istendi"
@@ -3440,18 +3463,22 @@ msgstr "%s için geçilen vektörlerin toplamı çok büyük"
msgid "Source stream is already closed"
msgstr "Kaynak akışı zaten kapalı"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "“%s†çözülürken hata: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s uygulanmadı"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Geçersiz alan adı"
@@ -3566,7 +3593,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " BÖLÜM (İsteğe Bağlı) Bir elf bölüm adı\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " KOMUT (İsteğe Bağlı) Açıklanacak komut\n"
@@ -3598,7 +3625,7 @@ msgstr "YOL"
msgid " PATH A resource path\n"
msgstr " YOL Kaynak yolu\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "“%s†gibi bir şema yok\n"
@@ -3631,35 +3658,35 @@ msgstr "Yol, mutlaka bir taksim (/) ile bitmelidir\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "Yol, ardışık olan iki taksim (//) içeremez\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "Sağlanan değer, geçerli aralığın dışında\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "Anahtar yazılabilir değildir\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Yüklü (yeniden konumlandırılamaz) şemaları listele"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Yeniden yer değiştirebilir şemaları listele"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "ŞEMA içindeki anahtarları listele"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "ÅžEMA[:YOL]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Alt ÅžEMALARI listele"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3667,48 +3694,48 @@ msgstr ""
"Özyinelemeli biçimde anahtar ve değerleri listele\n"
"Eğer hiçbir ŞEMA verilmediyse, tüm anahtarları listele\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[ÅžEMA[:YOL]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "ANAHTAR deÄŸerini al"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "ÅžEMA[:YOL] ANAHTAR"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "ANAHTAR için geçerli değerler aralığını sorgula"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "ANAHTAR için açıklamayı sorgula"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "ANAHTAR’ın değerini DEĞER’e ata"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "ÅžEMA[:YOL] ANAHTAR DEÄžER"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "ANAHTAR’ı öntanımlı değerine döndür"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "ŞEMA içindeki tüm anahtarları öntanımlı değerlerine döndür"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "ANAHTAR’ın yazılabilir olup olmadığını denetle"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3718,11 +3745,11 @@ msgstr ""
"Eğer hiçbir ANAHTAR belirtilmemişse, ŞEMA’daki tüm anahtarları izleyin.\n"
"İzlemeyi durdurmak için ^C kullanın.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "ÅžEMA[:YOL] [ANAHTAR]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3770,7 +3797,7 @@ msgstr ""
"Ayrıntılı yardım için “gsettings help KOMUT†komutunu çalıştırın.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3785,11 +3812,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " ŞEMADİZİNİ Ek şemaları aramak için bir dizin\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3797,212 +3824,212 @@ msgstr ""
" ŞEMA Şemanın adı\n"
" YOL Yol, yeniden konumlandırılabilir şemalar için\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " ANAHTAR Şema içinde (isteğe bağlı) anahtar\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " ANAHTAR Şema içindeki anahtar\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " DEÄžER Ayarlanacak deÄŸer\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "%s’den şemalar yüklenemedi: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Hiçbir şema kurulmadı\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Boş şema adı verildi\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "“%s†gibi bir anahtar yok\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Geçersiz yuva, başlatılmadı"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Geçersiz yuva, başlatma başarısız oldu: %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Yuva zaten kapalı"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Yuva G/Ç zaman aşımı"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "fd’den GSocket oluşturuluyor: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Yuva oluşturulamadı: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Bilinmeyen küme belirtildi"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Bilinmeyen iletişim kuralı belirtildi"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "Datagram olmayan bir yuva üzerinde datagram işlemleri kullanılamaz."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Zamanaşımı ayarlanmış bir yuva üzerinde datagram işlemleri kullanılamaz."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "yerel adres alınamadı: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "uzaktaki adres alınamadı: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "dinlenemedi: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "%s adresine bağlanırken hata: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Çok yöne yayın kümesine katılırken hata: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Çok yöne yayın kümesinden ayrılırken hata: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "Kaynağa-özgü çok yöne yayın desteklenmiyor"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Desteklenmeyen yuva ailesi"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "kaynağa-özgü bir IPv4 adresi değil"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Arayüz adı çok uzun"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Arayüz bulunamadı: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "IPv4 kaynağa-özgü çok yöne yayın desteklenmiyor"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "IPv6 kaynağa-özgü çok yöne yayın desteklenmiyor"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Bağlantı kabul edilirken hata: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "Bağlantı devam ediyor"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Bekleyen hata alınamadı: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Veri alırken hata: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Veri gönderirken hata: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Yuva kapatılamadı: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Yuva kapatılırken hata: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "Yuva durumu bekleniyor: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "İleti gönderilemedi: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "İleti vektörleri çok geniş"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "İleti gönderme hatası: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage Windows iÅŸletim sisteminde desteklenmiyor"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "İleti alma hatası: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Yuva kimliği okunamadı : %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "bu işletim sistemi için g_socket_get_credentials uygulanmadı"
@@ -4020,11 +4047,11 @@ msgstr "%s bağlantısı gerçekleştirilemedi: "
msgid "Could not connect: "
msgstr "Bağlanılamadı: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "TCP olmayan bağlantılar üzerinden vekil sunucusu desteklenmiyor."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "“%s†vekil iletişim kuralı desteklenmiyor."
@@ -4126,7 +4153,7 @@ msgstr "SOCKSv5 vekil sunucusu verilen adres türünü desteklemiyor."
msgid "Unknown SOCKSv5 proxy error."
msgstr "Bilinmeyen SOCKSv5 vekil hatası."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr "Alt süreçle haberleşme için boru yaratılamadı (%s)"
@@ -4134,7 +4161,7 @@ msgstr "Alt süreçle haberleşme için boru yaratılamadı (%s)"
#: gio/gtestdbus.c:619
#, c-format
msgid "Pipes are not supported in this platform"
-msgstr "Bu platformda borular desteklenmiyor"
+msgstr "Borular bu platformda desteklenmiyor"
#: gio/gthemedicon.c:595
#, c-format
@@ -4150,44 +4177,66 @@ msgstr "Geçersiz adresler bulundu"
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "“%s†tersine çözülürken hata: %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr "DNS %s kaydı ayrıştırılamadı: kusurlu DNS paketi"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "“%s†için istenen türün DNS kaydı yok"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "Geçici olarak “%s†çözülemiyor"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "“%s†çözerken hata"
-#: gio/gtlscertificate.c:431
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Kusurlu DNS paketi"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "“%s†için DNS yanıtı ayrıştırılamadı: "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Hiçbir PEM-kodlamalı özel anahtar bulunamadı"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "PEM-kodlamalı özel anahtar şifresi çözülemiyor"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "PEM-kodlamalı özel anahtar ayrıştırılamadı"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "PEM-kodlamalı sertifika bulunamadı"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "PEM-kodlamalı sertifika ayrıştırılamadı"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "Var olan TLS arka ucu PKCS #12 desteklemiyor"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "GTlsBackend, PKCS #11 sertifikası yaratmayı desteklemiyor"
@@ -4212,52 +4261,60 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "Girilen parola hatalı."
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "FD gönderimi desteklenmiyor"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "Beklenen 1 denetim iletisi, alınan %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Yardımcı verinin beklenmeyen türü"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "Beklenen bir fd, ancak alınan %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Geçersiz fd alındı"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "FD alımı desteklenmiyor"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "Kimlik bilgileri gönderilirken hata oluştu: "
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "Yuva için SO_PASSCRED’in etkin olup olmadığını denetleme hatası: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "SO_PASSCRED etkinleÅŸtirmede hata: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"Kimlik bilgileri almak için bir bayt okunması bekleniyordu, sıfır bayt okundu"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Beklenen denetim iletisi yok ancak %d alındı"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "SO_PASSCRED devre dışı bırakılırken hata: %s"
@@ -4273,7 +4330,7 @@ msgstr "Dosya tanımlayıcıdan okuma hatası: %s"
msgid "Error closing file descriptor: %s"
msgstr "Dosya tanımlayıcı kapatılırken hata: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Dosya sistemi kök dizini"
@@ -4284,7 +4341,7 @@ msgstr "Dosya sistemi kök dizini"
msgid "Error writing to file descriptor: %s"
msgstr "Dosya tanımlayıcıya yazmada hata: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "Soyut UNIX alan yuvası adresleri bu sistemde desteklenmiyor"
@@ -4434,8 +4491,8 @@ msgstr "Exec satırı “%sâ€, “%s†URI’si ile geniÅŸletilirken baÅŸarıs
msgid "Unrepresentable character in conversion input"
msgstr "Dönüşüm girdisi içinde temsil edilemez karakter"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Girdinin sonunda parçalı karakter dizisi"
@@ -5001,15 +5058,15 @@ msgstr "Kanal kısmi bir karakterde sonlanıyor"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "g_io_channel_read_to_end içinde ham okuma başarısız"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "Arama dizinlerinde geçerli anahtar dosyası bulunamadı"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Normal dosya deÄŸil"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5017,50 +5074,50 @@ msgstr ""
"Anahtar dosyası; anahtar-değer çifti, küme veya yorum olmayan “%s†satırını "
"içeriyor"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Geçersiz küme adı: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Anahtar dosyası kümeyle başlamıyor"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Geçersiz anahtar adı: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Geçersiz anahtar adı: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Anahtar dosya desteklenmeyen “%s†kodlamasını içeriyor"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Anahtar dosyasında “%s†kümesi yok"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Anahtar dosyası, “%2$s†kümesinde “%1$s†anahtarı içermiyor"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "Anahtar dosyası, UTF-8 olmayan “%s†anahtarını “%s†değeriyle içeriyor"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr ""
"Anahtar dosyası yorumlanamayan bir değere sahip olan “%s†anahtarını içerir."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5069,38 +5126,38 @@ msgstr ""
"“%2$s†kümesindeki anahtar dosyası, yorumlanamayan “%1$s†anahtarını "
"içeriyor."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr ""
"“%2$s†kümesindeki “%1$s†anahtarı “%4$s†değerine sahip olması beklenirken "
"“%3$s†değerine sahip"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Anahtar dosyası satır sonunda çıkış karakteri içeriyor"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "“%s†anahtar dosyası geçersiz çıkış dizisi içeriyor"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "“%s†değeri bir sayı olarak yorumlanamıyor."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "“%sâ€, tamsayı deÄŸeri aralık dışında"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "“%s†değeri bir gerçel sayı olarak yorumlanamıyor."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "“%s†değeri mantıksal değer olarak yorumlanamıyor."
@@ -5396,7 +5453,7 @@ msgstr "%s seçeneği işlenirken hata"
msgid "Missing argument for %s"
msgstr "%s için argüman eksik"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Bilinmeyen seçenek %s"
@@ -5798,121 +5855,131 @@ msgstr "Metin boştu (veya yalnızca boşluk içeriyordu)"
msgid "Failed to read data from child process (%s)"
msgstr "Alt süreçten bilgi okuma başarısızlığı (%s)"
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "Alt süreçten bilgi okurken beklenmeyen hata oluştu (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "waitpid() (%s) içinde beklenmeyen hata"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "Alt işlem %ld kodu ile sonlandı"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Alt işlem, %ld sinyali ile sonlandı"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Alt iÅŸlem %ld sinyali ile durduruldu"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Alt işlem anormal bir biçimde sonlandı"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Alt süreç borusundan okuma başarısızlığı (%s)"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "“%s†alt süreci üretme başarısız (%s)"
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Çatallama başarısızlığı (%s)"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "“%s†dizinine değiştirme başarısızlığı (%s)"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "“%s†alt süreci çalıştırılırken hata oluştu (%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2550
+#, c-format
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Dosya tanımlayıcıyı yeniden eşlemek için dosya açılamadı (%s)"
+
+#: glib/gspawn.c:2558
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Alt sürecin girdisi veya çıktısı yönlendirilemedi (%s)"
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Alt süreç için dosya tanımlayıcı çoğaltılamadı (%s)"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Alt süreç çatallanamadı (%s)"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2575
#, c-format
msgid "Failed to close file descriptor for child process (%s)"
msgstr "Alt süreç için dosya tanımlayıcının kapatılması başarısız (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Alt süreç “%s†çalıştırılırken bilinmeyen hata oluştu"
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "Alt süreç borusundan yeterli bilgi okunamadı (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Alt süreçten bilgi okuma başarısızlığı"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Alt süreç yürütme başarısızlığı (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Alt süreç dup() yapılamadı (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Geçersiz program adı: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "%d konumunda argüman vektörü içinde geçersiz dizgi: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Çevre içinde geçersiz dizgi: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Geçersiz çalışma dizini: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Yardımcı program (%s) çalıştırılamadı"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -5920,21 +5987,21 @@ msgstr ""
"Alt süreçten bilgi okurken g_io_channel_win32_poll() işleminde beklenmeyen "
"hata"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Boş dizge bir sayı değildir"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "“%s†işaretli bir sayı değil"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "“%s†sayısı sınırların dışındadır [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "“%s†işaretsiz bir sayı değil"
@@ -5995,188 +6062,188 @@ msgstr "URI mutlak değil ve temel URI sağlanmamış"
msgid "Missing ‘=’ and parameter value"
msgstr "‘=’ ve parametre değeri eksik"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Bellek ayrılamadı"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Karakter UTF-8 için sınırlarının dışında"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Dönüşüm girdisi içinde geçersiz dizi"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Karakter UTF-16 sınırlarının dışında"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u bayt"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
msgstr[0] "%u bit"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
msgstr[0] "%s bayt"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6187,32 +6254,32 @@ msgstr[0] "%s bit"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
@@ -6334,9 +6401,6 @@ msgstr "%.1f EB"
#~ msgid "Unable to find default local directory monitor type"
#~ msgstr "Öntanımlı yerel dizin izleme tipi bulunamadı"
-#~ msgid "URIs not supported"
-#~ msgstr "URI'ler desteklenmiyor"
-
#~ msgid "Key file does not have key '%s'"
#~ msgstr "Anahtar dosyasında '%s' anahtarı yok"
diff --git a/po/uk.po b/po/uk.po
index 92b26003e..548c0e959 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -10,17 +10,28 @@ msgid ""
msgstr ""
"Project-Id-Version: glib\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2022-01-27 11:15+0000\n"
-"PO-Revision-Date: 2022-01-27 16:36+0200\n"
+"POT-Creation-Date: 2022-03-22 15:19+0000\n"
+"PO-Revision-Date: 2022-03-22 17:45+0200\n"
"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
"Language-Team: Ukrainian <trans-uk@lists.fedoraproject.org>\n"
"Language: uk\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<"
+"=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Lokalize 20.12.0\n"
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "Підтримки вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚Ð¸Ð¿Ð¾Ð²Ð¾Ñ— програми ще не передбачено"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"Підтримки вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸, Ñк оÑтанньої викориÑтаної Ð´Ð»Ñ Ñ‚Ð¸Ð¿Ñƒ, ще не "
+"передбачено"
+
#: gio/gapplication.c:500
msgid "GApplication options"
msgstr "Параметри GApplication"
@@ -44,7 +55,7 @@ msgid "Replace the running instance"
msgstr "Замінити запущений екземплÑÑ€"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "Ðадрукувати довідку"
@@ -56,7 +67,7 @@ msgstr "[КОМÐÐДÐ]"
msgid "Print version"
msgstr "ВивеÑти номер верÑÑ–Ñ—"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "ВивеÑти інформацію про верÑÑ–ÑŽ Ñ– вийти"
@@ -119,8 +130,8 @@ msgstr "Команда, за Ñкою виводитьÑÑ Ð´ÐµÑ‚Ð°Ð»ÑŒÐ½Ð° до
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "Ідентифікатор програми у форматі D-Bus (напр.: org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "ФÐЙЛ"
@@ -147,7 +158,7 @@ msgstr "ПÐРÐМЕТР"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "Ðеобов'Ñзковий параметр Ð´Ð»Ñ Ð²Ð¸ÐºÐ»Ð¸ÐºÑƒ дії у форматі GVariant"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -161,7 +172,7 @@ msgid "Usage:\n"
msgstr "ВикориÑтаннÑ:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "Ðргументи:\n"
@@ -284,7 +295,7 @@ msgstr "Потік вже закрито"
msgid "Truncate not supported on base stream"
msgstr "Ð£Ñ€Ñ–Ð·Ð°Ð½Ð½Ñ Ð½Ðµ підтримуєтьÑÑ Ñƒ базовому потоці"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1857 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -305,7 +316,7 @@ msgstr "Бракує проÑтору Ð´Ð»Ñ Ñ€ÐµÐ·ÑƒÐ»ÑŒÑ‚Ð°Ñ‚Ñƒ"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "Ðеправильна поÑлідовніÑÑ‚ÑŒ байтів у перетворюваних вхідних даних"
@@ -315,7 +326,7 @@ msgstr "Ðеправильна поÑлідовніÑÑ‚ÑŒ байтів у пер
msgid "Error during conversion: %s"
msgstr "Помилка під Ñ‡Ð°Ñ Ð¿ÐµÑ€ÐµÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ: %s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "Ð†Ð½Ñ–Ñ†Ñ–Ð°Ð»Ñ–Ð·Ð°Ñ†Ñ–Ñ Ð· можливіÑÑ‚ÑŽ ÑкаÑÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ðµ підтримуєтьÑÑ"
@@ -329,37 +340,37 @@ msgstr "Підтримки Ð¿ÐµÑ€ÐµÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð· набору Ñимвол
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ модуль Ð¿ÐµÑ€ÐµÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð· «%s» у «%s»"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "тип %s"
-#: gio/gcontenttype-win32.c:192
+#: gio/gcontenttype-win32.c:196
msgid "Unknown type"
msgstr "Ðевідомий тип"
-#: gio/gcontenttype-win32.c:194
+#: gio/gcontenttype-win32.c:198
#, c-format
msgid "%s filetype"
msgstr "тип файлів %s"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "У GCredentials міÑÑ‚ÑÑ‚ÑŒÑÑ Ð½ÐµÐºÐ¾Ñ€ÐµÐºÑ‚Ð½Ñ– дані"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "Тип GCredentials не реалізовано Ð´Ð»Ñ Ñ†Ñ–Ñ”Ñ— ОС"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "Підтримки GCredentials Ð´Ð»Ñ Ð²Ð°ÑˆÐ¾Ñ— платформи не передбачено"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "Тип GCredentials не міÑтить ідентифікатора процеÑу Ð´Ð»Ñ Ñ†Ñ–Ñ”Ñ— ОС"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "Спуфінг облікових даних неможливий у цій ОС"
@@ -367,17 +378,17 @@ msgstr "Спуфінг облікових даних неможливий у цÑ
msgid "Unexpected early end-of-stream"
msgstr "Ðеочікуваний передчаÑний кінець потоку"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "Ðепідтримуваний ключ «%s» у елементі адреÑи «%s»"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "БеззміÑтовна ÐºÐ¾Ð¼Ð±Ñ–Ð½Ð°Ñ†Ñ–Ñ ÐºÐ»ÑŽÑ‡/Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñƒ елементі адреÑи «%s»"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -386,28 +397,28 @@ msgstr ""
"Ðеправильна адреÑа «%s» (потрібен шлÑÑ…, каталог, тимчаÑовий каталог або один "
"з абÑтрактних ключів)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "Помилка в адреÑÑ– «%s» — неправильне Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ð° «%s»"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "Ðевідомий або непідтримуваний канал Ð¿ÐµÑ€ÐµÐ´Ð°Ð²Ð°Ð½Ð½Ñ Â«%s» Ð´Ð»Ñ Ð°Ð´Ñ€ÐµÑи «%s»"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "У елементі адреÑи «%s» немає двокрапки (:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "Ðазва каналу Ð¿ÐµÑ€ÐµÐ´Ð°Ð²Ð°Ð½Ð½Ñ Ñƒ елементі адреÑи «%s» має бути непорожньою"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
@@ -415,7 +426,7 @@ msgid ""
msgstr ""
"Пара ключ/Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %d, «%s», у елементі адреÑи «%s» не міÑтить знака рівноÑÑ‚Ñ–"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
@@ -423,7 +434,7 @@ msgstr ""
"Пара ключ/Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %d, «%s», у елементі адреÑи «%s» має міÑтити непорожній "
"ключ"
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
@@ -432,7 +443,7 @@ msgstr ""
"Помилка знÑÑ‚Ñ‚Ñ ÐµÐºÑ€Ð°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ ÐºÐ»ÑŽÑ‡Ð° або Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñƒ парі ключ/Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %d, «%s», "
"у елементі адреÑи «%s»"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
@@ -441,84 +452,83 @@ msgstr ""
"Помилка у адреÑÑ– «%s» — Ð´Ð»Ñ Ñ‚Ñ€Ð°Ð½Ñпорту unix потрібен лише один вÑтановлений "
"ключ «path» або «abstract»"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr ""
"Помилка у адреÑÑ– «%s» — немає атрибута вузла або вказано Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñƒ "
"помилковому форматі"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr ""
"Помилка в адреÑÑ– «%s» — атрибут не вказано атрибут порту або помилкове "
"Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ð°"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr ""
"Помилка в адреÑÑ– «%s» — атрибут не вказано атрибут noncefile або помилкове "
"Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ð°"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "Помилка автоматичного запуÑку: "
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° при відкриванні nonce-файла «%s»: %s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° при читанні nonce-файла «%s»: %s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr ""
"СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° при читанні nonce-файла «%s», очікувалоÑÑ 16 байтів, "
"отримано %d"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° запиÑу вміÑту nonce-файла «%s» до потоку:"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "Вказана адреÑа порожнÑ"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr ""
-"Ðеможливо породити Ð¿Ñ€Ð¾Ñ†ÐµÑ ÑˆÐ¸Ð½Ð¸ повідомлень, Ñкщо вÑтановлений атрибут setuid"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "Ðеможливо породити Ð¿Ñ€Ð¾Ñ†ÐµÑ ÑˆÐ¸Ð½Ð¸ повідомлень, Ñкщо вÑтановлено AT_SECURE"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "Ðеможливо породити Ð¿Ñ€Ð¾Ñ†ÐµÑ ÑˆÐ¸Ð½Ð¸ повідомлень без ідентифікатора машини:"
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "Ðеможливо автоматично запуÑкати D-Bus без $DISPLAY у X11"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "Помилка запуÑку Ñ€Ñдка команди «%s»: "
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr ""
"Ðе вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð¸Ñ‚Ð¸ адреÑу ÑеанÑової шини (не реалізовано Ð´Ð»Ñ Ñ†Ñ–Ñ”Ñ— ОС)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7334
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7318
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -527,7 +537,7 @@ msgstr ""
"Ðе вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð¸Ñ‚Ð¸ адреÑу шини зі Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð½Ð¾Ñ— Ñередовища "
"DBUS_STARTER_BUS_TYPE — невідоме Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Â«%s»"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7343
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7327
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
@@ -535,7 +545,7 @@ msgstr ""
"Ðе вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð¸Ñ‚Ð¸ адреÑу шини, оÑкільки Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð½Ð¾Ñ— Ñередовища "
"DBUS_STARTER_BUS_TYPE не вÑтановлено"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "Ðевідомий тип шини %d"
@@ -564,44 +574,44 @@ msgstr "Ідентифікатори кориÑтувача Ð´Ð»Ñ Ð²ÑƒÐ·Ð»Ð° Ñ–
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "СкаÑовано через GDBusAuthObserver::authorize-authenticated-peer"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:300
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "Помилка при отриманні відомоÑтей Ð´Ð»Ñ ÐºÐ°Ñ‚Ð°Ð»Ð¾Ð³Ñƒ «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:315
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
msgstr "Помилкові права на каталог «%s». Очікуваний режим — 0700, отримано 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:348 gio/gdbusauthmechanismsha1.c:359
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° при Ñтворенні каталогу «%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:361 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "ÐžÐ¿ÐµÑ€Ð°Ñ†Ñ–Ñ Ð½Ðµ підтримуєтьÑÑ"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:404
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° при відкриванні зв'Ñзки ключів «%s» на читаннÑ: "
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:427 gio/gdbusauthmechanismsha1.c:769
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr ""
"Ðекоректне Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ Ñ€Ñдку %d у зв'Ñзці ключів у «%s» з вміÑтом «%s»"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:441 gio/gdbusauthmechanismsha1.c:783
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -609,7 +619,7 @@ msgstr ""
"Ðекоректне Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÑˆÐ¾Ñ— лекÑеми у Ñ€Ñдку %d у зв'Ñзці ключів у «%s» з "
"вміÑтом «%s»"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:455 gio/gdbusauthmechanismsha1.c:797
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
@@ -617,161 +627,161 @@ msgstr ""
"Ðекоректне Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ñ€ÑƒÐ³Ð¾Ñ— лекÑеми у Ñ€Ñдку %d у зв'Ñзці ключів у «%s» з "
"вміÑтом «%s»"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:479
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ куки з ідентифікатором %d у зв'Ñзці ключів «%s»"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:536
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° при Ñтворенні файла Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Â«%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:609
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° при вилученні заÑтарілого файла Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Â«%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:648
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr ""
"СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° при закриванні (від'єднаного) файла Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Â«%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:659
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° при вилученні файла Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Â«%s»: %s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:736
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° при відкриванні зв'Ñзки ключів «%s» Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñу: "
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:930
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(Також, не вдалоÑÑ Ð²Ð¸Ð²Ñ–Ð»ÑŒÐ½Ð¸Ñ‚Ð¸ Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Â«%s»: %s) "
-#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
+#: gio/gdbusconnection.c:588 gio/gdbusconnection.c:2402
msgid "The connection is closed"
msgstr "З'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ð¾"
-#: gio/gdbusconnection.c:1903
+#: gio/gdbusconnection.c:1887
msgid "Timeout was reached"
msgstr "Ð§Ð°Ñ Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¸Ñ‡ÐµÑ€Ð¿Ð°Ð½Ð¾"
-#: gio/gdbusconnection.c:2541
+#: gio/gdbusconnection.c:2525
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr "При Ñтворенні клієнтÑького з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð²Ð¸Ñвлено непідтримувані прапорці"
-#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
+#: gio/gdbusconnection.c:4253 gio/gdbusconnection.c:4607
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr ""
"Ð†Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Â«org.freedesktop.DBus.Properties» Ð´Ð»Ñ ÑˆÐ»Ñху об'єкта %s не знайдено"
-#: gio/gdbusconnection.c:4414
+#: gio/gdbusconnection.c:4398
#, c-format
msgid "No such property “%sâ€"
msgstr "Ðемає влаÑтивоÑÑ‚Ñ– «%s»"
-#: gio/gdbusconnection.c:4426
+#: gio/gdbusconnection.c:4410
#, c-format
msgid "Property “%s†is not readable"
msgstr "ВлаÑтивіÑÑ‚ÑŒ «%s» недоÑтупна Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ"
-#: gio/gdbusconnection.c:4437
+#: gio/gdbusconnection.c:4421
#, c-format
msgid "Property “%s†is not writable"
msgstr "ВлаÑтивіÑÑ‚ÑŒ «%s» недоÑтупна Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñу"
-#: gio/gdbusconnection.c:4457
+#: gio/gdbusconnection.c:4441
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr ""
"Помилка вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ– «%s». Мало бути викориÑтано тип «%s», але "
"отримано «%s»"
-#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
-#: gio/gdbusconnection.c:6760
+#: gio/gdbusconnection.c:4546 gio/gdbusconnection.c:4761
+#: gio/gdbusconnection.c:6744
#, c-format
msgid "No such interface “%sâ€"
msgstr "Ðемає інтерфейÑу «%s»"
-#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
+#: gio/gdbusconnection.c:4983 gio/gdbusconnection.c:7258
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "Ðемає інтерфейÑу «%s» на об'єкті зі шлÑхом %s"
-#: gio/gdbusconnection.c:5100
+#: gio/gdbusconnection.c:5084
#, c-format
msgid "No such method “%sâ€"
msgstr "Ðемає методу «%s»"
-#: gio/gdbusconnection.c:5131
+#: gio/gdbusconnection.c:5115
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "Тип Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Â«%s» не збігаєтьÑÑ Ð· очікуваним типом «%s»"
-#: gio/gdbusconnection.c:5334
+#: gio/gdbusconnection.c:5318
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "Об'єкт інтерфейÑу %s вже екÑпортовано Ñк %s"
-#: gio/gdbusconnection.c:5561
+#: gio/gdbusconnection.c:5545
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "Ðе вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ влаÑтивіÑÑ‚ÑŒ %s.%s"
-#: gio/gdbusconnection.c:5617
+#: gio/gdbusconnection.c:5601
#, c-format
msgid "Unable to set property %s.%s"
msgstr "Ðе вдалоÑÑ Ð²Ñтановити Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ð»Ð°ÑтивоÑÑ‚Ñ– %s.%s"
-#: gio/gdbusconnection.c:5796
+#: gio/gdbusconnection.c:5780
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "Метод «%s» повернув тип «%s», але очікувалоÑÑ Â«%s»"
-#: gio/gdbusconnection.c:6872
+#: gio/gdbusconnection.c:6856
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "Методу «%s» інтерфейÑу «%s» з підпиÑом «%s» не Ñ–Ñнує"
-#: gio/gdbusconnection.c:6993
+#: gio/gdbusconnection.c:6977
#, c-format
msgid "A subtree is already exported for %s"
msgstr "Піддерево вже екÑпортовано Ð´Ð»Ñ %s"
-#: gio/gdbusconnection.c:7282
+#: gio/gdbusconnection.c:7266
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "Об'єкта зі шлÑхом «%s» не Ñ–Ñнує"
-#: gio/gdbusmessage.c:1311
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "ÐЕПРÐВИЛЬÐИЙ тип"
-#: gio/gdbusmessage.c:1322
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ METHOD_CALL: немає Ð¿Ð¾Ð»Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° PATH або MEMBER"
-#: gio/gdbusmessage.c:1333
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ METHOD_RETURN: немає Ð¿Ð¾Ð»Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° REPLY_SERIAL"
-#: gio/gdbusmessage.c:1345
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ ERROR: немає Ð¿Ð¾Ð»Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° REPLY_SERIAL або ERROR_NAME"
-#: gio/gdbusmessage.c:1358
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ SIGNAL: немає Ð¿Ð¾Ð»Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ° PATH, INTERFACE або MEMBER"
-#: gio/gdbusmessage.c:1366
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
@@ -779,7 +789,7 @@ msgstr ""
"ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ SIGNAL: поле заголовка PATH викориÑтовує зарезервоване "
"Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ /org/freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1374
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
@@ -787,7 +797,7 @@ msgstr ""
"ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ SIGNAL: поле заголовка INTERFACE викориÑтовує зарезервоване "
"Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ org.freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1422 gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
@@ -795,12 +805,12 @@ msgstr[0] "Потрібно було прочитати %lu байт, але пÑ
msgstr[1] "Потрібно було прочитати %lu байти, але прочитано лише %lu"
msgstr[2] "Потрібно було прочитати %lu байтів, але прочитано лише %lu"
-#: gio/gdbusmessage.c:1436
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "Мало бути викориÑтано байт NUL піÑÐ»Ñ Ñ€Ñдка «%s», але знайдено байт %d"
-#: gio/gdbusmessage.c:1455
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -810,21 +820,21 @@ msgstr ""
"(Ð·Ð¼Ñ–Ñ‰ÐµÐ½Ð½Ñ %d, довжина Ñ€Ñдка %d). Коректний Ñ€Ñдок UTF-8 аж до цієї миті був "
"таким: «%s»"
-#: gio/gdbusmessage.c:1519 gio/gdbusmessage.c:1795 gio/gdbusmessage.c:2006
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "Рівень вкладеноÑÑ‚Ñ– Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ” надто виÑоким"
-#: gio/gdbusmessage.c:1687
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "Оброблене Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Â«%s» не Ñ” припуÑтимим шлÑхом до об'єкта D-Bus"
-#: gio/gdbusmessage.c:1711
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "Оброблене Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Â«%s» не Ñ” припуÑтимим підпиÑом D-Bus"
-#: gio/gdbusmessage.c:1762
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -840,7 +850,7 @@ msgstr[2] ""
"ВиÑвлено маÑив довжиною %u байтів. МакÑимальна довжина дорівнює 2<<26 байт "
"(64 МіБ)."
-#: gio/gdbusmessage.c:1782
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -849,24 +859,23 @@ msgstr ""
"ВиÑвлено маÑив типу «a%c». ОчікувалоÑÑ, що довжина буде кратною до %u "
"байтів, втім, виÑвлено довжину %u байтів"
-#: gio/gdbusmessage.c:1936 gio/gdbusmessage.c:2655
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
msgid "Empty structures (tuples) are not allowed in D-Bus"
-msgstr ""
-"Ðе можна викориÑтовувати порожні Ñтруктури (кортежі) у D-Bus"
+msgstr "Ðе можна викориÑтовувати порожні Ñтруктури (кортежі) у D-Bus"
-#: gio/gdbusmessage.c:1990
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "Оброблене Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Â«%s» Ð´Ð»Ñ Ð²Ð°Ñ€Ñ–Ð°Ð½Ñ‚Ð° не Ñ” припуÑтимим підпиÑом D-Bus"
-#: gio/gdbusmessage.c:2031
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
msgstr ""
"Помилка деÑеріалізації GVariant з типом Ñ€Ñдка «%s» з формату D-Bus wire"
-#: gio/gdbusmessage.c:2216
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
@@ -875,29 +884,29 @@ msgstr ""
"Ðеправильний порÑдок байтів у значенні. Мало бути 0x6c («l») або 0x42 («B»), "
"але знайдено Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ 0x%02x"
-#: gio/gdbusmessage.c:2235
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr ""
"Ðеправильний Ñтарший номер верÑÑ–Ñ— протоколу. ОчікувавÑÑ 1, але знайдено %d"
-#: gio/gdbusmessage.c:2293 gio/gdbusmessage.c:2891
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr ""
"ВиÑвлено заголовок підпиÑу, але цей заголовок не належить до типу підпиÑів"
-#: gio/gdbusmessage.c:2305
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr ""
"Знайдено заголовок підпиÑу з підпиÑом «%s», але вміÑÑ‚ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñ” порожнім"
-#: gio/gdbusmessage.c:2320
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "Оброблене Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Â«%s» не Ñ” припуÑтимим підпиÑом D-Bus (Ð´Ð»Ñ Ð²Ð¼Ñ–Ñту)"
-#: gio/gdbusmessage.c:2352
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
@@ -911,17 +920,17 @@ msgstr[2] ""
"ВідÑутній заголовок підпиÑу у повідомленні, але тіло Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð·Ð°Ð¹Ð¼Ð°Ñ” %u "
"байтів"
-#: gio/gdbusmessage.c:2362
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "Ðе вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ деÑеріалізацію повідомленнÑ:"
-#: gio/gdbusmessage.c:2708
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
msgstr "Помилка Ñеріалізації GVariant з типом Ñ€Ñдка «%s» у формат D-Bus wire"
-#: gio/gdbusmessage.c:2845
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
@@ -929,16 +938,16 @@ msgstr ""
"КількіÑÑ‚ÑŒ деÑкрипторів файлів у повідомленні (%d) відрізнÑєтьÑÑ Ð²Ñ–Ð´ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ "
"у полі заголовка (%d)"
-#: gio/gdbusmessage.c:2853
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "Ðе вдалоÑÑ Ñеріалізувати повідомленнÑ: "
-#: gio/gdbusmessage.c:2906
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "ВміÑÑ‚ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¼Ð°Ñ” Ð¿Ñ–Ð´Ð¿Ð¸Ñ Â«%s», але немає заголовка підпиÑу"
-#: gio/gdbusmessage.c:2916
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
@@ -947,54 +956,54 @@ msgstr ""
"ВміÑÑ‚ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¼Ð°Ñ” тип підпиÑу «%s», але Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´Ð¿Ð¸Ñу у полі "
"заголовка дорівнює «%s»"
-#: gio/gdbusmessage.c:2932
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr ""
"ВміÑÑ‚ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¿Ð¾Ñ€Ð¾Ð¶Ð½Ñ–Ð¹, але Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´Ð¿Ð¸Ñу у полі заголовка дорівнює "
"«(%s)»"
-#: gio/gdbusmessage.c:3487
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "Повернуто помилку Ð´Ð»Ñ Ð²Ð¼Ñ–Ñту типу «%s»"
-#: gio/gdbusmessage.c:3495
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "Повернена помилка з порожнім тілом"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(Щоб закрити це вікно, уведіть будь-Ñкий Ñимвол)\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "Ð¡ÐµÐ°Ð½Ñ dbus не запущений, Ñ– автозапуÑк не виконавÑÑ"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "Ðе вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ профіль апаратури: %s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "Ðе вдалоÑÑ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶Ð¸Ñ‚Ð¸ %s або %s: "
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "Помилка виклику StartServiceByName Ð´Ð»Ñ %s: "
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "Ðеочікувана відповідь %d з методу StartServiceByName(«%s»)"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1050,66 +1059,66 @@ msgstr ""
"\n"
"Ð”Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð´Ð¾Ð²Ñ–Ð´ÐºÐ¸ за командою викориÑтовуйте «%s КОМÐÐДР--help».\n"
-#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:202 gio/gdbus-tool.c:274 gio/gdbus-tool.c:346
+#: gio/gdbus-tool.c:370 gio/gdbus-tool.c:860 gio/gdbus-tool.c:1245
+#: gio/gdbus-tool.c:1733
#, c-format
msgid "Error: %s\n"
msgstr "Помилка: %s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:213 gio/gdbus-tool.c:287 gio/gdbus-tool.c:1749
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° під Ñ‡Ð°Ñ Ð¾Ð±Ñ€Ð¾Ð±ÐºÐ¸ інтроÑпекції XML: %s\n"
-#: gio/gdbus-tool.c:250
+#: gio/gdbus-tool.c:251
#, c-format
msgid "Error: %s is not a valid name\n"
msgstr "Помилка: %s не Ñ” припуÑтимою назвою\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:256 gio/gdbus-tool.c:746 gio/gdbus-tool.c:1064
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "Помилка: %s не Ñ” припуÑтимим об'єктним шлÑхом\n"
-#: gio/gdbus-tool.c:403
+#: gio/gdbus-tool.c:404
msgid "Connect to the system bus"
msgstr "Під'єднатиÑÑ Ð´Ð¾ ÑиÑтемної шини"
-#: gio/gdbus-tool.c:404
+#: gio/gdbus-tool.c:405
msgid "Connect to the session bus"
msgstr "Під'єднатиÑÑ Ð´Ð¾ кориÑтувацької шини"
-#: gio/gdbus-tool.c:405
+#: gio/gdbus-tool.c:406
msgid "Connect to given D-Bus address"
msgstr "Під'єднатиÑÑ Ð´Ð¾ вказаної адреÑи D-Bus"
-#: gio/gdbus-tool.c:415
+#: gio/gdbus-tool.c:416
msgid "Connection Endpoint Options:"
msgstr "Параметри кінцевої точки з'єднаннÑ:"
-#: gio/gdbus-tool.c:416
+#: gio/gdbus-tool.c:417
msgid "Options specifying the connection endpoint"
msgstr "Параметри, що визначають кінцеву точку з'єднаннÑ"
-#: gio/gdbus-tool.c:439
+#: gio/gdbus-tool.c:440
#, c-format
msgid "No connection endpoint specified"
msgstr "Кінцева точка з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð½Ðµ вказана"
-#: gio/gdbus-tool.c:449
+#: gio/gdbus-tool.c:450
#, c-format
msgid "Multiple connection endpoints specified"
msgstr "Вказано декілька кінцевих точок з'єднаннÑ"
-#: gio/gdbus-tool.c:522
+#: gio/gdbus-tool.c:523
#, c-format
msgid ""
"Warning: According to introspection data, interface “%s†does not exist\n"
msgstr "ПопередженнÑ: згідно з даними інтроÑпекції, інтерфейÑу «%s» не Ñ–Ñнує\n"
-#: gio/gdbus-tool.c:531
+#: gio/gdbus-tool.c:532
#, c-format
msgid ""
"Warning: According to introspection data, method “%s†does not exist on "
@@ -1118,163 +1127,167 @@ msgstr ""
"ПопередженнÑ: згідно з даними інтроÑпекції, методу «%s» в інтерфейÑÑ– «%s» не "
"Ñ–Ñнує\n"
-#: gio/gdbus-tool.c:593
+#: gio/gdbus-tool.c:594
msgid "Optional destination for signal (unique name)"
msgstr "Ðеобов'Ñзковий отримувач Ñигналу (унікальна назва)"
-#: gio/gdbus-tool.c:594
+#: gio/gdbus-tool.c:595
msgid "Object path to emit signal on"
msgstr "Об'єктний шлÑÑ…, Ð´Ð»Ñ Ð²Ð¸Ð¿ÑƒÑку Ñигналу"
-#: gio/gdbus-tool.c:595
+#: gio/gdbus-tool.c:596
msgid "Signal and interface name"
msgstr "Ðазва Ñигналу Ñ– інтерфейÑу"
-#: gio/gdbus-tool.c:628
+#: gio/gdbus-tool.c:629
msgid "Emit a signal."
msgstr "ПоÑлати Ñигнал."
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:684 gio/gdbus-tool.c:1001 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
#, c-format
msgid "Error connecting: %s\n"
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° при з'єднанні: %s\n"
-#: gio/gdbus-tool.c:703
+#: gio/gdbus-tool.c:704
#, c-format
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "Помилка: %s не Ñ” припуÑтимою унікальною назвою шини.\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:723 gio/gdbus-tool.c:1044 gio/gdbus-tool.c:1879
msgid "Error: Object path is not specified\n"
msgstr "Помилка: не вказано об'єктний шлÑÑ…\n"
-#: gio/gdbus-tool.c:765
+#: gio/gdbus-tool.c:766
msgid "Error: Signal name is not specified\n"
msgstr "Помилка: не вказано назви Ñигналу\n"
-#: gio/gdbus-tool.c:779
+#: gio/gdbus-tool.c:780
#, c-format
msgid "Error: Signal name “%s†is invalid\n"
msgstr "Помилка: некоректна назва Ñигналу «%s»\n"
-#: gio/gdbus-tool.c:791
+#: gio/gdbus-tool.c:792
#, c-format
msgid "Error: %s is not a valid interface name\n"
msgstr "Помилка: %s не Ñ” припуÑтимою назвою інтерфейÑу\n"
-#: gio/gdbus-tool.c:797
+#: gio/gdbus-tool.c:798
#, c-format
msgid "Error: %s is not a valid member name\n"
msgstr "Помилка: %s не Ñ” припуÑтимою назвою члену\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:835 gio/gdbus-tool.c:1176
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° під Ñ‡Ð°Ñ Ð¾Ð±Ñ€Ð¾Ð±ÐºÐ¸ параметра %d: %s\n"
-#: gio/gdbus-tool.c:866
+#: gio/gdbus-tool.c:867
#, c-format
msgid "Error flushing connection: %s\n"
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° при Ñкиданні під'єднаннÑ: %s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:895
msgid "Destination name to invoke method on"
msgstr "Ðазва призначеннÑ, Ð´Ð»Ñ Ñкого викликаєтьÑÑ Ð¼ÐµÑ‚Ð¾Ð´"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:896
msgid "Object path to invoke method on"
msgstr "Об'єктний шлÑÑ…, Ð´Ð»Ñ Ñкого викликаєтьÑÑ Ð¼ÐµÑ‚Ð¾Ð´"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:897
msgid "Method and interface name"
msgstr "Ðазва методу або інтерфейÑу"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:898
msgid "Timeout in seconds"
msgstr "Ð§Ð°Ñ Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ Ñекундах"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:899
+msgid "Allow interactive authorization"
+msgstr "Дозволити інтерактивне уповноваженнÑ"
+
+#: gio/gdbus-tool.c:946
msgid "Invoke a method on a remote object."
msgstr "Викликає метод на віддаленому об'єкті."
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1018 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
msgid "Error: Destination is not specified\n"
msgstr "Помилка: не вказано призначеннÑ\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1029 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "Помилка: %s не Ñ” припуÑтимою назвою шини\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1079
msgid "Error: Method name is not specified\n"
msgstr "Помилка: не вказано назви методу\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1090
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "Помилка: некоректна назва методу «%s»\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1168
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° під Ñ‡Ð°Ñ Ð¾Ð±Ñ€Ð¾Ð±ÐºÐ¸ параметра %d типу «%s»: %s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1194
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "Помилка під Ñ‡Ð°Ñ Ð´Ð¾Ð´Ð°Ð²Ð°Ð½Ð½Ñ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ‚Ð° ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ %d: %s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1695
msgid "Destination name to introspect"
msgstr "Ðазва Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ñ–Ð½Ñ‚Ñ€Ð¾Ñпекції"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1696
msgid "Object path to introspect"
msgstr "Об'єктний шлÑÑ… Ð´Ð»Ñ Ñ–Ð½Ñ‚Ñ€Ð¾Ñпекції"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1697
msgid "Print XML"
msgstr "Ðадрукувати XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1698
msgid "Introspect children"
msgstr "ІнтроÑÐ¿ÐµÐºÑ†Ñ–Ñ Ð½Ð°Ñ‰Ð°Ð´ÐºÐ°"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1699
msgid "Only print properties"
msgstr "Лише влаÑтивоÑÑ‚Ñ– друку"
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1788
msgid "Introspect a remote object."
msgstr "Виконати інтроÑпекцію віддаленого об'єкту."
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1994
msgid "Destination name to monitor"
msgstr "Ðазва Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð»Ñ ÑпоÑтеріганнÑ"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1995
msgid "Object path to monitor"
msgstr "Об'єктний шлÑÑ… Ð´Ð»Ñ ÑпоÑтеріганнÑ"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2020
msgid "Monitor a remote object."
msgstr "СпоÑтерігати за віддаленим об'єктом."
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2078
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr ""
"Помилка: ÑпоÑÑ‚ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ Ð·Ð° з'єднаннÑм, Ñке не належить до типу message-bus, Ñ” "
"неможливим\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2202
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr ""
"Служба, Ñку Ñлід активувати, перш ніж очікувати на іншу (добре відома назва)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2205
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
@@ -1282,63 +1295,68 @@ msgstr ""
"Ð§Ð°Ñ Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¾ виходу із Ñтаном помилки (у Ñекундах); 0 — не очікувати "
"(типова поведінка)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2253
msgid "[OPTION…] BUS-NAME"
msgstr "[ПÐРÐМЕТР…] ÐÐЗВÐ-ШИÐИ"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2254
msgid "Wait for a bus name to appear."
msgstr "Очікувати на поÑву назви шини."
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2330
msgid "Error: A service to activate for must be specified.\n"
msgstr "Помилка: має бути вказано Ñлужбу Ð´Ð»Ñ Ð°ÐºÑ‚Ð¸Ð²Ð°Ñ†Ñ–Ñ—.\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2335
msgid "Error: A service to wait for must be specified.\n"
msgstr "Помилка: має бути вказано Ñлужбу Ð´Ð»Ñ Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ.\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2340
msgid "Error: Too many arguments.\n"
msgstr "Помилка: забагато аргументів.\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "Помилка: %s не Ñ” припуÑтимим добре відомою назвою шини.\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4935
+#: gio/gdebugcontrollerdbus.c:358
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "Ðе уповноважено змінювати параметри діагноÑтики"
+
+#: gio/gdesktopappinfo.c:2178 gio/gdesktopappinfo.c:5105
msgid "Unnamed"
msgstr "Без назви"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2588
msgid "Desktop file didn’t specify Exec field"
msgstr "У desktop-файлі не визначено Ð¿Ð¾Ð»Ñ Exec"
-#: gio/gdesktopappinfo.c:2804
+#: gio/gdesktopappinfo.c:2896
msgid "Unable to find terminal required for application"
msgstr "Ðеможливо знайти термінал, що потрібен програмі"
-#: gio/gdesktopappinfo.c:3455
+#: gio/gdesktopappinfo.c:3625
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr "Ðе вдалоÑÑ Ñтворити теку параметрів програми %s: %s"
-#: gio/gdesktopappinfo.c:3459
+#: gio/gdesktopappinfo.c:3629
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "Ðе вдалоÑÑ Ñтворити теку параметрів MIME %s: %s"
-#: gio/gdesktopappinfo.c:3701 gio/gdesktopappinfo.c:3725
+#: gio/gdesktopappinfo.c:3871 gio/gdesktopappinfo.c:3895
msgid "Application information lacks an identifier"
msgstr "У інформації про програму не вказано ідентифікатор"
-#: gio/gdesktopappinfo.c:3961
+#: gio/gdesktopappinfo.c:4131
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "Ðе вдалоÑÑ Ñтворити Ð´Ð»Ñ ÐºÐ¾Ñ€Ð¸Ñтувача desktop-файл %s"
-#: gio/gdesktopappinfo.c:4097
+#: gio/gdesktopappinfo.c:4267
#, c-format
msgid "Custom definition for %s"
msgstr "ВлаÑне Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %s"
@@ -1366,7 +1384,7 @@ msgstr "Ð´Ð»Ñ Ð´Ð¸Ñка не реалізовано функцію запуÑÐ
msgid "drive doesn’t implement stop"
msgstr "Ð´Ð»Ñ Ð´Ð¸Ñка не реалізовано функції зупинки"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "У модулі TLS не реалізовано Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¸Ð²'Ñзки TLS"
@@ -1407,74 +1425,74 @@ msgstr "ОчікуєтьÑÑ GEmblem Ð´Ð»Ñ GEmblemedIcon"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "Вкладена точка Ð¼Ð¾Ð½Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ðµ Ñ–Ñнує"
-#: gio/gfile.c:2608 gio/glocalfile.c:2486
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "Ðе можна копіювати із заміною каталогу"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "Ðе можна копіювати каталог поверх іншого каталогу"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "Цільовий файл Ñ–Ñнує"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "Ðе вдалоÑÑ Ñкопіювати каталог рекурÑивно"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "З'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð½Ðµ підтримуєтьÑÑ"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "Помилка при розрізанні файла: %s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "ÐšÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ (reflink/clone) між точками Ð¼Ð¾Ð½Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ðµ підтримуєтьÑÑ"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "ÐšÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ (reflink/clone) не підтримуєтьÑÑ Ð°Ð±Ð¾ некоректне"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr ""
"Підтримки ÐºÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ (reflink/clone) не передбачено або ÐºÐ¾Ð¿Ñ–ÑŽÐ²Ð°Ð½Ð½Ñ Ð½Ðµ працює"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "Ðе вдалоÑÑ Ñкопіювати Ñпеціальний файл"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "Ðеправильне Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñимвольного поÑиланнÑ"
-#: gio/gfile.c:4045 glib/gfileutils.c:2333
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "Символічні поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ðµ підтримуютьÑÑ"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "Смітник не підтримуєтьÑÑ"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "Ðазви файлів не можуть міÑтити Ñимволу «%c»"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "Ð´Ð»Ñ Ñ‚Ð¾Ð¼Ñƒ не реалізовано операцію монтуваннÑ"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "Програм Ð´Ð»Ñ Ð¾Ð±Ñ€Ð¾Ð±ÐºÐ¸ таких файлів не зареєÑтровано"
@@ -1519,7 +1537,7 @@ msgstr "ÐžÐ¿ÐµÑ€Ð°Ñ†Ñ–Ñ ÑƒÑ€Ñ–Ð·Ð°Ð½Ð½Ñ Ð½Ðµ підтримуєтьÑÑ Ð´Ð»Ñ
msgid "Truncate not supported on stream"
msgstr "ÐžÐ¿ÐµÑ€Ð°Ñ†Ñ–Ñ ÑƒÑ€Ñ–Ð·Ð°Ð½Ð½Ñ Ð½Ðµ підтримуєтьÑÑ Ð´Ð»Ñ Ð¿Ð¾Ñ‚Ð¾ÐºÑƒ"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "Ðеправильна назва вузла"
@@ -1606,7 +1624,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "Ðе вдалоÑÑ Ð¾Ð±Ñ€Ð¾Ð±Ð¸Ñ‚Ð¸ «%s» Ñк маÑку IP-адреÑ"
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "Бракує проÑтору Ð´Ð»Ñ Ð°Ð´Ñ€ÐµÑи Ñокету"
@@ -2452,15 +2470,15 @@ msgstr "Помилка при ÑтиÑненні файла %s"
msgid "text may not appear inside <%s>"
msgstr "текÑÑ‚ не може бути вÑередині <%s>"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "ВивеÑти дані щодо верÑÑ–Ñ— програми Ñ– завершити роботу"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "Ðазва вихідного файла"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
@@ -2468,49 +2486,49 @@ msgstr ""
"Каталоги Ð´Ð»Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð², на Ñкі поÑилаєтьÑÑ Ð¤ÐЙЛ (типово поточний "
"каталог)"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "КÐТÐЛОГ"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr ""
"Генерувати результат у форматі, Ñкий відповідає ÑуфікÑу назви файла "
"призначеннÑ"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "Генерувати джерельний заголовок"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr ""
"Генерувати початковий код, Ñкий викориÑтовуєтьÑÑ Ð´Ð»Ñ Ð·Ð²'Ñзку з файлом "
"реÑурÑів вашого коду"
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "Генерувати перелік залежноÑтей"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "Ðазва файла залежноÑтей, Ñкий Ñлід Ñтворити"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "Включити фіктивні Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñƒ Ñтворений файл залежноÑтей"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "Ðе Ñтворювати або реєÑтрувати реÑÑƒÑ€Ñ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡Ð½Ð¾"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "Ðе екÑпортувати функції; оголоÑити Ñ—Ñ… Ñк G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
@@ -2518,13 +2536,18 @@ msgstr ""
"Ðе вбудовувати дані реÑурÑу до файла Сі; припуÑкати його зовнішнє "
"компонуваннÑ"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr ""
"Ðазва C-ідентифікатора, Ñкий викориÑтовуватиметьÑÑ Ð´Ð»Ñ Ð¿Ð¾Ñ€Ð¾Ð´Ð¶ÐµÐ½Ð½Ñ "
"початкового коду"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr ""
+"КомпілÑтор C Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ (типове значеннÑ: вміÑÑ‚ змінної Ñередовища CC)"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2534,7 +2557,7 @@ msgstr ""
"Файли Ñпецифікації реÑурÑів мають Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ .gresource.xml,\n"
"а файл реÑурÑу має Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ .gresource."
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "Вам Ñлід вказати точно одну назву файла\n"
@@ -3328,13 +3351,13 @@ msgstr "Помилка при Ñтворенні резервної копії:
msgid "Error renaming temporary file: %s"
msgstr "Помилка при перейменуванні тимчаÑового файла: %s"
-#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1237
+#: gio/glocalfileoutputstream.c:609 gio/glocalfileoutputstream.c:1239
#, c-format
msgid "Error truncating file: %s"
msgstr "Помилка при обрізанні файла: %s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1220 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "Помилка при відкритті файла «%s»: %s"
@@ -3356,7 +3379,7 @@ msgstr "Файл був змінений іншою програмою"
msgid "Error removing old file: %s"
msgstr "Помилка при видаленні Ñтарого файла: %s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "Вказано неправильний GSeekType"
@@ -3368,15 +3391,15 @@ msgstr "Ðеправильний тип операції зміни позиці
msgid "Cannot truncate GMemoryInputStream"
msgstr "Ðе можна уÑікати GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "Ðе можна змінювати розмір потоку виводу у пам'ÑÑ‚ÑŒ"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "Помилка при зміні розміру потоку виводу у пам'ÑÑ‚ÑŒ"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
@@ -3384,11 +3407,11 @@ msgstr ""
"КількіÑÑ‚ÑŒ пам'ÑÑ‚Ñ–, потрібна Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñ†ÐµÑу запиÑу, більша ніж доÑтупний "
"адреÑний проÑÑ‚Ñ–Ñ€"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "Виконувати Ð¿ÐµÑ€ÐµÐ¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð½Ð° початок потоку"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "Виконувати Ð¿ÐµÑ€ÐµÐ¼Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð½Ð° кінець потоку"
@@ -3496,18 +3519,22 @@ msgstr "Сума векторів, Ñку передано до %s, Ñ” надтÐ
msgid "Source stream is already closed"
msgstr "Вхідний потік вже закритий"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "Помилка Ð¿ÐµÑ€ÐµÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð½Ð°Ð·Ð²Ð¸ на адреÑу «%s»: %s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s не реалізовано"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "Ðекоректний домен"
@@ -3622,7 +3649,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " РОЗДІЛ Ðазва розділу elf (необов'Ñзкова)\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " КОМÐÐДРКоманда Ð´Ð»Ñ Ð¿Ð¾ÑÑÐ½ÐµÐ½Ð½Ñ (необов'Ñзковий)\n"
@@ -3655,7 +3682,7 @@ msgstr "ШЛЯХ"
msgid " PATH A resource path\n"
msgstr " ШЛЯХ ШлÑÑ… реÑурÑу\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "Ðемає Ñхеми «%s»\n"
@@ -3686,35 +3713,35 @@ msgstr "ШлÑÑ… повинен закінчуватиÑÑ Ñимволом ко
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "У шлÑху не повинно бути дві ÑтоÑчих порÑд коÑих риÑок (//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "Ðадана величина лежить поза діапазоном припуÑтимих значень\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "Ключ недоÑтупний Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñу\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "Перелік вÑтановлених (непереміщуваних) Ñхем"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "Перелік вÑтановлених переміщуваних Ñхем"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "Перелік ключів у СХЕМІ"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "СХЕМÐ[:ШЛЯХ]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "Перелік нащадків СХЕМИ"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3722,48 +3749,48 @@ msgstr ""
"Перерахувати ключі Ñ– Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ€ÐµÐºÑƒÑ€Ñивно\n"
"Якщо вказана СХЕМÐ, то перерахувати уÑÑ– ключі\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "[СХЕМÐ[:ШЛЯХ]]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "Отримати Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ ÐšÐ›Ð®Ð§Ð"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "СХЕМÐ[:ШЛЯХ] КЛЮЧ"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "Запитати діапазон припуÑтимих значень КЛЮЧÐ"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "Запитати Ð¾Ð¿Ð¸Ñ ÐºÐ»ÑŽÑ‡Ð° КЛЮЧ"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "ПривлаÑнити величину ЗÐÐЧЕÐÐЯ КЛЮЧУ"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "СХЕМÐ[:ШЛЯХ] КЛЮЧ ЗÐÐЧЕÐÐЯ"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "Призначити КЛЮЧУ його типове значеннÑ"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "Скинути уÑÑ– ключі у СХЕМІ у Ñ—Ñ… типові значеннÑ"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "Перевірити, що КЛЮЧ доÑтупний Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñу"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3773,11 +3800,11 @@ msgstr ""
"Якщо КЛЮЧ не вказано, то Ñтежити за уÑіма ключами СХЕМИ.\n"
"Ð”Ð»Ñ Ð·ÑƒÐ¿Ð¸Ð½ÐºÐ¸ ÑÑ‚ÐµÐ¶ÐµÐ½Ð½Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸Ñтовуйте ^C.\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "СХЕМÐ[:ШЛЯХ] [КЛЮЧ]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3826,7 +3853,7 @@ msgstr ""
"КОМÐÐДл.\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3841,11 +3868,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " КÐТ_СХЕМ Каталог Ð´Ð»Ñ Ð¿Ð¾ÑˆÑƒÐºÑƒ додаткових Ñхем\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3853,218 +3880,218 @@ msgstr ""
" СХЕМРІдентифікатор Ñхеми\n"
" ШЛЯХ ШлÑÑ…, Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ¼Ñ–Ñ‰ÑƒÐ²Ð°Ð½Ð¸Ñ… Ñхем\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " КЛЮЧ (Ðеобов'Ñзковий) ключ Ñхеми\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " КЛЮЧ Ключ Ñхеми\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " ЗÐÐЧЕÐÐЯ ЗначеннÑ, що привлаÑнюєтьÑÑ\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "Ðе вдалоÑÑ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶Ð¸Ñ‚Ð¸ Ñхеми з «%s»: %s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "Схем не вÑтановлено\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "Вказано порожню назву Ñхеми\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "Ðемає ключа «%s»\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "Ðеправильний Ñокет, не ініціалізований"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "Ðеправильний Ñокет, помилка ініціалізації через : %s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "Сокет вже закритий"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "Перевищено Ñ‡Ð°Ñ Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð²Ð¾Ð´Ñƒ-виводу Ñокета"
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ GSocket з fd: %s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "Ðе вдалоÑÑ Ñтворити Ñокет: %s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "Вказано невідому родину"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "Вказано невідомий протокол"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr ""
"Ðеможливо ÑкориÑтатиÑÑ Ð¾Ð¿ÐµÑ€Ð°Ñ†Ñ–Ñми із датаграмами на Ñокеті без датаграм."
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
"Ðеможливо ÑкориÑтатиÑÑ Ð¾Ð¿ÐµÑ€Ð°Ñ†Ñ–Ñми із датаграмами на Ñокеті із вÑтановленим "
"чаÑом очікуваннÑ."
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "не вдаєтьÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ локальну адреÑу: %s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "не вдаєтьÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ віддалену адреÑу: %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "не вдаєтьÑÑ Ð¿Ñ€Ð¾Ñлухати: %s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "Помилка прив'ÑÐ·ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¾ адреÑи %s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "Помилка при вÑтупі до мультикаÑтової групи: %s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "Помилка при виході з мультикаÑтової групи: %s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "ВідÑÑƒÑ‚Ð½Ñ Ð¿Ñ–Ð´Ñ‚Ñ€Ð¸Ð¼ÐºÐ° мультикаÑта по джерелу"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "Ðепідтримуване ÑімейÑтво Ñокетів"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "source-specific не Ñ” адреÑою IPv4"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "Ðазва інтерфейÑу Ñ” надто довгою"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "Ðе знайдено інтерфейÑу: %s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr ""
"Підтримки Ñпецифічної Ð´Ð»Ñ Ð´Ð¶ÐµÑ€ÐµÐ»Ð° неÑпрÑмованої транÑлÑції Ð´Ð»Ñ IPv4 не "
"передбачено"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr ""
"Підтримки Ñпецифічної Ð´Ð»Ñ Ð´Ð¶ÐµÑ€ÐµÐ»Ð° неÑпрÑмованої транÑлÑції Ð´Ð»Ñ IPv6 не "
"передбачено"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "Помилка при прийнÑÑ‚Ñ‚Ñ– з'єднаннÑ: %s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "З'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ñ‚Ñ€Ð¸Ð²Ð°Ñ”"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "Ðе вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ помилку очікуваннÑ: "
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "Помилка при отриманні даних: %s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "Помилка при надÑиланні даних: %s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "Ðе вдалоÑÑ Ð²Ð¸Ð¼ÐºÐ½ÑƒÑ‚Ð¸ Ñокет: %s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "Помилка при закриванні Ñокету: %s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "ОчікуєтьÑÑ ÑƒÐ¼Ð¾Ð²Ð° Ñокету: %s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "Ðе вдалоÑÑ Ð½Ð°Ð´Ñ–Ñлати повідомленнÑ: %s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "Вектори Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñ” надто великими"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "Помилка при надÑиланні повідомленнÑ: %s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "GSocketControlMessage не підтримуєтьÑÑ Ñƒ windows"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "Помилка при отриманні повідомленнÑ: %s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "Ðе вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ Ð¿Ð¾Ð²Ð½Ð¾Ð²Ð°Ð¶ÐµÐ½Ð½Ñ Ñокета: %s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "Ð¤ÑƒÐ½ÐºÑ†Ñ–Ñ g_socket_get_credentials не реалізована у цій ОС"
@@ -4082,13 +4109,13 @@ msgstr "Ðе вдалоÑÑ Ð¿Ñ–Ð´'єднатиÑÑ Ð´Ð¾ %s: "
msgid "Could not connect: "
msgstr "Ðе вдалоÑÑ Ð¿Ñ–Ð´'єднатиÑÑ Ð´Ð¾: "
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr ""
"Підтримки Ð¿ÐµÑ€ÐµÐ´Ð°Ð²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… за допомогою прокÑÑ–-Ñервера через не-TCP "
"з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð½Ðµ передбачено."
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "Підтримки протоколу прокÑÑ– «%s» не передбачено."
@@ -4190,7 +4217,7 @@ msgstr "ПрокÑÑ– SOCKSv5 не підтримує пропонований Ñ‚
msgid "Unknown SOCKSv5 proxy error."
msgstr "Ðевідома помилка прокÑÑ– SOCKSv5."
-#: gio/gtestdbus.c:612 glib/gspawn-win32.c:311
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr "Помилка ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ ÐºÐ°Ð½Ð°Ð»Ñƒ Ð´Ð»Ñ Ð¾Ð±Ð¼Ñ–Ð½Ñƒ з дочірнім процеÑом (%s)"
@@ -4214,44 +4241,69 @@ msgstr "Ðе знайдено коректних адреÑ"
msgid "Error reverse-resolving “%sâ€: %s"
msgstr "Помилка зворотного Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð½Ð°Ð·Ð²Ð¸ за адреÑою «%s»: %s"
-#: gio/gthreadedresolver.c:676 gio/gthreadedresolver.c:755
-#: gio/gthreadedresolver.c:853 gio/gthreadedresolver.c:903
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:550 gio/gthreadedresolver.c:572
+#: gio/gthreadedresolver.c:610 gio/gthreadedresolver.c:657
+#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:698
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr ""
+"Помилка під Ñ‡Ð°Ñ Ñпроби обробити Ð·Ð°Ð¿Ð¸Ñ DNS %s: помилкове Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð°ÐºÐµÑ‚Ð°"
+" DNS"
+
+#: gio/gthreadedresolver.c:756 gio/gthreadedresolver.c:893
+#: gio/gthreadedresolver.c:991 gio/gthreadedresolver.c:1041
#, c-format
msgid "No DNS record of the requested type for “%sâ€"
msgstr "Ðемає запиÑу DNS з запитуваним типом «%s»"
-#: gio/gthreadedresolver.c:681 gio/gthreadedresolver.c:858
+#: gio/gthreadedresolver.c:761 gio/gthreadedresolver.c:996
#, c-format
msgid "Temporarily unable to resolve “%sâ€"
msgstr "ТимчаÑово неможливо розв'Ñзати «%s»"
-#: gio/gthreadedresolver.c:686 gio/gthreadedresolver.c:863
-#: gio/gthreadedresolver.c:973
+#: gio/gthreadedresolver.c:766 gio/gthreadedresolver.c:1001
+#: gio/gthreadedresolver.c:1111
#, c-format
msgid "Error resolving “%sâ€"
msgstr "Помилка при розв'Ñзанні імені «%s»"
-#: gio/gtlscertificate.c:431
+#: gio/gthreadedresolver.c:780 gio/gthreadedresolver.c:804
+#: gio/gthreadedresolver.c:829 gio/gthreadedresolver.c:844
+msgid "Malformed DNS packet"
+msgstr "Помилкове Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð°ÐºÐµÑ‚Ð° DNS"
+
+#: gio/gthreadedresolver.c:886
+#, c-format
+#| msgid "Failed to read from file “%sâ€: %s"
+msgid "Failed to parse DNS response for “%sâ€: "
+msgstr "Ðе вдалоÑÑ Ð¾Ð±Ñ€Ð¾Ð±Ð¸Ñ‚Ð¸ відповідь DNS Ð´Ð»Ñ Â«%s»: "
+
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "Ðе знайдено Ñекретний ключ у форматі PEM"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "Ðе вдалоÑÑ Ñ€Ð¾Ð·ÑˆÐ¸Ñ„Ñ€ÑƒÐ²Ð°Ñ‚Ð¸ Ñекретний ключ у форматі PEM"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "Ðе вдалоÑÑ Ñ€Ð¾Ð·Ñ–Ð±Ñ€Ð°Ñ‚Ð¸ Ñекретний ключ у форматі PEM"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "Ðе знайдено Ñертифікат у форматі PEM"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "Ðе вдалоÑÑ Ñ€Ð¾Ð·Ñ–Ð±Ñ€Ð°Ñ‚Ð¸ Ñертифікат у форматі PEM"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "У поточному модулі обробки TLS не передбачено підтримки PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr ""
"У цьому GTlsBackend не передбачено підтримки ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñертифікатів PKCS #11"
@@ -4278,8 +4330,12 @@ msgstr ""
msgid "The password entered is incorrect."
msgstr "Уведено неправильний пароль."
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "Підтримки надÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð´ÐµÑкриптора файла не передбачено"
+
# c-format
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
@@ -4287,11 +4343,11 @@ msgstr[0] "ОчікуєтьÑÑ 1 контрольне повідомленнÑ,
msgstr[1] "ОчікуєтьÑÑ 1 контрольне повідомленнÑ, отримано %d"
msgstr[2] "ОчікуєтьÑÑ 1 контрольне повідомленнÑ, отримано %d"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "Ðеочікуваний тип допоміжних даних"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
@@ -4299,37 +4355,41 @@ msgstr[0] "ОчікуєтьÑÑ Ð¾Ð´Ð¸Ð½ файловий деÑкриптор Ð
msgstr[1] "ОчікуєтьÑÑ Ð¾Ð´Ð¸Ð½ файловий деÑкриптор але отримано %d\n"
msgstr[2] "ОчікуєтьÑÑ Ð¾Ð´Ð¸Ð½ файловий деÑкриптор але отримано %d\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "Отримано неправильний fd"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "Підтримки Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð´ÐµÑкриптора файла не передбачено"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° при відправленні мандату:"
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° при перевірці Ð²Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ SO_PASSCRED Ð´Ð»Ñ Ñокета: %s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° при вмиканні SO_PASSCRED: %s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr ""
"ОчікувалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ один байт ідентифікаційної інформації (credentials), "
"але не прочитано жодного байту"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "Контрольне Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð½Ðµ очікувалоÑÑ, але отримано %d"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "СталаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ° при вимкненні SO_PASSCRED: %s"
@@ -4345,7 +4405,7 @@ msgstr "Помилка при читанні з файлового деÑкриÐ
msgid "Error closing file descriptor: %s"
msgstr "Помилка при закритті файлового деÑкриптора: %s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2809 gio/gunixmounts.c:2862
msgid "Filesystem root"
msgstr "Корінь файлової ÑиÑтеми"
@@ -4356,7 +4416,7 @@ msgstr "Корінь файлової ÑиÑтеми"
msgid "Error writing to file descriptor: %s"
msgstr "Помилка при запиÑу у файловий деÑкриптор: %s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr ""
"ÐбÑтрактні адреÑи доменних Ñокетів UNIX не підтримуютьÑÑ Ð½Ð° цій ÑиÑтемі"
@@ -4509,8 +4569,8 @@ msgstr "Помилка Ñ€Ð¾Ð·Ð³Ð¾Ñ€Ñ‚Ð°Ð½Ð½Ñ Ñ€Ñдка виконуваногÐ
msgid "Unrepresentable character in conversion input"
msgstr "Ðевідтворюваний Ñимвол у вхідних даних перетвореннÑ"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "Ðезавершена Ñимвольна поÑлідовніÑÑ‚ÑŒ на кінці вводу"
@@ -5078,15 +5138,15 @@ msgstr ""
"Ðе можна виконувати безпоÑереднє Ð·Ñ‡Ð¸Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ функції "
"g_io_channel_read_to_end"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ правильний ключовий файл у каталогах ключів"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "Ðе Ñ” звичайним файлом"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
@@ -5094,52 +5154,52 @@ msgstr ""
"Файл ключа міÑтить Ñ€Ñдок «%s», Ñкий не Ñ” парою ключ-значеннÑ, групою або "
"коментарем"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "Ðеправильна назва групи: %s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "Ключовий файл не починаєтьÑÑ Ð· групи"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "Ðеправильна назва ключа: %s"
+msgid "Invalid key name: %.*s"
+msgstr "Ðеправильна назва ключа: %.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "Файл ключа міÑтить кодуваннÑ, підтримки Ñкого не передбачено — «%s»"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3287
-#: glib/gkeyfile.c:3351 glib/gkeyfile.c:3481 glib/gkeyfile.c:3613
-#: glib/gkeyfile.c:3759 glib/gkeyfile.c:3994 glib/gkeyfile.c:4061
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "Файл ключа не міÑтить групи «%s»"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "Файл ключа не міÑтить ключ «%s» у групі «%s»"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr ""
"Файл ключа міÑтить ключ «%s» зі значеннÑм «%s», ÐºÐ¾Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ñкого не Ñ” "
"кодуваннÑм UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2529
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr ""
"Ключ «%s» з файла ключів міÑтить значеннÑ, Ñке не вдаєтьÑÑ Ð¿Ñ€Ð¾Ð°Ð½Ð°Ð»Ñ–Ð·ÑƒÐ²Ð°Ñ‚Ð¸."
-#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
@@ -5148,36 +5208,36 @@ msgstr ""
"Файл ключів міÑтить ключ «%s» у групі «%s», Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñкого не вдалоÑÑ "
"розпізнати."
-#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ ÐºÐ»ÑŽÑ‡Ð° «%s» у групі «%s» дорівнює «%s», але очікувалоÑÑ Â«%s»"
-#: glib/gkeyfile.c:4304
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "Ключовий файл міÑтить escape-Ñимвол наприкінці Ñ€Ñдка"
-#: glib/gkeyfile.c:4326
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "Файл ключа міÑтить неправильну поÑлідовніÑÑ‚ÑŒ ÐµÐºÑ€Ð°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Â«%s»"
-#: glib/gkeyfile.c:4470
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "Ðе вдалоÑÑ Ñ€Ð¾Ð·Ñ–Ð±Ñ€Ð°Ñ‚Ð¸ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Â«%s» Ñк чиÑло."
-#: glib/gkeyfile.c:4484
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "ЧиÑлове ціле Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Â«%s» поза межами діапазону"
-#: glib/gkeyfile.c:4517
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "Ð—Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Â«%s» не вдалоÑÑ Ð¿ÐµÑ€ÐµÑ‚Ð²Ð¾Ñ€Ð¸Ñ‚Ð¸ на чиÑло з рухомою комою."
-#: glib/gkeyfile.c:4556
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "Ðе вдалоÑÑ Ð¾Ð±Ñ€Ð¾Ð±Ð¸Ñ‚Ð¸ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Â«%s» Ñк логічне значеннÑ."
@@ -5467,7 +5527,7 @@ msgstr "Помилка розбору параметра %s"
msgid "Missing argument for %s"
msgstr "ВідÑутній аргумент %s"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "Ðевідомий параметр %s"
@@ -5876,121 +5936,131 @@ msgstr "ТекÑÑ‚ порожній (чи міÑтить лише пропуÑк
msgid "Failed to read data from child process (%s)"
msgstr "Помилка Ð·Ñ‡Ð¸Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… з дочірнього процеÑу (%s)"
-#: glib/gspawn.c:461
+#: glib/gspawn.c:462
#, c-format
msgid "Unexpected error in reading data from a child process (%s)"
msgstr "Ðеочікувана помилка під Ñ‡Ð°Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… з дочірнього процеÑу (%s)"
-#: glib/gspawn.c:546
+#: glib/gspawn.c:547
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Ðеочікувана помилка у waitpid() (%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1175 glib/gspawn-win32.c:1438
#, c-format
msgid "Child process exited with code %ld"
msgstr "Дочірній Ð¿Ñ€Ð¾Ñ†ÐµÑ Ð·Ð°ÐºÑ–Ð½Ñ‡Ð¸Ð²ÑÑ Ð· кодом %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process killed by signal %ld"
msgstr "Дочірній Ð¿Ñ€Ð¾Ñ†ÐµÑ Ð²Ð±Ð¸Ñ‚Ð¸Ð¹ за Ñигналом %ld"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "Дочірній Ð¿Ñ€Ð¾Ñ†ÐµÑ Ð·ÑƒÐ¿Ð¸Ð½ÐµÐ½Ð¸Ð¹ за Ñигналом %ld"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1197
#, c-format
msgid "Child process exited abnormally"
msgstr "Дочірній Ð¿Ñ€Ð¾Ñ†ÐµÑ Ð°Ð²Ð°Ñ€Ñ–Ð¹Ð½Ð¾ закінчив роботу"
-#: glib/gspawn.c:1864 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1890 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Помилка Ð·Ñ‡Ð¸Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð· дочірнього каналу (%s)"
-#: glib/gspawn.c:2166
+#: glib/gspawn.c:2253
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "Ðе вдалоÑÑ Ð·Ð°Ð¿ÑƒÑтити дочірній Ð¿Ñ€Ð¾Ñ†ÐµÑ Â«%s» (%s)"
-#: glib/gspawn.c:2283
+#: glib/gspawn.c:2370
#, c-format
msgid "Failed to fork (%s)"
msgstr "Помилка ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ñ†ÐµÑу (%s)"
-#: glib/gspawn.c:2443 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2530 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "Ðе вдалоÑÑ Ð·Ð¼Ñ–Ð½Ð¸Ñ‚Ð¸ каталог на «%s» (%s)"
-#: glib/gspawn.c:2453
+#: glib/gspawn.c:2540
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "Ðе вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ дочірній Ð¿Ñ€Ð¾Ñ†ÐµÑ Â«%s» (%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2550
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "Помилка Ð¿ÐµÑ€ÐµÐ½Ð°Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ð¸Ð²Ð¾Ð´Ñƒ чи вводу дочірнього процеÑу (%s)"
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ файл Ð´Ð»Ñ Ð·Ð¼Ñ–Ð½Ð¸ прив'Ñзки деÑкриптора файла (%s)"
-#: glib/gspawn.c:2472
+#: glib/gspawn.c:2558
+#, c-format
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "Ðе вдалоÑÑ Ð·Ð´ÑƒÐ±Ð»ÑŽÐ²Ð°Ñ‚Ð¸ деÑкриптор файла Ð´Ð»Ñ Ð´Ð¾Ñ‡Ñ–Ñ€Ð½ÑŒÐ¾Ð³Ð¾ процеÑу (%s)"
+
+#: glib/gspawn.c:2567
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Помилка запуÑку дочірнього процеÑу (%s)"
-#: glib/gspawn.c:2480
+#: glib/gspawn.c:2575
#, c-format
msgid "Failed to close file descriptor for child process (%s)"
msgstr "Ðе вдалоÑÑ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ð¸ деÑкриптор файла Ð´Ð»Ñ Ð´Ð¾Ñ‡Ñ–Ñ€Ð½ÑŒÐ¾Ð³Ð¾ процеÑу (%s)"
-#: glib/gspawn.c:2488
+#: glib/gspawn.c:2583
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "Ðевідома помилка Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð´Ð¾Ñ‡Ñ–Ñ€Ð½ÑŒÐ¾Ð³Ð¾ процеÑу «%s»"
-#: glib/gspawn.c:2512
+#: glib/gspawn.c:2607
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "Ðе вдалоÑÑ Ð·Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ доÑтатню кількіÑÑ‚ÑŒ даних з дочірнього каналу (%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "Помилка Ð·Ñ‡Ð¸Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… з дочірнього процеÑу"
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:521
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Помилка Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð´Ð¾Ñ‡Ñ–Ñ€Ð½ÑŒÐ¾Ð³Ð¾ процеÑу (%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "Ðе вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ dup() у дочірньому процеÑÑ– (%s)"
+
+#: glib/gspawn-win32.c:471
#, c-format
msgid "Invalid program name: %s"
msgstr "Ðеправильна назва програми: %s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:481 glib/gspawn-win32.c:807
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "Ðеправильний Ñ€Ñдок у векторі аргументів %d: %s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:492 glib/gspawn-win32.c:823
#, c-format
msgid "Invalid string in environment: %s"
msgstr "Ðеправильний Ñ€Ñдок у Ñередовищі: %s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:803
#, c-format
msgid "Invalid working directory: %s"
msgstr "Ðеправильний робочий каталог: %s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:868
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Ðе вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ допоміжну програму (%s)"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1096
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
@@ -5998,21 +6068,21 @@ msgstr ""
"Ðеочікувана помилка в зчитуванні даних з дочірнього процеÑу через "
"g_io_channel_win32_poll() "
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "Порожній Ñ€Ñдок не Ñ” чиÑлом"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "«%s» не Ñ” чиÑлом зі знаком"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "ЧиÑло «%s» не належить до діапазону [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "«%s» не Ñ” чиÑлом без знаку"
@@ -6073,168 +6143,168 @@ msgstr "ÐдреÑа не Ñ” абÑолютною, Ñ– не вказано баз
msgid "Missing ‘=’ and parameter value"
msgstr "Пропущено «=» Ñ– Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "Ðе вдалоÑÑ Ð²Ð¸Ð´Ñ–Ð»Ð¸Ñ‚Ð¸ пам'ÑÑ‚ÑŒ"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "Символ не входить в набір UTF-8"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "Ðеправильна поÑлідовніÑÑ‚ÑŒ у перетворюваному вводі"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "Символ не входить в набір UTF-16"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2770
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f кБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2772
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f МБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2774
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f ГБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2776
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f ТБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2778
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f ПБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2780
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f ЕБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2784
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f КіБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2786
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f МіБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2788
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f ГіБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2790
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f ТіБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2792
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f ПіБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2794
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f ЕіБ"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2798
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f кбіт"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2800
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Мбіт"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2802
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Гбіт"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2804
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Тбіт"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2806
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Пбіт"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2808
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Ебіт"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2812
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Кібіт"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2814
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Мібіт"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2816
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Гібіт"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2818
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Тібіт"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2820
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Пібіт"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2822
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Еібіт"
-#: glib/gutils.c:2856 glib/gutils.c:2973
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
@@ -6242,7 +6312,7 @@ msgstr[0] "%u байт"
msgstr[1] "%u байти"
msgstr[2] "%u байтів"
-#: glib/gutils.c:2860
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
@@ -6251,7 +6321,7 @@ msgstr[1] "%u бітів"
msgstr[2] "%u байтів"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2927
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
@@ -6260,7 +6330,7 @@ msgstr[1] "%s байти"
msgstr[2] "%s байтів"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2932
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6273,32 +6343,32 @@ msgstr[2] "%s бітів"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2986
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f КБ"
-#: glib/gutils.c:2991
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f МБ"
-#: glib/gutils.c:2996
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f ГБ"
-#: glib/gutils.c:3001
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f ТБ"
-#: glib/gutils.c:3006
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f ПБ"
-#: glib/gutils.c:3011
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f ЕБ"
diff --git a/po/zh_CN.po b/po/zh_CN.po
index 0e6387589..4fc0b6862 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -17,44 +17,53 @@
# Mingye Wang <arthur2e5@aosc.xyz>, 2015, 2016.
# Mingcong Bai <jeffbai@aosc.xyz>, 2015, 2016, 2018.
# Dingzhong Chen <wsxy162@gmail.com>, 2018-2021.
+# lumingzh <lumingzh@qq.com>, 2022.
#
msgid ""
msgstr ""
"Project-Id-Version: glib master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2021-08-21 08:44+0000\n"
-"PO-Revision-Date: 2021-09-04 13:08-0400\n"
-"Last-Translator: Dingzhong Chen <wsxy162@gmail.com>\n"
+"POT-Creation-Date: 2022-02-14 13:48+0000\n"
+"PO-Revision-Date: 2022-02-15 19:09+0800\n"
+"Last-Translator: lumingzh <lumingzh@qq.com>\n"
"Language-Team: Chinese - China <i18n-zh@googlegroups.com>\n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Poedit 3.0\n"
+"Plural-Forms: nplurals=1; plural=0\n"
+"X-Generator: Gtranslator 41.0\n"
-#: gio/gapplication.c:500
+#: gio/gappinfo.c:333
+msgid "Setting default applications not supported yet"
+msgstr "æš‚ä¸æ”¯æŒè®¾ç½®é»˜è®¤åº”用程åº"
+
+#: gio/gappinfo.c:366
+msgid "Setting application as last used for type not supported yet"
+msgstr "æš‚ä¸æ”¯æŒè®¾ç½®ä¸Šæ¬¡ç”¨æ¥æ‰“开文件类型的应用程åº"
+
+#: gio/gapplication.c:497
msgid "GApplication options"
msgstr "GApplication 选项"
-#: gio/gapplication.c:500
+#: gio/gapplication.c:497
msgid "Show GApplication options"
msgstr "显示 GApplication 选项"
-#: gio/gapplication.c:545
+#: gio/gapplication.c:542
msgid "Enter GApplication service mode (use from D-Bus service files)"
msgstr "进入 GApplication æœåŠ¡æ¨¡å¼ï¼ˆä»Ž D-Bus æœåŠ¡æ–‡ä»¶ä¸­è°ƒç”¨ï¼‰"
-#: gio/gapplication.c:557
+#: gio/gapplication.c:554
msgid "Override the application’s ID"
msgstr "è¦†ç›–åº”ç”¨ç¨‹åº ID"
-#: gio/gapplication.c:569
+#: gio/gapplication.c:566
msgid "Replace the running instance"
msgstr "替代è¿è¡Œä¸­çš„实例"
#: gio/gapplication-tool.c:45 gio/gapplication-tool.c:46 gio/gio-tool.c:227
-#: gio/gresource-tool.c:494 gio/gsettings-tool.c:572
+#: gio/gresource-tool.c:494 gio/gsettings-tool.c:584
msgid "Print help"
msgstr "打å°å¸®åŠ©"
@@ -66,7 +75,7 @@ msgstr "[命令]"
msgid "Print version"
msgstr "打å°ç‰ˆæœ¬"
-#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:578
+#: gio/gapplication-tool.c:50 gio/gsettings-tool.c:590
msgid "Print version information and exit"
msgstr "打å°ç‰ˆæœ¬ä¿¡æ¯å¹¶é€€å‡º"
@@ -127,8 +136,8 @@ msgstr "è¦æ‰“å°å…¶è¯¦ç»†å¸®åŠ©çš„命令"
msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
msgstr "D-Bus æ ¼å¼çš„应用程åºæ ‡è¯†ç¬¦ï¼ˆæ¯”如:org.example.viewer)"
-#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:738
-#: gio/glib-compile-resources.c:744 gio/glib-compile-resources.c:772
+#: gio/gapplication-tool.c:74 gio/glib-compile-resources.c:820
+#: gio/glib-compile-resources.c:826 gio/glib-compile-resources.c:855
#: gio/gresource-tool.c:501 gio/gresource-tool.c:567
msgid "FILE"
msgstr "文件"
@@ -153,7 +162,7 @@ msgstr "å‚æ•°"
msgid "Optional parameter to the action invocation, in GVariant format"
msgstr "å¯é€‰çš„æ“作调用å‚数,GVariant æ ¼å¼"
-#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:664
+#: gio/gapplication-tool.c:98 gio/gresource-tool.c:532 gio/gsettings-tool.c:676
#, c-format
msgid ""
"Unknown command %s\n"
@@ -167,7 +176,7 @@ msgid "Usage:\n"
msgstr "用法:\n"
#: gio/gapplication-tool.c:116 gio/gresource-tool.c:557
-#: gio/gsettings-tool.c:699
+#: gio/gsettings-tool.c:711
msgid "Arguments:\n"
msgstr "å‚数:\n"
@@ -290,7 +299,7 @@ msgstr "æµå·²ç»å…³é—­"
msgid "Truncate not supported on base stream"
msgstr "基æµä¸æ”¯æŒæˆªæ–­"
-#: gio/gcancellable.c:319 gio/gdbusconnection.c:1872 gio/gdbusprivate.c:1416
+#: gio/gcancellable.c:319 gio/gdbusconnection.c:1873 gio/gdbusprivate.c:1418
#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
#, c-format
msgid "Operation was cancelled"
@@ -311,7 +320,7 @@ msgstr "目标ä½ç½®æ²¡æœ‰è¶³å¤Ÿçš„空间"
#: gio/gcharsetconverter.c:342 gio/gdatainputstream.c:848
#: gio/gdatainputstream.c:1266 glib/gconvert.c:449 glib/gconvert.c:879
#: glib/giochannel.c:1573 glib/giochannel.c:1615 glib/giochannel.c:2470
-#: glib/gutf8.c:875 glib/gutf8.c:1328
+#: glib/gutf8.c:890 glib/gutf8.c:1344
msgid "Invalid byte sequence in conversion input"
msgstr "转æ¢è¾“入中有无效的字符åºåˆ—"
@@ -321,7 +330,7 @@ msgstr "转æ¢è¾“入中有无效的字符åºåˆ—"
msgid "Error during conversion: %s"
msgstr "转æ¢è¿‡ç¨‹ä¸­å‡ºé”™ï¼š%s"
-#: gio/gcharsetconverter.c:445 gio/gsocket.c:1143
+#: gio/gcharsetconverter.c:445 gio/gsocket.c:1147
msgid "Cancellable initialization not supported"
msgstr "ä¸æ”¯æŒå¯æ’¤é”€çš„åˆå§‹åŒ–"
@@ -335,7 +344,7 @@ msgstr "ä¸æ”¯æŒä»Žå­—符集“%sâ€åˆ°â€œ%sâ€çš„转æ¢"
msgid "Could not open converter from “%s†to “%sâ€"
msgstr "无法打开从“%sâ€åˆ°â€œ%sâ€çš„转æ¢å™¨"
-#: gio/gcontenttype.c:454
+#: gio/gcontenttype.c:470
#, c-format
msgid "%s type"
msgstr "%s 类型"
@@ -349,23 +358,23 @@ msgstr "未知类型"
msgid "%s filetype"
msgstr "%s 文件类型"
-#: gio/gcredentials.c:323
+#: gio/gcredentials.c:335
msgid "GCredentials contains invalid data"
msgstr "GCredentials 包å«æ— æ•ˆæ•°æ®"
-#: gio/gcredentials.c:383 gio/gcredentials.c:667
+#: gio/gcredentials.c:395 gio/gcredentials.c:686
msgid "GCredentials is not implemented on this OS"
msgstr "æ­¤æ“作系统上没有实现 GCredentials"
-#: gio/gcredentials.c:538 gio/gcredentials.c:556
+#: gio/gcredentials.c:550 gio/gcredentials.c:568
msgid "There is no GCredentials support for your platform"
msgstr "您的平å°å°šä¸æ”¯æŒ GCredentials"
-#: gio/gcredentials.c:607
+#: gio/gcredentials.c:626
msgid "GCredentials does not contain a process ID on this OS"
msgstr "æ­¤æ“作系统上的 GCredentials 未包å«ä¸€ä¸ªè¿›ç¨‹ ID"
-#: gio/gcredentials.c:661
+#: gio/gcredentials.c:680
msgid "Credentials spoofing is not possible on this OS"
msgstr "æ­¤æ“作系统上无法进行è¯ä¹¦æ¬ºéª—"
@@ -373,153 +382,153 @@ msgstr "æ­¤æ“作系统上无法进行è¯ä¹¦æ¬ºéª—"
msgid "Unexpected early end-of-stream"
msgstr "éžé¢„期的过早的æµç»“æŸç¬¦"
-#: gio/gdbusaddress.c:159 gio/gdbusaddress.c:233 gio/gdbusaddress.c:322
+#: gio/gdbusaddress.c:162 gio/gdbusaddress.c:236 gio/gdbusaddress.c:325
#, c-format
msgid "Unsupported key “%s†in address entry “%sâ€"
msgstr "地å€æ¡ç›®â€œ%2$sâ€ä¸­æœ‰æœªæ”¯æŒçš„键“%1$sâ€"
-#: gio/gdbusaddress.c:172
+#: gio/gdbusaddress.c:175
#, c-format
msgid "Meaningless key/value pair combination in address entry “%sâ€"
msgstr "地å€æ¡ç›®â€œ%sâ€ä¸­æœ‰æ— æ„义的键/值对组åˆ"
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:184
#, c-format
msgid ""
"Address “%s†is invalid (need exactly one of path, dir, tmpdir, or abstract "
"keys)"
msgstr "地å€â€œ%sâ€æ— æ•ˆï¼ˆéœ€è¦æŒ‡å®šä¸€ä¸ªä¸”仅一个的路径ã€ç›®å½•ã€ä¸´æ—¶ç›®å½•æˆ–抽象键)"
-#: gio/gdbusaddress.c:248 gio/gdbusaddress.c:259 gio/gdbusaddress.c:274
-#: gio/gdbusaddress.c:337 gio/gdbusaddress.c:348
+#: gio/gdbusaddress.c:251 gio/gdbusaddress.c:262 gio/gdbusaddress.c:277
+#: gio/gdbusaddress.c:340 gio/gdbusaddress.c:351
#, c-format
msgid "Error in address “%s†— the “%s†attribute is malformed"
msgstr "地å€â€œ%sâ€ä¸­æœ‰é”™è¯¯â€”—\"%s\"属性格å¼é”™è¯¯"
-#: gio/gdbusaddress.c:418 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:421 gio/gdbusaddress.c:680
#, c-format
msgid "Unknown or unsupported transport “%s†for address “%sâ€"
msgstr "传输“%sâ€å¯¹äºŽåœ°å€â€œ%sâ€æœªçŸ¥æˆ–ä¸æ”¯æŒ"
-#: gio/gdbusaddress.c:462
+#: gio/gdbusaddress.c:465
#, c-format
msgid "Address element “%s†does not contain a colon (:)"
msgstr "地å€å…ƒç´ â€œ%sâ€æœªåŒ…å«å†’å·ï¼ˆ:)"
-#: gio/gdbusaddress.c:471
+#: gio/gdbusaddress.c:474
#, c-format
msgid "Transport name in address element “%s†must not be empty"
msgstr "地å€å…ƒç´ â€œ%sâ€ä¸­çš„传输å称ä¸èƒ½ä¸ºç©º"
-#: gio/gdbusaddress.c:492
+#: gio/gdbusaddress.c:495
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†does not contain an equal "
"sign"
msgstr "地å€å…ƒç´ â€œ%3$sâ€ä¸­çš„第 %1$d 个键/值对 “%2$sâ€æœªåŒ…å«ç­‰å·"
-#: gio/gdbusaddress.c:503
+#: gio/gdbusaddress.c:506
#, c-format
msgid ""
"Key/Value pair %d, “%sâ€, in address element “%s†must not have an empty key"
msgstr "地å€å…ƒç´ â€œ%3$sâ€ä¸­çš„第 %1$d 个键/值对 “%2$sâ€ä¸èƒ½æœ‰ç©ºçš„é”®"
# 改掉顿å·ï¼Œå› å…¶ä¸æ˜¯å¹¶åˆ—关系
-#: gio/gdbusaddress.c:517
+#: gio/gdbusaddress.c:520
#, c-format
msgid ""
"Error unescaping key or value in Key/Value pair %d, “%sâ€, in address element "
"“%sâ€"
msgstr "在地å€å…ƒç´ â€œ%3$sâ€ä¸­ï¼Œå¯¹é”®/值对 %1$d,“%2$sâ€å–消转义键或值时出错"
-#: gio/gdbusaddress.c:589
+#: gio/gdbusaddress.c:588
#, c-format
msgid ""
"Error in address “%s†— the unix transport requires exactly one of the keys "
"“path†or “abstract†to be set"
msgstr "地å€â€œ%sâ€ä¸­æœ‰é”™è¯¯â€”—UNIX 传输需è¦â€œpathâ€æˆ–“abstractâ€ä¹‹ä¸€çš„键被设置"
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:623
#, c-format
msgid "Error in address “%s†— the host attribute is missing or malformed"
msgstr "地å€â€œ%sâ€ä¸­æœ‰é”™è¯¯â€”—主机属性丢失或格å¼é”™è¯¯"
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:637
#, c-format
msgid "Error in address “%s†— the port attribute is missing or malformed"
msgstr "地å€â€œ%sâ€ä¸­æœ‰é”™è¯¯â€”—端å£å±žæ€§ä¸¢å¤±æˆ–æ ¼å¼é”™è¯¯"
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:651
#, c-format
msgid "Error in address “%s†— the noncefile attribute is missing or malformed"
msgstr "地å€â€œ%sâ€ä¸­æœ‰é”™è¯¯â€”—临时文件属性丢失或格å¼é”™è¯¯"
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:672
msgid "Error auto-launching: "
msgstr "自动å¯åŠ¨å‡ºé”™ï¼š"
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:725
#, c-format
msgid "Error opening nonce file “%sâ€: %s"
msgstr "打开临时文件“%sâ€æ—¶å‡ºé”™ï¼š%s"
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:744
#, c-format
msgid "Error reading from nonce file “%sâ€: %s"
msgstr "读å–临时文件“%sâ€æ—¶å‡ºé”™ï¼š%s"
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:753
#, c-format
msgid "Error reading from nonce file “%sâ€, expected 16 bytes, got %d"
msgstr "读å–临时文件“%sâ€æ—¶å‡ºé”™ï¼Œé¢„计 16 个字节,得到 %d 个"
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:771
#, c-format
msgid "Error writing contents of nonce file “%s†to stream:"
msgstr "写入临时文件“%sâ€çš„内容到æµæ—¶å‡ºé”™ï¼š"
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:986
msgid "The given address is empty"
msgstr "给定的地å€ä¸ºç©º"
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1099
#, c-format
-msgid "Cannot spawn a message bus when setuid"
-msgstr "无法在 setuid æ—¶å¯åŠ¨ä¸€æ¡æ¶ˆæ¯æ€»çº¿"
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr "无法在已设置 AT_SECURE æ—¶å¯åŠ¨ä¸€æ¡æ¶ˆæ¯æ€»çº¿"
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1106
msgid "Cannot spawn a message bus without a machine-id: "
msgstr "无法在无机器 ID 时生æˆä¸€æ¡æ¶ˆæ¯æ€»çº¿ï¼š"
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1113
#, c-format
msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
msgstr "无法在没有 X11 $DISPLAY 的情况下自动å¯åŠ¨ D-Bus"
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1155
#, c-format
msgid "Error spawning command line “%sâ€: "
msgstr "生æˆå¹¶è¿è¡Œå‘½ä»¤è¡Œâ€œ%sâ€æ—¶å‡ºé”™ï¼š"
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1224
#, c-format
msgid "Cannot determine session bus address (not implemented for this OS)"
msgstr "无法确定会è¯æ€»çº¿åœ°å€ï¼ˆå°šæœªåœ¨æ­¤æ“作系统上实现)"
-#: gio/gdbusaddress.c:1375 gio/gdbusconnection.c:7261
+#: gio/gdbusaddress.c:1373 gio/gdbusconnection.c:7334
#, c-format
msgid ""
"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
"— unknown value “%sâ€"
msgstr "无法从 DBUS_STARTER_BUS_TYPE 环境å˜é‡ç¡®å®šæ€»çº¿åœ°å€â€”—未知的值“%sâ€"
-#: gio/gdbusaddress.c:1384 gio/gdbusconnection.c:7270
+#: gio/gdbusaddress.c:1382 gio/gdbusconnection.c:7343
msgid ""
"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
"variable is not set"
msgstr "无法确定总线地å€ï¼Œå› ä¸ºçŽ¯å¢ƒå˜é‡ DBUS_STARTER_BUS_TYPE 未设置"
-#: gio/gdbusaddress.c:1394
+#: gio/gdbusaddress.c:1392
#, c-format
msgid "Unknown bus type %d"
msgstr "未知的总线类型 %d"
@@ -546,228 +555,228 @@ msgstr "对等端和æœåŠ¡å™¨ç«¯çš„用户 ID 必须相åŒ"
msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
msgstr "通过 GDBusAuthObserver::authorize-authenticated-peer å–消"
-#: gio/gdbusauthmechanismsha1.c:298
+#: gio/gdbusauthmechanismsha1.c:299
#, c-format
msgid "Error when getting information for directory “%sâ€: %s"
msgstr "获å–目录“%sâ€ä¿¡æ¯æ—¶å‘生错误:%s"
-#: gio/gdbusauthmechanismsha1.c:313
+#: gio/gdbusauthmechanismsha1.c:314
#, c-format
msgid ""
"Permissions on directory “%s†are malformed. Expected mode 0700, got 0%o"
msgstr "目录“%sâ€æƒé™é”™è¯¯ã€‚期望 0700,得到 0%o"
-#: gio/gdbusauthmechanismsha1.c:346 gio/gdbusauthmechanismsha1.c:357
+#: gio/gdbusauthmechanismsha1.c:347 gio/gdbusauthmechanismsha1.c:358
#, c-format
msgid "Error creating directory “%sâ€: %s"
msgstr "创建目录“%sâ€æ—¶å‡ºé”™ï¼š%s"
-#: gio/gdbusauthmechanismsha1.c:359 gio/gfile.c:1062 gio/gfile.c:1300
-#: gio/gfile.c:1438 gio/gfile.c:1676 gio/gfile.c:1731 gio/gfile.c:1789
-#: gio/gfile.c:1873 gio/gfile.c:1930 gio/gfile.c:1994 gio/gfile.c:2049
-#: gio/gfile.c:3754 gio/gfile.c:3809 gio/gfile.c:4102 gio/gfile.c:4572
-#: gio/gfile.c:4983 gio/gfile.c:5068 gio/gfile.c:5158 gio/gfile.c:5255
-#: gio/gfile.c:5342 gio/gfile.c:5443 gio/gfile.c:8153 gio/gfile.c:8243
-#: gio/gfile.c:8327 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:360 gio/gfile.c:1080 gio/gfile.c:1318
+#: gio/gfile.c:1456 gio/gfile.c:1694 gio/gfile.c:1749 gio/gfile.c:1807
+#: gio/gfile.c:1891 gio/gfile.c:1948 gio/gfile.c:2012 gio/gfile.c:2067
+#: gio/gfile.c:3772 gio/gfile.c:3912 gio/gfile.c:4205 gio/gfile.c:4675
+#: gio/gfile.c:5086 gio/gfile.c:5171 gio/gfile.c:5261 gio/gfile.c:5358
+#: gio/gfile.c:5445 gio/gfile.c:5546 gio/gfile.c:8375 gio/gfile.c:8465
+#: gio/gfile.c:8549 gio/win32/gwinhttpfile.c:453
msgid "Operation not supported"
msgstr "ä¸æ”¯æŒè¯¥æ“作"
-#: gio/gdbusauthmechanismsha1.c:402
+#: gio/gdbusauthmechanismsha1.c:403
#, c-format
msgid "Error opening keyring “%s†for reading: "
msgstr "打开密钥环“%sâ€ä»¥è¯»å–时出错:"
-#: gio/gdbusauthmechanismsha1.c:425 gio/gdbusauthmechanismsha1.c:747
+#: gio/gdbusauthmechanismsha1.c:426 gio/gdbusauthmechanismsha1.c:748
#, c-format
msgid "Line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "“%2$sâ€å¤„的密钥环第 %1$d 行有ä¸ç¬¦åˆæ ¼å¼çš„内容“%3$sâ€"
-#: gio/gdbusauthmechanismsha1.c:439 gio/gdbusauthmechanismsha1.c:761
+#: gio/gdbusauthmechanismsha1.c:440 gio/gdbusauthmechanismsha1.c:762
#, c-format
msgid ""
"First token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "“%2$sâ€å¤„的密钥环第 %1$d 行第一个令牌有ä¸ç¬¦åˆæ ¼å¼çš„内容“%3$sâ€"
-#: gio/gdbusauthmechanismsha1.c:453 gio/gdbusauthmechanismsha1.c:775
+#: gio/gdbusauthmechanismsha1.c:454 gio/gdbusauthmechanismsha1.c:776
#, c-format
msgid ""
"Second token of line %d of the keyring at “%s†with content “%s†is malformed"
msgstr "“%2$sâ€å¤„的密钥环第 %1$d 行第二个令牌有ä¸ç¬¦åˆæ ¼å¼çš„内容“%3$sâ€"
-#: gio/gdbusauthmechanismsha1.c:477
+#: gio/gdbusauthmechanismsha1.c:478
#, c-format
msgid "Didn’t find cookie with id %d in the keyring at “%sâ€"
msgstr "未在“%2$sâ€å¤„的密钥环中找到 ID 为 %1$d çš„ cookie"
-#: gio/gdbusauthmechanismsha1.c:523
+#: gio/gdbusauthmechanismsha1.c:524
#, c-format
msgid "Error creating lock file “%sâ€: %s"
msgstr "创建é”文件“%sâ€æ—¶å‡ºé”™ï¼š%s"
-#: gio/gdbusauthmechanismsha1.c:587
+#: gio/gdbusauthmechanismsha1.c:588
#, c-format
msgid "Error deleting stale lock file “%sâ€: %s"
msgstr "删除过时的é”文件“%sâ€æ—¶å‡ºé”™ï¼š%s"
-#: gio/gdbusauthmechanismsha1.c:626
+#: gio/gdbusauthmechanismsha1.c:627
#, c-format
msgid "Error closing (unlinked) lock file “%sâ€: %s"
msgstr "关闭(未链接的)é”文件“%sâ€æ—¶å‡ºé”™ï¼š%s"
-#: gio/gdbusauthmechanismsha1.c:637
+#: gio/gdbusauthmechanismsha1.c:638
#, c-format
msgid "Error unlinking lock file “%sâ€: %s"
msgstr "删除(unlink)é”文件“%sâ€æ—¶å‡ºé”™ï¼š%s"
-#: gio/gdbusauthmechanismsha1.c:714
+#: gio/gdbusauthmechanismsha1.c:715
#, c-format
msgid "Error opening keyring “%s†for writing: "
msgstr "打开钥匙环“%sâ€ä»¥å†™å…¥æ—¶å‡ºé”™ï¼š"
-#: gio/gdbusauthmechanismsha1.c:908
+#: gio/gdbusauthmechanismsha1.c:909
#, c-format
msgid "(Additionally, releasing the lock for “%s†also failed: %s) "
msgstr "(此外,解除“%sâ€çš„é”定也失败了:%s) "
-#: gio/gdbusconnection.c:603 gio/gdbusconnection.c:2417
+#: gio/gdbusconnection.c:604 gio/gdbusconnection.c:2418
msgid "The connection is closed"
msgstr "连接已关闭"
-#: gio/gdbusconnection.c:1902
+#: gio/gdbusconnection.c:1903
msgid "Timeout was reached"
msgstr "已到超时é™åˆ¶"
-#: gio/gdbusconnection.c:2540
+#: gio/gdbusconnection.c:2541
msgid ""
"Unsupported flags encountered when constructing a client-side connection"
msgstr "构建客户端连接时é‡åˆ°ä¸æ”¯æŒçš„标志"
-#: gio/gdbusconnection.c:4189 gio/gdbusconnection.c:4536
+#: gio/gdbusconnection.c:4269 gio/gdbusconnection.c:4623
#, c-format
msgid ""
"No such interface “org.freedesktop.DBus.Properties†on object at path %s"
msgstr "路径 %s 的对象上没有“org.freedesktop.DBus.Propertiesâ€æŽ¥å£"
-#: gio/gdbusconnection.c:4331
+#: gio/gdbusconnection.c:4414
#, c-format
msgid "No such property “%sâ€"
msgstr "无此属性“%sâ€"
-#: gio/gdbusconnection.c:4343
+#: gio/gdbusconnection.c:4426
#, c-format
msgid "Property “%s†is not readable"
msgstr "属性“%sâ€ä¸å¯è¯»"
-#: gio/gdbusconnection.c:4354
+#: gio/gdbusconnection.c:4437
#, c-format
msgid "Property “%s†is not writable"
msgstr "属性“%sâ€ä¸å¯å†™"
-#: gio/gdbusconnection.c:4374
+#: gio/gdbusconnection.c:4457
#, c-format
msgid "Error setting property “%sâ€: Expected type “%s†but got “%sâ€"
msgstr "设置属性“%sâ€æ—¶å‡ºé”™ï¼šæœŸæœ›â€œ%sâ€ç±»åž‹ä½†å¾—到了“%sâ€ç±»åž‹"
-#: gio/gdbusconnection.c:4479 gio/gdbusconnection.c:4687
-#: gio/gdbusconnection.c:6689
+#: gio/gdbusconnection.c:4562 gio/gdbusconnection.c:4777
+#: gio/gdbusconnection.c:6760
#, c-format
msgid "No such interface “%sâ€"
msgstr "无此接å£â€œ%sâ€"
-#: gio/gdbusconnection.c:4905 gio/gdbusconnection.c:7201
+#: gio/gdbusconnection.c:4999 gio/gdbusconnection.c:7274
#, c-format
msgid "No such interface “%s†on object at path %s"
msgstr "在路径 %s 的对象上没有“%sâ€æŽ¥å£"
-#: gio/gdbusconnection.c:5003
+#: gio/gdbusconnection.c:5100
#, c-format
msgid "No such method “%sâ€"
msgstr "没有“%sâ€è¿™ä¸ªæ–¹æ³•"
-#: gio/gdbusconnection.c:5034
+#: gio/gdbusconnection.c:5131
#, c-format
msgid "Type of message, “%sâ€, does not match expected type “%sâ€"
msgstr "消æ¯çš„类型“%sâ€ï¼Œä¸Žé¢„期的类型“%sâ€ä¸åŒ¹é…"
-#: gio/gdbusconnection.c:5237
+#: gio/gdbusconnection.c:5334
#, c-format
msgid "An object is already exported for the interface %s at %s"
msgstr "已为 %2$s å¤„çš„æŽ¥å£ %1$s 导出了一个对象"
-#: gio/gdbusconnection.c:5463
+#: gio/gdbusconnection.c:5561
#, c-format
msgid "Unable to retrieve property %s.%s"
msgstr "无法检索属性 %s.%s"
-#: gio/gdbusconnection.c:5519
+#: gio/gdbusconnection.c:5617
#, c-format
msgid "Unable to set property %s.%s"
msgstr "无法设置属性 %s.%s"
-#: gio/gdbusconnection.c:5698
+#: gio/gdbusconnection.c:5796
#, c-format
msgid "Method “%s†returned type “%sâ€, but expected “%sâ€"
msgstr "方法“%sâ€è¿”回类型“%sâ€ï¼Œä½†é¢„期的是“%sâ€"
-#: gio/gdbusconnection.c:6800
+#: gio/gdbusconnection.c:6872
#, c-format
msgid "Method “%s†on interface “%s†with signature “%s†does not exist"
msgstr "带有“%3$sâ€ç­¾å的接å£â€œ%2$sâ€ä¸Šä¸å­˜åœ¨â€œ%1$sâ€æ–¹æ³•"
-#: gio/gdbusconnection.c:6921
+#: gio/gdbusconnection.c:6993
#, c-format
msgid "A subtree is already exported for %s"
msgstr "å·²ç»ä¸º %s 导出一个å­æ ‘"
-#: gio/gdbusconnection.c:7209
+#: gio/gdbusconnection.c:7282
#, c-format
msgid "Object does not exist at path “%sâ€"
msgstr "对象在路径“%sâ€å¤„ä¸å­˜åœ¨"
-#: gio/gdbusmessage.c:1266
+#: gio/gdbusmessage.c:1301
msgid "type is INVALID"
msgstr "类型无效"
-#: gio/gdbusmessage.c:1277
+#: gio/gdbusmessage.c:1312
msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
msgstr "METHOD_CALL 消æ¯ï¼šPATH 或 MEMBER 首部字段缺失"
-#: gio/gdbusmessage.c:1288
+#: gio/gdbusmessage.c:1323
msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
msgstr "METHOD_RETURN 消æ¯ï¼šREPLY_SERIAL 首部字段缺失"
-#: gio/gdbusmessage.c:1300
+#: gio/gdbusmessage.c:1335
msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
msgstr "错误消æ¯ï¼šREPLY_SERIAL 或 ERROR_NAME 首部字段缺失"
-#: gio/gdbusmessage.c:1313
+#: gio/gdbusmessage.c:1348
msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
msgstr "ä¿¡å·æ¶ˆæ¯ï¼šPATHã€INTERFACE 或 MEMBER METHOD_RETURN缺失"
-#: gio/gdbusmessage.c:1321
+#: gio/gdbusmessage.c:1356
msgid ""
"SIGNAL message: The PATH header field is using the reserved value /org/"
"freedesktop/DBus/Local"
msgstr "ä¿¡å·æ¶ˆæ¯ï¼šPATH 首部字段正在使用ä¿ç•™å€¼ /org/freedesktop/DBus/Local"
-#: gio/gdbusmessage.c:1329
+#: gio/gdbusmessage.c:1364
msgid ""
"SIGNAL message: The INTERFACE header field is using the reserved value org."
"freedesktop.DBus.Local"
msgstr "ä¿¡å·æ¶ˆæ¯ï¼šINTERFACE 首部字段正在使用ä¿ç•™å€¼ org.freedesktop.DBus.Local"
-#: gio/gdbusmessage.c:1377 gio/gdbusmessage.c:1437
+#: gio/gdbusmessage.c:1412 gio/gdbusmessage.c:1472
#, c-format
msgid "Wanted to read %lu byte but only got %lu"
msgid_plural "Wanted to read %lu bytes but only got %lu"
msgstr[0] "æœŸæœ›è¯»å– %lu 个字节但åªå¾—到 %lu 个"
-#: gio/gdbusmessage.c:1391
+#: gio/gdbusmessage.c:1426
#, c-format
msgid "Expected NUL byte after the string “%s†but found byte %d"
msgstr "期望“%sâ€åŽä¸º NUL 字节但找到了字节 %d"
-#: gio/gdbusmessage.c:1410
+#: gio/gdbusmessage.c:1445
#, c-format
msgid ""
"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -776,21 +785,21 @@ msgstr ""
"期望得到有效的 UTF-8 字符串,但在字节å移 %d 处(字符串长度为 %d)找到了无效"
"的字节。该点的有效 UTF-8 字符串曾是“%sâ€"
-#: gio/gdbusmessage.c:1474 gio/gdbusmessage.c:1722 gio/gdbusmessage.c:1911
+#: gio/gdbusmessage.c:1509 gio/gdbusmessage.c:1785 gio/gdbusmessage.c:1996
msgid "Value nested too deeply"
msgstr "值嵌套过深"
-#: gio/gdbusmessage.c:1620
+#: gio/gdbusmessage.c:1677
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus object path"
msgstr "已解æžçš„值“%sâ€ä¸æ˜¯æœ‰æ•ˆçš„ D-Bus 对象路径"
-#: gio/gdbusmessage.c:1642
+#: gio/gdbusmessage.c:1701
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature"
msgstr "已解æžçš„值“%sâ€ä¸æ˜¯æœ‰æ•ˆçš„ D-Bus ç­¾å"
-#: gio/gdbusmessage.c:1689
+#: gio/gdbusmessage.c:1752
#, c-format
msgid ""
"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -798,7 +807,7 @@ msgid_plural ""
"Encountered array of length %u bytes. Maximum length is 2<<26 bytes (64 MiB)."
msgstr[0] "é‡åˆ°é•¿åº¦ä¸º %u 字节的数组。最大长度应为 2<<26 字节(64 MiB)。"
-#: gio/gdbusmessage.c:1709
+#: gio/gdbusmessage.c:1772
#, c-format
msgid ""
"Encountered array of type “a%câ€, expected to have a length a multiple of %u "
@@ -806,127 +815,131 @@ msgid ""
msgstr ""
"é‡åˆ°ç±»åž‹ä¸ºâ€œa%câ€çš„数组,需è¦é•¿åº¦ä¸º %u 字节的å€æ•°ï¼Œä½†æ˜¯æ‰¾åˆ°çš„长度为 %u 字节"
-#: gio/gdbusmessage.c:1895
+#: gio/gdbusmessage.c:1926 gio/gdbusmessage.c:2645
+msgid "Empty structures (tuples) are not allowed in D-Bus"
+msgstr "D-Bus 中ä¸å…许空结构(tuples)"
+
+#: gio/gdbusmessage.c:1980
#, c-format
msgid "Parsed value “%s†for variant is not a valid D-Bus signature"
msgstr "å˜é‡çš„已解æžå€¼â€œ%sâ€ä¸æ˜¯æœ‰æ•ˆçš„ D-Bus ç­¾å"
-#: gio/gdbusmessage.c:1936
+#: gio/gdbusmessage.c:2021
#, c-format
msgid ""
"Error deserializing GVariant with type string “%s†from the D-Bus wire format"
msgstr "从 D-Bus 线格å¼ä»¥ç±»åž‹å­—符串“%sâ€ååºåˆ—化 GVariant æ—¶å‘生错误"
-#: gio/gdbusmessage.c:2121
+#: gio/gdbusmessage.c:2206
#, c-format
msgid ""
"Invalid endianness value. Expected 0x6c (“lâ€) or 0x42 (“Bâ€) but found value "
"0x%02x"
msgstr "无效的字节åºå€¼ã€‚期望为 0x6c(“lâ€ï¼‰æˆ– 0x42(“Bâ€ï¼‰ä½†æ‰¾åˆ°å€¼ 0x%02x"
-#: gio/gdbusmessage.c:2134
+#: gio/gdbusmessage.c:2225
#, c-format
msgid "Invalid major protocol version. Expected 1 but found %d"
msgstr "无效的主å议版本。期望 1,但是找到了 %d"
-#: gio/gdbusmessage.c:2188 gio/gdbusmessage.c:2784
+#: gio/gdbusmessage.c:2283 gio/gdbusmessage.c:2881
msgid "Signature header found but is not of type signature"
msgstr "找到了签å首部但ä¸å±žäºŽç±»åž‹ç­¾å"
-#: gio/gdbusmessage.c:2200
+#: gio/gdbusmessage.c:2295
#, c-format
msgid "Signature header with signature “%s†found but message body is empty"
msgstr "å‘现签å“%sâ€çš„ç­¾å首部,但消æ¯ä¸»ä½“为空"
-#: gio/gdbusmessage.c:2215
+#: gio/gdbusmessage.c:2310
#, c-format
msgid "Parsed value “%s†is not a valid D-Bus signature (for body)"
msgstr "已解æžçš„值“%sâ€ä¸æ˜¯æœ‰æ•ˆçš„ D-Bus ç­¾å(针对消æ¯ä¸»ä½“)"
-#: gio/gdbusmessage.c:2247
+#: gio/gdbusmessage.c:2342
#, c-format
msgid "No signature header in message but the message body is %u byte"
msgid_plural "No signature header in message but the message body is %u bytes"
msgstr[0] "消æ¯ä¸­æ²¡æœ‰ç­¾å首部,但消æ¯ä¸»ä½“为 %u 字节"
-#: gio/gdbusmessage.c:2257
+#: gio/gdbusmessage.c:2352
msgid "Cannot deserialize message: "
msgstr "无法ååºåˆ—化消æ¯ï¼š"
-#: gio/gdbusmessage.c:2601
+#: gio/gdbusmessage.c:2698
#, c-format
msgid ""
"Error serializing GVariant with type string “%s†to the D-Bus wire format"
msgstr "以类型字符串“%sâ€åºåˆ—化 GVariant 到 D-Bus 线格å¼æ—¶å‘生错误"
-#: gio/gdbusmessage.c:2738
+#: gio/gdbusmessage.c:2835
#, c-format
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr "消æ¯ä¸­çš„文件æ述符数é‡ï¼ˆ%d)与首部字段中的(%d)ä¸åŒ"
-#: gio/gdbusmessage.c:2746
+#: gio/gdbusmessage.c:2843
msgid "Cannot serialize message: "
msgstr "无法åºåˆ—化消æ¯ï¼š"
-#: gio/gdbusmessage.c:2799
+#: gio/gdbusmessage.c:2896
#, c-format
msgid "Message body has signature “%s†but there is no signature header"
msgstr "消æ¯ä¸»ä½“有签å“%sâ€ä½†æ˜¯æ²¡æœ‰ç­¾å首部"
-#: gio/gdbusmessage.c:2809
+#: gio/gdbusmessage.c:2906
#, c-format
msgid ""
"Message body has type signature “%s†but signature in the header field is "
"“%sâ€"
msgstr "消æ¯ä¸»ä½“有类型签å“%sâ€ä½†é¦–部字段的签å为“%sâ€"
-#: gio/gdbusmessage.c:2825
+#: gio/gdbusmessage.c:2922
#, c-format
msgid "Message body is empty but signature in the header field is “(%s)â€"
msgstr "消æ¯ä¸»ä½“为空,但首部字段的签å为“(%s)â€"
-#: gio/gdbusmessage.c:3380
+#: gio/gdbusmessage.c:3477
#, c-format
msgid "Error return with body of type “%sâ€"
msgstr "出错,返回了“%sâ€ç±»åž‹çš„主体"
-#: gio/gdbusmessage.c:3388
+#: gio/gdbusmessage.c:3485
msgid "Error return with empty body"
msgstr "出错,返回了空的主体"
-#: gio/gdbusprivate.c:2246
+#: gio/gdbusprivate.c:2185
#, c-format
msgid "(Type any character to close this window)\n"
msgstr "(按任æ„键关闭本窗å£ï¼‰\n"
-#: gio/gdbusprivate.c:2420
+#: gio/gdbusprivate.c:2371
#, c-format
msgid "Session dbus not running, and autolaunch failed"
msgstr "dbus 会è¯æœªè¿è¡Œï¼Œè‡ªåŠ¨å¯åŠ¨å¤±è´¥"
-#: gio/gdbusprivate.c:2443
+#: gio/gdbusprivate.c:2394
#, c-format
msgid "Unable to get Hardware profile: %s"
msgstr "无法获å–硬件é…置文件:%s"
#. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2494
+#: gio/gdbusprivate.c:2445
#, c-format
msgid "Unable to load %s or %s: "
msgstr "无法载入 %s 或 %s:"
-#: gio/gdbusproxy.c:1569
+#: gio/gdbusproxy.c:1573
#, c-format
msgid "Error calling StartServiceByName for %s: "
msgstr "为 %s 调用 StartServiceByName 时出错:"
-#: gio/gdbusproxy.c:1592
+#: gio/gdbusproxy.c:1596
#, c-format
msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
msgstr "从 StartServiceByName(\"%2$s\") 方法获得æ„å¤–å›žå¤ %1$d"
-#: gio/gdbusproxy.c:2699 gio/gdbusproxy.c:2834
+#: gio/gdbusproxy.c:2707 gio/gdbusproxy.c:2842
#, c-format
msgid ""
"Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -983,13 +996,13 @@ msgstr ""
"使用“%s 命令 --helpâ€ä»¥èŽ·å¾—æ¯ä¸€ä¸ªå‘½ä»¤çš„帮助。\n"
#: gio/gdbus-tool.c:201 gio/gdbus-tool.c:273 gio/gdbus-tool.c:345
-#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1236
-#: gio/gdbus-tool.c:1724
+#: gio/gdbus-tool.c:369 gio/gdbus-tool.c:859 gio/gdbus-tool.c:1244
+#: gio/gdbus-tool.c:1732
#, c-format
msgid "Error: %s\n"
msgstr "错误:%s\n"
-#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1740
+#: gio/gdbus-tool.c:212 gio/gdbus-tool.c:286 gio/gdbus-tool.c:1748
#, c-format
msgid "Error parsing introspection XML: %s\n"
msgstr "è§£æž Introspection XML 时出错:%s\n"
@@ -999,8 +1012,8 @@ msgstr "è§£æž Introspection XML 时出错:%s\n"
msgid "Error: %s is not a valid name\n"
msgstr "错误:%s ä¸æ˜¯æœ‰æ•ˆçš„å称\n"
-#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1060
-#: gio/gdbus-tool.c:1890 gio/gdbus-tool.c:2130
+#: gio/gdbus-tool.c:255 gio/gdbus-tool.c:745 gio/gdbus-tool.c:1063
+#: gio/gdbus-tool.c:1898 gio/gdbus-tool.c:2138
#, c-format
msgid "Error: %s is not a valid object path\n"
msgstr "错误:%s ä¸æ˜¯æœ‰æ•ˆçš„对象路径\n"
@@ -1065,8 +1078,8 @@ msgstr "ä¿¡å·å’ŒæŽ¥å£å称"
msgid "Emit a signal."
msgstr "å‘å°„ä¿¡å·ã€‚"
-#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:997 gio/gdbus-tool.c:1827
-#: gio/gdbus-tool.c:2059 gio/gdbus-tool.c:2279
+#: gio/gdbus-tool.c:683 gio/gdbus-tool.c:1000 gio/gdbus-tool.c:1835
+#: gio/gdbus-tool.c:2067 gio/gdbus-tool.c:2287
#, c-format
msgid "Error connecting: %s\n"
msgstr "连接时出错:%s\n"
@@ -1076,7 +1089,7 @@ msgstr "连接时出错:%s\n"
msgid "Error: %s is not a valid unique bus name.\n"
msgstr "错误:%s ä¸æ˜¯æœ‰æ•ˆçš„唯一总线å。\n"
-#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1040 gio/gdbus-tool.c:1870
+#: gio/gdbus-tool.c:722 gio/gdbus-tool.c:1043 gio/gdbus-tool.c:1878
msgid "Error: Object path is not specified\n"
msgstr "错误:未指定对象路径\n"
@@ -1100,7 +1113,7 @@ msgid "Error: %s is not a valid member name\n"
msgstr "错误:%s ä¸æ˜¯æœ‰æ•ˆçš„æˆå‘˜å称。\n"
#. Use the original non-"parse-me-harder" error
-#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1172
+#: gio/gdbus-tool.c:834 gio/gdbus-tool.c:1175
#, c-format
msgid "Error parsing parameter %d: %s\n"
msgstr "解æžç¬¬ %d 个选项时出错:%s\n"
@@ -1110,162 +1123,171 @@ msgstr "解æžç¬¬ %d 个选项时出错:%s\n"
msgid "Error flushing connection: %s\n"
msgstr "刷新连接时出错:%s\n"
-#: gio/gdbus-tool.c:893
+#: gio/gdbus-tool.c:894
msgid "Destination name to invoke method on"
msgstr "调用方法的目标ä½ç½®å称"
-#: gio/gdbus-tool.c:894
+#: gio/gdbus-tool.c:895
msgid "Object path to invoke method on"
msgstr "调用方法的对象路径"
-#: gio/gdbus-tool.c:895
+#: gio/gdbus-tool.c:896
msgid "Method and interface name"
msgstr "方法和接å£å称"
-#: gio/gdbus-tool.c:896
+#: gio/gdbus-tool.c:897
msgid "Timeout in seconds"
msgstr "超时(以秒计)"
-#: gio/gdbus-tool.c:942
+#: gio/gdbus-tool.c:898
+msgid "Allow interactive authorization"
+msgstr "å…许交互å¼æŽˆæƒ"
+
+#: gio/gdbus-tool.c:945
msgid "Invoke a method on a remote object."
msgstr "在远程对象上调用一个方法。"
-#: gio/gdbus-tool.c:1014 gio/gdbus-tool.c:1844 gio/gdbus-tool.c:2084
+#: gio/gdbus-tool.c:1017 gio/gdbus-tool.c:1852 gio/gdbus-tool.c:2092
msgid "Error: Destination is not specified\n"
msgstr "错误:未指定目标ä½ç½®å称\n"
-#: gio/gdbus-tool.c:1025 gio/gdbus-tool.c:1861 gio/gdbus-tool.c:2095
+#: gio/gdbus-tool.c:1028 gio/gdbus-tool.c:1869 gio/gdbus-tool.c:2103
#, c-format
msgid "Error: %s is not a valid bus name\n"
msgstr "错误:%s ä¸æ˜¯æœ‰æ•ˆçš„总线å称\n"
-#: gio/gdbus-tool.c:1075
+#: gio/gdbus-tool.c:1078
msgid "Error: Method name is not specified\n"
msgstr "错误:方法å没有指定\n"
-#: gio/gdbus-tool.c:1086
+#: gio/gdbus-tool.c:1089
#, c-format
msgid "Error: Method name “%s†is invalid\n"
msgstr "错误:方法å“%sâ€æ— æ•ˆ\n"
-#: gio/gdbus-tool.c:1164
+#: gio/gdbus-tool.c:1167
#, c-format
msgid "Error parsing parameter %d of type “%sâ€: %s\n"
msgstr "解æž\"%2$s\"类型的第 %1$d 个å‚æ•°æ—¶å‘生错误:%3$s\n"
-#: gio/gdbus-tool.c:1190
+#: gio/gdbus-tool.c:1193
#, c-format
msgid "Error adding handle %d: %s\n"
msgstr "添加å¥æŸ„ %d 时出错:%s\n"
-#: gio/gdbus-tool.c:1686
+#: gio/gdbus-tool.c:1694
msgid "Destination name to introspect"
msgstr "è¦ Introspect 的目标ä½ç½®å称"
-#: gio/gdbus-tool.c:1687
+#: gio/gdbus-tool.c:1695
msgid "Object path to introspect"
msgstr "è¦ Introspect 的对象路径"
-#: gio/gdbus-tool.c:1688
+#: gio/gdbus-tool.c:1696
msgid "Print XML"
msgstr "输出 XML"
-#: gio/gdbus-tool.c:1689
+#: gio/gdbus-tool.c:1697
msgid "Introspect children"
msgstr "Introspect å­å¯¹è±¡"
-#: gio/gdbus-tool.c:1690
+#: gio/gdbus-tool.c:1698
msgid "Only print properties"
msgstr "åªæ‰“å°å±žæ€§"
# 跟命令行里的统一翻译
-#: gio/gdbus-tool.c:1779
+#: gio/gdbus-tool.c:1787
msgid "Introspect a remote object."
msgstr "Introspect 一个远程对象。"
-#: gio/gdbus-tool.c:1985
+#: gio/gdbus-tool.c:1993
msgid "Destination name to monitor"
msgstr "è¦ç›‘视的目标ä½ç½®å称"
-#: gio/gdbus-tool.c:1986
+#: gio/gdbus-tool.c:1994
msgid "Object path to monitor"
msgstr "è¦ç›‘视的对象路径"
-#: gio/gdbus-tool.c:2011
+#: gio/gdbus-tool.c:2019
msgid "Monitor a remote object."
msgstr "监视一个远程对象。"
-#: gio/gdbus-tool.c:2069
+#: gio/gdbus-tool.c:2077
msgid "Error: can’t monitor a non-message-bus connection\n"
msgstr "错误:无法监视 non-message-bus 连接\n"
-#: gio/gdbus-tool.c:2193
+#: gio/gdbus-tool.c:2201
msgid "Service to activate before waiting for the other one (well-known name)"
msgstr "在等待å¦ä¸€æœåŠ¡å‰è¦æ¿€æ´»çš„æœåŠ¡ï¼ˆå¸¸è§å称)"
-#: gio/gdbus-tool.c:2196
+#: gio/gdbus-tool.c:2204
msgid ""
"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
"(default)"
msgstr "出现错误退出å‰çš„超时(秒); 0 为无超时(默认)"
-#: gio/gdbus-tool.c:2244
+#: gio/gdbus-tool.c:2252
msgid "[OPTION…] BUS-NAME"
msgstr "[选项…] 总线å称"
-#: gio/gdbus-tool.c:2245
+#: gio/gdbus-tool.c:2253
msgid "Wait for a bus name to appear."
msgstr "等待总线å称出现。"
-#: gio/gdbus-tool.c:2321
+#: gio/gdbus-tool.c:2329
msgid "Error: A service to activate for must be specified.\n"
msgstr "错误:未指定需è¦æ¿€æ´»çš„æœåŠ¡å称。\n"
-#: gio/gdbus-tool.c:2326
+#: gio/gdbus-tool.c:2334
msgid "Error: A service to wait for must be specified.\n"
msgstr "错误:未指定需è¦ç­‰å¾…çš„æœåŠ¡å称。\n"
-#: gio/gdbus-tool.c:2331
+#: gio/gdbus-tool.c:2339
msgid "Error: Too many arguments.\n"
msgstr "错误:å‚数过多。\n"
-#: gio/gdbus-tool.c:2339 gio/gdbus-tool.c:2346
+#: gio/gdbus-tool.c:2347 gio/gdbus-tool.c:2354
#, c-format
msgid "Error: %s is not a valid well-known bus name.\n"
msgstr "错误:%s ä¸æ˜¯æœ‰æ•ˆçš„总线å称。\n"
-#: gio/gdesktopappinfo.c:2106 gio/gdesktopappinfo.c:4932
+#: gio/gdebugcontrollerdbus.c:203
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr "未获认è¯ä»¥æ›´æ”¹è°ƒè¯•è®¾ç½®"
+
+#: gio/gdesktopappinfo.c:2174 gio/gdesktopappinfo.c:5099
msgid "Unnamed"
msgstr "未命å"
-#: gio/gdesktopappinfo.c:2516
+#: gio/gdesktopappinfo.c:2584
msgid "Desktop file didn’t specify Exec field"
msgstr "æ¡Œé¢æ–‡ä»¶æœªæŒ‡å®š Exec 字段"
-#: gio/gdesktopappinfo.c:2801
+#: gio/gdesktopappinfo.c:2892
msgid "Unable to find terminal required for application"
msgstr "无法找到应用程åºéœ€è¦çš„终端"
-#: gio/gdesktopappinfo.c:3452
+#: gio/gdesktopappinfo.c:3619
#, c-format
msgid "Can’t create user application configuration folder %s: %s"
msgstr "无法创建用户应用程åºé…置文件夹 %s:%s"
-#: gio/gdesktopappinfo.c:3456
+#: gio/gdesktopappinfo.c:3623
#, c-format
msgid "Can’t create user MIME configuration folder %s: %s"
msgstr "无法创建用户 MIME é…置文件夹 %s:%s"
-#: gio/gdesktopappinfo.c:3698 gio/gdesktopappinfo.c:3722
+#: gio/gdesktopappinfo.c:3865 gio/gdesktopappinfo.c:3889
msgid "Application information lacks an identifier"
msgstr "应用程åºä¿¡æ¯ç¼ºå°‘标志符"
-#: gio/gdesktopappinfo.c:3958
+#: gio/gdesktopappinfo.c:4125
#, c-format
msgid "Can’t create user desktop file %s"
msgstr "无法创建用户桌é¢æ–‡ä»¶ %s"
-#: gio/gdesktopappinfo.c:4094
+#: gio/gdesktopappinfo.c:4261
#, c-format
msgid "Custom definition for %s"
msgstr "%s 的自定义"
@@ -1293,7 +1315,7 @@ msgstr "驱动器未实现å¯åŠ¨"
msgid "drive doesn’t implement stop"
msgstr "驱动器未实现åœæ­¢"
-#: gio/gdtlsconnection.c:1153 gio/gtlsconnection.c:920
+#: gio/gdtlsconnection.c:1186 gio/gtlsconnection.c:955
msgid "TLS backend does not implement TLS binding retrieval"
msgstr "TLS åŽç«¯æ²¡æœ‰å®žçŽ° TLS 绑定获å–"
@@ -1334,73 +1356,73 @@ msgstr "GEmblemedIcon 中应为 GEmblem"
#. * trying to find the enclosing (user visible)
#. * mount of a file, but none exists.
#.
-#: gio/gfile.c:1561
+#: gio/gfile.c:1579
msgid "Containing mount does not exist"
msgstr "包å«çš„挂载ä¸å­˜åœ¨"
-#: gio/gfile.c:2608 gio/glocalfile.c:2477
+#: gio/gfile.c:2626 gio/glocalfile.c:2486
msgid "Can’t copy over directory"
msgstr "无法跨目录å¤åˆ¶"
-#: gio/gfile.c:2668
+#: gio/gfile.c:2686
msgid "Can’t copy directory over directory"
msgstr "无法跨目录å¤åˆ¶åˆ°ç›®å½•"
-#: gio/gfile.c:2676
+#: gio/gfile.c:2694
msgid "Target file exists"
msgstr "目标文件已存在"
-#: gio/gfile.c:2695
+#: gio/gfile.c:2713
msgid "Can’t recursively copy directory"
msgstr "无法递归å¤åˆ¶ç›®å½•"
-#: gio/gfile.c:2996
+#: gio/gfile.c:3014
msgid "Splice not supported"
msgstr "ä¸æ”¯æŒæ‹¼æŽ¥"
-#: gio/gfile.c:3000
+#: gio/gfile.c:3018
#, c-format
msgid "Error splicing file: %s"
msgstr "拼接文件时出错:%s"
-#: gio/gfile.c:3152
+#: gio/gfile.c:3170
msgid "Copy (reflink/clone) between mounts is not supported"
msgstr "ä¸æ”¯æŒåœ¨æŒ‚载之间å¤åˆ¶ï¼ˆreflink/clone)"
-#: gio/gfile.c:3156
+#: gio/gfile.c:3174
msgid "Copy (reflink/clone) is not supported or invalid"
msgstr "å¤åˆ¶ï¼ˆreflink/clone)æ“作ä¸æ”¯æŒæˆ–无效"
-#: gio/gfile.c:3161
+#: gio/gfile.c:3179
msgid "Copy (reflink/clone) is not supported or didn’t work"
msgstr "å¤åˆ¶ï¼ˆreflink/clone)æ“作ä¸æ”¯æŒæˆ–者失败"
-#: gio/gfile.c:3226
+#: gio/gfile.c:3244
msgid "Can’t copy special file"
msgstr "无法å¤åˆ¶ç‰¹æ®Šæ–‡ä»¶"
-#: gio/gfile.c:4035
+#: gio/gfile.c:4138
msgid "Invalid symlink value given"
msgstr "给定的符å·é“¾æŽ¥å€¼æ— æ•ˆ"
-#: gio/gfile.c:4045 glib/gfileutils.c:2355
+#: gio/gfile.c:4148 glib/gfileutils.c:2333
msgid "Symbolic links not supported"
msgstr "ä¸æ”¯æŒç¬¦å·é“¾æŽ¥"
-#: gio/gfile.c:4213
+#: gio/gfile.c:4316
msgid "Trash not supported"
msgstr "ä¸æ”¯æŒå›žæ”¶ç«™"
-#: gio/gfile.c:4325
+#: gio/gfile.c:4428
#, c-format
msgid "File names cannot contain “%câ€"
msgstr "文件åä¸èƒ½åŒ…å«â€œ%câ€"
-#: gio/gfile.c:6806 gio/gvolume.c:364
+#: gio/gfile.c:7028 gio/gvolume.c:364
msgid "volume doesn’t implement mount"
msgstr "å·æœªå®žçŽ°æŒ‚è½½"
-#: gio/gfile.c:6920 gio/gfile.c:6968
+#: gio/gfile.c:7142 gio/gfile.c:7190
msgid "No application is registered as handling this file"
msgstr "没有应用程åºæ³¨å†Œä¸ºå¤„ç†æ­¤æ–‡ä»¶çš„"
@@ -1445,7 +1467,7 @@ msgstr "输入æµä¸å…许截断"
msgid "Truncate not supported on stream"
msgstr "æµä¸æ”¯æŒæˆªæ–­"
-#: gio/ghttpproxy.c:91 gio/gresolver.c:443 gio/gresolver.c:596
+#: gio/ghttpproxy.c:91 gio/gresolver.c:458 gio/gresolver.c:611
#: glib/gconvert.c:1825
msgid "Invalid hostname"
msgstr "无效的主机å"
@@ -1532,7 +1554,7 @@ msgid "Could not parse “%s†as IP address mask"
msgstr "ä¸èƒ½å°†â€œ%sâ€è§£æžä¸º IP 地å€æŽ©ç "
#: gio/ginetsocketaddress.c:203 gio/ginetsocketaddress.c:220
-#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:221
+#: gio/gnativesocketaddress.c:109 gio/gunixsocketaddress.c:228
msgid "Not enough space for socket address"
msgstr "没有足够的空间用于套接字地å€"
@@ -2354,69 +2376,73 @@ msgstr "压缩文件时出错:%s"
msgid "text may not appear inside <%s>"
msgstr "<%s> 内ä¸åº”出现文本"
-#: gio/glib-compile-resources.c:737 gio/glib-compile-schemas.c:2172
+#: gio/glib-compile-resources.c:819 gio/glib-compile-schemas.c:2172
msgid "Show program version and exit"
msgstr "显示程åºç‰ˆæœ¬å¹¶é€€å‡º"
-#: gio/glib-compile-resources.c:738
+#: gio/glib-compile-resources.c:820
msgid "Name of the output file"
msgstr "输出文件的å称"
-#: gio/glib-compile-resources.c:739
+#: gio/glib-compile-resources.c:821
msgid ""
"The directories to load files referenced in FILE from (default: current "
"directory)"
msgstr "FILE 中引用的è¦ä»Žå…¶ä¸­è½½å…¥æ–‡ä»¶çš„目录(默认为当å‰ç›®å½•ï¼‰"
-#: gio/glib-compile-resources.c:739 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2173
#: gio/glib-compile-schemas.c:2202
msgid "DIRECTORY"
msgstr "目录"
-#: gio/glib-compile-resources.c:740
+#: gio/glib-compile-resources.c:822
msgid ""
"Generate output in the format selected for by the target filename extension"
msgstr "以目标文件扩展å所选择的格å¼ç”Ÿæˆè¾“出"
-#: gio/glib-compile-resources.c:741
+#: gio/glib-compile-resources.c:823
msgid "Generate source header"
msgstr "生æˆæºç å¤´æ–‡ä»¶"
-#: gio/glib-compile-resources.c:742
+#: gio/glib-compile-resources.c:824
msgid "Generate source code used to link in the resource file into your code"
msgstr "生æˆç”¨äºŽå°†èµ„æºæ–‡ä»¶é“¾æŽ¥åˆ°æ‚¨ä»£ç çš„æºä»£ç "
-#: gio/glib-compile-resources.c:743
+#: gio/glib-compile-resources.c:825
msgid "Generate dependency list"
msgstr "生æˆä¾èµ–关系列表"
-#: gio/glib-compile-resources.c:744
+#: gio/glib-compile-resources.c:826
msgid "Name of the dependency file to generate"
msgstr "è¦ç”Ÿæˆçš„ä¾èµ–文件å称"
-#: gio/glib-compile-resources.c:745
+#: gio/glib-compile-resources.c:827
msgid "Include phony targets in the generated dependency file"
msgstr "在生æˆçš„ä¾èµ–关系文件中包å«ä¼ªç›®æ ‡"
-#: gio/glib-compile-resources.c:746
+#: gio/glib-compile-resources.c:828
msgid "Don’t automatically create and register resource"
msgstr "ä¸è¦è‡ªåŠ¨åˆ›å»ºå’Œæ³¨å†Œèµ„æº"
-#: gio/glib-compile-resources.c:747
+#: gio/glib-compile-resources.c:829
msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
msgstr "ä¸è¦å¯¼å‡ºå‡½æ•°ï¼›è¯·å°†å®ƒä»¬å£°æ˜Žä¸º G_GNUC_INTERNAL"
-#: gio/glib-compile-resources.c:748
+#: gio/glib-compile-resources.c:830
msgid ""
"Don’t embed resource data in the C file; assume it's linked externally "
"instead"
msgstr "ä¸è¦åœ¨ C 文件里嵌入资æºæ•°æ®ï¼›è€Œå‡å®šå®ƒæ˜¯ä»¥å¤–部连接的"
-#: gio/glib-compile-resources.c:749
+#: gio/glib-compile-resources.c:831
msgid "C identifier name used for the generated source code"
msgstr "用于生æˆçš„æºä»£ç çš„ C 标识符å称"
-#: gio/glib-compile-resources.c:775
+#: gio/glib-compile-resources.c:832
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr "目标 C 编译器(默认:CC 环境å˜é‡ï¼‰"
+
+#: gio/glib-compile-resources.c:858
msgid ""
"Compile a resource specification into a resource file.\n"
"Resource specification files have the extension .gresource.xml,\n"
@@ -2426,7 +2452,7 @@ msgstr ""
"资æºè§„格文件以 .gresource.xml 为扩展å,\n"
"资æºæ–‡ä»¶ä»¥ .gresource 为扩展å。"
-#: gio/glib-compile-resources.c:797
+#: gio/glib-compile-resources.c:880
msgid "You should give exactly one file name\n"
msgstr "您应该给定一个且åªèƒ½ä¸€ä¸ªæ–‡ä»¶å\n"
@@ -2921,8 +2947,8 @@ msgstr "é‡å‘½å文件 %s 时出错:%s"
msgid "Can’t rename file, filename already exists"
msgstr "无法é‡å‘½å文件,该文件å已存在"
-#: gio/glocalfile.c:1184 gio/glocalfile.c:2371 gio/glocalfile.c:2399
-#: gio/glocalfile.c:2538 gio/glocalfileoutputstream.c:656
+#: gio/glocalfile.c:1184 gio/glocalfile.c:2380 gio/glocalfile.c:2408
+#: gio/glocalfile.c:2547 gio/glocalfileoutputstream.c:656
msgid "Invalid filename"
msgstr "无效的文件å"
@@ -2936,91 +2962,91 @@ msgstr "打开文件 %s 时出错:%s"
msgid "Error removing file %s: %s"
msgstr "删除文件 %s 时出错:%s"
-#: gio/glocalfile.c:1982 gio/glocalfile.c:1993
+#: gio/glocalfile.c:1982 gio/glocalfile.c:1993 gio/glocalfile.c:2020
#, c-format
msgid "Error trashing file %s: %s"
msgstr "将文件 %s 丢到回收站时出错:%s"
-#: gio/glocalfile.c:2031
+#: gio/glocalfile.c:2040
#, c-format
msgid "Unable to create trash directory %s: %s"
msgstr "无法创建回收站目录 %s:%s"
-#: gio/glocalfile.c:2052
+#: gio/glocalfile.c:2061
#, c-format
msgid "Unable to find toplevel directory to trash %s"
msgstr "找ä¸åˆ°å›žæ”¶ç«™ %s 的顶级目录"
-#: gio/glocalfile.c:2060
+#: gio/glocalfile.c:2069
#, c-format
msgid "Trashing on system internal mounts is not supported"
msgstr "ä¸æ”¯æŒåœ¨ç³»ç»Ÿå†…部挂载上的丢弃到回收站æ“作"
-#: gio/glocalfile.c:2146 gio/glocalfile.c:2174
+#: gio/glocalfile.c:2155 gio/glocalfile.c:2183
#, c-format
msgid "Unable to find or create trash directory %s to trash %s"
msgstr "无法找到或创建回收站目录 %s æ¥ä¸¢å¼ƒ %s"
-#: gio/glocalfile.c:2220
+#: gio/glocalfile.c:2229
#, c-format
msgid "Unable to create trashing info file for %s: %s"
msgstr "为 %s 创建回收站信æ¯æ–‡ä»¶å¤±è´¥ï¼š%s"
-#: gio/glocalfile.c:2282
+#: gio/glocalfile.c:2291
#, c-format
msgid "Unable to trash file %s across filesystem boundaries"
msgstr "无法跨越文件系统边界将文件 %s 丢到回收站"
-#: gio/glocalfile.c:2286 gio/glocalfile.c:2342
+#: gio/glocalfile.c:2295 gio/glocalfile.c:2351
#, c-format
msgid "Unable to trash file %s: %s"
msgstr "无法将文件 %s 丢到回收站:%s"
-#: gio/glocalfile.c:2348
+#: gio/glocalfile.c:2357
#, c-format
msgid "Unable to trash file %s"
msgstr "无法将文件 %s 丢到回收站"
-#: gio/glocalfile.c:2374
+#: gio/glocalfile.c:2383
#, c-format
msgid "Error creating directory %s: %s"
msgstr "创建目录 %s 时出错:%s"
-#: gio/glocalfile.c:2403
+#: gio/glocalfile.c:2412
#, c-format
msgid "Filesystem does not support symbolic links"
msgstr "文件系统ä¸æ”¯æŒç¬¦å·é“¾æŽ¥"
-#: gio/glocalfile.c:2406
+#: gio/glocalfile.c:2415
#, c-format
msgid "Error making symbolic link %s: %s"
msgstr "创建符å·é“¾æŽ¥ %s 时出错:%s"
-#: gio/glocalfile.c:2449 gio/glocalfile.c:2484 gio/glocalfile.c:2541
+#: gio/glocalfile.c:2458 gio/glocalfile.c:2493 gio/glocalfile.c:2550
#, c-format
msgid "Error moving file %s: %s"
msgstr "移动文件 %s 时出错:%s"
-#: gio/glocalfile.c:2472
+#: gio/glocalfile.c:2481
msgid "Can’t move directory over directory"
msgstr "无法将目录移动到目录"
-#: gio/glocalfile.c:2498 gio/glocalfileoutputstream.c:1108
+#: gio/glocalfile.c:2507 gio/glocalfileoutputstream.c:1108
#: gio/glocalfileoutputstream.c:1122 gio/glocalfileoutputstream.c:1137
#: gio/glocalfileoutputstream.c:1154 gio/glocalfileoutputstream.c:1168
msgid "Backup file creation failed"
msgstr "备份文件创建失败"
-#: gio/glocalfile.c:2517
+#: gio/glocalfile.c:2526
#, c-format
msgid "Error removing target file: %s"
msgstr "移除目标文件出错:%s"
-#: gio/glocalfile.c:2531
+#: gio/glocalfile.c:2540
msgid "Move between mounts not supported"
msgstr "ä¸æ”¯æŒåœ¨æŒ‚载之间移动"
-#: gio/glocalfile.c:2705
+#: gio/glocalfile.c:2714
#, c-format
msgid "Could not determine the disk usage of %s: %s"
msgstr "无法确定 %s çš„ç£ç›˜ä½¿ç”¨æƒ…况:%s"
@@ -3203,7 +3229,7 @@ msgid "Error truncating file: %s"
msgstr "截断文件出错:%s"
#: gio/glocalfileoutputstream.c:662 gio/glocalfileoutputstream.c:907
-#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:226
+#: gio/glocalfileoutputstream.c:1218 gio/gsubprocess.c:229
#, c-format
msgid "Error opening file “%sâ€: %s"
msgstr "打开文件“%sâ€å‡ºé”™ï¼š%s"
@@ -3225,7 +3251,7 @@ msgstr "文件已ç»è¢«å…¶ä»–程åºä¿®æ”¹"
msgid "Error removing old file: %s"
msgstr "移除旧文件出错:%s"
-#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:772
+#: gio/gmemoryinputstream.c:474 gio/gmemoryoutputstream.c:762
msgid "Invalid GSeekType supplied"
msgstr "æ供的 GSeekType 无效"
@@ -3237,25 +3263,25 @@ msgstr "无效的æœå¯»è¯·æ±‚"
msgid "Cannot truncate GMemoryInputStream"
msgstr "无法截断 GMemoryInputStream"
-#: gio/gmemoryoutputstream.c:567
+#: gio/gmemoryoutputstream.c:568
msgid "Memory output stream not resizable"
msgstr "内存输出æµæ— æ³•æ”¹å˜å¤§å°"
-#: gio/gmemoryoutputstream.c:583
+#: gio/gmemoryoutputstream.c:584
msgid "Failed to resize memory output stream"
msgstr "改å˜å†…存输出æµå¤§å°å¤±è´¥"
-#: gio/gmemoryoutputstream.c:673
+#: gio/gmemoryoutputstream.c:663
msgid ""
"Amount of memory required to process the write is larger than available "
"address space"
msgstr "处ç†å†™å…¥æ‰€éœ€è¦çš„内存超过了å¯ç”¨çš„空间"
-#: gio/gmemoryoutputstream.c:782
+#: gio/gmemoryoutputstream.c:772
msgid "Requested seek before the beginning of the stream"
msgstr "请求的定ä½å€¼åœ¨æµçš„开始之å‰"
-#: gio/gmemoryoutputstream.c:797
+#: gio/gmemoryoutputstream.c:787
msgid "Requested seek beyond the end of the stream"
msgstr "请求的定ä½å€¼åœ¨æµçš„结æŸä¹‹åŽ"
@@ -3335,12 +3361,12 @@ msgstr "无法创建网络监视器:"
msgid "Could not get network status: "
msgstr "无法获å–网络状æ€ï¼š"
-#: gio/gnetworkmonitornm.c:348
+#: gio/gnetworkmonitornm.c:311
#, c-format
msgid "NetworkManager not running"
msgstr "NetworkManager 未在è¿è¡Œ"
-#: gio/gnetworkmonitornm.c:359
+#: gio/gnetworkmonitornm.c:322
#, c-format
msgid "NetworkManager version too old"
msgstr "NetworkManager 版本太è€"
@@ -3358,18 +3384,18 @@ msgstr "传递给 %s çš„å‘é‡å’Œå¤ªå¤§"
msgid "Source stream is already closed"
msgstr "æºæµå·²ç»å…³é—­"
-#: gio/gresolver.c:386 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
+#: gio/gresolver.c:401 gio/gthreadedresolver.c:150 gio/gthreadedresolver.c:168
#, c-format
msgid "Error resolving “%sâ€: %s"
msgstr "解æžâ€œ%sâ€æ—¶å‡ºé”™ï¼š%s"
#. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:455 gio/gresolver.c:615
+#: gio/gresolver.c:470 gio/gresolver.c:630
#, c-format
msgid "%s not implemented"
msgstr "%s 尚未实现"
-#: gio/gresolver.c:984 gio/gresolver.c:1036
+#: gio/gresolver.c:999 gio/gresolver.c:1051
msgid "Invalid domain"
msgstr "无效的域"
@@ -3484,7 +3510,7 @@ msgstr ""
msgid " SECTION An (optional) elf section name\n"
msgstr " 段 一个 elf 段å(å¯é€‰ï¼‰\n"
-#: gio/gresource-tool.c:565 gio/gsettings-tool.c:706
+#: gio/gresource-tool.c:565 gio/gsettings-tool.c:718
msgid " COMMAND The (optional) command to explain\n"
msgstr " 命令 è¦è§£é‡Šçš„命令(å¯é€‰ï¼‰\n"
@@ -3516,7 +3542,7 @@ msgstr "路径"
msgid " PATH A resource path\n"
msgstr " 路径 一个资æºè·¯å¾„\n"
-#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:911
+#: gio/gsettings-tool.c:49 gio/gsettings-tool.c:70 gio/gsettings-tool.c:923
#, c-format
msgid "No such schema “%sâ€\n"
msgstr "没有“%sâ€è¿™ä¸ªæž¶æž„\n"
@@ -3547,35 +3573,35 @@ msgstr "路径必须以斜æ ç»“æŸï¼ˆ/)\n"
msgid "Path must not contain two adjacent slashes (//)\n"
msgstr "路径中ä¸èƒ½åŒ…å«è¿žç»­ä¸¤ä¸ªæ–œæ ï¼ˆ//)\n"
-#: gio/gsettings-tool.c:541
+#: gio/gsettings-tool.c:553
msgid "The provided value is outside of the valid range\n"
msgstr "æ供的值ä¸åœ¨æœ‰æ•ˆèŒƒå›´å†…\n"
-#: gio/gsettings-tool.c:548
+#: gio/gsettings-tool.c:560
msgid "The key is not writable\n"
msgstr "é”®ä¸å¯å†™\n"
-#: gio/gsettings-tool.c:584
+#: gio/gsettings-tool.c:596
msgid "List the installed (non-relocatable) schemas"
msgstr "列出已安装的(ä¸å¯é‡å®šä½çš„)架构"
-#: gio/gsettings-tool.c:590
+#: gio/gsettings-tool.c:602
msgid "List the installed relocatable schemas"
msgstr "列出安装的å¯é‡å®šä½çš„架构"
-#: gio/gsettings-tool.c:596
+#: gio/gsettings-tool.c:608
msgid "List the keys in SCHEMA"
msgstr "列出架构中的键"
-#: gio/gsettings-tool.c:597 gio/gsettings-tool.c:603 gio/gsettings-tool.c:646
+#: gio/gsettings-tool.c:609 gio/gsettings-tool.c:615 gio/gsettings-tool.c:658
msgid "SCHEMA[:PATH]"
msgstr "架构[:路径]"
-#: gio/gsettings-tool.c:602
+#: gio/gsettings-tool.c:614
msgid "List the children of SCHEMA"
msgstr "列出架构的å­å¯¹è±¡"
-#: gio/gsettings-tool.c:608
+#: gio/gsettings-tool.c:620
msgid ""
"List keys and values, recursively\n"
"If no SCHEMA is given, list all keys\n"
@@ -3583,48 +3609,48 @@ msgstr ""
"递归列出键和值\n"
"如果没有给出架构,列出所有键\n"
-#: gio/gsettings-tool.c:610
+#: gio/gsettings-tool.c:622
msgid "[SCHEMA[:PATH]]"
msgstr "架构[:路径]"
-#: gio/gsettings-tool.c:615
+#: gio/gsettings-tool.c:627
msgid "Get the value of KEY"
msgstr "获å–键的值"
-#: gio/gsettings-tool.c:616 gio/gsettings-tool.c:622 gio/gsettings-tool.c:628
-#: gio/gsettings-tool.c:640 gio/gsettings-tool.c:652
+#: gio/gsettings-tool.c:628 gio/gsettings-tool.c:634 gio/gsettings-tool.c:640
+#: gio/gsettings-tool.c:652 gio/gsettings-tool.c:664
msgid "SCHEMA[:PATH] KEY"
msgstr "架构[:路径] 键"
-#: gio/gsettings-tool.c:621
+#: gio/gsettings-tool.c:633
msgid "Query the range of valid values for KEY"
msgstr "查询键的有效值范围"
-#: gio/gsettings-tool.c:627
+#: gio/gsettings-tool.c:639
msgid "Query the description for KEY"
msgstr "查询键的æè¿°"
-#: gio/gsettings-tool.c:633
+#: gio/gsettings-tool.c:645
msgid "Set the value of KEY to VALUE"
msgstr "将键的值设为给定的键值"
-#: gio/gsettings-tool.c:634
+#: gio/gsettings-tool.c:646
msgid "SCHEMA[:PATH] KEY VALUE"
msgstr "架构[:路径] 键 键值"
-#: gio/gsettings-tool.c:639
+#: gio/gsettings-tool.c:651
msgid "Reset KEY to its default value"
msgstr "将键é‡è®¾ä¸ºé»˜è®¤å€¼"
-#: gio/gsettings-tool.c:645
+#: gio/gsettings-tool.c:657
msgid "Reset all keys in SCHEMA to their defaults"
msgstr "é‡ç½®æž¶æž„中所有键为默认值"
-#: gio/gsettings-tool.c:651
+#: gio/gsettings-tool.c:663
msgid "Check if KEY is writable"
msgstr "查看键是å¦å¯å†™"
-#: gio/gsettings-tool.c:657
+#: gio/gsettings-tool.c:669
msgid ""
"Monitor KEY for changes.\n"
"If no KEY is specified, monitor all keys in SCHEMA.\n"
@@ -3634,11 +3660,11 @@ msgstr ""
"如果没有指定键,则监视架构中的所有键。\n"
"使用 ^C åœæ­¢ç›‘视。\n"
-#: gio/gsettings-tool.c:660
+#: gio/gsettings-tool.c:672
msgid "SCHEMA[:PATH] [KEY]"
msgstr "架构[:路径] [键]"
-#: gio/gsettings-tool.c:672
+#: gio/gsettings-tool.c:684
msgid ""
"Usage:\n"
" gsettings --version\n"
@@ -3686,7 +3712,7 @@ msgstr ""
"使用“gsettings help 命令â€æŸ¥çœ‹è¯¦ç»†çš„帮助。\n"
"\n"
-#: gio/gsettings-tool.c:696
+#: gio/gsettings-tool.c:708
#, c-format
msgid ""
"Usage:\n"
@@ -3701,11 +3727,11 @@ msgstr ""
"%s\n"
"\n"
-#: gio/gsettings-tool.c:702
+#: gio/gsettings-tool.c:714
msgid " SCHEMADIR A directory to search for additional schemas\n"
msgstr " 架构目录 一个用于æœç´¢é™„加架构的目录\n"
-#: gio/gsettings-tool.c:710
+#: gio/gsettings-tool.c:722
msgid ""
" SCHEMA The name of the schema\n"
" PATH The path, for relocatable schemas\n"
@@ -3713,212 +3739,212 @@ msgstr ""
" 架构 架构的å称\n"
" 路径 å¯é‡å®šä½æž¶æž„的路径\n"
-#: gio/gsettings-tool.c:715
+#: gio/gsettings-tool.c:727
msgid " KEY The (optional) key within the schema\n"
msgstr " é”® 架构中(å¯é€‰ï¼‰çš„é”®\n"
-#: gio/gsettings-tool.c:719
+#: gio/gsettings-tool.c:731
msgid " KEY The key within the schema\n"
msgstr " 键 架构中的键\n"
-#: gio/gsettings-tool.c:723
+#: gio/gsettings-tool.c:735
msgid " VALUE The value to set\n"
msgstr " 键值 è¦è®¾çš„值\n"
-#: gio/gsettings-tool.c:778
+#: gio/gsettings-tool.c:790
#, c-format
msgid "Could not load schemas from %s: %s\n"
msgstr "无法从 %s 加载架构:%s\n"
-#: gio/gsettings-tool.c:790
+#: gio/gsettings-tool.c:802
msgid "No schemas installed\n"
msgstr "没有安装架构\n"
-#: gio/gsettings-tool.c:869
+#: gio/gsettings-tool.c:881
msgid "Empty schema name given\n"
msgstr "给定了空的架构å称\n"
-#: gio/gsettings-tool.c:924
+#: gio/gsettings-tool.c:936
#, c-format
msgid "No such key “%sâ€\n"
msgstr "没有“%sâ€è¿™ä¸ªé”®\n"
-#: gio/gsocket.c:413
+#: gio/gsocket.c:417
msgid "Invalid socket, not initialized"
msgstr "无效的套接字,尚未åˆå§‹åŒ–"
-#: gio/gsocket.c:420
+#: gio/gsocket.c:424
#, c-format
msgid "Invalid socket, initialization failed due to: %s"
msgstr "无效的套接字,åˆå§‹åŒ–失败的原因是:%s"
-#: gio/gsocket.c:428
+#: gio/gsocket.c:432
msgid "Socket is already closed"
msgstr "套接字已ç»å…³é—­"
-#: gio/gsocket.c:443 gio/gsocket.c:3190 gio/gsocket.c:4420 gio/gsocket.c:4478
+#: gio/gsocket.c:447 gio/gsocket.c:3194 gio/gsocket.c:4427 gio/gsocket.c:4485
msgid "Socket I/O timed out"
msgstr "套接字 I/O 超时"
# "fd" is abbr. of "File Descriptor", 文件æ述符
-#: gio/gsocket.c:578
+#: gio/gsocket.c:582
#, c-format
msgid "creating GSocket from fd: %s"
msgstr "正在从文件æ述符创建 GSocket:%s"
-#: gio/gsocket.c:607 gio/gsocket.c:671 gio/gsocket.c:678
+#: gio/gsocket.c:611 gio/gsocket.c:675 gio/gsocket.c:682
#, c-format
msgid "Unable to create socket: %s"
msgstr "无法创建套接字:%s"
-#: gio/gsocket.c:671
+#: gio/gsocket.c:675
msgid "Unknown family was specified"
msgstr "指定了未知åè®®æ—"
-#: gio/gsocket.c:678
+#: gio/gsocket.c:682
msgid "Unknown protocol was specified"
msgstr "指定了未知åè®®"
-#: gio/gsocket.c:1169
+#: gio/gsocket.c:1173
#, c-format
msgid "Cannot use datagram operations on a non-datagram socket."
msgstr "无法在éžæ•°æ®æŠ¥å¥—接字上使用数æ®æŠ¥æ“作。"
-#: gio/gsocket.c:1186
+#: gio/gsocket.c:1190
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr "无法在已设置超时的套接字上使用数æ®æŠ¥æ“作。"
-#: gio/gsocket.c:1993
+#: gio/gsocket.c:1997
#, c-format
msgid "could not get local address: %s"
msgstr "无法获å–本地地å€ï¼š%s"
-#: gio/gsocket.c:2039
+#: gio/gsocket.c:2043
#, c-format
msgid "could not get remote address: %s"
msgstr "无法获å–远程地å€ï¼š %s"
-#: gio/gsocket.c:2105
+#: gio/gsocket.c:2109
#, c-format
msgid "could not listen: %s"
msgstr "无法监å¬ï¼š%s"
-#: gio/gsocket.c:2209
+#: gio/gsocket.c:2213
#, c-format
msgid "Error binding to address %s: %s"
msgstr "绑定地å€æ—¶å‡ºé”™ï¼š%s: %s"
-#: gio/gsocket.c:2385 gio/gsocket.c:2422 gio/gsocket.c:2532 gio/gsocket.c:2557
-#: gio/gsocket.c:2620 gio/gsocket.c:2678 gio/gsocket.c:2696
+#: gio/gsocket.c:2389 gio/gsocket.c:2426 gio/gsocket.c:2536 gio/gsocket.c:2561
+#: gio/gsocket.c:2624 gio/gsocket.c:2682 gio/gsocket.c:2700
#, c-format
msgid "Error joining multicast group: %s"
msgstr "加入多播组时出错:%s"
-#: gio/gsocket.c:2386 gio/gsocket.c:2423 gio/gsocket.c:2533 gio/gsocket.c:2558
-#: gio/gsocket.c:2621 gio/gsocket.c:2679 gio/gsocket.c:2697
+#: gio/gsocket.c:2390 gio/gsocket.c:2427 gio/gsocket.c:2537 gio/gsocket.c:2562
+#: gio/gsocket.c:2625 gio/gsocket.c:2683 gio/gsocket.c:2701
#, c-format
msgid "Error leaving multicast group: %s"
msgstr "退出多播组时出错:%s"
-#: gio/gsocket.c:2387
+#: gio/gsocket.c:2391
msgid "No support for source-specific multicast"
msgstr "ä¸æ”¯æŒæŒ‡å®šæºçš„多播"
-#: gio/gsocket.c:2534
+#: gio/gsocket.c:2538
msgid "Unsupported socket family"
msgstr "ä¸æ”¯æŒçš„套接字家æ—"
-#: gio/gsocket.c:2559
+#: gio/gsocket.c:2563
msgid "source-specific not an IPv4 address"
msgstr "指定æºä¸æ˜¯ IPv4 地å€"
-#: gio/gsocket.c:2583
+#: gio/gsocket.c:2587
#, c-format
msgid "Interface name too long"
msgstr "接å£å太长"
-#: gio/gsocket.c:2596 gio/gsocket.c:2646
+#: gio/gsocket.c:2600 gio/gsocket.c:2650
#, c-format
msgid "Interface not found: %s"
msgstr "未找到接å£ï¼š%s"
-#: gio/gsocket.c:2622
+#: gio/gsocket.c:2626
msgid "No support for IPv4 source-specific multicast"
msgstr "ä¸æ”¯æŒ IPv4 指定æºçš„多播"
-#: gio/gsocket.c:2680
+#: gio/gsocket.c:2684
msgid "No support for IPv6 source-specific multicast"
msgstr "ä¸æ”¯æŒ IPv6 指定æºçš„多播"
-#: gio/gsocket.c:2889
+#: gio/gsocket.c:2893
#, c-format
msgid "Error accepting connection: %s"
msgstr "接å—连接时出错:%s"
-#: gio/gsocket.c:3015
+#: gio/gsocket.c:3019
msgid "Connection in progress"
msgstr "连接进行中"
-#: gio/gsocket.c:3066
+#: gio/gsocket.c:3070
msgid "Unable to get pending error: "
msgstr "无法获å–未决的错误:"
-#: gio/gsocket.c:3255
+#: gio/gsocket.c:3259
#, c-format
msgid "Error receiving data: %s"
msgstr "接收数æ®æ—¶å‡ºé”™ï¼š%s"
-#: gio/gsocket.c:3452
+#: gio/gsocket.c:3456
#, c-format
msgid "Error sending data: %s"
msgstr "å‘é€æ•°æ®æ—¶å‡ºé”™ï¼š%s"
-#: gio/gsocket.c:3639
+#: gio/gsocket.c:3643
#, c-format
msgid "Unable to shutdown socket: %s"
msgstr "无法关闭套接字:%s"
-#: gio/gsocket.c:3720
+#: gio/gsocket.c:3724
#, c-format
msgid "Error closing socket: %s"
msgstr "关闭套接字时出错:%s"
-#: gio/gsocket.c:4413
+#: gio/gsocket.c:4420
#, c-format
msgid "Waiting for socket condition: %s"
msgstr "等待套接字状æ€ï¼š%s"
-#: gio/gsocket.c:4804 gio/gsocket.c:4820 gio/gsocket.c:4833
+#: gio/gsocket.c:4810 gio/gsocket.c:4826 gio/gsocket.c:4839
#, c-format
msgid "Unable to send message: %s"
msgstr "无法å‘é€ä¿¡æ¯ï¼š%s"
-#: gio/gsocket.c:4805 gio/gsocket.c:4821 gio/gsocket.c:4834
+#: gio/gsocket.c:4811 gio/gsocket.c:4827 gio/gsocket.c:4840
msgid "Message vectors too large"
msgstr "ä¿¡æ¯å‘é‡è¿‡å¤§"
-#: gio/gsocket.c:4850 gio/gsocket.c:4852 gio/gsocket.c:4999 gio/gsocket.c:5084
-#: gio/gsocket.c:5262 gio/gsocket.c:5302 gio/gsocket.c:5304
+#: gio/gsocket.c:4856 gio/gsocket.c:4858 gio/gsocket.c:5005 gio/gsocket.c:5090
+#: gio/gsocket.c:5268 gio/gsocket.c:5308 gio/gsocket.c:5310
#, c-format
msgid "Error sending message: %s"
msgstr "å‘é€ä¿¡æ¯æ—¶å‡ºé”™ï¼š%s"
-#: gio/gsocket.c:5026
+#: gio/gsocket.c:5032
msgid "GSocketControlMessage not supported on Windows"
msgstr "Windows ä¸æ”¯æŒ GSocketControlMessage"
-#: gio/gsocket.c:5495 gio/gsocket.c:5571 gio/gsocket.c:5797
+#: gio/gsocket.c:5505 gio/gsocket.c:5581 gio/gsocket.c:5807
#, c-format
msgid "Error receiving message: %s"
msgstr "接å—ä¿¡æ¯æ—¶å‡ºé”™ï¼š%s"
-#: gio/gsocket.c:6070 gio/gsocket.c:6081 gio/gsocket.c:6127
+#: gio/gsocket.c:6090 gio/gsocket.c:6101 gio/gsocket.c:6164
#, c-format
msgid "Unable to read socket credentials: %s"
msgstr "无法读å–套接字认è¯ä¿¡æ¯ï¼š%s"
-#: gio/gsocket.c:6136
+#: gio/gsocket.c:6173
msgid "g_socket_get_credentials not implemented for this OS"
msgstr "æ­¤æ“作系统上没有实现 g_socket_get_credentials"
@@ -3936,11 +3962,11 @@ msgstr "无法连接到 %s:"
msgid "Could not connect: "
msgstr "无法连接:"
-#: gio/gsocketclient.c:1162 gio/gsocketclient.c:1749
+#: gio/gsocketclient.c:1202 gio/gsocketclient.c:1793
msgid "Proxying over a non-TCP connection is not supported."
msgstr "ä¸æ”¯æŒé€šè¿‡éž TCP 连接的代ç†ã€‚"
-#: gio/gsocketclient.c:1194 gio/gsocketclient.c:1778
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1822
#, c-format
msgid "Proxy protocol “%s†is not supported."
msgstr "ä¸æ”¯æŒä»£ç†å议“%sâ€ã€‚"
@@ -4038,6 +4064,16 @@ msgstr "SOCKSv5 代ç†ä¸æ”¯æŒæ供的地å€ç±»åž‹ã€‚"
msgid "Unknown SOCKSv5 proxy error."
msgstr "未知 SOCKSv5 代ç†é”™è¯¯ã€‚"
+#: gio/gtestdbus.c:612 glib/gspawn-win32.c:314
+#, c-format
+msgid "Failed to create pipe for communicating with child process (%s)"
+msgstr "创建与å­è¿›ç¨‹é€šè®¯çš„管é“失败(%s)"
+
+#: gio/gtestdbus.c:619
+#, c-format
+msgid "Pipes are not supported in this platform"
+msgstr "此平å°ä¸æ”¯æŒç®¡é“(pipe)"
+
#: gio/gthemedicon.c:595
#, c-format
msgid "Can’t handle version %d of GThemedIcon encoding"
@@ -4069,27 +4105,31 @@ msgstr "暂时无法解æžâ€œ%sâ€"
msgid "Error resolving “%sâ€"
msgstr "解æžâ€œ%sâ€æ—¶å‡ºé”™"
-#: gio/gtlscertificate.c:431
+#: gio/gtlscertificate.c:478
msgid "No PEM-encoded private key found"
msgstr "未找到 PEM 加密的ç§é’¥"
-#: gio/gtlscertificate.c:441
+#: gio/gtlscertificate.c:488
msgid "Cannot decrypt PEM-encoded private key"
msgstr "无法解密 PEM 加密的ç§é’¥"
-#: gio/gtlscertificate.c:452
+#: gio/gtlscertificate.c:499
msgid "Could not parse PEM-encoded private key"
msgstr "æ— æ³•è§£æž PEM 加密的ç§é’¥"
-#: gio/gtlscertificate.c:479
+#: gio/gtlscertificate.c:526
msgid "No PEM-encoded certificate found"
msgstr "未找到 PEM 加密的è¯ä¹¦"
-#: gio/gtlscertificate.c:488
+#: gio/gtlscertificate.c:535
msgid "Could not parse PEM-encoded certificate"
msgstr "æ— æ³•è§£æž PEM 加密的è¯ä¹¦"
-#: gio/gtlscertificate.c:844
+#: gio/gtlscertificate.c:796
+msgid "The current TLS backend does not support PKCS #12"
+msgstr "当å‰çš„ TLS åŽç«¯ä¸æ”¯æŒ PKCS #12"
+
+#: gio/gtlscertificate.c:1013
msgid "This GTlsBackend does not support creating PKCS #11 certificates"
msgstr "本 GTlsBackend ä¸æ”¯æŒåˆ›å»º PKCS #11 è¯ä¹¦"
@@ -4111,51 +4151,59 @@ msgstr "密ç å¤šæ¬¡è¾“入错误,您的访问将在数次错误输入åŽé”定
msgid "The password entered is incorrect."
msgstr "输入的密ç ä¸æ­£ç¡®ã€‚"
-#: gio/gunixconnection.c:166 gio/gunixconnection.c:579
+#: gio/gunixconnection.c:125
+msgid "Sending FD is not supported"
+msgstr "ä¸æ”¯æŒå‘é€ FD"
+
+#: gio/gunixconnection.c:178 gio/gunixconnection.c:596
#, c-format
msgid "Expecting 1 control message, got %d"
msgid_plural "Expecting 1 control message, got %d"
msgstr[0] "应为 1 个控件消æ¯ï¼Œå´å¾—到 %d 个"
-#: gio/gunixconnection.c:182 gio/gunixconnection.c:591
+#: gio/gunixconnection.c:194 gio/gunixconnection.c:608
msgid "Unexpected type of ancillary data"
msgstr "éžé¢„期的辅助数æ®ç±»åž‹"
-#: gio/gunixconnection.c:200
+#: gio/gunixconnection.c:212
#, c-format
msgid "Expecting one fd, but got %d\n"
msgid_plural "Expecting one fd, but got %d\n"
msgstr[0] "应为 1 个文件æ述符,å´å¾—到 %d 个\n"
-#: gio/gunixconnection.c:219
+#: gio/gunixconnection.c:231
msgid "Received invalid fd"
msgstr "收到无效文件æ述符"
-#: gio/gunixconnection.c:363
+#: gio/gunixconnection.c:238
+msgid "Receiving FD is not supported"
+msgstr "ä¸æ”¯æŒæŽ¥æ”¶ FD"
+
+#: gio/gunixconnection.c:380
msgid "Error sending credentials: "
msgstr "å‘é€å‡­æ®æ—¶å‡ºé”™ï¼š"
-#: gio/gunixconnection.c:520
+#: gio/gunixconnection.c:537
#, c-format
msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
msgstr "检查套接字是å¦å¯ç”¨ SO_PASSCRED 时出错:%s"
-#: gio/gunixconnection.c:536
+#: gio/gunixconnection.c:553
#, c-format
msgid "Error enabling SO_PASSCRED: %s"
msgstr "å¯ç”¨ SO_PASSCRED 时出错:%s"
-#: gio/gunixconnection.c:565
+#: gio/gunixconnection.c:582
msgid ""
"Expecting to read a single byte for receiving credentials but read zero bytes"
msgstr "期望为接收è¯ä¹¦è¯»åˆ°å•ä¸ªå­—节但是åªè¯»åˆ°äº† 0 字节"
-#: gio/gunixconnection.c:605
+#: gio/gunixconnection.c:622
#, c-format
msgid "Not expecting control message, but got %d"
msgstr "未期望控制信æ¯ï¼Œå´å¾—到 %d 个"
-#: gio/gunixconnection.c:630
+#: gio/gunixconnection.c:647
#, c-format
msgid "Error while disabling SO_PASSCRED: %s"
msgstr "ç¦ç”¨ SO_PASSCRED 时出错:%s"
@@ -4171,7 +4219,7 @@ msgstr "从文件æ述符读å–时出错:%s"
msgid "Error closing file descriptor: %s"
msgstr "关闭文件æ述符时出错:%s"
-#: gio/gunixmounts.c:2785 gio/gunixmounts.c:2838
+#: gio/gunixmounts.c:2782 gio/gunixmounts.c:2835
msgid "Filesystem root"
msgstr "文件系统根目录"
@@ -4182,7 +4230,7 @@ msgstr "文件系统根目录"
msgid "Error writing to file descriptor: %s"
msgstr "写入文件æ述符时出错:%s"
-#: gio/gunixsocketaddress.c:244
+#: gio/gunixsocketaddress.c:251
msgid "Abstract UNIX domain socket addresses not supported on this system"
msgstr "本系统ä¸æ”¯æŒæŠ½è±¡ Unix 域套接字地å€"
@@ -4332,8 +4380,8 @@ msgstr "用 URI“%2$sâ€å±•å¼€ exec 行“%1$sâ€å¤±è´¥"
msgid "Unrepresentable character in conversion input"
msgstr "转æ¢è¾“入中出现无法表达的字符"
-#: glib/gconvert.c:495 glib/gutf8.c:871 glib/gutf8.c:1083 glib/gutf8.c:1220
-#: glib/gutf8.c:1324
+#: glib/gconvert.c:495 glib/gutf8.c:886 glib/gutf8.c:1099 glib/gutf8.c:1236
+#: glib/gutf8.c:1340
msgid "Partial character sequence at end of input"
msgstr "输入末尾出现未尽字符åºåˆ—"
@@ -4802,78 +4850,78 @@ msgstr "下åˆ"
msgid "Error opening directory “%sâ€: %s"
msgstr "打开目录“%sâ€æ—¶å‡ºé”™ï¼š%s"
-#: glib/gfileutils.c:738 glib/gfileutils.c:830
+#: glib/gfileutils.c:733 glib/gfileutils.c:825
#, c-format
msgid "Could not allocate %lu byte to read file “%sâ€"
msgid_plural "Could not allocate %lu bytes to read file “%sâ€"
msgstr[0] "æ— æ³•åˆ†é… %lu 字节以读å–文件“%sâ€"
-#: glib/gfileutils.c:755
+#: glib/gfileutils.c:750
#, c-format
msgid "Error reading file “%sâ€: %s"
msgstr "读å–文件“%sâ€æ—¶å‡ºé”™ï¼š%s"
-#: glib/gfileutils.c:791
+#: glib/gfileutils.c:786
#, c-format
msgid "File “%s†is too large"
msgstr "文件“%sâ€è¿‡å¤§"
-#: glib/gfileutils.c:855
+#: glib/gfileutils.c:850
#, c-format
msgid "Failed to read from file “%sâ€: %s"
msgstr "读å–文件“%sâ€å¤±è´¥ï¼š%s"
-#: glib/gfileutils.c:905 glib/gfileutils.c:980 glib/gfileutils.c:1469
+#: glib/gfileutils.c:900 glib/gfileutils.c:975 glib/gfileutils.c:1447
#, c-format
msgid "Failed to open file “%sâ€: %s"
msgstr "打开文件“%sâ€å¤±è´¥ï¼š%s"
-#: glib/gfileutils.c:918
+#: glib/gfileutils.c:913
#, c-format
msgid "Failed to get attributes of file “%sâ€: fstat() failed: %s"
msgstr "获得文件“%sâ€çš„属性失败:fstat() 失败:%s"
-#: glib/gfileutils.c:949
+#: glib/gfileutils.c:944
#, c-format
msgid "Failed to open file “%sâ€: fdopen() failed: %s"
msgstr "打开文件“%sâ€å¤±è´¥ï¼šfdopen() 失败:%s"
-#: glib/gfileutils.c:1050
+#: glib/gfileutils.c:1045
#, c-format
msgid "Failed to rename file “%s†to “%sâ€: g_rename() failed: %s"
msgstr "将文件“%sâ€é‡å‘½å为“%sâ€å¤±è´¥ï¼šg_rename() 失败:%s"
-#: glib/gfileutils.c:1176
+#: glib/gfileutils.c:1154
#, c-format
msgid "Failed to write file “%sâ€: write() failed: %s"
msgstr "写入文件“%sâ€å¤±è´¥ï¼šwrite() 失败:%s"
-#: glib/gfileutils.c:1197
+#: glib/gfileutils.c:1175
#, c-format
msgid "Failed to write file “%sâ€: fsync() failed: %s"
msgstr "写入文件“%sâ€å¤±è´¥ï¼šfsync() 失败:%s"
-#: glib/gfileutils.c:1358 glib/gfileutils.c:1773
+#: glib/gfileutils.c:1336 glib/gfileutils.c:1751
#, c-format
msgid "Failed to create file “%sâ€: %s"
msgstr "创建文件“%sâ€å¤±è´¥ï¼š%s"
-#: glib/gfileutils.c:1403
+#: glib/gfileutils.c:1381
#, c-format
msgid "Existing file “%s†could not be removed: g_unlink() failed: %s"
msgstr "无法删除已有文件“%sâ€ï¼šg_unlink() 失败:%s"
-#: glib/gfileutils.c:1738
+#: glib/gfileutils.c:1716
#, c-format
msgid "Template “%s†invalid, should not contain a “%sâ€"
msgstr "模æ¿â€œ%sâ€æ— æ•ˆï¼Œä¸åº”该包å«â€œ%sâ€"
-#: glib/gfileutils.c:1751
+#: glib/gfileutils.c:1729
#, c-format
msgid "Template “%s†doesn’t contain XXXXXX"
msgstr "模æ¿â€œ%sâ€ä¸åŒ…å« XXXXXX"
-#: glib/gfileutils.c:2311 glib/gfileutils.c:2340
+#: glib/gfileutils.c:2289 glib/gfileutils.c:2318
#, c-format
msgid "Failed to read the symbolic link “%sâ€: %s"
msgstr "读å–符å·é“¾æŽ¥â€œ%sâ€å¤±è´¥ï¼š%s"
@@ -4899,99 +4947,99 @@ msgstr "通é“终止于未尽字符"
msgid "Can’t do a raw read in g_io_channel_read_to_end"
msgstr "g_io_channel_read_to_end 函数无法进行原始读å–"
-#: glib/gkeyfile.c:791
+#: glib/gkeyfile.c:794
msgid "Valid key file could not be found in search dirs"
msgstr "在æœç´¢ç›®å½•ä¸­æ— æ³•æ‰¾åˆ°æœ‰æ•ˆçš„键文件"
-#: glib/gkeyfile.c:828
+#: glib/gkeyfile.c:831
msgid "Not a regular file"
msgstr "ä¸æ˜¯æ™®é€šæ–‡ä»¶"
-#: glib/gkeyfile.c:1283
+#: glib/gkeyfile.c:1289
#, c-format
msgid ""
"Key file contains line “%s†which is not a key-value pair, group, or comment"
msgstr "键文件包å«ä¸æ˜¯é”®-值对ã€ç»„或注释的行“%sâ€"
-#: glib/gkeyfile.c:1340
+#: glib/gkeyfile.c:1346
#, c-format
msgid "Invalid group name: %s"
msgstr "无效的组å:%s"
-#: glib/gkeyfile.c:1362
+#: glib/gkeyfile.c:1370
msgid "Key file does not start with a group"
msgstr "键文件ä¸ä»¥ç»„开始"
-#: glib/gkeyfile.c:1388
+#: glib/gkeyfile.c:1394
#, c-format
-msgid "Invalid key name: %s"
-msgstr "无效的键å:%s"
+msgid "Invalid key name: %.*s"
+msgstr "无效的键å:%.*s"
-#: glib/gkeyfile.c:1415
+#: glib/gkeyfile.c:1422
#, c-format
msgid "Key file contains unsupported encoding “%sâ€"
msgstr "键文件包å«ä¸æ”¯æŒçš„ç¼–ç â€œ%sâ€"
-#: glib/gkeyfile.c:1664 glib/gkeyfile.c:1837 glib/gkeyfile.c:3290
-#: glib/gkeyfile.c:3354 glib/gkeyfile.c:3484 glib/gkeyfile.c:3616
-#: glib/gkeyfile.c:3762 glib/gkeyfile.c:3997 glib/gkeyfile.c:4064
+#: glib/gkeyfile.c:1677 glib/gkeyfile.c:1850 glib/gkeyfile.c:3297
+#: glib/gkeyfile.c:3361 glib/gkeyfile.c:3491 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3769 glib/gkeyfile.c:4004 glib/gkeyfile.c:4071
#, c-format
msgid "Key file does not have group “%sâ€"
msgstr "键文件没有组“%sâ€"
-#: glib/gkeyfile.c:1792
+#: glib/gkeyfile.c:1805
#, c-format
msgid "Key file does not have key “%s†in group “%sâ€"
msgstr "键文件在组“%2$sâ€ä¸­æ²¡æœ‰é”®â€œ%1$sâ€"
-#: glib/gkeyfile.c:1954 glib/gkeyfile.c:2070
+#: glib/gkeyfile.c:1967 glib/gkeyfile.c:2083
#, c-format
msgid "Key file contains key “%s†with value “%s†which is not UTF-8"
msgstr "键文件包å«é”®â€œ%sâ€ï¼Œå…¶å€¼â€œ%sâ€ä¸æ˜¯ UTF-8"
-#: glib/gkeyfile.c:1974 glib/gkeyfile.c:2090 glib/gkeyfile.c:2532
+#: glib/gkeyfile.c:1987 glib/gkeyfile.c:2103 glib/gkeyfile.c:2542
#, c-format
msgid ""
"Key file contains key “%s†which has a value that cannot be interpreted."
msgstr "键文件包å«é”®â€œ%sâ€ï¼Œå…¶å€¼æ— æ³•è§£æžã€‚"
-#: glib/gkeyfile.c:2750 glib/gkeyfile.c:3119
+#: glib/gkeyfile.c:2757 glib/gkeyfile.c:3126
#, c-format
msgid ""
"Key file contains key “%s†in group “%s†which has a value that cannot be "
"interpreted."
msgstr "键文件包å«ç»„“%2$sâ€ä¸­çš„键“%1$sâ€ï¼Œå…¶å€¼æ— æ³•è§£é‡Šã€‚"
-#: glib/gkeyfile.c:2828 glib/gkeyfile.c:2905
+#: glib/gkeyfile.c:2835 glib/gkeyfile.c:2912
#, c-format
msgid "Key “%s†in group “%s†has value “%s†where %s was expected"
msgstr "组“%2$sâ€ä¸­çš„键“%1$sâ€çš„值为“%3$sâ€ï¼Œåº”为 %4$s"
-#: glib/gkeyfile.c:4307
+#: glib/gkeyfile.c:4324
msgid "Key file contains escape character at end of line"
msgstr "键文件在行尾å«æœ‰è½¬ä¹‰å­—符"
-#: glib/gkeyfile.c:4329
+#: glib/gkeyfile.c:4346
#, c-format
msgid "Key file contains invalid escape sequence “%sâ€"
msgstr "键文件中包å«æ— æ•ˆçš„转义åºåˆ—“%sâ€"
-#: glib/gkeyfile.c:4473
+#: glib/gkeyfile.c:4491
#, c-format
msgid "Value “%s†cannot be interpreted as a number."
msgstr "无法将值“%sâ€è§£é‡Šä¸ºæ•°å€¼ã€‚"
-#: glib/gkeyfile.c:4487
+#: glib/gkeyfile.c:4505
#, c-format
msgid "Integer value “%s†out of range"
msgstr "整数值“%sâ€è¶…出范围"
-#: glib/gkeyfile.c:4520
+#: glib/gkeyfile.c:4538
#, c-format
msgid "Value “%s†cannot be interpreted as a float number."
msgstr "无法将值“%sâ€è§£é‡Šä¸ºæµ®ç‚¹æ•°ã€‚"
-#: glib/gkeyfile.c:4559
+#: glib/gkeyfile.c:4577
#, c-format
msgid "Value “%s†cannot be interpreted as a boolean."
msgstr "无法将值“%sâ€è§£é‡Šä¸ºå¸ƒå°”值。"
@@ -5258,7 +5306,7 @@ msgstr "解æžé€‰é¡¹ %s 时出错"
msgid "Missing argument for %s"
msgstr "缺少 %s çš„å‚æ•°"
-#: glib/goption.c:2185
+#: glib/goption.c:2184
#, c-format
msgid "Unknown option %s"
msgstr "未知选项 %s"
@@ -5665,131 +5713,141 @@ msgstr "在从å­è¿›ç¨‹ä¸­è¯»å–æ•°æ®æ—¶å‡ºçŽ°å¼‚常错误(%s)"
msgid "Unexpected error in waitpid() (%s)"
msgstr "waitpid() 出现异常错误(%s)"
-#: glib/gspawn.c:1166 glib/gspawn-win32.c:1407
+#: glib/gspawn.c:1168 glib/gspawn-win32.c:1426
#, c-format
msgid "Child process exited with code %ld"
msgstr "å­è¿›ç¨‹å·²é€€å‡ºï¼Œä»£ç  %ld"
-#: glib/gspawn.c:1174
+#: glib/gspawn.c:1176
#, c-format
msgid "Child process killed by signal %ld"
msgstr "å­è¿›ç¨‹å·²ç”±ä¿¡å· %ld æ€æ­»"
-#: glib/gspawn.c:1181
+#: glib/gspawn.c:1183
#, c-format
msgid "Child process stopped by signal %ld"
msgstr "å­è¿›ç¨‹å·²ç”±ä¿¡å· %ld åœæ­¢"
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1190
#, c-format
msgid "Child process exited abnormally"
msgstr "å­è¿›ç¨‹å¼‚常中止"
-#: glib/gspawn.c:1855 glib/gspawn-win32.c:350 glib/gspawn-win32.c:358
+#: glib/gspawn.c:1881 glib/gspawn-win32.c:353 glib/gspawn-win32.c:361
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "从å­ç®¡é“中读å–失败(%s)"
-#: glib/gspawn.c:2157
+#: glib/gspawn.c:2241
#, c-format
msgid "Failed to spawn child process “%s†(%s)"
msgstr "生æˆå­è¿›ç¨‹â€œ%sâ€å¤±è´¥ï¼ˆ%s)"
-#: glib/gspawn.c:2274
+#: glib/gspawn.c:2358
#, c-format
msgid "Failed to fork (%s)"
msgstr "fork 失败(%s)"
-#: glib/gspawn.c:2434 glib/gspawn-win32.c:381
+#: glib/gspawn.c:2518 glib/gspawn-win32.c:384
#, c-format
msgid "Failed to change to directory “%s†(%s)"
msgstr "切æ¢åˆ°ç›®å½•â€œ%sâ€å¤±è´¥ï¼ˆ%s)"
-#: glib/gspawn.c:2444
+#: glib/gspawn.c:2528
#, c-format
msgid "Failed to execute child process “%s†(%s)"
msgstr "执行å­è¿›ç¨‹â€œ%sâ€å¤±è´¥ï¼ˆ%s)"
-#: glib/gspawn.c:2454
+#: glib/gspawn.c:2538
#, c-format
-msgid "Failed to redirect output or input of child process (%s)"
-msgstr "é‡å®šä½å­è¿›ç¨‹ï¼ˆ%s)的输入或输出失败"
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr "打开文件以é‡æ–°æ˜ å°„文件æ述符失败(%s)"
-#: glib/gspawn.c:2463
+#: glib/gspawn.c:2546
+#, c-format
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr "为å­è¿›ç¨‹å¤åˆ¶æ–‡ä»¶æ述符失败(%s)"
+
+#: glib/gspawn.c:2555
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "fork å­è¿›ç¨‹å¤±è´¥ï¼ˆ%s)"
-#: glib/gspawn.c:2471
+#: glib/gspawn.c:2563
+#, c-format
+msgid "Failed to close file descriptor for child process (%s)"
+msgstr "为å­è¿›ç¨‹å…³é—­æ–‡ä»¶æ述符失败(%s)"
+
+#: glib/gspawn.c:2571
#, c-format
msgid "Unknown error executing child process “%sâ€"
msgstr "执行å­è¿›ç¨‹â€œ%sâ€æ—¶å‡ºçŽ°æœªçŸ¥é”™è¯¯"
-#: glib/gspawn.c:2495
+#: glib/gspawn.c:2595
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "从å­è¿›ç¨‹ç®¡é“中读å–足够的数æ®å¤±è´¥ï¼ˆ%s)"
-#: glib/gspawn-win32.c:294
+#: glib/gspawn-win32.c:297
msgid "Failed to read data from child process"
msgstr "从å­è¿›ç¨‹ä¸­è¯»å–æ•°æ®å¤±è´¥"
-#: glib/gspawn-win32.c:311
-#, c-format
-msgid "Failed to create pipe for communicating with child process (%s)"
-msgstr "创建与å­è¿›ç¨‹é€šè®¯çš„管é“失败(%s)"
-
-#: glib/gspawn-win32.c:387 glib/gspawn-win32.c:392 glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:390 glib/gspawn-win32.c:395 glib/gspawn-win32.c:519
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "执行å­è¿›ç¨‹å¤±è´¥ï¼ˆ%s)"
-#: glib/gspawn-win32.c:461
+#: glib/gspawn-win32.c:400
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr "在å­è¿›ç¨‹ä¸­ dup() 失败(%s)"
+
+#: glib/gspawn-win32.c:469
#, c-format
msgid "Invalid program name: %s"
msgstr "无效的程åºå:%s"
-#: glib/gspawn-win32.c:471 glib/gspawn-win32.c:779
+#: glib/gspawn-win32.c:479 glib/gspawn-win32.c:797
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr "%d 处的å‚æ•°å‘é‡ä¸­æœ‰æ— æ•ˆçš„字符串:%s"
-#: glib/gspawn-win32.c:482 glib/gspawn-win32.c:794
+#: glib/gspawn-win32.c:490 glib/gspawn-win32.c:813
#, c-format
msgid "Invalid string in environment: %s"
msgstr "环境中有无效的字符串:%s"
-#: glib/gspawn-win32.c:775
+#: glib/gspawn-win32.c:793
#, c-format
msgid "Invalid working directory: %s"
msgstr "无效的工作目录:%s"
-#: glib/gspawn-win32.c:837
+#: glib/gspawn-win32.c:858
#, c-format
msgid "Failed to execute helper program (%s)"
msgstr "执行助手程åºï¼ˆ%s)失败"
-#: glib/gspawn-win32.c:1064
+#: glib/gspawn-win32.c:1086
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
msgstr "g_io_channel_win32_poll() 从å­è¿›ç¨‹ä¸­è¯»å–æ•°æ®æ—¶å‡ºçŽ°å¼‚常错误"
-#: glib/gstrfuncs.c:3345 glib/gstrfuncs.c:3447
+#: glib/gstrfuncs.c:3351 glib/gstrfuncs.c:3453
msgid "Empty string is not a number"
msgstr "空字符串ä¸æ˜¯æ•°å­—"
-#: glib/gstrfuncs.c:3369
+#: glib/gstrfuncs.c:3375
#, c-format
msgid "“%s†is not a signed number"
msgstr "“%sâ€ä¸æ˜¯æœ‰æ•ˆçš„有符å·æ•°å€¼"
-#: glib/gstrfuncs.c:3379 glib/gstrfuncs.c:3483
+#: glib/gstrfuncs.c:3385 glib/gstrfuncs.c:3489
#, c-format
msgid "Number “%s†is out of bounds [%s, %s]"
msgstr "数字“%sâ€è¶Šç•Œ [%s, %s]"
-#: glib/gstrfuncs.c:3473
+#: glib/gstrfuncs.c:3479
#, c-format
msgid "“%s†is not an unsigned number"
msgstr "“%sâ€ä¸æ˜¯æœ‰æ•ˆçš„无符å·æ•°å€¼"
@@ -5842,196 +5900,196 @@ msgstr "URI“%sâ€ä¸æ˜¯ç»å¯¹ URI"
msgid "URI ‘%s’ has no host component"
msgstr "URI“%sâ€æ²¡æœ‰ä¸»æœºéƒ¨åˆ†"
-#: glib/guri.c:1435
+#: glib/guri.c:1460
msgid "URI is not absolute, and no base URI was provided"
msgstr "URI ä¸æ˜¯ç»å¯¹çš„,且未æä¾› base URI"
-#: glib/guri.c:2213
+#: glib/guri.c:2238
msgid "Missing ‘=’ and parameter value"
msgstr "缺少“=â€å’Œå‚数值"
-#: glib/gutf8.c:817
+#: glib/gutf8.c:832
msgid "Failed to allocate memory"
msgstr "分é…内存失败"
-#: glib/gutf8.c:950
+#: glib/gutf8.c:965
msgid "Character out of range for UTF-8"
msgstr "字符超出 UTF-8 范围"
-#: glib/gutf8.c:1051 glib/gutf8.c:1060 glib/gutf8.c:1190 glib/gutf8.c:1199
-#: glib/gutf8.c:1338 glib/gutf8.c:1435
+#: glib/gutf8.c:1067 glib/gutf8.c:1076 glib/gutf8.c:1206 glib/gutf8.c:1215
+#: glib/gutf8.c:1354 glib/gutf8.c:1451
msgid "Invalid sequence in conversion input"
msgstr "转æ¢è¾“入中出现无效åºåˆ—"
-#: glib/gutf8.c:1349 glib/gutf8.c:1446
+#: glib/gutf8.c:1365 glib/gutf8.c:1462
msgid "Character out of range for UTF-16"
msgstr "字符超出 UTF-16 范围"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2727
+#: glib/gutils.c:2849
#, c-format
msgid "%.1f kB"
msgstr "%.1f kB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2729
+#: glib/gutils.c:2851
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2731
+#: glib/gutils.c:2853
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2733
+#: glib/gutils.c:2855
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2735
+#: glib/gutils.c:2857
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2737
+#: glib/gutils.c:2859
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2741
+#: glib/gutils.c:2863
#, c-format
msgid "%.1f KiB"
msgstr "%.1f KiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2743
+#: glib/gutils.c:2865
#, c-format
msgid "%.1f MiB"
msgstr "%.1f MiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2745
+#: glib/gutils.c:2867
#, c-format
msgid "%.1f GiB"
msgstr "%.1f GiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2747
+#: glib/gutils.c:2869
#, c-format
msgid "%.1f TiB"
msgstr "%.1f TiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2749
+#: glib/gutils.c:2871
#, c-format
msgid "%.1f PiB"
msgstr "%.1f PiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2751
+#: glib/gutils.c:2873
#, c-format
msgid "%.1f EiB"
msgstr "%.1f EiB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2755
+#: glib/gutils.c:2877
#, c-format
msgid "%.1f kb"
msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2757
+#: glib/gutils.c:2879
#, c-format
msgid "%.1f Mb"
msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2759
+#: glib/gutils.c:2881
#, c-format
msgid "%.1f Gb"
msgstr "%.1f Gb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2761
+#: glib/gutils.c:2883
#, c-format
msgid "%.1f Tb"
msgstr "%.1f Tb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2763
+#: glib/gutils.c:2885
#, c-format
msgid "%.1f Pb"
msgstr "%.1f Pb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2765
+#: glib/gutils.c:2887
#, c-format
msgid "%.1f Eb"
msgstr "%.1f Eb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2769
+#: glib/gutils.c:2891
#, c-format
msgid "%.1f Kib"
msgstr "%.1f Kib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2771
+#: glib/gutils.c:2893
#, c-format
msgid "%.1f Mib"
msgstr "%.1f Mib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2773
+#: glib/gutils.c:2895
#, c-format
msgid "%.1f Gib"
msgstr "%.1f Gib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2775
+#: glib/gutils.c:2897
#, c-format
msgid "%.1f Tib"
msgstr "%.1f Tib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2777
+#: glib/gutils.c:2899
#, c-format
msgid "%.1f Pib"
msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
-#: glib/gutils.c:2779
+#: glib/gutils.c:2901
#, c-format
msgid "%.1f Eib"
msgstr "%.1f Eib"
-#: glib/gutils.c:2813 glib/gutils.c:2930
+#: glib/gutils.c:2935 glib/gutils.c:3052
#, c-format
msgid "%u byte"
msgid_plural "%u bytes"
msgstr[0] "%u 字节"
-#: glib/gutils.c:2817
+#: glib/gutils.c:2939
#, c-format
msgid "%u bit"
msgid_plural "%u bits"
msgstr[0] "%u ä½"
#. Translators: the %s in "%s bytes" will always be replaced by a number.
-#: glib/gutils.c:2884
+#: glib/gutils.c:3006
#, c-format
msgid "%s byte"
msgid_plural "%s bytes"
msgstr[0] "%s 字节"
#. Translators: the %s in "%s bits" will always be replaced by a number.
-#: glib/gutils.c:2889
+#: glib/gutils.c:3011
#, c-format
msgid "%s bit"
msgid_plural "%s bits"
@@ -6042,32 +6100,32 @@ msgstr[0] "%s ä½"
#. * compatibility. Users will not see this string unless a program is using this deprecated function.
#. * Please translate as literally as possible.
#.
-#: glib/gutils.c:2943
+#: glib/gutils.c:3065
#, c-format
msgid "%.1f KB"
msgstr "%.1f KB"
-#: glib/gutils.c:2948
+#: glib/gutils.c:3070
#, c-format
msgid "%.1f MB"
msgstr "%.1f MB"
-#: glib/gutils.c:2953
+#: glib/gutils.c:3075
#, c-format
msgid "%.1f GB"
msgstr "%.1f GB"
-#: glib/gutils.c:2958
+#: glib/gutils.c:3080
#, c-format
msgid "%.1f TB"
msgstr "%.1f TB"
-#: glib/gutils.c:2963
+#: glib/gutils.c:3085
#, c-format
msgid "%.1f PB"
msgstr "%.1f PB"
-#: glib/gutils.c:2968
+#: glib/gutils.c:3090
#, c-format
msgid "%.1f EB"
msgstr "%.1f EB"
@@ -6200,9 +6258,6 @@ msgstr "%.1f EB"
#~ msgid "Unable to find default local directory monitor type"
#~ msgstr "无法找到默认的本地目录监视器类型"
-#~ msgid "URIs not supported"
-#~ msgstr "ä¸æ”¯æŒ URI"
-
#~ msgid "association changes not supported on win32"
#~ msgstr "win32 ä¸æ”¯æŒå…³è”的修改"
diff --git a/subprojects/pcre.wrap b/subprojects/pcre.wrap
index 065d22246..a6b07b961 100644
--- a/subprojects/pcre.wrap
+++ b/subprojects/pcre.wrap
@@ -3,10 +3,9 @@ directory = pcre-8.37
source_url = https://sourceforge.net/projects/pcre/files/pcre/8.37/pcre-8.37.tar.bz2
source_filename = pcre-8.37.tar.bz2
source_hash = 51679ea8006ce31379fb0860e46dd86665d864b5020fc9cd19e71260eef4789d
-patch_filename = pcre_8.37-2_patch.zip
-patch_url = https://wrapdb.mesonbuild.com/v2/pcre_8.37-2/get_patch
-patch_hash = 6b80f72385e1bf06721e26fbc83aced576e9c0d3182d86a55dd173a04050fe26
+patch_filename = pcre_8.37-4_patch.zip
+patch_url = https://wrapdb.mesonbuild.com/v2/pcre_8.37-4/get_patch
+patch_hash = c957f42da6f6378300eb8a18f4a5cccdb8e2aada51a703cac842982f9f785399
[provide]
libpcre = pcre_dep
-
diff --git a/subprojects/proxy-libintl.wrap b/subprojects/proxy-libintl.wrap
index 3523a5041..0e6c8529c 100644
--- a/subprojects/proxy-libintl.wrap
+++ b/subprojects/proxy-libintl.wrap
@@ -1,5 +1,5 @@
[wrap-git]
directory=proxy-libintl
url=https://github.com/frida/proxy-libintl.git
-revision=0.2
+revision=c03e1a74b17fa7ec467e110130775409e4828a4c
depth=1
diff --git a/subprojects/zlib.wrap b/subprojects/zlib.wrap
index ff9ab6680..c49c1d90c 100644
--- a/subprojects/zlib.wrap
+++ b/subprojects/zlib.wrap
@@ -1,10 +1,11 @@
[wrap-file]
directory = zlib-1.2.11
-
source_url = https://zlib.net/fossils/zlib-1.2.11.tar.gz
source_filename = zlib-1.2.11.tar.gz
source_hash = c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1
+patch_filename = zlib_1.2.11-6_patch.zip
+patch_url = https://wrapdb.mesonbuild.com/v2/zlib_1.2.11-6/get_patch
+patch_hash = f7c24c5698ce787294910ad431f94088102d35ddaf88542d04add1e54afa9212
-patch_url = https://github.com/mesonbuild/zlib/releases/download/1.2.11-3/zlib.zip
-patch_filename = zlib-1.2.11-3-wrap.zip
-patch_hash = f07dc491ab3d05daf00632a0591e2ae61b470615b5b73bcf9b3f061fff65cff0
+[provide]
+zlib = zlib_dep
diff --git a/tests/asyncqueue-test.c b/tests/asyncqueue-test.c
deleted file mode 100644
index 2dd8563c7..000000000
--- a/tests/asyncqueue-test.c
+++ /dev/null
@@ -1,244 +0,0 @@
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
-
-#include <time.h>
-#include <stdlib.h>
-
-#include <glib.h>
-
-#define DEBUG_MSG(args)
-/* #define DEBUG_MSG(args) g_printerr args ; g_printerr ("\n"); */
-#define PRINT_MSG(args)
-/* #define PRINT_MSG(args) g_printerr args ; g_printerr ("\n"); */
-
-#define MAX_THREADS 50
-#define MAX_SORTS 5 /* only applies if
- ASYC_QUEUE_DO_SORT is set to 1 */
-#define MAX_TIME 20 /* seconds */
-#define MIN_TIME 5 /* seconds */
-
-#define SORT_QUEUE_AFTER 1
-#define SORT_QUEUE_ON_PUSH 1 /* if this is done, the
- SORT_QUEUE_AFTER is ignored */
-#define QUIT_WHEN_DONE 1
-
-
-#if SORT_QUEUE_ON_PUSH == 1
-# undef SORT_QUEUE_AFTER
-# define SORT_QUEUE_AFTER 0
-#endif
-
-
-static GMainLoop *main_loop = NULL;
-static GThreadPool *thread_pool = NULL;
-static GAsyncQueue *async_queue = NULL;
-
-
-static gint
-sort_compare (gconstpointer p1, gconstpointer p2, gpointer user_data)
-{
- gint32 id1;
- gint32 id2;
-
- id1 = GPOINTER_TO_INT (p1);
- id2 = GPOINTER_TO_INT (p2);
-
- DEBUG_MSG (("comparing #1:%d and #2:%d, returning %d",
- id1, id2, (id1 > id2 ? +1 : id1 == id2 ? 0 : -1)));
-
- return (id1 > id2 ? +1 : id1 == id2 ? 0 : -1);
-}
-
-static gboolean
-sort_queue (gpointer user_data)
-{
- static gint sorts = 0;
- static gpointer last_p = NULL;
- gpointer p;
- gboolean can_quit = FALSE;
- gint sort_multiplier;
- gint len;
- gint i;
-
- sort_multiplier = GPOINTER_TO_INT (user_data);
-
- if (SORT_QUEUE_AFTER) {
- PRINT_MSG (("sorting async queue..."));
- g_async_queue_sort (async_queue, sort_compare, NULL);
-
- sorts++;
-
- if (sorts >= sort_multiplier) {
- can_quit = TRUE;
- }
-
- g_async_queue_sort (async_queue, sort_compare, NULL);
- len = g_async_queue_length (async_queue);
-
- PRINT_MSG (("sorted queue (for %d/%d times, size:%d)...", sorts, MAX_SORTS, len));
- } else {
- can_quit = TRUE;
- len = g_async_queue_length (async_queue);
- DEBUG_MSG (("printing queue (size:%d)...", len));
- }
-
- for (i = 0, last_p = NULL; i < len; i++) {
- p = g_async_queue_pop (async_queue);
- DEBUG_MSG (("item %d ---> %d", i, GPOINTER_TO_INT (p)));
-
- if (last_p) {
- g_assert (GPOINTER_TO_INT (last_p) <= GPOINTER_TO_INT (p));
- }
-
- last_p = p;
- }
-
- if (can_quit && QUIT_WHEN_DONE) {
- g_main_loop_quit (main_loop);
- }
-
- return !can_quit;
-}
-
-static void
-enter_thread (gpointer data, gpointer user_data)
-{
- gint len G_GNUC_UNUSED;
- gint id;
- gulong ms;
-
- id = GPOINTER_TO_INT (data);
-
- ms = g_random_int_range (MIN_TIME * 1000, MAX_TIME * 1000);
- DEBUG_MSG (("entered thread with id:%d, adding to queue in:%ld ms", id, ms));
-
- g_usleep (ms * 1000);
-
- if (SORT_QUEUE_ON_PUSH) {
- g_async_queue_push_sorted (async_queue, GINT_TO_POINTER (id), sort_compare, NULL);
- } else {
- g_async_queue_push (async_queue, GINT_TO_POINTER (id));
- }
-
- len = g_async_queue_length (async_queue);
-
- DEBUG_MSG (("thread id:%d added to async queue (size:%d)",
- id, len));
-}
-
-static gint destroy_count = 0;
-
-static void
-counting_destroy (gpointer item)
-{
- destroy_count++;
-}
-
-static void
-basic_tests (void)
-{
- GAsyncQueue *q;
- gpointer item;
-
- destroy_count = 0;
-
- q = g_async_queue_new_full (counting_destroy);
- g_async_queue_lock (q);
- g_async_queue_ref (q);
- g_async_queue_unlock (q);
- g_async_queue_lock (q);
- g_async_queue_ref_unlocked (q);
- g_async_queue_unref_and_unlock (q);
-
- item = g_async_queue_try_pop (q);
- g_assert (item == NULL);
-
- g_async_queue_lock (q);
- item = g_async_queue_try_pop_unlocked (q);
- g_async_queue_unlock (q);
- g_assert (item == NULL);
-
- g_async_queue_push (q, GINT_TO_POINTER (1));
- g_async_queue_push (q, GINT_TO_POINTER (2));
- g_async_queue_push (q, GINT_TO_POINTER (3));
- g_assert_cmpint (destroy_count, ==, 0);
-
- g_async_queue_unref (q);
- g_assert_cmpint (destroy_count, ==, 0);
-
- item = g_async_queue_pop (q);
- g_assert_cmpint (GPOINTER_TO_INT (item), ==, 1);
- g_assert_cmpint (destroy_count, ==, 0);
-
- g_async_queue_unref (q);
- g_assert_cmpint (destroy_count, ==, 2);
-}
-
-int
-main (int argc, char *argv[])
-{
- gint i;
- gint max_threads = MAX_THREADS;
- gint max_unused_threads = MAX_THREADS;
- gint sort_multiplier = MAX_SORTS;
- gint sort_interval;
- gchar *msg G_GNUC_UNUSED;
-
- basic_tests ();
-
- PRINT_MSG (("creating async queue..."));
- async_queue = g_async_queue_new ();
-
- g_return_val_if_fail (async_queue != NULL, EXIT_FAILURE);
-
- PRINT_MSG (("creating thread pool with max threads:%d, max unused threads:%d...",
- max_threads, max_unused_threads));
- thread_pool = g_thread_pool_new (enter_thread,
- async_queue,
- max_threads,
- FALSE,
- NULL);
-
- g_return_val_if_fail (thread_pool != NULL, EXIT_FAILURE);
-
- g_thread_pool_set_max_unused_threads (max_unused_threads);
-
- PRINT_MSG (("creating threads..."));
- for (i = 1; i <= max_threads; i++) {
- GError *error = NULL;
-
- g_thread_pool_push (thread_pool, GINT_TO_POINTER (i), &error);
-
- g_assert_no_error (error);
- }
-
- if (!SORT_QUEUE_AFTER) {
- sort_multiplier = 1;
- }
-
- sort_interval = ((MAX_TIME / sort_multiplier) + 2) * 1000;
- g_timeout_add (sort_interval, sort_queue, GINT_TO_POINTER (sort_multiplier));
-
- if (SORT_QUEUE_ON_PUSH) {
- msg = "sorting when pushing into the queue, checking queue is sorted";
- } else {
- msg = "sorting";
- }
-
- PRINT_MSG (("%s %d %s %d ms",
- msg,
- sort_multiplier,
- sort_multiplier == 1 ? "time in" : "times, once every",
- sort_interval));
-
- DEBUG_MSG (("entering main event loop"));
-
- main_loop = g_main_loop_new (NULL, FALSE);
- g_main_loop_run (main_loop);
-
- g_main_loop_unref (main_loop);
- g_thread_pool_free (thread_pool, TRUE, TRUE);
- g_async_queue_unref (async_queue);
-
- return EXIT_SUCCESS;
-}
diff --git a/tests/bit-test.c b/tests/bit-test.c
deleted file mode 100644
index 173a09b25..000000000
--- a/tests/bit-test.c
+++ /dev/null
@@ -1,145 +0,0 @@
-#include <glib.h>
-
-#if defined(__GNUC__) && (__GNUC__ >= 4)
-# define TEST_BUILTINS 1
-#else
-# define TEST_BUILTINS 0
-#endif
-
-#if TEST_BUILTINS
-static gint
-builtin_bit_nth_lsf1 (gulong mask, gint nth_bit)
-{
- if (nth_bit >= 0)
- {
- if (G_LIKELY (nth_bit < GLIB_SIZEOF_LONG * 8 - 1))
- mask &= -(1UL<<(nth_bit+1));
- else
- mask = 0;
- }
- return __builtin_ffsl(mask) - 1;
-}
-
-static gint
-builtin_bit_nth_lsf2 (gulong mask, gint nth_bit)
-{
- if (nth_bit >= 0)
- {
- if (G_LIKELY (nth_bit < GLIB_SIZEOF_LONG * 8 - 1))
- mask &= -(1UL<<(nth_bit+1));
- else
- mask = 0;
- }
- return mask ? __builtin_ctzl(mask) : -1;
-}
-
-static gint
-builtin_bit_nth_msf (gulong mask, gint nth_bit)
-{
- if (nth_bit >= 0 && nth_bit < GLIB_SIZEOF_LONG * 8)
- mask &= (1UL<<nth_bit)-1;
- return mask ? GLIB_SIZEOF_LONG * 8 - 1 - __builtin_clzl(mask) : -1;
-}
-
-
-static guint
-builtin_bit_storage (gulong number)
-{
- return number ? GLIB_SIZEOF_LONG * 8 - __builtin_clzl(number) : 1;
-}
-#endif
-
-
-static gint
-naive_bit_nth_lsf (gulong mask, gint nth_bit)
-{
- if (G_UNLIKELY (nth_bit < -1))
- nth_bit = -1;
- while (nth_bit < ((GLIB_SIZEOF_LONG * 8) - 1))
- {
- nth_bit++;
- if (mask & (1UL << nth_bit))
- return nth_bit;
- }
- return -1;
-}
-
-static gint
-naive_bit_nth_msf (gulong mask, gint nth_bit)
-{
- if (nth_bit < 0 || G_UNLIKELY (nth_bit > GLIB_SIZEOF_LONG * 8))
- nth_bit = GLIB_SIZEOF_LONG * 8;
- while (nth_bit > 0)
- {
- nth_bit--;
- if (mask & (1UL << nth_bit))
- return nth_bit;
- }
- return -1;
-}
-
-static guint
-naive_bit_storage (gulong number)
-{
- guint n_bits = 0;
-
- do
- {
- n_bits++;
- number >>= 1;
- }
- while (number);
- return n_bits;
-}
-
-
-
-#define TEST(f1, f2, i) \
- if (f1 (i) != f2 (i)) { \
- g_error (G_STRINGIFY (f1) " (%lu) = %d; " \
- G_STRINGIFY (f2) " (%lu) = %d; ", \
- i, f1 (i), \
- i, f2 (i)); \
- return 1; \
- }
-#define TEST2(f1, f2, i, n) \
- if (f1 (i, n) != f2 (i, n)) { \
- g_error (G_STRINGIFY (f1) " (%lu, %d) = %d; " \
- G_STRINGIFY (f2) " (%lu, %d) = %d; ", \
- i, n, f1 (i, n), \
- i, n, f2 (i, n)); \
- return 1; \
- }
-
-int
-main (void)
-{
- gulong i;
- gint nth_bit;
-
- /* we loop like this: 0, -1, 1, -2, 2, -3, 3, ... */
- for (i = 0; (glong)i < 1500 ; i = -(i+((glong)i>=0))) {
-
-#if TEST_BUILTINS
- TEST (naive_bit_storage, builtin_bit_storage, i);
-#endif
- TEST (naive_bit_storage, g_bit_storage, i);
-
- for (nth_bit = -3; nth_bit <= 2 + GLIB_SIZEOF_LONG * 8; nth_bit++) {
-
-#if TEST_BUILTINS
- TEST2 (naive_bit_nth_lsf, builtin_bit_nth_lsf1, i, nth_bit);
- TEST2 (naive_bit_nth_lsf, builtin_bit_nth_lsf2, i, nth_bit);
-#endif
- TEST2 (naive_bit_nth_lsf, g_bit_nth_lsf, i, nth_bit);
-
-#if TEST_BUILTINS
- TEST2 (naive_bit_nth_msf, builtin_bit_nth_msf, i, nth_bit);
-#endif
- TEST2 (naive_bit_nth_msf, g_bit_nth_msf, i, nth_bit);
-
- }
- }
-
- return 0;
-}
diff --git a/tests/child-test.c b/tests/child-test.c
deleted file mode 100644
index 24a0bf2dd..000000000
--- a/tests/child-test.c
+++ /dev/null
@@ -1,198 +0,0 @@
-/* GLIB - Library of useful routines for C programming
- * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
- */
-
-/*
- * Modified by the GLib Team and others 1997-2000. See the AUTHORS
- * file for a list of people on the GLib Team. See the ChangeLog
- * files for a list of changes. These files are distributed with
- * GLib at ftp://ftp.gtk.org/pub/gtk/.
- */
-
-#include <sys/types.h>
-#include <stdlib.h>
-
-#include <glib.h>
-
-#ifdef G_OS_UNIX
-#include <unistd.h>
-#endif
-
-#ifdef G_OS_WIN32
-#include <windows.h>
-#endif
-
-#ifdef G_OS_WIN32
-#define GPID_FORMAT "%p"
-#else
-#define GPID_FORMAT "%d"
-#endif
-
-GMainLoop *main_loop;
-gint alive;
-
-#ifdef G_OS_WIN32
-char *argv0;
-#endif
-
-static GPid
-get_a_child (gint ttl)
-{
- GPid pid;
-
-#ifdef G_OS_WIN32
- STARTUPINFO si;
- PROCESS_INFORMATION pi;
- gchar *cmdline;
-
- memset (&si, 0, sizeof (si));
- si.cb = sizeof (&si);
- memset (&pi, 0, sizeof (pi));
-
- cmdline = g_strdup_printf( "child-test -c%d", ttl);
-
- if (!CreateProcess (argv0, cmdline, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi))
- g_error ("CreateProcess failed: %s", g_win32_error_message (GetLastError ()));
-
- g_free(cmdline);
-
- CloseHandle (pi.hThread);
- pid = pi.hProcess;
-
- return pid;
-#else
- pid = fork ();
- if (pid < 0)
- exit (1);
-
- if (pid > 0)
- return pid;
-
- sleep (ttl);
- _exit (0);
-#endif /* G_OS_WIN32 */
-}
-
-static gboolean
-child_watch_callback (GPid pid, gint status, gpointer data)
-{
-#ifdef VERBOSE
- gint ttl = GPOINTER_TO_INT (data);
-
- g_print ("child " GPID_FORMAT " (ttl %d) exited, status %d\n", pid, ttl, status);
-#endif
-
- g_spawn_close_pid (pid);
-
- if (--alive == 0)
- g_main_loop_quit (main_loop);
-
- return TRUE;
-}
-
-static gboolean
-quit_loop (gpointer data)
-{
- GMainLoop *main_loop = data;
-
- g_main_loop_quit (main_loop);
-
- return TRUE;
-}
-
-#ifdef TEST_THREAD
-static gpointer
-test_thread (gpointer data)
-{
- GMainLoop *new_main_loop;
- GSource *source;
- GPid pid;
- gint ttl = GPOINTER_TO_INT (data);
-
- new_main_loop = g_main_loop_new (NULL, FALSE);
-
- pid = get_a_child (ttl);
- source = g_child_watch_source_new (pid);
- g_source_set_callback (source, (GSourceFunc) child_watch_callback, data, NULL);
- g_source_attach (source, g_main_loop_get_context (new_main_loop));
- g_source_unref (source);
-
-#ifdef VERBOSE
- g_print ("whee! created pid: " GPID_FORMAT " (ttl %d)\n", pid, ttl);
-#endif
-
- g_main_loop_run (new_main_loop);
-
- return NULL;
-}
-#endif
-
-int
-main (int argc, char *argv[])
-{
-#ifndef TEST_THREAD
- GPid pid;
-#endif
-#ifdef G_OS_WIN32
- argv0 = argv[0];
- if (argc > 1 && argv[1][0] == '-' && argv[1][1] == 'c')
- {
- int ttl = atoi (argv[1] + 2);
- Sleep (ttl * 1000);
- /* Exit on purpose with STILL_ACTIVE (which isn't a very common
- * exit status) to verify that g_child_watch_check() in gmain.c
- * doesn't believe a child still to be active if it happens to
- * exit with that status.
- */
- exit (STILL_ACTIVE);
- }
-#endif
-
- main_loop = g_main_loop_new (NULL, FALSE);
-
-#ifdef G_OS_WIN32
- system ("ipconfig /all");
-#else
- system ("true");
-#endif
-
- alive = 2;
- g_timeout_add_seconds (30, quit_loop, main_loop);
-
-#ifdef TEST_THREAD
- g_thread_create (test_thread, GINT_TO_POINTER (10), FALSE, NULL);
- g_thread_create (test_thread, GINT_TO_POINTER (20), FALSE, NULL);
-#else
- pid = get_a_child (10);
- g_child_watch_add (pid, (GChildWatchFunc) child_watch_callback,
- GINT_TO_POINTER (10));
- pid = get_a_child (20);
- g_child_watch_add (pid, (GChildWatchFunc) child_watch_callback,
- GINT_TO_POINTER (20));
-#endif
-
- g_main_loop_run (main_loop);
-
- g_main_loop_unref (main_loop);
-
- if (alive > 0)
- {
- g_warning ("%d children still alive", alive);
- return 1;
- }
-
- return 0;
-}
diff --git a/tests/cxx-test.cpp b/tests/cxx-test.cpp
deleted file mode 100644
index c076e884d..000000000
--- a/tests/cxx-test.cpp
+++ /dev/null
@@ -1,10 +0,0 @@
-#include <glib.h>
-#include <gmodule.h>
-#include <glib-object.h>
-#include <gio/gio.h>
-
-int
-main ()
-{
- return 0;
-}
diff --git a/tests/datetime.c b/tests/datetime.c
deleted file mode 100644
index ae46bbaea..000000000
--- a/tests/datetime.c
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Copyright (C) 2011 Red Hat, Inc.
- *
- * This library is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of the
- * licence, or (at your option) any later version.
- *
- * This is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, see <http://www.gnu.org/licenses/>.
- */
-
-#include <locale.h>
-#include <glib/glib.h>
-
-int
-main (int argc, char *argv[])
-{
- gchar *fmt;
- GDateTime *dt;
- gchar *str;
-
- setlocale (LC_ALL, "");
-
- if (argc > 1)
- fmt = argv[1];
- else
- fmt = "%x %X";
-
- dt = g_date_time_new_now_local ();
- str = g_date_time_format (dt, fmt);
- g_print ("%s\n", str);
- g_free (str);
- g_date_time_unref (dt);
-
- return 0;
-}
diff --git a/tests/dirname-test.c b/tests/dirname-test.c
deleted file mode 100644
index 81c55d56d..000000000
--- a/tests/dirname-test.c
+++ /dev/null
@@ -1,117 +0,0 @@
-/* GLIB - Library of useful routines for C programming
- * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
- */
-
-/*
- * Modified by the GLib Team and others 1997-2000. See the AUTHORS
- * file for a list of people on the GLib Team. See the ChangeLog
- * files for a list of changes. These files are distributed with
- * GLib at ftp://ftp.gtk.org/pub/gtk/.
- */
-
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
-
-#include <stdio.h>
-#include <string.h>
-#include "glib.h"
-
-int array[10000];
-gboolean failed = FALSE;
-
-#define TEST(m,cond) G_STMT_START { failed = !(cond); \
-if (failed) \
- { if (!m) \
- g_print ("\n(%s:%d) failed for: %s\n", __FILE__, __LINE__, ( # cond )); \
- else \
- g_print ("\n(%s:%d) failed for: %s: (%s)\n", __FILE__, __LINE__, ( # cond ), (gchar*)m); \
- } \
-else \
- g_print ("."); fflush (stdout); \
-} G_STMT_END
-
-#define C2P(c) ((gpointer) ((long) (c)))
-#define P2C(p) ((gchar) ((long) (p)))
-
-#define GLIB_TEST_STRING "el dorado "
-#define GLIB_TEST_STRING_5 "el do"
-
-int
-main (int argc,
- char *argv[])
-{
- gsize i;
- struct {
- gchar *filename;
- gchar *dirname;
- } dirname_checks[] = {
- { "/", "/" },
- { "////", "/" },
- { ".////", "." },
- { ".", "." },
- { "..", "." },
- { "../", ".." },
- { "..////", ".." },
- { "", "." },
- { "a/b", "a" },
- { "a/b/", "a/b" },
- { "c///", "c" },
- { "/a/b", "/a" },
- { "/a/b/", "/a/b" },
-#ifdef G_OS_WIN32
- { "\\", "\\" },
- { ".\\\\\\\\", "." },
- { ".\\/\\/", "." },
- { ".", "." },
- { "..", "." },
- { "..\\", ".." },
- { "..\\\\\\\\", ".." },
- { "..\\//\\", ".." },
- { "", "." },
- { "a\\b", "a" },
- { "a\\b\\", "a\\b" },
- { "\\a\\b", "\\a" },
- { "\\a\\b\\", "\\a\\b" },
- { "c\\\\\\", "c" },
- { "c/\\\\", "c" },
- { "a:", "a:." },
- { "a:foo", "a:." },
- { "a:foo\\bar", "a:foo" },
- { "a:/foo", "a:/" },
- { "a:/foo/bar", "a:/foo" },
- { "a:/", "a:/" },
- { "a://", "a:/" },
- { "a:\\foo", "a:\\" },
- { "a:\\", "a:\\" },
- { "a:\\\\", "a:\\" },
- { "a:\\/", "a:\\" },
-#endif
- };
-
- for (i = 0; i < G_N_ELEMENTS (dirname_checks); i++)
- {
- gchar *dirname;
-
- dirname = g_path_get_dirname (dirname_checks[i].filename);
- if (strcmp (dirname, dirname_checks[i].dirname) != 0)
- g_error ("%s returned %s, should return %s",
- dirname_checks[i].filename, dirname,
- dirname_checks[i].dirname);
- g_free (dirname);
- }
-
- return 0;
-}
diff --git a/tests/env-test.c b/tests/env-test.c
deleted file mode 100644
index edf7edda7..000000000
--- a/tests/env-test.c
+++ /dev/null
@@ -1,109 +0,0 @@
-/* GLIB - Library of useful routines for C programming
- * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
- */
-
-/*
- * Modified by the GLib Team and others 1997-2000. See the AUTHORS
- * file for a list of people on the GLib Team. See the ChangeLog
- * files for a list of changes. These files are distributed with
- * GLib at ftp://ftp.gtk.org/pub/gtk/.
- */
-
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
-
-#ifdef GLIB_COMPILATION
-#undef GLIB_COMPILATION
-#endif
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include <glib.h>
-
-int
-main (int argc, char *argv[])
-{
- gboolean result;
- const gchar *data;
- gchar *variable = "TEST_G_SETENV";
- gchar *value1 = "works";
- gchar *value2 = "again";
-
- data = g_getenv (variable);
- g_assert (data == NULL && "TEST_G_SETENV already set");
-
- result = g_setenv (variable, value1, TRUE);
- g_assert (result && "g_setenv() failed");
-
- data = g_getenv (variable);
- g_assert (data != NULL && "g_getenv() returns NULL");
- g_assert (strcmp (data, value1) == 0 && "g_getenv() returns wrong value");
-
- result = g_setenv (variable, value2, FALSE);
- g_assert (result && "g_setenv() failed");
-
- data = g_getenv (variable);
- g_assert (data != NULL && "g_getenv() returns NULL");
- g_assert (strcmp (data, value2) != 0 && "g_setenv() always overwrites");
- g_assert (strcmp (data, value1) == 0 && "g_getenv() returns wrong value");
-
- result = g_setenv (variable, value2, TRUE);
- g_assert (result && "g_setenv() failed");
-
- data = g_getenv (variable);
- g_assert (data != NULL && "g_getenv() returns NULL");
- g_assert (strcmp (data, value1) != 0 && "g_setenv() doesn't overwrite");
- g_assert (strcmp (data, value2) == 0 && "g_getenv() returns wrong value");
-
- g_unsetenv (variable);
- data = g_getenv (variable);
- g_assert (data == NULL && "g_unsetenv() doesn't work");
-
-#if 0
- /* We can't test this, because it's an illegal argument that
- * we g_return_if_fail for.
- */
- result = g_setenv ("foo=bar", "baz", TRUE);
- g_assert (!result && "g_setenv() accepts '=' in names");
-#endif
-
- result = g_setenv ("foo", "bar=baz", TRUE);
- g_assert (result && "g_setenv() doesn't accept '=' in values");
-#if 0
- /* While glibc supports '=' in names in getenv(), SUS doesn't say anything about it,
- * and Solaris doesn't support it.
- */
- data = g_getenv ("foo=bar");
- g_assert (strcmp (data, "baz") == 0 && "g_getenv() doesn't support '=' in names");
-#endif
- data = g_getenv ("foo");
- g_assert (strcmp (data, "bar=baz") == 0 && "g_getenv() doesn't support '=' in values");
-
-#if 0
- /* We can't test this, because it's an illegal argument that
- * we g_return_if_fail for. Plus how would we check for failure,
- * since we can't set the value...
- */
- g_unsetenv ("foo=bar");
-#endif
- g_unsetenv ("foo");
- data = g_getenv ("foo");
- g_assert (data == NULL && "g_unsetenv() doesn't support '=' in values");
-
- return 0;
-}
diff --git a/tests/file-test.c b/tests/file-test.c
deleted file mode 100644
index 67e7e87ed..000000000
--- a/tests/file-test.c
+++ /dev/null
@@ -1,233 +0,0 @@
-/* GLIB - Library of useful routines for C programming
- * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
- */
-
-/*
- * Modified by the GLib Team and others 1997-2000. See the AUTHORS
- * file for a list of people on the GLib Team. See the ChangeLog
- * files for a list of changes. These files are distributed with
- * GLib at ftp://ftp.gtk.org/pub/gtk/.
- */
-
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
-
-#ifdef GLIB_COMPILATION
-#undef GLIB_COMPILATION
-#endif
-
-#include <string.h>
-
-#include <glib.h>
-
-#include <gstdio.h>
-
-#include <fcntl.h> /* For open() */
-
-#ifdef G_OS_UNIX
-#include <unistd.h>
-#endif
-#ifdef G_OS_WIN32
-#include <io.h> /* For read(), write() etc */
-#endif
-
-static void
-test_mkstemp (void)
-{
- char template[32];
- int fd;
- int i;
- const char hello[] = "Hello, World";
- const int hellolen = sizeof (hello) - 1;
- char chars[62];
-
- strcpy (template, "foobar");
- fd = g_mkstemp (template);
- if (fd != -1)
- {
- g_warning ("g_mkstemp works even if template doesn't contain XXXXXX");
- close (fd);
- }
-
- strcpy (template, "foobarXXX");
- fd = g_mkstemp (template);
- if (fd != -1)
- {
- g_warning ("g_mkstemp works even if template contains less than six X");
- close (fd);
- }
-
- strcpy (template, "fooXXXXXX");
- fd = g_mkstemp (template);
- g_assert (fd != -1 && "g_mkstemp didn't work for template fooXXXXXX");
- i = write (fd, hello, hellolen);
- g_assert (i != -1 && "write() failed");
- g_assert (i == hellolen && "write() has written too few bytes");
-
- lseek (fd, 0, 0);
- i = read (fd, chars, sizeof (chars));
- g_assert (i != -1 && "read() failed: %s");
- g_assert (i == hellolen && "read() has got wrong number of bytes");
-
- chars[i] = 0;
- g_assert (strcmp (chars, hello) == 0 && "read() didn't get same string back");
-
- close (fd);
- remove (template);
-
- strcpy (template, "fooXXXXXX.pdf");
- fd = g_mkstemp (template);
- g_assert (fd != -1 && "g_mkstemp didn't work for template fooXXXXXX.pdf");
-
- close (fd);
- remove (template);
-}
-
-static void
-test_mkdtemp (void)
-{
- char template[32], *retval;
- int fd;
- int i;
-
- strcpy (template, "foodir");
- retval = g_mkdtemp (template);
- if (retval != NULL)
- {
- g_warning ("g_mkdtemp works even if template doesn't contain XXXXXX");
- g_rmdir (retval);
- }
-
- strcpy (template, "foodir");
- retval = g_mkdtemp (template);
- if (retval != NULL)
- {
- g_warning ("g_mkdtemp works even if template contains less than six X");
- g_rmdir (retval);
- }
-
- strcpy (template, "fooXXXXXX");
- retval = g_mkdtemp (template);
- g_assert (retval != NULL && "g_mkdtemp didn't work for template fooXXXXXX");
- g_assert (retval == template && "g_mkdtemp allocated the resulting string?");
- g_assert (!g_file_test (template, G_FILE_TEST_IS_REGULAR));
- g_assert (g_file_test (template, G_FILE_TEST_IS_DIR));
-
- strcat (template, "/abc");
- fd = g_open (template, O_WRONLY | O_CREAT, 0600);
- g_assert (fd != -1 && "couldn't open file in temporary directory");
- close (fd);
- g_assert (g_file_test (template, G_FILE_TEST_IS_REGULAR));
- i = g_unlink (template);
- g_assert (i != -1 && "couldn't unlink file in temporary directory");
-
- template[9] = '\0';
- i = g_rmdir (template);
- g_assert (i != -1 && "couldn't remove temporary directory");
-
- strcpy (template, "fooXXXXXX.dir");
- retval = g_mkdtemp (template);
- g_assert (retval != NULL && "g_mkdtemp didn't work for template fooXXXXXX.dir");
- g_assert (g_file_test (template, G_FILE_TEST_IS_DIR));
- g_rmdir (template);
-}
-
-static void
-test_readlink (void)
-{
-#ifdef HAVE_SYMLINK
- FILE *file;
- int result;
- char *filename = "file-test-data";
- char *link1 = "file-test-link1";
- char *link2 = "file-test-link2";
- char *link3 = "file-test-link3";
- char *data;
- GError *error;
-
- file = fopen (filename, "w");
- g_assert (file != NULL && "fopen() failed");
- fclose (file);
-
- result = symlink (filename, link1);
- g_assert (result == 0 && "symlink() failed");
- result = symlink (link1, link2);
- g_assert (result == 0 && "symlink() failed");
-
- error = NULL;
- data = g_file_read_link (link1, &error);
- g_assert (data != NULL && "couldn't read link1");
- g_assert (strcmp (data, filename) == 0 && "link1 contains wrong data");
- g_free (data);
-
- error = NULL;
- data = g_file_read_link (link2, &error);
- g_assert (data != NULL && "couldn't read link2");
- g_assert (strcmp (data, link1) == 0 && "link2 contains wrong data");
- g_free (data);
-
- error = NULL;
- data = g_file_read_link (link3, &error);
- g_assert (data == NULL && "could read link3");
- g_assert_error (error, G_FILE_ERROR, G_FILE_ERROR_NOENT);
- g_error_free (error);
-
- error = NULL;
- data = g_file_read_link (filename, &error);
- g_assert (data == NULL && "could read regular file as link");
- g_assert_error (error, G_FILE_ERROR, G_FILE_ERROR_INVAL);
- g_error_free (error);
-
- remove (filename);
- remove (link1);
- remove (link2);
-#endif
-}
-
-static void
-test_get_contents (void)
-{
- const gchar *text = "abcdefghijklmnopqrstuvwxyz";
- const gchar *filename = "file-test-get-contents";
- gchar *contents;
- gsize len;
- FILE *f;
- GError *error = NULL;
-
- f = g_fopen (filename, "w");
- fwrite (text, 1, strlen (text), f);
- fclose (f);
-
- g_assert (g_file_test (filename, G_FILE_TEST_IS_REGULAR));
-
- if (! g_file_get_contents (filename, &contents, &len, &error))
- g_error ("g_file_get_contents() failed: %s", error->message);
-
- g_assert (strcmp (text, contents) == 0 && "content mismatch");
-
- g_free (contents);
-}
-
-int
-main (int argc, char *argv[])
-{
- test_mkstemp ();
- test_mkdtemp ();
- test_readlink ();
- test_get_contents ();
-
- return 0;
-}
diff --git a/tests/gio-test.c b/tests/gio-test.c
index 6c40632b3..d203d0b27 100644
--- a/tests/gio-test.c
+++ b/tests/gio-test.c
@@ -128,7 +128,7 @@ recv_message (GIOChannel *channel,
if (cond & G_IO_IN)
{
char buf[BUFSIZE];
- guint nbytes;
+ guint nbytes = 0;
guint nb;
guint j;
int i, seq;
@@ -297,7 +297,7 @@ main (int argc,
exit (1);
}
- windows_messages_channel = g_io_channel_win32_new_messages ((guint)hwnd);
+ windows_messages_channel = g_io_channel_win32_new_messages ((guint) (guintptr) hwnd);
g_io_add_watch (windows_messages_channel, G_IO_IN, recv_windows_message, 0);
#endif
diff --git a/tests/gobject/gvalue-test.c b/tests/gobject/gvalue-test.c
deleted file mode 100644
index b73fe3150..000000000
--- a/tests/gobject/gvalue-test.c
+++ /dev/null
@@ -1,398 +0,0 @@
-/* GLIB - Library of useful routines for C programming
- * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
- */
-
-/*
- * Modified by the GLib Team and others 1997-2000. See the AUTHORS
- * file for a list of people on the GLib Team. See the ChangeLog
- * files for a list of changes. These files are distributed with
- * GLib at ftp://ftp.gtk.org/pub/gtk/.
- */
-
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
-
-#include <string.h>
-
-#include <glib.h>
-#include <glib-object.h>
-#include "gobject/gvaluecollector.h"
-
-static void
-test_enum_transformation (void)
-{
- GType type;
- GValue orig = G_VALUE_INIT;
- GValue xform = G_VALUE_INIT;
- GEnumValue values[] = { {0,"0","0"}, {1,"1","1"}};
-
- type = g_enum_register_static ("TestEnum", values);
-
- g_value_init (&orig, type);
- g_value_set_enum (&orig, 1);
-
- memset (&xform, 0, sizeof (GValue));
- g_value_init (&xform, G_TYPE_CHAR);
- g_value_transform (&orig, &xform);
- g_assert (g_value_get_char (&xform) == 1);
- g_assert (g_value_get_schar (&xform) == 1);
-
- memset (&xform, 0, sizeof (GValue));
- g_value_init (&xform, G_TYPE_UCHAR);
- g_value_transform (&orig, &xform);
- g_assert (g_value_get_uchar (&xform) == 1);
-
- memset (&xform, 0, sizeof (GValue));
- g_value_init (&xform, G_TYPE_INT);
- g_value_transform (&orig, &xform);
- g_assert (g_value_get_int (&xform) == 1);
-
- memset (&xform, 0, sizeof (GValue));
- g_value_init (&xform, G_TYPE_UINT);
- g_value_transform (&orig, &xform);
- g_assert (g_value_get_uint (&xform) == 1);
-
- memset (&xform, 0, sizeof (GValue));
- g_value_init (&xform, G_TYPE_LONG);
- g_value_transform (&orig, &xform);
- g_assert (g_value_get_long (&xform) == 1);
-
- memset (&xform, 0, sizeof (GValue));
- g_value_init (&xform, G_TYPE_ULONG);
- g_value_transform (&orig, &xform);
- g_assert (g_value_get_ulong (&xform) == 1);
-
- memset (&xform, 0, sizeof (GValue));
- g_value_init (&xform, G_TYPE_INT64);
- g_value_transform (&orig, &xform);
- g_assert (g_value_get_int64 (&xform) == 1);
-
- memset (&xform, 0, sizeof (GValue));
- g_value_init (&xform, G_TYPE_UINT64);
- g_value_transform (&orig, &xform);
- g_assert (g_value_get_uint64 (&xform) == 1);
-}
-
-
-static void
-test_gtype_value (void)
-{
- GType type;
- GValue value = G_VALUE_INIT;
- GValue copy = G_VALUE_INIT;
-
- g_value_init (&value, G_TYPE_GTYPE);
-
- g_value_set_gtype (&value, G_TYPE_BOXED);
- type = g_value_get_gtype (&value);
- g_assert (type == G_TYPE_BOXED);
-
- g_value_init (&copy, G_TYPE_GTYPE);
- g_value_copy (&value, &copy);
- type = g_value_get_gtype (&copy);
- g_assert (type == G_TYPE_BOXED);
-}
-
-static gchar *
-collect (GValue *value, ...)
-{
- gchar *error;
- va_list var_args;
-
- error = NULL;
-
- va_start (var_args, value);
- G_VALUE_COLLECT (value, var_args, 0, &error);
- va_end (var_args);
-
- return error;
-}
-
-static gchar *
-lcopy (GValue *value, ...)
-{
- gchar *error;
- va_list var_args;
-
- error = NULL;
-
- va_start (var_args, value);
- G_VALUE_LCOPY (value, var_args, 0, &error);
- va_end (var_args);
-
- return error;
-}
-
-static void
-test_collection (void)
-{
- GValue value = G_VALUE_INIT;
- gchar *error;
-
- g_value_init (&value, G_TYPE_CHAR);
- error = collect (&value, 'c');
- g_assert (error == NULL);
- g_assert (g_value_get_char (&value) == 'c');
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_UCHAR);
- error = collect (&value, 129);
- g_assert (error == NULL);
- g_assert (g_value_get_uchar (&value) == 129);
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_BOOLEAN);
- error = collect (&value, TRUE);
- g_assert (error == NULL);
- g_assert (g_value_get_boolean (&value) == TRUE);
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_INT);
- error = collect (&value, G_MAXINT);
- g_assert (error == NULL);
- g_assert (g_value_get_int (&value) == G_MAXINT);
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_UINT);
- error = collect (&value, G_MAXUINT);
- g_assert (error == NULL);
- g_assert (g_value_get_uint (&value) == G_MAXUINT);
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_LONG);
- error = collect (&value, G_MAXLONG);
- g_assert (error == NULL);
- g_assert (g_value_get_long (&value) == G_MAXLONG);
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_ULONG);
- error = collect (&value, G_MAXULONG);
- g_assert (error == NULL);
- g_assert (g_value_get_ulong (&value) == G_MAXULONG);
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_INT64);
- error = collect (&value, G_MAXINT64);
- g_assert (error == NULL);
- g_assert (g_value_get_int64 (&value) == G_MAXINT64);
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_UINT64);
- error = collect (&value, G_MAXUINT64);
- g_assert (error == NULL);
- g_assert (g_value_get_uint64 (&value) == G_MAXUINT64);
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_FLOAT);
- error = collect (&value, G_MAXFLOAT);
- g_assert (error == NULL);
- g_assert (g_value_get_float (&value) == G_MAXFLOAT);
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_DOUBLE);
- error = collect (&value, G_MAXDOUBLE);
- g_assert (error == NULL);
- g_assert (g_value_get_double (&value) == G_MAXDOUBLE);
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_STRING);
- error = collect (&value, "string ?");
- g_assert (error == NULL);
- g_assert (strcmp (g_value_get_string (&value), "string ?") == 0);
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_GTYPE);
- error = collect (&value, G_TYPE_BOXED);
- g_assert (error == NULL);
- g_assert (g_value_get_gtype (&value) == G_TYPE_BOXED);
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_VARIANT);
- error = collect (&value, g_variant_new_uint32 (42));
- g_assert (error == NULL);
- g_assert (g_variant_is_of_type (g_value_get_variant (&value), G_VARIANT_TYPE ("u")));
- g_assert_cmpuint (g_variant_get_uint32 (g_value_get_variant (&value)), ==, 42);
-
- g_value_unset (&value);
-}
-
-static void
-test_copying (void)
-{
- GValue value = G_VALUE_INIT;
- gchar *error;
-
- {
- gchar c = 0;
-
- g_value_init (&value, G_TYPE_CHAR);
- g_value_set_char (&value, 'c');
- error = lcopy (&value, &c);
- g_assert (error == NULL);
- g_assert (c == 'c');
- }
-
- {
- guchar c = 0;
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_UCHAR);
- g_value_set_uchar (&value, 129);
- error = lcopy (&value, &c);
- g_assert (error == NULL);
- g_assert (c == 129);
- }
-
- {
- gint c = 0;
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_INT);
- g_value_set_int (&value, G_MAXINT);
- error = lcopy (&value, &c);
- g_assert (error == NULL);
- g_assert (c == G_MAXINT);
- }
-
- {
- guint c = 0;
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_UINT);
- g_value_set_uint (&value, G_MAXUINT);
- error = lcopy (&value, &c);
- g_assert (error == NULL);
- g_assert (c == G_MAXUINT);
- }
-
- {
- glong c = 0;
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_LONG);
- g_value_set_long (&value, G_MAXLONG);
- error = lcopy (&value, &c);
- g_assert (error == NULL);
- g_assert (c == G_MAXLONG);
- }
-
- {
- gulong c = 0;
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_ULONG);
- g_value_set_ulong (&value, G_MAXULONG);
- error = lcopy (&value, &c);
- g_assert (error == NULL);
- g_assert (c == G_MAXULONG);
- }
-
- {
- gint64 c = 0;
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_INT64);
- g_value_set_int64 (&value, G_MAXINT64);
- error = lcopy (&value, &c);
- g_assert (error == NULL);
- g_assert (c == G_MAXINT64);
- }
-
- {
- guint64 c = 0;
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_UINT64);
- g_value_set_uint64 (&value, G_MAXUINT64);
- error = lcopy (&value, &c);
- g_assert (error == NULL);
- g_assert (c == G_MAXUINT64);
- }
-
- {
- gfloat c = 0;
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_FLOAT);
- g_value_set_float (&value, G_MAXFLOAT);
- error = lcopy (&value, &c);
- g_assert (error == NULL);
- g_assert (c == G_MAXFLOAT);
- }
-
- {
- gdouble c = 0;
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_DOUBLE);
- g_value_set_double (&value, G_MAXDOUBLE);
- error = lcopy (&value, &c);
- g_assert (error == NULL);
- g_assert (c == G_MAXDOUBLE);
- }
-
- {
- gchar *c = NULL;
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_STRING);
- g_value_set_string (&value, "string ?");
- error = lcopy (&value, &c);
- g_assert (error == NULL);
- g_assert (strcmp (c, "string ?") == 0);
- g_free (c);
- }
-
- {
- GType c = G_TYPE_NONE;
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_GTYPE);
- g_value_set_gtype (&value, G_TYPE_BOXED);
- error = lcopy (&value, &c);
- g_assert (error == NULL);
- g_assert (c == G_TYPE_BOXED);
- }
-
- {
- GVariant *c = NULL;
-
- g_value_unset (&value);
- g_value_init (&value, G_TYPE_VARIANT);
- g_value_set_variant (&value, g_variant_new_uint32 (42));
- error = lcopy (&value, &c);
- g_assert (error == NULL);
- g_assert (c != NULL);
- g_assert (g_variant_is_of_type (c, G_VARIANT_TYPE ("u")));
- g_assert_cmpuint (g_variant_get_uint32 (c), ==, 42);
- g_variant_unref (c);
- g_value_unset (&value);
- }
-}
-
-
-int
-main (int argc, char *argv[])
-{
- g_test_init (&argc, &argv, NULL);
-
- g_test_add_func ("/gvalue/enum-transformation", test_enum_transformation);
- g_test_add_func ("/gvalue/gtype", test_gtype_value);
- g_test_add_func ("/gvalue/collection", test_collection);
- g_test_add_func ("/gvalue/copying", test_copying);
-
- return g_test_run ();
-}
diff --git a/tests/gobject/meson.build b/tests/gobject/meson.build
index 24ceda0d3..a02480e02 100644
--- a/tests/gobject/meson.build
+++ b/tests/gobject/meson.build
@@ -27,8 +27,6 @@ testmarshal_c = custom_target('testmarshal_c',
)
gobject_tests = {
- 'gvalue-test' : {'tap' : true},
- 'paramspec-test' : {'tap' : true},
'deftype' : {},
'defaultiface' : {
'extra_sources' : ['testmodule.c'],
diff --git a/tests/gobject/paramspec-test.c b/tests/gobject/paramspec-test.c
deleted file mode 100644
index a794df338..000000000
--- a/tests/gobject/paramspec-test.c
+++ /dev/null
@@ -1,366 +0,0 @@
-/* GLIB - Library of useful routines for C programming
- * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
- */
-
-/*
- * Modified by the GLib Team and others 1997-2000. See the AUTHORS
- * file for a list of people on the GLib Team. See the ChangeLog
- * files for a list of changes. These files are distributed with
- * GLib at ftp://ftp.gtk.org/pub/gtk/.
- */
-
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
-
-#include <string.h>
-
-#include <glib.h>
-#include <glib-object.h>
-
-static void
-test_param_spec_char (void)
-{
- GParamSpec *pspec;
- GValue value = G_VALUE_INIT;
- gboolean modified;
-
- pspec = g_param_spec_char ("char", "nick", "blurb",
- 20, 40, 30, G_PARAM_READWRITE);
-
- g_assert (strcmp (g_param_spec_get_name (pspec), "char") == 0);
- g_assert (strcmp (g_param_spec_get_nick (pspec), "nick") == 0);
- g_assert (strcmp (g_param_spec_get_blurb (pspec), "blurb") == 0);
-
- g_value_init (&value, G_TYPE_CHAR);
- g_value_set_char (&value, 30);
-
- g_assert (g_param_value_defaults (pspec, &value));
-
- g_value_set_char (&value, 0);
- modified = g_param_value_validate (pspec, &value);
- g_assert (modified && g_value_get_char (&value) == 20);
-
- g_value_set_char (&value, 20);
- modified = g_param_value_validate (pspec, &value);
- g_assert (!modified && g_value_get_char (&value) == 20);
-
- g_value_set_char (&value, 40);
- modified = g_param_value_validate (pspec, &value);
- g_assert (!modified && g_value_get_char (&value) == 40);
-
- g_value_set_char (&value, 60);
- modified = g_param_value_validate (pspec, &value);
- g_assert (modified && g_value_get_char (&value) == 40);
-
- g_value_set_schar (&value, 0);
- modified = g_param_value_validate (pspec, &value);
- g_assert (modified && g_value_get_schar (&value) == 20);
-
- g_value_set_schar (&value, 20);
- modified = g_param_value_validate (pspec, &value);
- g_assert (!modified && g_value_get_schar (&value) == 20);
-
- g_value_set_schar (&value, 40);
- modified = g_param_value_validate (pspec, &value);
- g_assert (!modified && g_value_get_schar (&value) == 40);
-
- g_value_set_schar (&value, 60);
- modified = g_param_value_validate (pspec, &value);
- g_assert (modified && g_value_get_schar (&value) == 40);
-
- g_param_spec_unref (pspec);
-}
-
-static void
-test_param_spec_string (void)
-{
- GParamSpec *pspec;
- GValue value = G_VALUE_INIT;
- gboolean modified;
-
- pspec = g_param_spec_string ("string", "nick", "blurb",
- NULL, G_PARAM_READWRITE);
- g_value_init (&value, G_TYPE_STRING);
-
- g_value_set_string (&value, "foobar");
- modified = g_param_value_validate (pspec, &value);
- g_assert (!modified);
-
- g_value_set_string (&value, "");
- modified = g_param_value_validate (pspec, &value);
- g_assert (!modified && g_value_get_string (&value) != NULL);
-
- /* test ensure_non_null */
-
- G_PARAM_SPEC_STRING (pspec)->ensure_non_null = TRUE;
-
- g_value_set_string (&value, NULL);
- modified = g_param_value_validate (pspec, &value);
- g_assert (modified && g_value_get_string (&value) != NULL);
-
- G_PARAM_SPEC_STRING (pspec)->ensure_non_null = FALSE;
-
- /* test null_fold_if_empty */
-
- G_PARAM_SPEC_STRING (pspec)->null_fold_if_empty = TRUE;
-
- g_value_set_string (&value, "");
- modified = g_param_value_validate (pspec, &value);
- g_assert (modified && g_value_get_string (&value) == NULL);
-
- g_value_set_static_string (&value, "");
- modified = g_param_value_validate (pspec, &value);
- g_assert (modified && g_value_get_string (&value) == NULL);
-
- G_PARAM_SPEC_STRING (pspec)->null_fold_if_empty = FALSE;
-
- /* test cset_first */
-
- G_PARAM_SPEC_STRING (pspec)->cset_first = g_strdup ("abc");
- G_PARAM_SPEC_STRING (pspec)->substitutor = '-';
-
- g_value_set_string (&value, "ABC");
- modified = g_param_value_validate (pspec, &value);
- g_assert (modified && g_value_get_string (&value)[0] == '-');
-
- g_value_set_static_string (&value, "ABC");
- modified = g_param_value_validate (pspec, &value);
- g_assert (modified && g_value_get_string (&value)[0] == '-');
-
- /* test cset_nth */
-
- G_PARAM_SPEC_STRING (pspec)->cset_nth = g_strdup ("abc");
-
- g_value_set_string (&value, "aBC");
- modified = g_param_value_validate (pspec, &value);
- g_assert (modified && g_value_get_string (&value)[1] == '-');
-
- g_value_set_static_string (&value, "aBC");
- modified = g_param_value_validate (pspec, &value);
- g_assert (modified && g_value_get_string (&value)[1] == '-');
-
- g_value_unset (&value);
- g_param_spec_unref (pspec);
-}
-
-static void
-test_param_spec_override (void)
-{
- GParamSpec *ospec, *pspec;
- GValue value = G_VALUE_INIT;
- gboolean modified;
-
- ospec = g_param_spec_char ("char", "nick", "blurb",
- 20, 40, 30, G_PARAM_READWRITE);
-
- pspec = g_param_spec_override ("override", ospec);
-
- g_assert (strcmp (g_param_spec_get_name (pspec), "override") == 0);
- g_assert (strcmp (g_param_spec_get_nick (pspec), "nick") == 0);
- g_assert (strcmp (g_param_spec_get_blurb (pspec), "blurb") == 0);
-
- g_value_init (&value, G_TYPE_CHAR);
- g_value_set_char (&value, 30);
-
- g_assert (g_param_value_defaults (pspec, &value));
-
- g_value_set_char (&value, 0);
- modified = g_param_value_validate (pspec, &value);
- g_assert (modified && g_value_get_char (&value) == 20);
-
- g_value_set_char (&value, 20);
- modified = g_param_value_validate (pspec, &value);
- g_assert (!modified && g_value_get_char (&value) == 20);
-
- g_value_set_char (&value, 40);
- modified = g_param_value_validate (pspec, &value);
- g_assert (!modified && g_value_get_char (&value) == 40);
-
- g_value_set_char (&value, 60);
- modified = g_param_value_validate (pspec, &value);
- g_assert (modified && g_value_get_char (&value) == 40);
-
- g_param_spec_unref (pspec);
- g_param_spec_unref (ospec);
-}
-
-static void
-test_param_spec_gtype (void)
-{
- GParamSpec *pspec;
- GValue value = G_VALUE_INIT;
- gboolean modified;
-
- pspec = g_param_spec_gtype ("gtype", "nick", "blurb",
- G_TYPE_PARAM, G_PARAM_READWRITE);
-
- g_value_init (&value, G_TYPE_GTYPE);
- g_value_set_gtype (&value, G_TYPE_PARAM);
-
- g_assert (g_param_value_defaults (pspec, &value));
-
- g_value_set_gtype (&value, G_TYPE_INT);
- modified = g_param_value_validate (pspec, &value);
- g_assert (modified && g_value_get_gtype (&value) == G_TYPE_PARAM);
-
- g_value_set_gtype (&value, G_TYPE_PARAM_INT);
- modified = g_param_value_validate (pspec, &value);
- g_assert (!modified && g_value_get_gtype (&value) == G_TYPE_PARAM_INT);
-
- g_param_spec_unref (pspec);
-}
-
-static void
-test_param_spec_variant (void)
-{
- GParamSpec *pspec;
- GValue value = G_VALUE_INIT;
- GValue value2 = G_VALUE_INIT;
- GValue value3 = G_VALUE_INIT;
- GValue value4 = G_VALUE_INIT;
- GValue value5 = G_VALUE_INIT;
- gboolean modified;
-
- pspec = g_param_spec_variant ("variant", "nick", "blurb",
- G_VARIANT_TYPE ("i"),
- g_variant_new_int32 (42),
- G_PARAM_READWRITE);
-
- g_value_init (&value, G_TYPE_VARIANT);
- g_value_set_variant (&value, g_variant_new_int32 (42));
-
- g_value_init (&value2, G_TYPE_VARIANT);
- g_value_set_variant (&value2, g_variant_new_int32 (43));
-
- g_value_init (&value3, G_TYPE_VARIANT);
- g_value_set_variant (&value3, g_variant_new_int16 (42));
-
- g_value_init (&value4, G_TYPE_VARIANT);
- g_value_set_variant (&value4, g_variant_new_parsed ("[@u 15, @u 10]"));
-
- g_value_init (&value5, G_TYPE_VARIANT);
- g_value_set_variant (&value5, NULL);
-
- g_assert_true (g_param_value_defaults (pspec, &value));
- g_assert_false (g_param_value_defaults (pspec, &value2));
- g_assert_false (g_param_value_defaults (pspec, &value3));
- g_assert_false (g_param_value_defaults (pspec, &value4));
- g_assert_false (g_param_value_defaults (pspec, &value5));
-
- modified = g_param_value_validate (pspec, &value);
- g_assert_false (modified);
-
- g_value_reset (&value);
- g_value_set_variant (&value, g_variant_new_uint32 (41));
- modified = g_param_value_validate (pspec, &value);
- g_assert_true (modified);
- g_assert_cmpint (g_variant_get_int32 (g_value_get_variant (&value)), ==, 42);
- g_value_unset (&value);
-
- g_value_unset (&value5);
- g_value_unset (&value4);
- g_value_unset (&value3);
- g_value_unset (&value2);
-
- g_param_spec_unref (pspec);
-}
-
-/* Test g_param_values_cmp() for #GParamSpecVariant. */
-static void
-test_param_spec_variant_cmp (void)
-{
- const struct
- {
- const GVariantType *pspec_type;
- const gchar *v1;
- enum
- {
- LESS_THAN = -1,
- EQUAL = 0,
- GREATER_THAN = 1,
- NOT_EQUAL,
- } expected_result;
- const gchar *v2;
- }
- vectors[] =
- {
- { G_VARIANT_TYPE ("i"), "@i 1", LESS_THAN, "@i 2" },
- { G_VARIANT_TYPE ("i"), "@i 2", EQUAL, "@i 2" },
- { G_VARIANT_TYPE ("i"), "@i 3", GREATER_THAN, "@i 2" },
- { G_VARIANT_TYPE ("i"), NULL, LESS_THAN, "@i 2" },
- { G_VARIANT_TYPE ("i"), NULL, EQUAL, NULL },
- { G_VARIANT_TYPE ("i"), "@i 1", GREATER_THAN, NULL },
- { G_VARIANT_TYPE ("i"), "@u 1", LESS_THAN, "@u 2" },
- { G_VARIANT_TYPE ("i"), "@as ['hi']", NOT_EQUAL, "@u 2" },
- { G_VARIANT_TYPE ("i"), "@as ['hi']", NOT_EQUAL, "@as ['there']" },
- { G_VARIANT_TYPE ("i"), "@as ['hi']", EQUAL, "@as ['hi']" },
- };
- gsize i;
-
- for (i = 0; i < G_N_ELEMENTS (vectors); i++)
- {
- GParamSpec *pspec;
- GValue v1 = G_VALUE_INIT;
- GValue v2 = G_VALUE_INIT;
- gint cmp;
-
- pspec = g_param_spec_variant ("variant", "nick", "blurb",
- vectors[i].pspec_type,
- NULL,
- G_PARAM_READWRITE);
-
- g_value_init (&v1, G_TYPE_VARIANT);
- g_value_set_variant (&v1, (vectors[i].v1 != NULL) ? g_variant_new_parsed (vectors[i].v1) : NULL);
-
- g_value_init (&v2, G_TYPE_VARIANT);
- g_value_set_variant (&v2, (vectors[i].v2 != NULL) ? g_variant_new_parsed (vectors[i].v2) : NULL);
-
- cmp = g_param_values_cmp (pspec, &v1, &v2);
-
- switch (vectors[i].expected_result)
- {
- case LESS_THAN:
- case EQUAL:
- case GREATER_THAN:
- g_assert_cmpint (cmp, ==, vectors[i].expected_result);
- break;
- case NOT_EQUAL:
- g_assert_cmpint (cmp, !=, 0);
- break;
- default:
- g_assert_not_reached ();
- }
-
- g_value_unset (&v2);
- g_value_unset (&v1);
- g_param_spec_unref (pspec);
- }
-}
-
-int
-main (int argc, char *argv[])
-{
- g_test_init (&argc, &argv, NULL);
-
- g_test_add_func ("/paramspec/char", test_param_spec_char);
- g_test_add_func ("/paramspec/string", test_param_spec_string);
- g_test_add_func ("/paramspec/override", test_param_spec_override);
- g_test_add_func ("/paramspec/gtype", test_param_spec_gtype);
- g_test_add_func ("/paramspec/variant", test_param_spec_variant);
- g_test_add_func ("/paramspec/variant/cmp", test_param_spec_variant_cmp);
-
- return g_test_run ();
-}
diff --git a/tests/iochannel-test.c b/tests/iochannel-test.c
deleted file mode 100644
index 06a85e5d0..000000000
--- a/tests/iochannel-test.c
+++ /dev/null
@@ -1,172 +0,0 @@
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
-
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-#include <glib.h>
-#include <string.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-#define BUFFER_SIZE 1024
-
-static void
-test_small_writes (void)
-{
- GIOChannel *io;
- GIOStatus status = G_IO_STATUS_ERROR;
- guint cnt;
- gchar tmp;
- GError *error = NULL;
-
- io = g_io_channel_new_file ("iochannel-test-outfile", "w", &error);
- if (error)
- {
- g_warning ("Unable to open file %s: %s",
- "iochannel-test-outfile",
- error->message);
- g_clear_error (&error);
-
- exit (1);
- }
-
- g_io_channel_set_encoding (io, NULL, NULL);
- g_io_channel_set_buffer_size (io, 1022);
-
- cnt = 2 * g_io_channel_get_buffer_size (io);
- tmp = 0;
-
- while (cnt)
- {
- status = g_io_channel_write_chars (io, &tmp, 1, NULL, NULL);
- if (status == G_IO_STATUS_ERROR)
- break;
- if (status == G_IO_STATUS_NORMAL)
- cnt--;
- }
-
- g_assert (status == G_IO_STATUS_NORMAL);
-
- g_io_channel_unref (io);
-}
-
-
-gint main (gint argc, gchar * argv[])
-{
- GIOChannel *gio_r, *gio_w ;
- GError *gerr = NULL;
- GString *buffer;
- char *filename;
- gint rlength = 0;
- glong wlength = 0;
- gsize length_out;
- const gchar encoding[] = "EUC-JP";
- GIOStatus status;
-
- g_test_init (&argc, &argv, NULL);
-
- filename = g_test_build_filename (G_TEST_DIST, "iochannel-test-infile", NULL);
-
- setbuf (stdout, NULL); /* For debugging */
-
- gio_r = g_io_channel_new_file (filename, "r", &gerr);
- if (gerr)
- {
- g_warning ("Unable to open file %s: %s", filename, gerr->message);
- g_clear_error (&gerr);
- return 1;
- }
- gio_w = g_io_channel_new_file ("iochannel-test-outfile", "w", &gerr);
- if (gerr)
- {
- g_warning ("Unable to open file %s: %s", "iochannel-test-outfile", gerr->message);
- g_clear_error (&gerr);
- return 1;
- }
-
- g_io_channel_set_encoding (gio_r, encoding, &gerr);
- if (gerr)
- {
- g_warning ("%s", gerr->message);
- /* Keep going if this is just a case of iconv not supporting EUC-JP, see bug 428048 */
- if (gerr->code != G_CONVERT_ERROR_NO_CONVERSION)
- return 1;
- g_clear_error (&gerr);
- }
-
- g_io_channel_set_buffer_size (gio_r, BUFFER_SIZE);
-
- status = g_io_channel_set_flags (gio_r, G_IO_FLAG_NONBLOCK, &gerr);
- if (status == G_IO_STATUS_ERROR)
- {
- g_warning ("%s", gerr->message);
- g_clear_error (&gerr);
- }
- buffer = g_string_sized_new (BUFFER_SIZE);
-
- while (TRUE)
- {
- do
- status = g_io_channel_read_line_string (gio_r, buffer, NULL, &gerr);
- while (status == G_IO_STATUS_AGAIN);
- if (status != G_IO_STATUS_NORMAL)
- break;
-
- rlength += buffer->len;
-
- do
- status = g_io_channel_write_chars (gio_w, buffer->str, buffer->len,
- &length_out, &gerr);
- while (status == G_IO_STATUS_AGAIN);
- if (status != G_IO_STATUS_NORMAL)
- break;
-
- wlength += length_out;
-
- if (length_out < buffer->len)
- g_warning ("Only wrote part of the line.");
-
-#ifdef VERBOSE
- g_print ("%s", buffer->str);
-#endif
- g_string_truncate (buffer, 0);
- }
-
- switch (status)
- {
- case G_IO_STATUS_EOF:
- break;
- case G_IO_STATUS_ERROR:
- g_warning ("%s", gerr->message);
- g_clear_error (&gerr);
- break;
- default:
- g_warning ("Abnormal exit from write loop.");
- break;
- }
-
- do
- status = g_io_channel_flush (gio_w, &gerr);
- while (status == G_IO_STATUS_AGAIN);
-
- if (status == G_IO_STATUS_ERROR)
- {
- g_warning ("%s", gerr->message);
- g_clear_error (&gerr);
- }
-
-#ifdef VERBOSE
- g_print ("read %d bytes, wrote %ld bytes\n", rlength, wlength);
-#endif
-
- g_io_channel_unref(gio_r);
- g_io_channel_unref(gio_w);
-
- test_small_writes ();
-
- g_free (filename);
- g_string_free (buffer, TRUE);
-
- return 0;
-}
diff --git a/tests/mapping-test.c b/tests/mapping-test.c
index ad776fad1..d4547deba 100644
--- a/tests/mapping-test.c
+++ b/tests/mapping-test.c
@@ -29,7 +29,7 @@
#include <process.h>
#endif
-static gchar *dir, *filename, *displayname, *childname;
+static gchar *dir, *global_filename, *global_displayname, *childname;
static gboolean stop = FALSE;
@@ -113,7 +113,7 @@ child_main (int argc, char *argv[])
GMainLoop *loop;
parent_pid = atoi (argv[2]);
- map = map_or_die (filename, FALSE);
+ map = map_or_die (global_filename, FALSE);
#ifndef G_OS_WIN32
signal (SIGUSR1, handle_usr1);
@@ -139,13 +139,13 @@ test_mapping (void)
{
GMappedFile *map;
- write_or_die (filename, "ABC", -1);
+ write_or_die (global_filename, "ABC", -1);
- map = map_or_die (filename, FALSE);
+ map = map_or_die (global_filename, FALSE);
g_assert (g_mapped_file_get_length (map) == 3);
g_mapped_file_free (map);
- map = map_or_die (filename, TRUE);
+ map = map_or_die (global_filename, TRUE);
g_assert (g_mapped_file_get_length (map) == 3);
g_mapped_file_free (map);
g_message ("test_mapping: ok");
@@ -159,8 +159,8 @@ test_private (void)
gchar *buffer;
gsize len;
- write_or_die (filename, "ABC", -1);
- map = map_or_die (filename, TRUE);
+ write_or_die (global_filename, "ABC", -1);
+ map = map_or_die (global_filename, TRUE);
buffer = (gchar *)g_mapped_file_get_contents (map);
buffer[0] = '1';
@@ -168,10 +168,10 @@ test_private (void)
buffer[2] = '3';
g_mapped_file_free (map);
- if (!g_file_get_contents (filename, &buffer, &len, &error))
+ if (!g_file_get_contents (global_filename, &buffer, &len, &error))
{
- g_print ("failed to read '%s': %s\n",
- displayname, error->message);
+ g_print ("failed to read '%s': %s\n",
+ global_displayname, error->message);
exit (1);
}
@@ -201,8 +201,8 @@ test_child_private (gchar *argv0)
g_assert (!g_file_test ("STOP", G_FILE_TEST_EXISTS));
#endif
- write_or_die (filename, "ABC", -1);
- map = map_or_die (filename, TRUE);
+ write_or_die (global_filename, "ABC", -1);
+ map = map_or_die (global_filename, TRUE);
#ifndef G_OS_WIN32
signal (SIGUSR1, handle_usr1);
@@ -303,8 +303,8 @@ main (int argc,
#endif
dir = g_get_current_dir ();
- filename = g_build_filename (dir, "maptest", NULL);
- displayname = g_filename_display_name (filename);
+ global_filename = g_build_filename (dir, "maptest", NULL);
+ global_displayname = g_filename_display_name (global_filename);
childname = g_build_filename (dir, "mapchild", NULL);
if (argc > 1)
@@ -313,8 +313,8 @@ main (int argc,
ret = parent_main (argc, argv);
g_free (childname);
- g_free (filename);
- g_free (displayname);
+ g_free (global_filename);
+ g_free (global_displayname);
g_free (dir);
return ret;
diff --git a/tests/meson.build b/tests/meson.build
index 6741f8f52..c95fa1d00 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -16,32 +16,16 @@ subdir('gobject')
subdir('refcount')
tests = {
- 'testglib' : {'tap' : true},
- 'testgdate' : {},
- 'datetime' : {},
- 'bit-test' : {},
- 'child-test' : {},
- 'completion-test' : {},
- 'dirname-test' : {},
- 'file-test' : {},
- 'env-test' : {},
'gio-test' : {},
'mainloop-test' : {},
'mapping-test' : {},
'onceinit' : {},
- 'asyncqueue-test' : {},
- 'qsort-test' : {},
- 'relation-test' : {},
- 'slice-concurrent' : {},
'slice-threadinit' : {
'dependencies' : [libgthread_dep],
},
- 'sources' : {},
'spawn-test' : {},
'thread-test' : {},
'threadpool-test' : {'suite' : ['slow']},
- 'type-test' : {},
- 'unicode-caseconv' : {},
'unicode-encoding' : {},
'module-test-library' : {
'dependencies' : [libgmodule_dep],
@@ -55,28 +39,18 @@ tests = {
'source': 'module-test.c',
'c_args': ['-DMODULE_TYPE="plugin"'],
},
- 'cxx-test' : {
- 'source' : 'cxx-test.cpp',
- 'include_directories' : gmoduleinc,
- 'dependencies' : [libgio_dep],
- },
}
test_extra_programs = {
'slice-test' : {
'extra_sources' : ['memchunks.c'],
},
- 'slice-color' : {
- 'extra_sources' : ['memchunks.c'],
- },
'assert-msg-test' : {},
- 'unicode-collate' : {},
}
if host_machine.system() != 'windows'
tests += {
'timeloop' : {},
- 'iochannel-test' : {},
}
else
test_extra_programs += {
@@ -86,9 +60,6 @@ endif
if installed_tests_enabled
install_data(
- 'iochannel-test-infile',
- 'casemap.txt',
- 'casefold.txt',
'utf8.txt',
install_dir : installed_tests_execdir,
)
diff --git a/tests/module-test.c b/tests/module-test.c
index 62473d29d..a74bc74d4 100644
--- a/tests/module-test.c
+++ b/tests/module-test.c
@@ -101,8 +101,12 @@ main (int argc,
if (!module_self)
g_error ("error: %s", g_module_error ());
+ /* On Windows static compilation mode, glib API symbols are not
+ * exported dynamically by definition. */
+#if !defined(G_PLATFORM_WIN32) || !defined(GLIB_STATIC_COMPILATION)
if (!g_module_symbol (module_self, "g_module_close", (gpointer *) &f_self))
g_error ("error: %s", g_module_error ());
+#endif
module_a = g_module_open_full (plugin_a, G_MODULE_BIND_LAZY, &error);
g_assert_no_error (error);
diff --git a/tests/qsort-test.c b/tests/qsort-test.c
deleted file mode 100644
index 67abb23af..000000000
--- a/tests/qsort-test.c
+++ /dev/null
@@ -1,33 +0,0 @@
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
-
-#include <glib.h>
-
-#define SIZE 100000
-
-guint32 array[SIZE];
-
-static gint
-sort (gconstpointer a, gconstpointer b, gpointer user_data)
-{
- return *(guint32*)a < *(guint32*)b ? -1 : 1;
-}
-
-int
-main (int argc, char **argv)
-{
- int i;
-
- for (i = 0; i < SIZE; i++)
- array[i] = g_random_int ();
-
- g_qsort_with_data (array, SIZE, sizeof (guint32), sort, NULL);
-
- for (i = 0; i < SIZE - 1; i++)
- g_assert (array[i] <= array[i+1]);
-
- /* 0 elements is a valid case */
- g_qsort_with_data (array, 0, sizeof (guint32), sort, NULL);
-
- return 0;
-}
diff --git a/tests/run-collate-tests.sh b/tests/run-collate-tests.sh
deleted file mode 100755
index fe6f020b1..000000000
--- a/tests/run-collate-tests.sh
+++ /dev/null
@@ -1,36 +0,0 @@
-#! /bin/sh
-
-fail ()
-{
- echo "Test failed: $*"
- exit 1
-}
-
-echo_v ()
-{
- if [ "$verbose" = "1" ]; then
- echo "$*"
- fi
-}
-
-if [ "$1" = "-v" ]; then
- verbose=1
-fi
-for I in "${srcdir:-.}"/collate/*.in; do
- echo_v "Sorting $I"
- name=$(basename "${I}" .in)
- ./unicode-collate "${I}" > collate.out
- if [ $? -eq 2 ]; then
- exit 0
- fi
- diff collate.out "${srcdir:-.}/collate/$name.unicode" ||
- fail "unexpected error when using g_utf8_collate() on $I"
- ./unicode-collate --key "${I}" > collate.out
- diff collate.out "${srcdir:-.}/collate/$name.unicode" ||
- fail "unexpected error when using g_utf8_collate_key() on $I"
- ./unicode-collate --file "${I}" > collate.out
- diff collate.out "${srcdir:-.}/collate/$name.file" ||
- fail "unexpected error when using g_utf8_collate_key_for_filename() on $I"
-done
-
-echo_v "All tests passed."
diff --git a/tests/slice-color.c b/tests/slice-color.c
deleted file mode 100644
index bcbb9709e..000000000
--- a/tests/slice-color.c
+++ /dev/null
@@ -1,177 +0,0 @@
-/* GLIB sliced memory - fast threaded memory chunk allocator
- * Copyright (C) 2005 Tim Janik
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
- */
-#include <glib.h>
-#include <string.h>
-
-#define ALIGN(size, base) ((base) * (gsize) (((size) + (base) - 1) / (base)))
-
-static gdouble parse_memsize (const gchar *cstring);
-static void usage (void);
-
-static void
-fill_memory (guint **mem,
- guint n,
- guint val)
-{
- guint j, o = 0;
- for (j = 0; j < n; j++)
- mem[j][o] = val;
-}
-
-static guint64
-access_memory3 (guint **mema,
- guint **memb,
- guint **memd,
- guint n,
- guint64 repeats)
-{
- guint64 accu = 0, i, j;
- const guint o = 0;
- for (i = 0; i < repeats; i++)
- {
- for (j = 1; j < n; j += 2)
- memd[j][o] = mema[j][o] + memb[j][o];
- }
- for (i = 0; i < repeats; i++)
- for (j = 0; j < n; j++)
- accu += memd[j][o];
- return accu;
-}
-
-static void
-touch_mem (guint64 block_size,
- guint64 n_blocks,
- guint64 repeats)
-{
- guint64 j, accu, n = n_blocks;
- GTimer *timer;
- guint **memc;
- guint **memb;
- guint **mema = g_new (guint*, n);
- for (j = 0; j < n; j++)
- mema[j] = g_slice_alloc (block_size);
- memb = g_new (guint*, n);
- for (j = 0; j < n; j++)
- memb[j] = g_slice_alloc (block_size);
- memc = g_new (guint*, n);
- for (j = 0; j < n; j++)
- memc[j] = g_slice_alloc (block_size);
-
- timer = g_timer_new();
- fill_memory (mema, n, 2);
- fill_memory (memb, n, 3);
- fill_memory (memc, n, 4);
- access_memory3 (mema, memb, memc, n, 3);
- g_timer_start (timer);
- accu = access_memory3 (mema, memb, memc, n, repeats);
- g_timer_stop (timer);
-
- g_print ("Access-time = %fs\n", g_timer_elapsed (timer, NULL));
- g_assert (accu / repeats == (2 + 3) * n / 2 + 4 * n / 2);
-
- for (j = 0; j < n; j++)
- {
- g_slice_free1 (block_size, mema[j]);
- g_slice_free1 (block_size, memb[j]);
- g_slice_free1 (block_size, memc[j]);
- }
- g_timer_destroy (timer);
- g_free (mema);
- g_free (memb);
- g_free (memc);
-}
-
-static void
-usage (void)
-{
- g_print ("Usage: slice-color <block-size> [memory-size] [repeats] [colorization]\n");
-}
-
-int
-main (int argc,
- char *argv[])
-{
- guint64 block_size = 512, area_size = 1024 * 1024, n_blocks, repeats = 1000000;
-
- if (argc > 1)
- block_size = parse_memsize (argv[1]);
- else
- {
- usage();
- block_size = 512;
- }
- if (argc > 2)
- area_size = parse_memsize (argv[2]);
- if (argc > 3)
- repeats = parse_memsize (argv[3]);
- if (argc > 4)
- g_slice_set_config (G_SLICE_CONFIG_COLOR_INCREMENT, parse_memsize (argv[4]));
-
- /* figure number of blocks from block and area size.
- * divide area by 3 because touch_mem() allocates 3 areas
- */
- n_blocks = area_size / 3 / ALIGN (block_size, sizeof (gsize) * 2);
-
- /* basic sanity checks */
- if (!block_size || !n_blocks || block_size >= area_size)
- {
- g_printerr ("Invalid arguments: block-size=%" G_GUINT64_FORMAT " memory-size=%" G_GUINT64_FORMAT "\n", block_size, area_size);
- usage();
- return 1;
- }
-
- g_printerr ("Will allocate and touch %" G_GUINT64_FORMAT " blocks of %" G_GUINT64_FORMAT " bytes (= %" G_GUINT64_FORMAT " bytes) %" G_GUINT64_FORMAT " times with color increment: 0x%08" G_GINT64_MODIFIER "x\n",
- n_blocks, block_size, n_blocks * block_size, repeats,
- (guint64)g_slice_get_config (G_SLICE_CONFIG_COLOR_INCREMENT));
-
- touch_mem (block_size, n_blocks, repeats);
-
- return 0;
-}
-
-static gdouble
-parse_memsize (const gchar *cstring)
-{
- gchar *mem = g_strdup (cstring);
- gchar *string = g_strstrip (mem);
- guint l = strlen (string);
- gdouble f = 0;
- gchar *derr = NULL;
- gdouble msize;
-
- switch (l ? string[l - 1] : 0)
- {
- case 'k': f = 1000; break;
- case 'K': f = 1024; break;
- case 'm': f = 1000000; break;
- case 'M': f = 1024 * 1024; break;
- case 'g': f = 1000000000; break;
- case 'G': f = 1024 * 1024 * 1024; break;
- }
- if (f)
- string[l - 1] = 0;
- msize = g_ascii_strtod (string, &derr);
- g_free (mem);
- if (derr && *derr)
- {
- g_printerr ("failed to parse number at: %s\n", derr);
- msize = 0;
- }
- if (f)
- msize *= f;
- return msize;
-}
diff --git a/tests/slice-test.c b/tests/slice-test.c
index 055adba5c..b2cd77f01 100644
--- a/tests/slice-test.c
+++ b/tests/slice-test.c
@@ -28,7 +28,7 @@ static gboolean want_corruption = FALSE;
/* --- old memchunk prototypes (memchunks.c) --- */
GMemChunk* old_mem_chunk_new (const gchar *name,
- gint atom_size,
+ gulong atom_size,
gulong area_size,
gint type);
void old_mem_chunk_destroy (GMemChunk *mem_chunk);
@@ -95,8 +95,7 @@ test_memchunk_thread (gpointer data)
}
/* prepare for memchunk creation */
- memchunks = g_alloca (sizeof (memchunks[0]) * prime_size);
- memset (memchunks, 0, sizeof (memchunks[0]) * prime_size);
+ memchunks = g_newa0 (GMemChunk*, prime_size);
ps = g_new (guint8*, number_of_blocks);
ss = g_new (guint, number_of_blocks);
diff --git a/tests/sources.c b/tests/sources.c
deleted file mode 100644
index e9a8407dc..000000000
--- a/tests/sources.c
+++ /dev/null
@@ -1,185 +0,0 @@
-/* This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
- *
- * Copyright 2012 Red Hat, Inc
- */
-
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
-
-#include <glib.h>
-
-#define NSOURCES 50000
-
-static gboolean
-callback (gpointer user_data)
-{
- g_assert_not_reached ();
- return FALSE;
-}
-
-static void
-shuffle (GSource **sources, int num)
-{
- int i, a, b;
- GSource *tmp;
-
- for (i = 0; i < num * 10; i++)
- {
- a = g_random_int_range (0, num);
- b = g_random_int_range (0, num);
- tmp = sources[a];
- sources[a] = sources[b];
- sources[b] = tmp;
- }
-}
-
-static void
-thread_pool_attach_func (gpointer data,
- gpointer user_data)
-{
- GMainContext *context = user_data;
- GSource *source = data;
-
- g_source_attach (source, context);
- g_source_unref (source);
-}
-
-static void
-thread_pool_destroy_func (gpointer data,
- gpointer user_data)
-{
- GSource *source = data;
-
- g_source_destroy (source);
-}
-
-int
-main (int argc, char **argv)
-{
- int i;
- gint64 start;
- gint64 end;
- GMainContext *context;
- GSource **sources;
- GThreadPool *pool;
- GError *error = NULL;
-
- context = g_main_context_default ();
- sources = g_new0 (GSource *, NSOURCES);
-
- start = g_get_monotonic_time ();
- for (i = 0; i < NSOURCES; i++)
- {
- sources[i] = g_idle_source_new ();
- g_source_set_callback (sources[i], callback, NULL, NULL);
- g_source_attach (sources[i], context);
- }
- end = g_get_monotonic_time ();
- g_print ("Add same-priority sources: %" G_GINT64_FORMAT "\n",
- (end - start) / 1000);
-
-#ifdef SLOW
- start = g_get_monotonic_time ();
- for (i = 0; i < NSOURCES; i++)
- g_assert (sources[i] == g_main_context_find_source_by_id (context, g_source_get_id (sources[i])));
- end = g_get_monotonic_time ();
- g_print ("Find each source: %" G_GINT64_FORMAT "\n",
- (end - start) / 1000);
-#endif
-
- shuffle (sources, NSOURCES);
-
- start = g_get_monotonic_time ();
- for (i = 0; i < NSOURCES; i++)
- {
- g_source_destroy (sources[i]);
- g_source_unref (sources[i]);
- }
- end = g_get_monotonic_time ();
- g_print ("Remove in random order: %" G_GINT64_FORMAT "\n",
- (end - start) / 1000);
-
- /* Make sure they really did get removed */
- g_main_context_iteration (context, FALSE);
-
- start = g_get_monotonic_time ();
- for (i = 0; i < NSOURCES; i++)
- {
- sources[i] = g_idle_source_new ();
- g_source_set_callback (sources[i], callback, NULL, NULL);
- g_source_set_priority (sources[i], i % 100);
- g_source_attach (sources[i], context);
- }
- end = g_get_monotonic_time ();
- g_print ("Add different-priority sources: %" G_GINT64_FORMAT "\n",
- (end - start) / 1000);
-
-#ifdef SLOW
- start = g_get_monotonic_time ();
- for (i = 0; i < NSOURCES; i++)
- g_assert (sources[i] == g_main_context_find_source_by_id (context, g_source_get_id (sources[i])));
- end = g_get_monotonic_time ();
- g_print ("Find each source: %" G_GINT64_FORMAT "\n",
- (end - start) / 1000);
-#endif
-
- shuffle (sources, NSOURCES);
-
- start = g_get_monotonic_time ();
- for (i = 0; i < NSOURCES; i++)
- {
- g_source_destroy (sources[i]);
- g_source_unref (sources[i]);
- }
- end = g_get_monotonic_time ();
- g_print ("Remove in random order: %" G_GINT64_FORMAT "\n",
- (end - start) / 1000);
-
- /* Make sure they really did get removed */
- g_main_context_iteration (context, FALSE);
-
- pool = g_thread_pool_new (thread_pool_attach_func, context,
- 20, TRUE, NULL);
- start = g_get_monotonic_time ();
- for (i = 0; i < NSOURCES; i++)
- {
- sources[i] = g_idle_source_new ();
- g_source_set_callback (sources[i], callback, NULL, NULL);
- g_thread_pool_push (pool, sources[i], &error);
- g_assert_no_error (error);
- }
- g_thread_pool_free (pool, FALSE, TRUE);
- end = g_get_monotonic_time ();
- g_print ("Add sources from threads: %" G_GINT64_FORMAT "\n",
- (end - start) / 1000);
-
- pool = g_thread_pool_new (thread_pool_destroy_func, context,
- 20, TRUE, NULL);
- start = g_get_monotonic_time ();
- for (i = 0; i < NSOURCES; i++)
- {
- g_thread_pool_push (pool, sources[i], &error);
- g_assert_no_error (error);
- }
- g_thread_pool_free (pool, FALSE, TRUE);
- end = g_get_monotonic_time ();
- g_print ("Remove sources from threads: %" G_GINT64_FORMAT "\n",
- (end - start) / 1000);
-
- /* Make sure they really did get removed */
- g_main_context_iteration (context, FALSE);
-
- g_free (sources);
- return 0;
-}
diff --git a/tests/testgdate.c b/tests/testgdate.c
deleted file mode 100644
index 371d8addf..000000000
--- a/tests/testgdate.c
+++ /dev/null
@@ -1,513 +0,0 @@
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
-
-#ifdef GLIB_COMPILATION
-#undef GLIB_COMPILATION
-#endif
-
-#include "glib.h"
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <locale.h>
-#include <time.h>
-
-gboolean failed = FALSE;
-guint32 passed = 0;
-guint32 notpassed = 0;
-
-#define TEST(m,cond) G_STMT_START { failed = !(cond); \
-if (failed) \
- { ++notpassed; \
- if (!m) \
- g_print ("\n(%s:%d) failed for: %s\n", __FILE__, __LINE__, ( # cond )); \
- else \
- g_print ("\n(%s:%d) failed for: %s: (%s)\n", __FILE__, __LINE__, ( # cond ), (gchar*)m); \
- } \
-else \
- ++passed; \
-if ((passed+notpassed) % 10000 == 0) \
- g_print ("."); \
-fflush (stdout); \
-} G_STMT_END
-
-static void
-g_date_debug_print (GDate* d)
-{
- if (!d) g_print("NULL!\n");
- else
- g_print("julian: %u (%s) DMY: %u %u %u (%s)\n",
- d->julian_days,
- d->julian ? "valid" : "invalid",
- d->day,
- d->month,
- d->year,
- d->dmy ? "valid" : "invalid");
-
- fflush(stdout);
-}
-
-int main(int argc, char** argv)
-{
- GDate* d;
- guint32 j;
- GDateMonth m;
- GDateYear y, prev_y;
- GDateDay day;
- gchar buf[101];
- gchar* loc;
- /* Try to get all the leap year cases. */
- GDateYear check_years[] = {
- 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
- 11, 12, 13, 14, 98, 99, 100, 101, 102, 103, 397,
- 398, 399, 400, 401, 402, 403, 404, 405, 406,
- 1598, 1599, 1600, 1601, 1602, 1650, 1651,
- 1897, 1898, 1899, 1900, 1901, 1902, 1903,
- 1961, 1962, 1963, 1964, 1965, 1967,
- 1968, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976,
- 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985,
- 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
- 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
- 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012,
- 3000, 3001, 3002, 3998, 3999, 4000, 4001, 4002, 4003
- };
- guint n_check_years = sizeof(check_years)/sizeof(GDateYear);
- guint i, k;
- gboolean discontinuity;
-
- g_print("checking GDate...");
-
- TEST("sizeof(GDate) is not more than 8 bytes on this platform", sizeof(GDate) < 9);
-
- d = g_date_new();
-
- TEST("Empty constructor produces invalid date", !g_date_valid(d));
-
- g_date_free(d);
-
- d = g_date_new_dmy(1,1,1);
-
- TEST("January 1, Year 1 created and valid", g_date_valid(d));
-
- j = g_date_get_julian(d);
-
- TEST("January 1, Year 1 is Julian date 1", j == 1);
-
- TEST("Returned month is January", g_date_get_month(d) == G_DATE_JANUARY);
- TEST("Returned day is 1", g_date_get_day(d) == 1);
- TEST("Returned year is 1", g_date_get_year(d) == 1);
-
- TEST("Bad month is invalid", !g_date_valid_month(G_DATE_BAD_MONTH));
- TEST("Month 13 is invalid", !g_date_valid_month(13));
- TEST("Bad day is invalid", !g_date_valid_day(G_DATE_BAD_DAY));
- TEST("Day 32 is invalid", !g_date_valid_day(32));
- TEST("Bad year is invalid", !g_date_valid_year(G_DATE_BAD_YEAR));
- TEST("Bad julian is invalid", !g_date_valid_julian(G_DATE_BAD_JULIAN));
- TEST("Bad weekday is invalid", !g_date_valid_weekday(G_DATE_BAD_WEEKDAY));
- TEST("Year 2000 is a leap year", g_date_is_leap_year(2000));
- TEST("Year 1999 is not a leap year", !g_date_is_leap_year(1999));
- TEST("Year 1996 is a leap year", g_date_is_leap_year(1996));
- TEST("Year 1600 is a leap year", g_date_is_leap_year(1600));
- TEST("Year 2100 is not a leap year", !g_date_is_leap_year(2100));
- TEST("Year 1800 is not a leap year", !g_date_is_leap_year(1800));
-
- g_date_free(d);
-
- loc = setlocale(LC_ALL,"");
- if (loc)
- g_print("\nLocale set to %s\n", loc);
- else
- g_print("\nLocale unchanged\n");
-
- d = g_date_new();
- g_date_set_time(d, time(NULL));
- TEST("Today is valid", g_date_valid(d));
-
- g_date_strftime(buf,100,"Today is a %A, %x\n", d);
- g_print("%s", buf);
-
- g_date_set_time(d, 1);
- TEST("Beginning of Unix epoch is valid", g_date_valid(d));
-
- g_date_strftime(buf,100,"1 second into the Unix epoch it was a %A, in the month of %B, %x\n", d);
- g_print("%s", buf);
-
- g_date_set_julian(d, 1);
- TEST("GDate's \"Julian\" epoch's first day is valid", g_date_valid(d));
-
-#ifndef G_OS_WIN32
- g_date_strftime(buf,100,"Our \"Julian\" epoch begins on a %A, in the month of %B, %x\n",
- d);
- g_print("%s", buf);
-#else
- g_print ("But Windows FILETIME does not support dates before Jan 1 1601, so we can't strftime() the beginning of the \"Julian\" epoch.\n");
-#endif
- g_date_set_dmy(d, 10, 1, 2000);
-
- g_date_strftime(buf,100,"%x", d);
-
- g_date_set_parse(d, buf);
- /* Note: this test will hopefully work, but no promises. */
- TEST("Successfully parsed a %x-formatted string",
- g_date_valid(d) &&
- g_date_get_month(d) == 1 &&
- g_date_get_day(d) == 10 &&
- g_date_get_year(d) == 2000);
- if (failed)
- g_date_debug_print(d);
-
- g_date_free(d);
-
- j = G_DATE_BAD_JULIAN;
-
- i = 0;
- discontinuity = TRUE;
- y = check_years[0];
- prev_y = G_DATE_BAD_YEAR;
-g_print ("testing %d years\n", n_check_years);
- while (i < n_check_years)
- {
- guint32 first_day_of_year = G_DATE_BAD_JULIAN;
- guint16 days_in_year = g_date_is_leap_year(y) ? 366 : 365;
- guint sunday_week_of_year = 0;
- guint sunday_weeks_in_year = g_date_get_sunday_weeks_in_year(y);
- guint monday_week_of_year = 0;
- guint monday_weeks_in_year = g_date_get_monday_weeks_in_year(y);
- guint iso8601_week_of_year = 0;
-
- if (discontinuity)
- g_print(" (Break in sequence of requested years to check)\n");
-
- g_print("Checking year %u", y);
-
- TEST("Year is valid", g_date_valid_year(y));
-
- TEST("Number of Sunday weeks in year is 52 or 53",
- sunday_weeks_in_year == 52 || sunday_weeks_in_year == 53);
-
- TEST("Number of Monday weeks in year is 52 or 53",
- monday_weeks_in_year == 52 || monday_weeks_in_year == 53);
-
- m = 1;
- while (m < 13)
- {
- guint8 dim = g_date_get_days_in_month(m,y);
- GDate days[31]; /* This is the fast way, no allocation */
-
- TEST("Sensible number of days in month", (dim > 0 && dim < 32));
-
- TEST("Month between 1 and 12 is valid", g_date_valid_month(m));
-
- day = 1;
-
- g_date_clear(days, 31);
-
- while (day <= dim)
- {
- GDate tmp;
-
- TEST("DMY triplet is valid", g_date_valid_dmy(day,m,y));
-
- /* Create GDate with triplet */
-
- d = &days[day-1];
-
- TEST("Cleared day is invalid", !g_date_valid(d));
-
- g_date_set_dmy(d,day,m,y);
-
- TEST("Set day is valid", g_date_valid(d));
-
- if (m == G_DATE_JANUARY && day == 1)
- {
- first_day_of_year = g_date_get_julian(d);
- }
-
- g_assert(first_day_of_year != G_DATE_BAD_JULIAN);
-
- TEST("Date with DMY triplet is valid", g_date_valid(d));
- TEST("Month accessor works", g_date_get_month(d) == m);
- TEST("Year accessor works", g_date_get_year(d) == y);
- TEST("Day of month accessor works", g_date_get_day(d) == day);
-
- TEST("Day of year is consistent with Julian dates",
- ((g_date_get_julian(d) + 1 - first_day_of_year) ==
- (g_date_get_day_of_year(d))));
-
- if (failed)
- {
- g_print("first day: %u this day: %u day of year: %u\n",
- first_day_of_year,
- g_date_get_julian(d),
- g_date_get_day_of_year(d));
- }
-
- if (m == G_DATE_DECEMBER && day == 31)
- {
- TEST("Last day of year equals number of days in year",
- g_date_get_day_of_year(d) == days_in_year);
- if (failed)
- {
- g_print("last day: %u days in year: %u\n",
- g_date_get_day_of_year(d), days_in_year);
- }
- }
-
- TEST("Day of year is not more than number of days in the year",
- g_date_get_day_of_year(d) <= days_in_year);
-
- TEST("Monday week of year is not more than number of weeks in the year",
- g_date_get_monday_week_of_year(d) <= monday_weeks_in_year);
- if (failed)
- {
- g_print("Weeks in year: %u\n", monday_weeks_in_year);
- g_date_debug_print(d);
- }
- TEST("Monday week of year is >= than last week of year",
- g_date_get_monday_week_of_year(d) >= monday_week_of_year);
-
- if (g_date_get_weekday(d) == G_DATE_MONDAY)
- {
-
- TEST("Monday week of year on Monday 1 more than previous day's week of year",
- (g_date_get_monday_week_of_year(d) - monday_week_of_year) == 1);
- if ((m == G_DATE_JANUARY && day <= 4) ||
- (m == G_DATE_DECEMBER && day >= 29)) {
- TEST("ISO 8601 week of year on Monday Dec 29 - Jan 4 is 1",
- (g_date_get_iso8601_week_of_year(d) == 1));
- } else {
- TEST("ISO 8601 week of year on Monday 1 more than previous day's week of year",
- (g_date_get_iso8601_week_of_year(d) - iso8601_week_of_year) == 1);
- }
- }
- else
- {
- TEST("Monday week of year on non-Monday 0 more than previous day's week of year",
- (g_date_get_monday_week_of_year(d) - monday_week_of_year) == 0);
- if (!(day == 1 && m == G_DATE_JANUARY)) {
- TEST("ISO 8601 week of year on non-Monday 0 more than previous day's week of year (",
- (g_date_get_iso8601_week_of_year(d) - iso8601_week_of_year) == 0);
- }
- }
-
-
- monday_week_of_year = g_date_get_monday_week_of_year(d);
- iso8601_week_of_year = g_date_get_iso8601_week_of_year(d);
-
-
- TEST("Sunday week of year is not more than number of weeks in the year",
- g_date_get_sunday_week_of_year(d) <= sunday_weeks_in_year);
- if (failed)
- {
- g_date_debug_print(d);
- }
- TEST("Sunday week of year is >= than last week of year",
- g_date_get_sunday_week_of_year(d) >= sunday_week_of_year);
-
- if (g_date_get_weekday(d) == G_DATE_SUNDAY)
- {
- TEST("Sunday week of year on Sunday 1 more than previous day's week of year",
- (g_date_get_sunday_week_of_year(d) - sunday_week_of_year) == 1);
- }
- else
- {
- TEST("Sunday week of year on non-Sunday 0 more than previous day's week of year",
- (g_date_get_sunday_week_of_year(d) - sunday_week_of_year) == 0);
- }
-
- sunday_week_of_year = g_date_get_sunday_week_of_year(d);
-
- TEST("Date is equal to itself",
- g_date_compare(d,d) == 0);
-
-
- /*************** Increments ***********/
-
- k = 1;
- while (k < 402) /* Need to get 400 year increments in */
- {
-
- /***** Days ******/
- tmp = *d;
- g_date_add_days(d, k);
-
- TEST("Adding days gives a value greater than previous",
- g_date_compare(d, &tmp) > 0);
-
- g_date_subtract_days(d, k);
- TEST("Forward days then backward days returns us to current day",
- g_date_get_day(d) == day);
-
- if (failed)
- {
- g_print(" (increment %u, dmy %u %u %u) ", k, day, m, y);
- g_date_debug_print(d);
- }
-
- TEST("Forward days then backward days returns us to current month",
- g_date_get_month(d) == m);
-
- if (failed)
- {
- g_print(" (increment %u, dmy %u %u %u) ", k, day, m, y);
- g_date_debug_print(d);
- }
-
- TEST("Forward days then backward days returns us to current year",
- g_date_get_year(d) == y);
-
- if (failed)
- {
- g_print(" (increment %u, dmy %u %u %u) ", k, day, m, y);
- g_date_debug_print(d);
- }
-
- /******* Months ********/
-
- tmp = *d;
- g_date_add_months(d, k);
- TEST("Adding months gives a larger value",
- g_date_compare(d, &tmp) > 0);
- g_date_subtract_months(d, k);
-
- TEST("Forward months then backward months returns us to current month",
- g_date_get_month(d) == m);
-
- if (failed)
- {
- g_print(" (increment %u, dmy %u %u %u) ", k, day, m, y);
- g_date_debug_print(d);
- }
-
- TEST("Forward months then backward months returns us to current year",
- g_date_get_year(d) == y);
-
- if (failed)
- {
- g_print(" (increment %u, dmy %u %u %u) ", k, day, m, y);
- g_date_debug_print(d);
- }
-
-
- if (day < 29)
- {
- /* Day should be unchanged */
-
- TEST("Forward months then backward months returns us to current day",
- g_date_get_day(d) == day);
-
- if (failed)
- {
- g_print(" (increment %u, dmy %u %u %u) ", k, day, m, y);
- g_date_debug_print(d);
- }
- }
- else
- {
- /* reset the day for later tests */
- g_date_set_day(d, day);
- }
-
- /******* Years ********/
-
- tmp = *d;
- g_date_add_years(d, k);
-
- TEST("Adding years gives a larger value",
- g_date_compare(d,&tmp) > 0);
-
- g_date_subtract_years(d, k);
-
- TEST("Forward years then backward years returns us to current month",
- g_date_get_month(d) == m);
-
- if (failed)
- {
- g_print(" (increment %u, dmy %u %u %u) ", k, day, m, y);
- g_date_debug_print(d);
- }
-
- TEST("Forward years then backward years returns us to current year",
- g_date_get_year(d) == y);
-
- if (failed)
- {
- g_print(" (increment %u, dmy %u %u %u) ", k, day, m, y);
- g_date_debug_print(d);
- }
-
- if (m != 2 && day != 29)
- {
- TEST("Forward years then backward years returns us to current day",
- g_date_get_day(d) == day);
-
- if (failed)
- {
- g_print(" (increment %u, dmy %u %u %u) ", k, day, m, y);
- g_date_debug_print(d);
- }
- }
- else
- {
- g_date_set_day(d, day); /* reset */
- }
-
- k += 10;
- }
-
- /***** increment test relative to our local Julian count */
-
- if (!discontinuity) {
-
- /* We can only run sequence tests between sequential years */
-
- TEST("Julians are sequential with increment 1",
- j+1 == g_date_get_julian(d));
- if (failed)
- {
- g_print("Out of sequence, prev: %u expected: %u got: %u\n",
- j, j+1, g_date_get_julian(d));
- }
-
- g_date_add_days(d,1);
- TEST("Next day has julian 1 higher",
- g_date_get_julian(d) == j + 2);
- g_date_subtract_days(d, 1);
-
- if (j != G_DATE_BAD_JULIAN)
- {
- g_date_subtract_days(d, 1);
-
- TEST("Previous day has julian 1 lower",
- g_date_get_julian(d) == j);
-
- g_date_add_days(d, 1); /* back to original */
- }
- }
- discontinuity = FALSE; /* goes away now */
-
- fflush(stdout);
- fflush(stderr);
-
- j = g_date_get_julian(d); /* inc current julian */
-
- ++day;
- }
- ++m;
- }
- g_print(" done\n");
- ++i;
- if (i == n_check_years)
- break;
- prev_y = y;
- y = check_years[i];
- if (prev_y == G_DATE_BAD_YEAR ||
- (prev_y + 1) != y) discontinuity = TRUE;
- }
-
-
- g_print("\n%u tests passed, %u failed\n",passed, notpassed);
-
- return (notpassed == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
-}
diff --git a/tests/testgdateparser.c b/tests/testgdateparser.c
deleted file mode 100644
index 81cbadb67..000000000
--- a/tests/testgdateparser.c
+++ /dev/null
@@ -1,98 +0,0 @@
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
-
-#ifdef GLIB_COMPILATION
-#undef GLIB_COMPILATION
-#endif
-
-#include "glib.h"
-
-#include <stdio.h>
-#include <string.h>
-#include <locale.h>
-
-/* These only work in the POSIX locale, maybe C too -
- * type POSIX into the program to check them
- */
-char* posix_tests [] = {
- "19981024",
- "981024",
- "October 1998",
- "October 98",
- "oCT 98",
- "10/24/98",
- "10 -- 24 -- 98",
- "10/24/1998",
- "October 24, 1998",
- NULL
-};
-
-int main(int argc, char** argv)
-{
- GDate* d;
- gchar* loc;
- gchar input[1024];
-
- loc = setlocale(LC_ALL,"");
- if (loc)
- g_print("\nLocale set to %s\n", loc);
- else
- g_print("\nLocale unchanged\n");
-
- d = g_date_new();
-
- while (fgets(input, 1023, stdin))
- {
- if (input[0] == '\n')
- {
- g_print("Enter a date to parse and press enter, or type 'POSIX':\n");
- continue;
- }
-
- if (strcmp(input,"POSIX\n") == 0)
- {
- char** s = posix_tests;
- while (*s) {
- g_date_set_parse(d, *s);
-
- g_print("POSIXy parse test '%s' ...", *s);
-
- if (!g_date_valid(d))
- {
- g_print(" failed.\n");
- }
- else
- {
- gchar buf[256];
-
- g_date_strftime(buf,100," parsed '%x' (%B %d %Y)\n",
- d);
- g_print("%s", buf);
- }
-
- ++s;
- }
- }
- else
- {
- g_date_set_parse(d, input);
-
- if (!g_date_valid(d))
- {
- g_print("Parse failed.\n");
- }
- else
- {
- gchar buf[256];
-
- g_date_strftime(buf,100,"Parsed: '%x' (%B %d %Y)\n",
- d);
- g_print("%s", buf);
- }
- }
- }
-
- g_date_free(d);
-
- return 0;
-}
diff --git a/tests/testglib.c b/tests/testglib.c
deleted file mode 100644
index 48cd74a2a..000000000
--- a/tests/testglib.c
+++ /dev/null
@@ -1,1923 +0,0 @@
-/* GLIB - Library of useful routines for C programming
- * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, see <http://www.gnu.org/licenses/>.
- */
-
-/*
- * Modified by the GLib Team and others 1997-2000. See the AUTHORS
- * file for a list of people on the GLib Team. See the ChangeLog
- * files for a list of changes. These files are distributed with
- * GLib at ftp://ftp.gtk.org/pub/gtk/.
- */
-
-#undef GLIB_COMPILATION
-
-#include <stdio.h>
-#include <string.h>
-#include <errno.h>
-
-#include "glib.h"
-#include <glib/gstdio.h>
-
-#include <stdlib.h>
-
-#ifdef G_OS_UNIX
-#include <unistd.h>
-#endif
-
-#ifdef G_OS_WIN32
-#include <io.h> /* For read(), write() etc */
-#endif
-
-
-#define GLIB_TEST_STRING "el dorado "
-#define GLIB_TEST_STRING_5 "el do"
-
-
-/* --- variables --- */
-static gint test_nums[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
-static gint more_nums[10] = { 8, 9, 7, 0, 3, 2, 5, 1, 4, 6};
-
-/* --- functions --- */
-static gint
-my_list_compare_one (gconstpointer a, gconstpointer b)
-{
- gint one = *((const gint*)a);
- gint two = *((const gint*)b);
- return one-two;
-}
-
-static gint
-my_list_compare_two (gconstpointer a, gconstpointer b)
-{
- gint one = *((const gint*)a);
- gint two = *((const gint*)b);
- return two-one;
-}
-
-/* static void
-my_list_print (gpointer a, gpointer b)
-{
- gint three = *((gint*)a);
- g_printerr ("%d", three);
-}; */
-
-static void
-glist_test (void)
-{
- GList *list = NULL;
- gint i;
-
- for (i = 0; i < 10; i++)
- list = g_list_append (list, &test_nums[i]);
- list = g_list_reverse (list);
-
- for (i = 0; i < 10; i++)
- {
- GList *t = g_list_nth (list, i);
- if (*((gint*) t->data) != (9 - i))
- g_error ("Regular insert failed");
- }
-
- for (i = 0; i < 10; i++)
- if (g_list_position (list, g_list_nth (list, i)) != i)
- g_error ("g_list_position does not seem to be the inverse of g_list_nth");
-
- g_list_free (list);
- list = NULL;
-
- for (i = 0; i < 10; i++)
- list = g_list_insert_sorted (list, &more_nums[i], my_list_compare_one);
-
- /*
- g_printerr ("\n");
- g_list_foreach (list, my_list_print, NULL);
- */
-
- for (i = 0; i < 10; i++)
- {
- GList *t = g_list_nth (list, i);
- if (*((gint*) t->data) != i)
- g_error ("Sorted insert failed");
- }
-
- g_list_free (list);
- list = NULL;
-
- for (i = 0; i < 10; i++)
- list = g_list_insert_sorted (list, &more_nums[i], my_list_compare_two);
-
- /*
- g_printerr ("\n");
- g_list_foreach (list, my_list_print, NULL);
- */
-
- for (i = 0; i < 10; i++)
- {
- GList *t = g_list_nth (list, i);
- if (*((gint*) t->data) != (9 - i))
- g_error ("Sorted insert failed");
- }
-
- g_list_free (list);
- list = NULL;
-
- for (i = 0; i < 10; i++)
- list = g_list_prepend (list, &more_nums[i]);
-
- list = g_list_sort (list, my_list_compare_two);
-
- /*
- g_printerr ("\n");
- g_list_foreach (list, my_list_print, NULL);
- */
-
- for (i = 0; i < 10; i++)
- {
- GList *t = g_list_nth (list, i);
- if (*((gint*) t->data) != (9 - i))
- g_error ("Merge sort failed");
- }
-
- g_list_free (list);
-}
-
-static void
-gslist_test (void)
-{
- GSList *slist = NULL;
- gint i;
-
- for (i = 0; i < 10; i++)
- slist = g_slist_append (slist, &test_nums[i]);
- slist = g_slist_reverse (slist);
-
- for (i = 0; i < 10; i++)
- {
- GSList *st = g_slist_nth (slist, i);
- if (*((gint*) st->data) != (9 - i))
- g_error ("failed");
- }
-
- g_slist_free (slist);
- slist = NULL;
-
- for (i = 0; i < 10; i++)
- slist = g_slist_insert_sorted (slist, &more_nums[i], my_list_compare_one);
-
- /*
- g_printerr ("\n");
- g_slist_foreach (slist, my_list_print, NULL);
- */
-
- for (i = 0; i < 10; i++)
- {
- GSList *st = g_slist_nth (slist, i);
- if (*((gint*) st->data) != i)
- g_error ("Sorted insert failed");
- }
-
- g_slist_free (slist);
- slist = NULL;
-
- for (i = 0; i < 10; i++)
- slist = g_slist_insert_sorted (slist, &more_nums[i], my_list_compare_two);
-
- /*
- g_printerr ("\n");
- g_slist_foreach (slist, my_list_print, NULL);
- */
-
- for (i = 0; i < 10; i++)
- {
- GSList *st = g_slist_nth (slist, i);
- if (*((gint*) st->data) != (9 - i))
- g_error("Sorted insert failed");
- }
-
- g_slist_free(slist);
- slist = NULL;
-
- for (i = 0; i < 10; i++)
- slist = g_slist_prepend (slist, &more_nums[i]);
-
- slist = g_slist_sort (slist, my_list_compare_two);
-
- /*
- g_printerr ("\n");
- g_slist_foreach (slist, my_list_print, NULL);
- */
-
- for (i = 0; i < 10; i++)
- {
- GSList *st = g_slist_nth (slist, i);
- if (*((gint*) st->data) != (9 - i))
- g_error("Sorted insert failed");
- }
-
- g_slist_free(slist);
-}
-
-static gboolean
-node_build_string (GNode *node,
- gpointer data)
-{
- gchar **p = data;
- gchar *string;
- gchar c[2] = "_";
-
- c[0] = ((gchar) ((gintptr) (node->data)));
-
- string = g_strconcat (*p ? *p : "", c, NULL);
- g_free (*p);
- *p = string;
-
- return FALSE;
-}
-
-static void
-gnode_test (void)
-{
-#define C2P(c) ((gpointer) ((long) (c)))
-#define P2C(p) ((gchar) ((gintptr) (p)))
- GNode *root;
- GNode *node;
- GNode *node_B;
- GNode *node_F;
- GNode *node_G;
- GNode *node_J;
- guint i;
- gchar *tstring, *cstring;
-
- root = g_node_new (C2P ('A'));
- g_assert (g_node_depth (root) == 1 && g_node_max_height (root) == 1);
-
- node_B = g_node_new (C2P ('B'));
- g_node_append (root, node_B);
- g_assert (root->children == node_B);
-
- g_node_append_data (node_B, C2P ('E'));
- g_node_prepend_data (node_B, C2P ('C'));
- g_node_insert (node_B, 1, g_node_new (C2P ('D')));
-
- node_F = g_node_new (C2P ('F'));
- g_node_append (root, node_F);
- g_assert (root->children->next == node_F);
-
- node_G = g_node_new (C2P ('G'));
- g_node_append (node_F, node_G);
- node_J = g_node_new (C2P ('J'));
- g_node_prepend (node_G, node_J);
- g_node_insert (node_G, 42, g_node_new (C2P ('K')));
- g_node_insert_data (node_G, 0, C2P ('H'));
- g_node_insert (node_G, 1, g_node_new (C2P ('I')));
-
- g_assert (g_node_depth (root) == 1);
- g_assert (g_node_max_height (root) == 4);
- g_assert (g_node_depth (node_G->children->next) == 4);
- g_assert (g_node_n_nodes (root, G_TRAVERSE_LEAFS) == 7);
- g_assert (g_node_n_nodes (root, G_TRAVERSE_NON_LEAFS) == 4);
- g_assert (g_node_n_nodes (root, G_TRAVERSE_ALL) == 11);
- g_assert (g_node_max_height (node_F) == 3);
- g_assert (g_node_n_children (node_G) == 4);
- g_assert (g_node_find_child (root, G_TRAVERSE_ALL, C2P ('F')) == node_F);
- g_assert (g_node_find (root, G_LEVEL_ORDER, G_TRAVERSE_NON_LEAFS, C2P ('I')) == NULL);
- g_assert (g_node_find (root, G_IN_ORDER, G_TRAVERSE_LEAFS, C2P ('J')) == node_J);
-
- for (i = 0; i < g_node_n_children (node_B); i++)
- {
- node = g_node_nth_child (node_B, i);
- g_assert (P2C (node->data) == (gchar) ('C' + i));
- }
-
- for (i = 0; i < g_node_n_children (node_G); i++)
- g_assert (g_node_child_position (node_G, g_node_nth_child (node_G, i)) == (gint) i);
-
- /* we have built: A
- * / \
- * B F
- * / | \ \
- * C D E G
- * / /\ \
- * H I J K
- *
- * for in-order traversal, 'G' is considered to be the "left"
- * child of 'F', which will cause 'F' to be the last node visited.
- */
-
- tstring = NULL;
- g_node_traverse (root, G_PRE_ORDER, G_TRAVERSE_ALL, -1, node_build_string, &tstring);
- g_assert_cmpstr (tstring, ==, "ABCDEFGHIJK");
- g_free (tstring); tstring = NULL;
- g_node_traverse (root, G_POST_ORDER, G_TRAVERSE_ALL, -1, node_build_string, &tstring);
- g_assert_cmpstr (tstring, ==, "CDEBHIJKGFA");
- g_free (tstring); tstring = NULL;
- g_node_traverse (root, G_IN_ORDER, G_TRAVERSE_ALL, -1, node_build_string, &tstring);
- g_assert_cmpstr (tstring, ==, "CBDEAHGIJKF");
- g_free (tstring); tstring = NULL;
- g_node_traverse (root, G_LEVEL_ORDER, G_TRAVERSE_ALL, -1, node_build_string, &tstring);
- g_assert_cmpstr (tstring, ==, "ABFCDEGHIJK");
- g_free (tstring); tstring = NULL;
-
- g_node_traverse (root, G_LEVEL_ORDER, G_TRAVERSE_LEAFS, -1, node_build_string, &tstring);
- g_assert_cmpstr (tstring, ==, "CDEHIJK");
- g_free (tstring); tstring = NULL;
- g_node_traverse (root, G_PRE_ORDER, G_TRAVERSE_NON_LEAFS, -1, node_build_string, &tstring);
- g_assert_cmpstr (tstring, ==, "ABFG");
- g_free (tstring); tstring = NULL;
-
- g_node_reverse_children (node_B);
- g_node_reverse_children (node_G);
-
- g_node_traverse (root, G_LEVEL_ORDER, G_TRAVERSE_ALL, -1, node_build_string, &tstring);
- g_assert_cmpstr (tstring, ==, "ABFEDCGKJIH");
- g_free (tstring); tstring = NULL;
-
- cstring = NULL;
- node = g_node_copy (root);
- g_assert (g_node_n_nodes (root, G_TRAVERSE_ALL) == g_node_n_nodes (node, G_TRAVERSE_ALL));
- g_assert (g_node_max_height (root) == g_node_max_height (node));
- g_node_traverse (root, G_IN_ORDER, G_TRAVERSE_ALL, -1, node_build_string, &tstring);
- g_node_traverse (node, G_IN_ORDER, G_TRAVERSE_ALL, -1, node_build_string, &cstring);
- g_assert_cmpstr (tstring, ==, cstring);
- g_free (tstring); tstring = NULL;
- g_free (cstring); cstring = NULL;
- g_node_destroy (node);
-
- g_node_destroy (root);
-
- /* allocation tests */
-
- root = g_node_new (NULL);
- node = root;
-
- for (i = 0; i < 2048; i++)
- {
- g_node_append (node, g_node_new (NULL));
- if ((i%5) == 4)
- node = node->children->next;
- }
- g_assert (g_node_max_height (root) > 100);
- g_assert (g_node_n_nodes (root, G_TRAVERSE_ALL) == 1 + 2048);
-
- g_node_destroy (root);
-#undef C2P
-#undef P2C
-}
-
-static gint
-my_compare (gconstpointer a,
- gconstpointer b)
-{
- const char *cha = a;
- const char *chb = b;
-
- return *cha - *chb;
-}
-
-static gint
-my_traverse (gpointer key,
- gpointer value,
- gpointer data)
-{
- char *ch = key;
- g_printerr ("%c ", *ch);
- return FALSE;
-}
-
-static void
-binary_tree_bound (GTree *tree,
- char c,
- char expected,
- int lower)
-{
- GTreeNode *node;
-
- if (lower)
- node = g_tree_lower_bound (tree, &c);
- else
- node = g_tree_upper_bound (tree, &c);
-
- if (g_test_verbose ())
- g_printerr ("%c %s: ", c, lower ? "lower" : "upper");
-
- if (!node)
- {
- if (!g_tree_nnodes (tree))
- {
- if (g_test_verbose ())
- g_printerr ("empty tree");
- }
- else
- {
- GTreeNode *last = g_tree_node_last (tree);
-
- g_assert (last);
- if (g_test_verbose ())
- g_printerr ("past end last %c",
- *(char *) g_tree_node_key (last));
- }
- g_assert (expected == '\x00');
- }
- else
- {
- GTreeNode *begin = g_tree_node_first (tree);
- GTreeNode *last = g_tree_node_last (tree);
- GTreeNode *prev = g_tree_node_previous (node);
- GTreeNode *next = g_tree_node_next (node);
-
- g_assert (expected != '\x00');
- g_assert (expected == *(char *) g_tree_node_key (node));
-
- if (g_test_verbose ())
- g_printerr ("%c", *(char *) g_tree_node_key (node));
-
- if (node != begin)
- {
- g_assert (prev);
- if (g_test_verbose ())
- g_printerr (" prev %c", *(char *) g_tree_node_key (prev));
- }
- else
- {
- g_assert (!prev);
- if (g_test_verbose ())
- g_printerr (" no prev, it's the first one");
- }
-
- if (node != last)
- {
- g_assert (next);
- if (g_test_verbose ())
- g_printerr (" next %c", *(char *) g_tree_node_key (next));
- }
- else
- {
- g_assert (!next);
- if (g_test_verbose ())
- g_printerr (" no next, it's the last one");
- }
- }
-
- if (g_test_verbose ())
- g_printerr ("\n");
-}
-
-static void
-binary_tree_bounds (GTree *tree,
- char c,
- int mode)
-{
- char expectedl, expectedu;
- char first = mode == 0 ? '0' : mode == 1 ? 'A' : 'z';
-
- g_assert (mode >= 0 && mode <= 3);
-
- if (c < first)
- expectedl = first;
- else if (c > 'z')
- expectedl = '\x00';
- else
- expectedl = c;
-
- if (c < first)
- expectedu = first;
- else if (c >= 'z')
- expectedu = '\x00';
- else
- expectedu = c == '9' ? 'A' : c == 'Z' ? 'a' : c + 1;
-
- if (mode == 3)
- {
- expectedl = '\x00';
- expectedu = '\x00';
- }
-
- binary_tree_bound (tree, c, expectedl, 1);
- binary_tree_bound (tree, c, expectedu, 0);
-}
-
-static void
-binary_tree_bounds_test (GTree *tree,
- int mode)
-{
- binary_tree_bounds (tree, 'a', mode);
- binary_tree_bounds (tree, 'A', mode);
- binary_tree_bounds (tree, 'z', mode);
- binary_tree_bounds (tree, 'Z', mode);
- binary_tree_bounds (tree, 'Y', mode);
- binary_tree_bounds (tree, '0', mode);
- binary_tree_bounds (tree, '9', mode);
- binary_tree_bounds (tree, '0' - 1, mode);
- binary_tree_bounds (tree, 'z' + 1, mode);
- binary_tree_bounds (tree, '0' - 2, mode);
- binary_tree_bounds (tree, 'z' + 2, mode);
-}
-
-static void
-binary_tree_test (void)
-{
- GQueue queue = G_QUEUE_INIT;
- GTree *tree;
- char chars[62];
- guint i, j;
-
- tree = g_tree_new (my_compare);
- i = 0;
- for (j = 0; j < 10; j++, i++)
- {
- chars[i] = '0' + j;
- g_queue_push_tail (&queue, &chars[i]);
- }
- for (j = 0; j < 26; j++, i++)
- {
- chars[i] = 'A' + j;
- g_queue_push_tail (&queue, &chars[i]);
- }
- for (j = 0; j < 26; j++, i++)
- {
- chars[i] = 'a' + j;
- g_queue_push_tail (&queue, &chars[i]);
- }
-
- if (g_test_verbose ())
- g_printerr ("tree insert: ");
- while (!g_queue_is_empty (&queue))
- {
- gint32 which = g_random_int_range (0, g_queue_get_length (&queue));
- gpointer elem = g_queue_pop_nth (&queue, which);
- GTreeNode *node;
-
- if (g_test_verbose ())
- g_printerr ("%c ", *(char *) elem);
-
- node = g_tree_insert_node (tree, elem, elem);
- g_assert (g_tree_node_key (node) == elem);
- g_assert (g_tree_node_value (node) == elem);
- }
- if (g_test_verbose ())
- g_printerr ("\n");
-
- g_assert_cmpint (g_tree_nnodes (tree), ==, 10 + 26 + 26);
- g_assert_cmpint (g_tree_height (tree), >=, 6);
- g_assert_cmpint (g_tree_height (tree), <=, 8);
-
- if (g_test_verbose ())
- {
- g_printerr ("tree: ");
- g_tree_foreach (tree, my_traverse, NULL);
- g_printerr ("\n");
- }
-
- binary_tree_bounds_test (tree, 0);
-
- for (i = 0; i < 10; i++)
- g_tree_remove (tree, &chars[i]);
-
- g_assert_cmpint (g_tree_nnodes (tree), ==, 26 + 26);
- g_assert_cmpint (g_tree_height (tree), >=, 6);
- g_assert_cmpint (g_tree_height (tree), <=, 8);
-
- if (g_test_verbose ())
- {
- g_printerr ("tree: ");
- g_tree_foreach (tree, my_traverse, NULL);
- g_printerr ("\n");
- }
-
- binary_tree_bounds_test (tree, 1);
-
- for (i = 10; i < 10 + 26 + 26 - 1; i++)
- g_tree_remove (tree, &chars[i]);
-
- if (g_test_verbose ())
- {
- g_printerr ("tree: ");
- g_tree_foreach (tree, my_traverse, NULL);
- g_printerr ("\n");
- }
-
- binary_tree_bounds_test (tree, 2);
-
- g_tree_remove (tree, &chars[10 + 26 + 26 - 1]);
-
- if (g_test_verbose ())
- g_printerr ("empty tree\n");
-
- binary_tree_bounds_test (tree, 3);
-
- g_tree_unref (tree);
-}
-
-static gboolean
-my_hash_callback_remove (gpointer key,
- gpointer value,
- gpointer user_data)
-{
- int *d = value;
-
- if ((*d) % 2)
- return TRUE;
-
- return FALSE;
-}
-
-static void
-my_hash_callback_remove_test (gpointer key,
- gpointer value,
- gpointer user_data)
-{
- int *d = value;
-
- if ((*d) % 2)
- g_error ("hash table entry %d should have been removed already", *d);
-}
-
-static void
-my_hash_callback (gpointer key,
- gpointer value,
- gpointer user_data)
-{
- int *d = value;
- *d = 1;
-}
-
-static guint
-my_hash (gconstpointer key)
-{
- return (guint) *((const gint*) key);
-}
-
-static gboolean
-my_hash_equal (gconstpointer a,
- gconstpointer b)
-{
- return *((const gint*) a) == *((const gint*) b);
-}
-
-static gboolean
-find_first_that(gpointer key,
- gpointer value,
- gpointer user_data)
-{
- gint *v = value;
- gint *test = user_data;
- return (*v == *test);
-}
-
-static void
-test_g_parse_debug_string (void)
-{
- GDebugKey keys[] = {
- { "foo", 1 },
- { "bar", 2 },
- { "baz", 4 },
- { "weird", 8 },
- };
- guint n_keys = G_N_ELEMENTS (keys);
- guint result;
-
- result = g_parse_debug_string ("bar:foo:blubb", keys, n_keys);
- g_assert (result == 3);
-
- result = g_parse_debug_string (":baz::_E@~!_::", keys, n_keys);
- g_assert (result == 4);
-
- result = g_parse_debug_string ("", keys, n_keys);
- g_assert (result == 0);
-
- result = g_parse_debug_string (" : ", keys, n_keys);
- g_assert (result == 0);
-
- result = g_parse_debug_string ("all", keys, n_keys);
- g_assert_cmpuint (result, ==, (1 << n_keys) - 1);
-
- /* Test subtracting debug flags from "all" */
- result = g_parse_debug_string ("all:foo", keys, n_keys);
- g_assert_cmpuint (result, ==, 2 | 4 | 8);
-
- result = g_parse_debug_string ("foo baz,all", keys, n_keys);
- g_assert_cmpuint (result, ==, 2 | 8);
-
- result = g_parse_debug_string ("all,fooo,baz", keys, n_keys);
- g_assert_cmpuint (result, ==, 1 | 2 | 8);
-
- result = g_parse_debug_string ("all:weird", keys, n_keys);
- g_assert_cmpuint (result, ==, 1 | 2 | 4);
-}
-
-static void
-log_warning_error_tests (void)
-{
- g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_MESSAGE,
- "*is a g_message test*");
- g_message ("this is a g_message test.");
- g_test_assert_expected_messages ();
-
- g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_MESSAGE,
- "*non-printable UTF-8*");
- g_message ("non-printable UTF-8: \"\xc3\xa4\xda\x85\"");
- g_test_assert_expected_messages ();
-
- g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_MESSAGE,
- "*unsafe chars*");
- g_message ("unsafe chars: \"\x10\x11\x12\n\t\x7f\x81\x82\x83\"");
- g_test_assert_expected_messages ();
-
- g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_WARNING,
- "*harmless warning*");
- g_warning ("harmless warning with parameters: %d %s %#x", 42, "Boo", 12345);
- g_test_assert_expected_messages ();
-
- g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_CRITICAL,
- "*g_print*assertion*failed*");
- g_print (NULL);
- g_test_assert_expected_messages ();
-}
-
-static void
-log_warning_rate_limited_tests (void)
-{
-#if defined(G_HAVE_ISO_VARARGS) || defined(G_HAVE_GNUC_VARARGS)
- int i;
-
- g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_WARNING,
- "*harmless single warning 1*");
- g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_WARNING,
- "*harmless single warning 2*");
- for (i = 0; i < 10; i++)
- g_warning_once ("harmless single warning 1");
- for (i = 0; i < 10; i++)
- g_warning_once ("harmless single warning 2");
- g_test_assert_expected_messages ();
-#else
- g_test_skip ("Variadic macro support not available");
-#endif
-}
-
-static void
-timer_tests (void)
-{
- GTimer *timer, *timer2;
- gdouble elapsed;
-
- /* basic testing */
- timer = g_timer_new ();
- g_timer_start (timer);
- elapsed = g_timer_elapsed (timer, NULL);
- g_timer_stop (timer);
- g_assert_cmpfloat (elapsed, <=, g_timer_elapsed (timer, NULL));
- g_timer_destroy (timer);
-
- if (g_test_slow())
- {
- if (g_test_verbose())
- g_printerr ("checking timers...\n");
- timer = g_timer_new ();
- if (g_test_verbose())
- g_printerr (" spinning for 3 seconds...\n");
- g_timer_start (timer);
- while (g_timer_elapsed (timer, NULL) < 3)
- ;
- g_timer_stop (timer);
- g_timer_destroy (timer);
- if (g_test_verbose())
- g_printerr ("ok\n");
- }
-
- if (g_test_slow())
- {
- gulong elapsed_usecs;
- if (g_test_verbose())
- g_printerr ("checking g_timer_continue...\n");
- timer2 = g_timer_new ();
- if (g_test_verbose())
- g_printerr ("\trun for 1 second...\n");
- timer = g_timer_new();
- g_usleep (G_USEC_PER_SEC); /* run timer for 1 second */
- g_timer_stop (timer);
- if (g_test_verbose())
- g_printerr ("\tstop for 1 second...\n");
- g_usleep (G_USEC_PER_SEC); /* wait for 1 second */
- if (g_test_verbose())
- g_printerr ("\trun for 2 seconds...\n");
- g_timer_continue (timer);
- g_usleep (2 * G_USEC_PER_SEC); /* run timer for 2 seconds */
- g_timer_stop(timer);
- if (g_test_verbose())
- g_printerr ("\tstop for 1.5 seconds...\n");
- g_usleep ((3 * G_USEC_PER_SEC) / 2); /* wait for 1.5 seconds */
- if (g_test_verbose())
- g_printerr ("\trun for 0.2 seconds...\n");
- g_timer_continue (timer);
- g_usleep (G_USEC_PER_SEC / 5); /* run timer for 0.2 seconds */
- g_timer_stop (timer);
- if (g_test_verbose())
- g_printerr ("\tstop for 4 seconds...\n");
- g_usleep (4 * G_USEC_PER_SEC); /* wait for 4 seconds */
- if (g_test_verbose())
- g_printerr ("\trun for 5.8 seconds...\n");
- g_timer_continue (timer);
- g_usleep ((29 * G_USEC_PER_SEC) / 5); /* run timer for 5.8 seconds */
- g_timer_stop(timer);
- elapsed = g_timer_elapsed (timer, &elapsed_usecs);
- if (g_test_verbose())
- g_printerr ("\t=> timer = %.6f = %d.%06ld (should be: 9.000000) (%.6f off)\n", elapsed, (int) elapsed, elapsed_usecs, ABS (elapsed - 9.));
- g_assert_cmpfloat (elapsed, >, 8.8);
- g_assert_cmpfloat (elapsed, <, 9.2);
- if (g_test_verbose())
- g_printerr ("g_timer_continue ... ok\n\n");
- g_timer_stop (timer2);
- elapsed = g_timer_elapsed (timer2, &elapsed_usecs);
- if (g_test_verbose())
- g_printerr ("\t=> timer2 = %.6f = %d.%06ld (should be: %.6f) (%.6f off)\n\n", elapsed, (int) elapsed, elapsed_usecs, 9.+6.5, ABS (elapsed - (9.+6.5)));
- g_assert_cmpfloat (elapsed, >, 8.8 + 6.5);
- g_assert_cmpfloat (elapsed, <, 9.2 + 6.5);
- if (g_test_verbose())
- g_printerr ("timer2 ... ok\n\n");
- g_timer_destroy (timer);
- g_timer_destroy (timer2);
- }
-}
-
-static void
-type_sizes (void)
-{
- guint16 gu16t1 = 0x44afU, gu16t2 = 0xaf44U;
- guint32 gu32t1 = 0x02a7f109U, gu32t2 = 0x09f1a702U;
- guint64 gu64t1 = G_GINT64_CONSTANT(0x1d636b02300a7aa7U),
- gu64t2 = G_GINT64_CONSTANT(0xa77a0a30026b631dU);
- /* type sizes */
- g_assert_cmpint (sizeof (gint8), ==, 1);
- g_assert_cmpint (sizeof (gint16), ==, 2);
- g_assert_cmpint (sizeof (gint32), ==, 4);
- g_assert_cmpint (sizeof (gint64), ==, 8);
- /* endian macros */
- if (g_test_verbose())
- g_printerr ("checking endian macros (host is %s)...\n",
- G_BYTE_ORDER == G_BIG_ENDIAN ? "big endian" : "little endian");
- g_assert (GUINT16_SWAP_LE_BE (gu16t1) == gu16t2);
- g_assert (GUINT32_SWAP_LE_BE (gu32t1) == gu32t2);
- g_assert (GUINT64_SWAP_LE_BE (gu64t1) == gu64t2);
-}
-
-static void
-test_info (void)
-{
- const gchar *un, *rn, *hn;
- const gchar *tmpdir, *homedir, *userdatadir, *uconfdir, *ucachedir;
- const gchar *uddesktop, *udddocs, *uddpubshare, *uruntimedir;
- gchar **sv, *cwd, *sdatadirs, *sconfdirs, *langnames;
- const gchar *charset;
- gboolean charset_is_utf8;
- if (g_test_verbose())
- g_printerr ("TestGLib v%u.%u.%u (i:%u b:%u)\n",
- glib_major_version,
- glib_minor_version,
- glib_micro_version,
- glib_interface_age,
- glib_binary_age);
-
- cwd = g_get_current_dir ();
- un = g_get_user_name();
- rn = g_get_real_name();
- hn = g_get_host_name();
- if (g_test_verbose())
- {
- g_printerr ("cwd: %s\n", cwd);
- g_printerr ("user: %s\n", un);
- g_printerr ("real: %s\n", rn);
- g_printerr ("host: %s\n", hn);
- }
- g_free (cwd);
-
- /* reload, just for fun */
- g_reload_user_special_dirs_cache ();
- g_reload_user_special_dirs_cache ();
-
- tmpdir = g_get_tmp_dir();
- g_assert (tmpdir != NULL);
- homedir = g_get_home_dir ();
- g_assert (homedir != NULL);
- userdatadir = g_get_user_data_dir ();
- g_assert (userdatadir != NULL);
- uconfdir = g_get_user_config_dir ();
- g_assert (uconfdir != NULL);
- ucachedir = g_get_user_cache_dir ();
- g_assert (ucachedir != NULL);
-
- uddesktop = g_get_user_special_dir (G_USER_DIRECTORY_DESKTOP);
- g_assert (uddesktop != NULL);
- udddocs = g_get_user_special_dir (G_USER_DIRECTORY_DOCUMENTS);
- uddpubshare = g_get_user_special_dir (G_USER_DIRECTORY_PUBLIC_SHARE);
- uruntimedir = g_get_user_runtime_dir ();
- g_assert (uruntimedir != NULL);
-
- sv = (gchar **) g_get_system_data_dirs ();
- sdatadirs = g_strjoinv (G_SEARCHPATH_SEPARATOR_S, sv);
- sv = (gchar **) g_get_system_config_dirs ();
- sconfdirs = g_strjoinv (G_SEARCHPATH_SEPARATOR_S, sv);
- sv = (gchar **) g_get_language_names ();
- langnames = g_strjoinv (":", sv);
-
- if (g_test_verbose())
- {
- g_printerr ("tmp-dir: %s\n", tmpdir);
- g_printerr ("home: %s\n", homedir);
- g_printerr ("user_data: %s\n", userdatadir);
- g_printerr ("user_config: %s\n", uconfdir);
- g_printerr ("user_cache: %s\n", ucachedir);
- g_printerr ("user_runtime: %s\n", uruntimedir);
- g_printerr ("system_data: %s\n", sdatadirs);
- g_printerr ("system_config: %s\n", sconfdirs);
- g_printerr ("languages: %s\n", langnames);
- g_printerr ("user_special[DESKTOP]: %s\n", uddesktop);
- g_printerr ("user_special[DOCUMENTS]: %s\n", udddocs);
- g_printerr ("user_special[PUBLIC_SHARE]: %s\n", uddpubshare);
- }
- g_free (sdatadirs);
- g_free (sconfdirs);
- g_free (langnames);
-
- charset_is_utf8 = g_get_charset ((const char**)&charset);
-
- if (g_test_verbose())
- {
- if (charset_is_utf8)
- g_printerr ("current charset is UTF-8: %s\n", charset);
- else
- g_printerr ("current charset is not UTF-8: %s\n", charset);
- }
-
- if (g_test_verbose())
- {
-#ifdef G_PLATFORM_WIN32
- g_printerr ("current locale: %s\n", g_win32_getlocale ());
-
- g_printerr ("found more.com as %s\n", g_find_program_in_path ("more.com"));
- g_printerr ("found regedit as %s\n", g_find_program_in_path ("regedit"));
-
- g_printerr ("a Win32 error message: %s\n", g_win32_error_message (2));
-#endif
- }
-}
-
-static void
-test_paths (void)
-{
- struct {
- gchar *filename;
- gchar *dirname;
- } dirname_checks[] = {
- { "/", "/" },
- { "////", "/" },
- { ".////", "." },
- { "../", ".." },
- { "..////", ".." },
- { "a/b", "a" },
- { "a/b/", "a/b" },
- { "c///", "c" },
-#ifdef G_OS_WIN32
- { "\\", "\\" },
- { ".\\\\\\\\", "." },
- { "..\\", ".." },
- { "..\\\\\\\\", ".." },
- { "a\\b", "a" },
- { "a\\b/", "a\\b" },
- { "a/b\\", "a/b" },
- { "c\\\\/", "c" },
- { "//\\", "/" },
-#endif
-#ifdef G_WITH_CYGWIN
- { "//server/share///x", "//server/share" },
-#endif
- { ".", "." },
- { "..", "." },
- { "", "." },
- };
- const guint n_dirname_checks = G_N_ELEMENTS (dirname_checks);
- struct {
- gchar *filename;
- gchar *without_root;
- } skip_root_checks[] = {
- { "/", "" },
- { "//", "" },
- { "/foo", "foo" },
- { "//foo", "foo" },
- { "a/b", NULL },
-#ifdef G_OS_WIN32
- { "\\", "" },
- { "\\foo", "foo" },
- { "\\\\server\\foo", "" },
- { "\\\\server\\foo\\bar", "bar" },
- { "a\\b", NULL },
-#endif
-#ifdef G_WITH_CYGWIN
- { "//server/share///x", "//x" },
-#endif
- { ".", NULL },
- { "", NULL },
- };
- const guint n_skip_root_checks = G_N_ELEMENTS (skip_root_checks);
- struct {
- gchar *cwd;
- gchar *relative_path;
- gchar *canonical_path;
- } canonicalize_filename_checks[] = {
-#ifndef G_OS_WIN32
- { "/etc", "../usr/share", "/usr/share" },
- { "/", "/foo/bar", "/foo/bar" },
- { "/usr/bin", "../../foo/bar", "/foo/bar" },
- { "/", "../../foo/bar", "/foo/bar" },
- { "/double//dash", "../../foo/bar", "/foo/bar" },
- { "/usr/share/foo", ".././././bar", "/usr/share/bar" },
- { "/foo/bar", "../bar/./.././bar", "/foo/bar" },
- { "/test///dir", "../../././foo/bar", "/foo/bar" },
- { "/test///dir", "../../././/foo///bar", "/foo/bar" },
- { "/etc", "///triple/slash", "/triple/slash" },
- { "/etc", "//double/slash", "//double/slash" },
- { "///triple/slash", ".", "/triple/slash" },
- { "//double/slash", ".", "//double/slash" },
- { "/cwd/../with/./complexities/", "./hello", "/with/complexities/hello" },
- { "/", ".dot-dir", "/.dot-dir" },
- { "/cwd", "..", "/" },
- { "/etc", "hello/..", "/etc" },
- { "/etc", "hello/../", "/etc" },
- { "/", "..", "/" },
- { "/", "../", "/" },
- { "/", "/..", "/" },
- { "/", "/../", "/" },
- { "/", ".", "/" },
- { "/", "./", "/" },
- { "/", "/.", "/" },
- { "/", "/./", "/" },
- { "/", "///usr/../usr", "/usr" },
-#else
- { "/etc", "../usr/share", "\\usr\\share" },
- { "/", "/foo/bar", "\\foo\\bar" },
- { "/usr/bin", "../../foo/bar", "\\foo\\bar" },
- { "/", "../../foo/bar", "\\foo\\bar" },
- { "/double//dash", "../../foo/bar", "\\foo\\bar" },
- { "/usr/share/foo", ".././././bar", "\\usr\\share\\bar" },
- { "/foo/bar", "../bar/./.././bar", "\\foo\\bar" },
- { "/test///dir", "../../././foo/bar", "\\foo\\bar" },
- { "/test///dir", "../../././/foo///bar", "\\foo\\bar" },
- { "/etc", "///triple/slash", "\\triple\\slash" },
- { "/etc", "//double/slash", "//double/slash" },
- { "///triple/slash", ".", "\\triple\\slash" },
- { "//double/slash", ".", "//double/slash\\" },
- { "/cwd/../with/./complexities/", "./hello", "\\with\\complexities\\hello" },
- { "/", ".dot-dir", "/.dot-dir" },
- { "/cwd", "..", "/" },
- { "/etc", "hello/..", "/etc" },
- { "/etc", "hello/../", "/etc" },
- { "/", "..", "/" },
- { "/", "../", "/" },
- { "/", "/..", "/" },
- { "/", "/../", "/" },
- { "/", ".", "/" },
- { "/", "./", "/" },
- { "/", "/.", "/" },
- { "/", "/./", "/" },
- { "/", "///usr/../usr", "/usr" },
-
- { "\\etc", "..\\usr\\share", "\\usr\\share" },
- { "\\", "\\foo\\bar", "\\foo\\bar" },
- { "\\usr\\bin", "..\\..\\foo\\bar", "\\foo\\bar" },
- { "\\", "..\\..\\foo\\bar", "\\foo\\bar" },
- { "\\double\\\\dash", "..\\..\\foo\\bar", "\\foo\\bar" },
- { "\\usr\\share\\foo", "..\\.\\.\\.\\bar", "\\usr\\share\\bar" },
- { "\\foo\\bar", "..\\bar\\.\\..\\.\\bar", "\\foo\\bar" },
- { "\\test\\\\\\dir", "..\\..\\.\\.\\foo\\bar", "\\foo\\bar" },
- { "\\test\\\\\\dir", "..\\..\\.\\.\\\\foo\\\\\\bar", "\\foo\\bar" },
- { "\\etc", "\\\\\\triple\\slash", "\\triple\\slash" },
- { "\\etc", "\\\\double\\slash", "\\\\double\\slash" },
- { "\\\\\\triple\\slash", ".", "\\triple\\slash" },
- { "\\\\double\\slash", ".", "\\\\double\\slash\\" },
- { "\\cwd\\..\\with\\.\\complexities\\", ".\\hello", "\\with\\complexities\\hello" },
- { "\\", ".dot-dir", "\\.dot-dir" },
- { "\\cwd", "..", "\\" },
- { "\\etc", "hello\\..", "\\etc" },
- { "\\etc", "hello\\..\\", "\\etc" },
- { "\\", "..", "\\" },
- { "\\", "..\\", "\\" },
- { "\\", "\\..", "\\" },
- { "\\", "\\..\\", "\\" },
- { "\\", ".", "\\" },
- { "\\", ".\\", "\\" },
- { "\\", "\\.", "\\" },
- { "\\", "\\.\\", "\\" },
- { "\\", "\\\\\\usr\\..\\usr", "\\usr" },
-#endif
- };
- const guint n_canonicalize_filename_checks = G_N_ELEMENTS (canonicalize_filename_checks);
- gchar *string;
- guint i;
- if (g_test_verbose())
- g_printerr ("checking g_path_get_basename()...");
- string = g_path_get_basename (G_DIR_SEPARATOR_S "foo" G_DIR_SEPARATOR_S "dir" G_DIR_SEPARATOR_S);
- g_assert (strcmp (string, "dir") == 0);
- g_free (string);
- string = g_path_get_basename (G_DIR_SEPARATOR_S "foo" G_DIR_SEPARATOR_S "file");
- g_assert (strcmp (string, "file") == 0);
- g_free (string);
- if (g_test_verbose())
- g_printerr ("ok\n");
-
-#ifdef G_OS_WIN32
- string = g_path_get_basename ("/foo/dir/");
- g_assert (strcmp (string, "dir") == 0);
- g_free (string);
- string = g_path_get_basename ("/foo/file");
- g_assert (strcmp (string, "file") == 0);
- g_free (string);
-#endif
-
- if (g_test_verbose())
- g_printerr ("checking g_path_get_dirname()...");
- for (i = 0; i < n_dirname_checks; i++)
- {
- gchar *dirname = g_path_get_dirname (dirname_checks[i].filename);
- if (strcmp (dirname, dirname_checks[i].dirname) != 0)
- {
- g_error ("failed for \"%s\"==\"%s\" (returned: \"%s\")",
- dirname_checks[i].filename,
- dirname_checks[i].dirname,
- dirname);
- }
- g_free (dirname);
- }
- if (g_test_verbose())
- g_printerr ("ok\n");
-
- if (g_test_verbose())
- g_printerr ("checking g_path_skip_root()...");
- for (i = 0; i < n_skip_root_checks; i++)
- {
- const gchar *skipped = g_path_skip_root (skip_root_checks[i].filename);
- if ((skipped && !skip_root_checks[i].without_root) ||
- (!skipped && skip_root_checks[i].without_root) ||
- ((skipped && skip_root_checks[i].without_root) &&
- strcmp (skipped, skip_root_checks[i].without_root)))
- {
- g_error ("failed for \"%s\"==\"%s\" (returned: \"%s\")",
- skip_root_checks[i].filename,
- (skip_root_checks[i].without_root ?
- skip_root_checks[i].without_root : "<NULL>"),
- (skipped ? skipped : "<NULL>"));
- }
- }
- if (g_test_verbose())
- g_printerr ("ok\n");
-
- if (g_test_verbose ())
- g_printerr ("checking g_canonicalize_filename()...");
- for (i = 0; i < n_canonicalize_filename_checks; i++)
- {
- gchar *canonical_path = g_canonicalize_filename (canonicalize_filename_checks[i].relative_path,
- canonicalize_filename_checks[i].cwd);
- if (g_strcmp0 (canonical_path, canonicalize_filename_checks[i].canonical_path) != 0)
- {
- g_error ("\nfailed for \"%s\"==\"%s\" (returned: \"%s\")\n",
- canonicalize_filename_checks[i].relative_path,
- canonicalize_filename_checks[i].canonical_path,
- canonical_path);
- }
- g_free (canonical_path);
- }
- if (g_test_verbose ())
- g_printerr ("ok\n");
-
- if (g_test_verbose ())
- g_printerr ("checking g_canonicalize_filename() supports NULL...");
-
- {
- const gchar *relative_path = "./";
- gchar *canonical_path = g_canonicalize_filename (relative_path, NULL);
- gchar *cwd = g_get_current_dir ();
- if (g_strcmp0 (canonical_path, cwd) != 0)
- {
- g_error ("\nfailed for \"%s\"==\"%s\" (returned: \"%s\")\n",
- relative_path, cwd, canonical_path);
- }
- g_free (cwd);
- g_free (canonical_path);
- }
-
- if (g_test_verbose ())
- g_printerr ("ok\n");
-}
-
-static void
-test_file_functions (void)
-{
- const char hello[] = "Hello, World";
- const int hellolen = sizeof (hello) - 1;
- GError *error;
- char template[32];
- char *name_used, chars[62];
- gint fd, n;
- int errsv;
-
- strcpy (template, "foobar");
- fd = g_mkstemp (template);
- if (g_test_verbose() && fd != -1)
- g_printerr ("g_mkstemp works even if template doesn't end in XXXXXX\n");
- if (fd != -1)
- close (fd);
- strcpy (template, "fooXXXXXX");
- fd = g_mkstemp (template);
- if (fd == -1)
- g_error ("g_mkstemp didn't work for template %s", template);
- n = write (fd, hello, hellolen);
- errsv = errno;
- if (n == -1)
- g_error ("write() failed: %s", g_strerror (errsv));
- else if (n != hellolen)
- g_error ("write() should have written %d bytes, wrote %d", hellolen, n);
-
- lseek (fd, 0, 0);
- n = read (fd, chars, sizeof (chars));
- errsv = errno;
- if (n == -1)
- g_error ("read() failed: %s", g_strerror (errsv));
- else if (n != hellolen)
- g_error ("read() should have read %d bytes, got %d", hellolen, n);
-
- chars[n] = 0;
- if (strcmp (chars, hello) != 0)
- g_error ("wrote '%s', but got '%s'", hello, chars);
- if (fd != -1)
- close (fd);
- remove (template);
-
- error = NULL;
- name_used = NULL;
- strcpy (template, "zap" G_DIR_SEPARATOR_S "barXXXXXX");
- fd = g_file_open_tmp (template, &name_used, &error);
- if (g_test_verbose())
- {
- if (fd != -1)
- g_printerr ("g_file_open_tmp works even if template contains '%s'\n", G_DIR_SEPARATOR_S);
- else
- g_printerr ("g_file_open_tmp correctly returns error: %s\n", error->message);
- }
- if (fd != -1)
- close (fd);
- g_clear_error (&error);
- g_free (name_used);
-
-#ifdef G_OS_WIN32
- name_used = NULL;
- strcpy (template, "zap/barXXXXXX");
- fd = g_file_open_tmp (template, &name_used, &error);
- if (g_test_verbose())
- {
- if (fd != -1)
- g_printerr ("g_file_open_tmp works even if template contains '/'\n");
- else
- g_printerr ("g_file_open_tmp correctly returns error: %s\n", error->message);
- }
- if (fd != -1)
- close (fd);
- g_clear_error (&error);
- g_free (name_used);
-#endif
-
- strcpy (template, "zapXXXXXX");
- name_used = NULL;
- fd = g_file_open_tmp (template, &name_used, &error);
- if (fd == -1)
- g_error ("g_file_open_tmp didn't work for template '%s': %s", template, error->message);
- else if (g_test_verbose())
- g_printerr ("g_file_open_tmp for template '%s' used name '%s'\n", template, name_used);
- if (fd != -1)
- close (fd);
- g_clear_error (&error);
- remove (name_used);
- g_free (name_used);
-
- name_used = NULL;
- fd = g_file_open_tmp (NULL, &name_used, &error);
- if (fd == -1)
- g_error ("g_file_open_tmp didn't work for a NULL template: %s", error->message);
- else
- close (fd);
- g_clear_error (&error);
- remove (name_used);
- g_free (name_used);
-}
-
-static void
-test_arrays (void)
-{
- GByteArray *gbarray;
- GPtrArray *gparray;
- GArray *garray;
- guint i;
-
- gparray = g_ptr_array_new ();
- for (i = 0; i < 10000; i++)
- g_ptr_array_add (gparray, GINT_TO_POINTER (i));
- for (i = 0; i < 10000; i++)
- if (g_ptr_array_index (gparray, i) != GINT_TO_POINTER (i))
- g_error ("array fails: %p ( %p )", g_ptr_array_index (gparray, i), GINT_TO_POINTER (i));
- g_ptr_array_free (gparray, TRUE);
-
- gbarray = g_byte_array_new ();
- for (i = 0; i < 10000; i++)
- g_byte_array_append (gbarray, (guint8*) "abcd", 4);
- for (i = 0; i < 10000; i++)
- {
- g_assert (gbarray->data[4*i] == 'a');
- g_assert (gbarray->data[4*i+1] == 'b');
- g_assert (gbarray->data[4*i+2] == 'c');
- g_assert (gbarray->data[4*i+3] == 'd');
- }
- g_byte_array_free (gbarray, TRUE);
-
- garray = g_array_new (FALSE, FALSE, sizeof (gint));
- for (i = 0; i < 10000; i++)
- g_array_append_val (garray, i);
- for (i = 0; i < 10000; i++)
- if (g_array_index (garray, gint, i) != (gint) i)
- g_error ("failure: %d ( %d )", g_array_index (garray, gint, i), i);
- g_array_free (garray, TRUE);
-
- garray = g_array_new (FALSE, FALSE, sizeof (gint));
- for (i = 0; i < 100; i++)
- g_array_prepend_val (garray, i);
- for (i = 0; i < 100; i++)
- if (g_array_index (garray, gint, i) != (gint) (100 - i - 1))
- g_error ("failure: %d ( %d )", g_array_index (garray, gint, i), 100 - i - 1);
- g_array_free (garray, TRUE);
-}
-
-static void
-hash_table_tests (void)
-{
- GHashTable *hash_table;
- int array[10000];
- gint *pvalue = NULL;
- gint value = 120;
- guint i;
-
- hash_table = g_hash_table_new (my_hash, my_hash_equal);
- for (i = 0; i < 10000; i++)
- {
- array[i] = i;
- g_hash_table_insert (hash_table, &array[i], &array[i]);
- }
- pvalue = g_hash_table_find (hash_table, find_first_that, &value);
- if (*pvalue != value)
- g_error ("g_hash_table_find failed");
- g_hash_table_foreach (hash_table, my_hash_callback, NULL);
- for (i = 0; i < 10000; i++)
- if (array[i] == 0)
- g_error ("hashtable-test: wrong value: %d", i);
- for (i = 0; i < 10000; i++)
- g_hash_table_remove (hash_table, &array[i]);
- for (i = 0; i < 10000; i++)
- {
- array[i] = i;
- g_hash_table_insert (hash_table, &array[i], &array[i]);
- }
- if (g_hash_table_foreach_remove (hash_table, my_hash_callback_remove, NULL) != 5000 ||
- g_hash_table_size (hash_table) != 5000)
- g_error ("hashtable removal failed");
- g_hash_table_foreach (hash_table, my_hash_callback_remove_test, NULL);
- g_hash_table_destroy (hash_table);
-}
-
-static void
-relation_test (void)
-{
- G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-
- GRelation *relation = g_relation_new (2);
- GTuples *tuples;
- gint data [1024];
- guint i;
-
- g_relation_index (relation, 0, g_int_hash, g_int_equal);
- g_relation_index (relation, 1, g_int_hash, g_int_equal);
-
- for (i = 0; i < 1024; i += 1)
- data[i] = i;
-
- for (i = 1; i < 1023; i += 1)
- {
- g_relation_insert (relation, data + i, data + i + 1);
- g_relation_insert (relation, data + i, data + i - 1);
- }
-
- for (i = 2; i < 1022; i += 1)
- {
- g_assert (! g_relation_exists (relation, data + i, data + i));
- g_assert (! g_relation_exists (relation, data + i, data + i + 2));
- g_assert (! g_relation_exists (relation, data + i, data + i - 2));
- }
-
- for (i = 1; i < 1023; i += 1)
- {
- g_assert (g_relation_exists (relation, data + i, data + i + 1));
- g_assert (g_relation_exists (relation, data + i, data + i - 1));
- }
-
- for (i = 2; i < 1022; i += 1)
- {
- g_assert (g_relation_count (relation, data + i, 0) == 2);
- g_assert (g_relation_count (relation, data + i, 1) == 2);
- }
-
- g_assert (g_relation_count (relation, data, 0) == 0);
-
- g_assert (g_relation_count (relation, data + 42, 0) == 2);
- g_assert (g_relation_count (relation, data + 43, 1) == 2);
- g_assert (g_relation_count (relation, data + 41, 1) == 2);
- g_relation_delete (relation, data + 42, 0);
- g_assert (g_relation_count (relation, data + 42, 0) == 0);
- g_assert (g_relation_count (relation, data + 43, 1) == 1);
- g_assert (g_relation_count (relation, data + 41, 1) == 1);
-
- tuples = g_relation_select (relation, data + 200, 0);
-
- g_assert (tuples->len == 2);
-
-#if 0
- for (i = 0; i < tuples->len; i += 1)
- {
- printf ("%d %d\n",
- *(gint*) g_tuples_index (tuples, i, 0),
- *(gint*) g_tuples_index (tuples, i, 1));
- }
-#endif
-
- g_assert (g_relation_exists (relation, data + 300, data + 301));
- g_relation_delete (relation, data + 300, 0);
- g_assert (!g_relation_exists (relation, data + 300, data + 301));
-
- g_tuples_destroy (tuples);
-
- g_relation_destroy (relation);
-
- relation = NULL;
-
- G_GNUC_END_IGNORE_DEPRECATIONS
-}
-
-static void
-gstring_tests (void)
-{
- GString *string1, *string2;
- guint i;
-
- if (g_test_verbose())
- g_printerr ("test GString basics\n");
-
- string1 = g_string_new ("hi pete!");
- string2 = g_string_new ("");
-
- g_assert (strcmp ("hi pete!", string1->str) == 0);
-
- for (i = 0; i < 10000; i++)
- g_string_append_c (string1, 'a'+(i%26));
-
-#ifndef G_OS_WIN32
- /* MSVC, mingw32 and LCC use the same run-time C library, which doesn't like
- the %10000.10000f format... */
- g_string_printf (string2, "%s|%0100d|%s|%s|%0*d|%*.*f|%10000.10000f",
- "this pete guy sure is a wuss, like he's the number ",
- 1,
- " wuss. everyone agrees.\n",
- string1->str,
- 10, 666, 15, 15, 666.666666666, 666.666666666);
-#else
- g_string_printf (string2, "%s|%0100d|%s|%s|%0*d|%*.*f|%100.100f",
- "this pete guy sure is a wuss, like he's the number ",
- 1,
- " wuss. everyone agrees.\n",
- string1->str,
- 10, 666, 15, 15, 666.666666666, 666.666666666);
-#endif
-
- if (g_test_verbose())
- g_printerr ("string2 length = %lu...\n", (gulong)string2->len);
- string2->str[70] = '\0';
- if (g_test_verbose())
- g_printerr ("first 70 chars:\n%s\n", string2->str);
- string2->str[141] = '\0';
- if (g_test_verbose())
- g_printerr ("next 70 chars:\n%s\n", string2->str+71);
- string2->str[212] = '\0';
- if (g_test_verbose())
- g_printerr ("and next 70:\n%s\n", string2->str+142);
- if (g_test_verbose())
- g_printerr ("last 70 chars:\n%s\n", string2->str+string2->len - 70);
-
- g_string_free (string1, TRUE);
- g_string_free (string2, TRUE);
-
- /* append */
- string1 = g_string_new ("firsthalf");
- g_string_append (string1, "lasthalf");
- g_assert (strcmp (string1->str, "firsthalflasthalf") == 0);
- g_string_free (string1, TRUE);
-
- /* append_len */
- string1 = g_string_new ("firsthalf");
- g_string_append_len (string1, "lasthalfjunkjunk", strlen ("lasthalf"));
- g_assert (strcmp (string1->str, "firsthalflasthalf") == 0);
- g_string_free (string1, TRUE);
-
- /* prepend */
- string1 = g_string_new ("lasthalf");
- g_string_prepend (string1, "firsthalf");
- g_assert (strcmp (string1->str, "firsthalflasthalf") == 0);
- g_string_free (string1, TRUE);
-
- /* prepend_len */
- string1 = g_string_new ("lasthalf");
- g_string_prepend_len (string1, "firsthalfjunkjunk", strlen ("firsthalf"));
- g_assert (strcmp (string1->str, "firsthalflasthalf") == 0);
- g_string_free (string1, TRUE);
-
- /* insert */
- string1 = g_string_new ("firstlast");
- g_string_insert (string1, 5, "middle");
- g_assert (strcmp (string1->str, "firstmiddlelast") == 0);
- g_string_free (string1, TRUE);
-
- /* insert with pos == end of the string */
- string1 = g_string_new ("firstmiddle");
- g_string_insert (string1, strlen ("firstmiddle"), "last");
- g_assert (strcmp (string1->str, "firstmiddlelast") == 0);
- g_string_free (string1, TRUE);
-
- /* insert_len */
- string1 = g_string_new ("firstlast");
- g_string_insert_len (string1, 5, "middlejunkjunk", strlen ("middle"));
- g_assert (strcmp (string1->str, "firstmiddlelast") == 0);
- g_string_free (string1, TRUE);
-
- /* insert_len with magic -1 pos for append */
- string1 = g_string_new ("first");
- g_string_insert_len (string1, -1, "lastjunkjunk", strlen ("last"));
- g_assert (strcmp (string1->str, "firstlast") == 0);
- g_string_free (string1, TRUE);
-
- /* insert_len with magic -1 len for strlen-the-string */
- string1 = g_string_new ("first");
- g_string_insert_len (string1, 5, "last", -1);
- g_assert (strcmp (string1->str, "firstlast") == 0);
- g_string_free (string1, TRUE);
-
- /* g_string_equal */
- string1 = g_string_new ("test");
- string2 = g_string_new ("te");
- g_assert (! g_string_equal(string1, string2));
- g_string_append (string2, "st");
- g_assert (g_string_equal(string1, string2));
- g_string_free (string1, TRUE);
- g_string_free (string2, TRUE);
-
- /* Check handling of embedded ASCII 0 (NUL) characters in GString. */
- if (g_test_verbose())
- g_printerr ("test embedded ASCII 0 (NUL) characters in GString\n");
- string1 = g_string_new ("fiddle");
- string2 = g_string_new ("fiddle");
- g_assert (g_string_equal(string1, string2));
- g_string_append_c(string1, '\0');
- g_assert (! g_string_equal(string1, string2));
- g_string_append_c(string2, '\0');
- g_assert (g_string_equal(string1, string2));
- g_string_append_c(string1, 'x');
- g_string_append_c(string2, 'y');
- g_assert (! g_string_equal(string1, string2));
- g_assert (string1->len == 8);
- g_string_append(string1, "yzzy");
- g_assert (string1->len == 12);
- g_assert ( memcmp(string1->str, "fiddle\0xyzzy", 13) == 0);
- g_string_insert(string1, 1, "QED");
- g_assert ( memcmp(string1->str, "fQEDiddle\0xyzzy", 16) == 0);
- g_string_free (string1, TRUE);
- g_string_free (string2, TRUE);
-}
-
-static void
-various_string_tests (void)
-{
- GStringChunk *string_chunk;
- GTimeVal ref_date, date;
- gchar *tmp_string = NULL, *tmp_string_2, *string, *date_str;
- guint i;
- const gchar *tz;
-
- if (g_test_verbose())
- g_printerr ("checking string chunks...");
- string_chunk = g_string_chunk_new (1024);
- for (i = 0; i < 100000; i ++)
- {
- tmp_string = g_string_chunk_insert (string_chunk, "hi pete");
- if (strcmp ("hi pete", tmp_string) != 0)
- g_error ("string chunks are broken.");
- }
- tmp_string_2 = g_string_chunk_insert_const (string_chunk, tmp_string);
- g_assert (tmp_string_2 != tmp_string && strcmp (tmp_string_2, tmp_string) == 0);
- tmp_string = g_string_chunk_insert_const (string_chunk, tmp_string);
- g_assert (tmp_string_2 == tmp_string);
- g_string_chunk_free (string_chunk);
-
- if (g_test_verbose())
- g_printerr ("test positional printf formats (not supported):");
- string = g_strdup_printf ("%.*s%s", 5, "a", "b");
- tmp_string = g_strdup_printf ("%2$*1$s", 5, "c");
- if (g_test_verbose())
- g_printerr ("%s%s\n", string, tmp_string);
- g_free (tmp_string);
- g_free (string);
-
-#define REF_INVALID1 "Wed Dec 19 17:20:20 GMT 2007"
-#define REF_INVALID2 "1980-02-22T10:36:00Zulu"
-#define REF_INVALID3 "1980-02-22T"
-#define REF_SEC_UTC 320063760
-#define REF_STR_UTC "1980-02-22T10:36:00Z"
-#define REF_STR_LOCAL "1980-02-22T13:36:00"
-#define REF_STR_CEST "1980-02-22T12:36:00+02:00"
-#define REF_STR_EST "19800222T053600-0500"
-#define REF_STR_NST "1980-02-22T07:06:00-03:30"
-#define REF_USEC_UTC 50000
-#define REF_STR_USEC_UTC "1980-02-22T10:36:00.050000Z"
-#define REF_STR_USEC_CEST "19800222T123600.050000000+0200"
-#define REF_STR_USEC_EST "1980-02-22T05:36:00,05-05:00"
-#define REF_STR_USEC_NST "19800222T070600,0500-0330"
-#define REF_STR_DATE_ONLY "1980-02-22"
-
- if (g_test_verbose())
- g_printerr ("checking g_time_val_from_iso8601...\n");
- ref_date.tv_sec = REF_SEC_UTC;
- ref_date.tv_usec = 0;
- g_assert (g_time_val_from_iso8601 (REF_INVALID1, &date) == FALSE);
- g_assert (g_time_val_from_iso8601 (REF_INVALID2, &date) == FALSE);
- g_assert (g_time_val_from_iso8601 (REF_INVALID3, &date) == FALSE);
- g_assert (g_time_val_from_iso8601 (REF_STR_DATE_ONLY, &date) == FALSE);
- g_assert (g_time_val_from_iso8601 (REF_STR_UTC, &date) != FALSE);
- if (g_test_verbose())
- g_printerr ("\t=> UTC stamp = %ld.%06ld (should be: %ld.%06ld) (%ld.%06ld off)\n",
- date.tv_sec, date.tv_usec, ref_date.tv_sec, ref_date.tv_usec,
- date.tv_sec - ref_date.tv_sec, date.tv_usec - ref_date.tv_usec);
- g_assert (date.tv_sec == ref_date.tv_sec && date.tv_usec == ref_date.tv_usec);
-
- /* predefine time zone */
- tz = g_getenv("TZ");
- g_setenv("TZ", "UTC-03:00", 1);
- tzset();
-
- g_assert (g_time_val_from_iso8601 (REF_STR_LOCAL, &date) != FALSE);
- if (g_test_verbose())
- g_printerr ("\t=> LOCAL stamp = %ld.%06ld (should be: %ld.%06ld) (%ld.%06ld off)\n",
- date.tv_sec, date.tv_usec, ref_date.tv_sec, ref_date.tv_usec,
- date.tv_sec - ref_date.tv_sec, date.tv_usec - ref_date.tv_usec);
- g_assert (date.tv_sec == ref_date.tv_sec && date.tv_usec == ref_date.tv_usec);
-
- /* revert back user defined time zone */
- if (tz)
- g_setenv("TZ", tz, TRUE);
- else
- g_unsetenv("TZ");
- tzset();
-
- g_assert (g_time_val_from_iso8601 (REF_STR_CEST, &date) != FALSE);
- if (g_test_verbose())
- g_printerr ("\t=> CEST stamp = %ld.%06ld (should be: %ld.%06ld) (%ld.%06ld off)\n",
- date.tv_sec, date.tv_usec, ref_date.tv_sec, ref_date.tv_usec,
- date.tv_sec - ref_date.tv_sec, date.tv_usec - ref_date.tv_usec);
- g_assert (date.tv_sec == ref_date.tv_sec && date.tv_usec == ref_date.tv_usec);
-
- g_assert (g_time_val_from_iso8601 (REF_STR_EST, &date) != FALSE);
- if (g_test_verbose())
- g_printerr ("\t=> EST stamp = %ld.%06ld (should be: %ld.%06ld) (%ld.%06ld off)\n",
- date.tv_sec, date.tv_usec, ref_date.tv_sec, ref_date.tv_usec,
- date.tv_sec - ref_date.tv_sec, date.tv_usec - ref_date.tv_usec);
- g_assert (date.tv_sec == ref_date.tv_sec && date.tv_usec == ref_date.tv_usec);
-
- g_assert (g_time_val_from_iso8601 (REF_STR_NST, &date) != FALSE);
- if (g_test_verbose())
- g_printerr ("\t=> NST stamp = %ld.%06ld (should be: %ld.%06ld) (%ld.%06ld off)\n",
- date.tv_sec, date.tv_usec, ref_date.tv_sec, ref_date.tv_usec,
- date.tv_sec - ref_date.tv_sec, date.tv_usec - ref_date.tv_usec);
- g_assert (date.tv_sec == ref_date.tv_sec && date.tv_usec == ref_date.tv_usec);
-
- ref_date.tv_usec = REF_USEC_UTC;
- g_assert (g_time_val_from_iso8601 (REF_STR_USEC_UTC, &date) != FALSE);
- if (g_test_verbose())
- g_printerr ("\t=> UTC stamp = %ld.%06ld (should be: %ld.%06ld) (%ld.%06ld off)\n",
- date.tv_sec, date.tv_usec, ref_date.tv_sec, ref_date.tv_usec,
- date.tv_sec - ref_date.tv_sec, date.tv_usec - ref_date.tv_usec);
- g_assert (date.tv_sec == ref_date.tv_sec && date.tv_usec == ref_date.tv_usec);
-
- g_assert (g_time_val_from_iso8601 (REF_STR_USEC_CEST, &date) != FALSE);
- if (g_test_verbose())
- g_printerr ("\t=> CEST stamp = %ld.%06ld (should be: %ld.%06ld) (%ld.%06ld off)\n",
- date.tv_sec, date.tv_usec, ref_date.tv_sec, ref_date.tv_usec,
- date.tv_sec - ref_date.tv_sec, date.tv_usec - ref_date.tv_usec);
- g_assert (date.tv_sec == ref_date.tv_sec && date.tv_usec == ref_date.tv_usec);
-
- g_assert (g_time_val_from_iso8601 (REF_STR_USEC_EST, &date) != FALSE);
- if (g_test_verbose())
- g_printerr ("\t=> EST stamp = %ld.%06ld (should be: %ld.%06ld) (%ld.%06ld off)\n",
- date.tv_sec, date.tv_usec, ref_date.tv_sec, ref_date.tv_usec,
- date.tv_sec - ref_date.tv_sec, date.tv_usec - ref_date.tv_usec);
- g_assert (date.tv_sec == ref_date.tv_sec && date.tv_usec == ref_date.tv_usec);
-
- g_assert (g_time_val_from_iso8601 (REF_STR_USEC_NST, &date) != FALSE);
- if (g_test_verbose())
- g_printerr ("\t=> NST stamp = %ld.%06ld (should be: %ld.%06ld) (%ld.%06ld off)\n",
- date.tv_sec, date.tv_usec, ref_date.tv_sec, ref_date.tv_usec,
- date.tv_sec - ref_date.tv_sec, date.tv_usec - ref_date.tv_usec);
- g_assert (date.tv_sec == ref_date.tv_sec && date.tv_usec == ref_date.tv_usec);
-
- if (g_test_verbose())
- g_printerr ("checking g_time_val_to_iso8601...\n");
- ref_date.tv_sec = REF_SEC_UTC;
- ref_date.tv_usec = 0;
- date_str = g_time_val_to_iso8601 (&ref_date);
- g_assert (date_str != NULL);
- if (g_test_verbose())
- g_printerr ("\t=> date string = %s (should be: %s)\n", date_str, REF_STR_UTC);
- g_assert (strcmp (date_str, REF_STR_UTC) == 0);
- g_free (date_str);
-
- ref_date.tv_usec = REF_USEC_UTC;
- date_str = g_time_val_to_iso8601 (&ref_date);
- g_assert (date_str != NULL);
- if (g_test_verbose())
- g_printerr ("\t=> date string = %s (should be: %s)\n", date_str, REF_STR_USEC_UTC);
- g_assert (strcmp (date_str, REF_STR_USEC_UTC) == 0);
- g_free (date_str);
-
- if (g_test_verbose())
- g_printerr ("checking g_ascii_strcasecmp...");
- g_assert (g_ascii_strcasecmp ("FroboZZ", "frobozz") == 0);
- g_assert (g_ascii_strcasecmp ("frobozz", "frobozz") == 0);
- g_assert (g_ascii_strcasecmp ("frobozz", "FROBOZZ") == 0);
- g_assert (g_ascii_strcasecmp ("FROBOZZ", "froboz") > 0);
- g_assert (g_ascii_strcasecmp ("", "") == 0);
- g_assert (g_ascii_strcasecmp ("!#%&/()", "!#%&/()") == 0);
- g_assert (g_ascii_strcasecmp ("a", "b") < 0);
- g_assert (g_ascii_strcasecmp ("a", "B") < 0);
- g_assert (g_ascii_strcasecmp ("A", "b") < 0);
- g_assert (g_ascii_strcasecmp ("A", "B") < 0);
- g_assert (g_ascii_strcasecmp ("b", "a") > 0);
- g_assert (g_ascii_strcasecmp ("b", "A") > 0);
- g_assert (g_ascii_strcasecmp ("B", "a") > 0);
- g_assert (g_ascii_strcasecmp ("B", "A") > 0);
-
- if (g_test_verbose())
- g_printerr ("checking g_strdup...\n");
- g_assert (g_strdup (NULL) == NULL);
- string = g_strdup (GLIB_TEST_STRING);
- g_assert (string != NULL);
- g_assert (strcmp(string, GLIB_TEST_STRING) == 0);
- g_free (string);
-
- if (g_test_verbose())
- g_printerr ("checking g_strconcat...\n");
- string = g_strconcat (GLIB_TEST_STRING, NULL);
- g_assert (string != NULL);
- g_assert (strcmp (string, GLIB_TEST_STRING) == 0);
- g_free (string);
- string = g_strconcat (GLIB_TEST_STRING, GLIB_TEST_STRING,
- GLIB_TEST_STRING, NULL);
- g_assert (string != NULL);
- g_assert (strcmp (string, GLIB_TEST_STRING GLIB_TEST_STRING
- GLIB_TEST_STRING) == 0);
- g_free (string);
-
- if (g_test_verbose())
- g_printerr ("checking g_strlcpy/g_strlcat...");
- /* The following is a torture test for strlcpy/strlcat, with lots of
- * checking; normal users wouldn't use them this way!
- */
- string = g_malloc (6);
- *(string + 5) = 'Z'; /* guard value, shouldn't change during test */
- *string = 'q';
- g_assert (g_strlcpy(string, "" , 5) == 0);
- g_assert ( *string == '\0' );
- *string = 'q';
- g_assert (g_strlcpy(string, "abc" , 5) == 3);
- g_assert ( *(string + 3) == '\0' );
- g_assert (g_str_equal(string, "abc"));
- g_assert (g_strlcpy(string, "abcd" , 5) == 4);
- g_assert ( *(string + 4) == '\0' );
- g_assert ( *(string + 5) == 'Z' );
- g_assert (g_str_equal(string, "abcd"));
- g_assert (g_strlcpy(string, "abcde" , 5) == 5);
- g_assert ( *(string + 4) == '\0' );
- g_assert ( *(string + 5) == 'Z' );
- g_assert (g_str_equal(string, "abcd"));
- g_assert (g_strlcpy(string, "abcdef" , 5) == 6);
- g_assert ( *(string + 4) == '\0' );
- g_assert ( *(string + 5) == 'Z' );
- g_assert (g_str_equal(string, "abcd"));
- *string = 'Y';
- *(string + 1)= '\0';
- g_assert (g_strlcpy(string, "Hello" , 0) == 5);
- g_assert (*string == 'Y');
- *string = '\0';
- g_assert (g_strlcat(string, "123" , 5) == 3);
- g_assert ( *(string + 3) == '\0' );
- g_assert (g_str_equal(string, "123"));
- g_assert (g_strlcat(string, "" , 5) == 3);
- g_assert ( *(string + 3) == '\0' );
- g_assert (g_str_equal(string, "123"));
- g_assert (g_strlcat(string, "4", 5) == 4);
- g_assert (g_str_equal(string, "1234"));
- g_assert (g_strlcat(string, "5", 5) == 5);
- g_assert ( *(string + 4) == '\0' );
- g_assert (g_str_equal(string, "1234"));
- g_assert ( *(string + 5) == 'Z' );
- *string = 'Y';
- *(string + 1)= '\0';
- g_assert (g_strlcat(string, "123" , 0) == 3);
- g_assert (*string == 'Y');
-
- /* A few more tests, demonstrating more "normal" use */
- g_assert (g_strlcpy(string, "hi", 5) == 2);
- g_assert (g_str_equal(string, "hi"));
- g_assert (g_strlcat(string, "t", 5) == 3);
- g_assert (g_str_equal(string, "hit"));
- g_free(string);
-
- if (g_test_verbose())
- g_printerr ("checking g_strdup_printf...\n");
- string = g_strdup_printf ("%05d %-5s", 21, "test");
- g_assert (string != NULL);
- g_assert (strcmp(string, "00021 test ") == 0);
- g_free (string);
-
- /* g_debug (argv[0]); */
-}
-
-static void
-test_mem_chunks (void)
-{
- G_GNUC_BEGIN_IGNORE_DEPRECATIONS
-
- GMemChunk *mem_chunk = g_mem_chunk_new ("test mem chunk", 50, 100, G_ALLOC_AND_FREE);
- gchar *mem[10000];
- guint i;
- for (i = 0; i < 10000; i++)
- {
- guint j;
- mem[i] = g_chunk_new (gchar, mem_chunk);
- for (j = 0; j < 50; j++)
- mem[i][j] = i * j;
- }
- for (i = 0; i < 10000; i++)
- g_mem_chunk_free (mem_chunk, mem[i]);
-
- g_mem_chunk_destroy (mem_chunk);
-
- G_GNUC_END_IGNORE_DEPRECATIONS
-}
-
-int
-main (int argc,
- char *argv[])
-{
- g_test_init (&argc, &argv, NULL);
-
- g_test_add_func ("/testglib/Infos", test_info);
- g_test_add_func ("/testglib/Types Sizes", type_sizes);
- g_test_add_func ("/testglib/GStrings", gstring_tests);
- g_test_add_func ("/testglib/Various Strings", various_string_tests);
- g_test_add_func ("/testglib/GList", glist_test);
- g_test_add_func ("/testglib/GSList", gslist_test);
- g_test_add_func ("/testglib/GNode", gnode_test);
- g_test_add_func ("/testglib/GTree", binary_tree_test);
- g_test_add_func ("/testglib/Arrays", test_arrays);
- g_test_add_func ("/testglib/GHashTable", hash_table_tests);
- g_test_add_func ("/testglib/Relation (deprecated)", relation_test);
- g_test_add_func ("/testglib/File Paths", test_paths);
- g_test_add_func ("/testglib/File Functions", test_file_functions);
- g_test_add_func ("/testglib/Parse Debug Strings", test_g_parse_debug_string);
- g_test_add_func ("/testglib/GMemChunk (deprecated)", test_mem_chunks);
- g_test_add_func ("/testglib/Warnings & Errors", log_warning_error_tests);
- g_test_add_func ("/testglib/Warnings (rate limited)", log_warning_rate_limited_tests);
- g_test_add_func ("/testglib/Timers (slow)", timer_tests);
-
- return g_test_run();
-}
diff --git a/tests/unicode-caseconv.c b/tests/unicode-caseconv.c
deleted file mode 100644
index c124633d1..000000000
--- a/tests/unicode-caseconv.c
+++ /dev/null
@@ -1,131 +0,0 @@
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
-
-#include <locale.h>
-#include <stdlib.h>
-#include <stdio.h>
-#include <glib.h>
-#include <string.h>
-
-int main (int argc, char **argv)
-{
- FILE *infile;
- char buffer[1024];
- char **strings;
- char *filename;
- const char *locale;
- const char *test;
- const char *expected;
- char *convert;
- char *current_locale = setlocale (LC_CTYPE, NULL);
- gint result = 0;
-
- g_test_init (&argc, &argv, NULL);
-
- filename = g_test_build_filename (G_TEST_DIST, "casemap.txt", NULL);
-
- infile = fopen (filename, "r");
- if (!infile)
- {
- fprintf (stderr, "Failed to open %s\n", filename );
- exit (1);
- }
-
- while (fgets (buffer, sizeof(buffer), infile))
- {
- if (buffer[0] == '#')
- continue;
-
- strings = g_strsplit (buffer, "\t", -1);
-
- locale = strings[0];
-
- if (!locale[0])
- locale = "C";
-
- if (strcmp (locale, current_locale) != 0)
- {
- setlocale (LC_CTYPE, locale);
- current_locale = setlocale (LC_CTYPE, NULL);
-
- if (strncmp (current_locale, locale, 2) != 0)
- {
- fprintf (stderr, "Cannot set locale to %s, skipping\n", locale);
- goto next;
- }
- }
-
- test = strings[1];
-
- /* gen-casemap-txt.py uses an empty string when a single character
- * doesn't have an equivalent in a particular case; since that behavior
- * is nonsense for multicharacter strings, it would make more sense
- * to put the expected result .. the original character unchanged. But
- * for now, we just work around it here and take the empty string to mean
- * "same as original"
- */
-
- convert = g_utf8_strup (test, -1);
- expected = strings[4][0] ? strings[4] : test;
- if (strcmp (convert, expected) != 0)
- {
- fprintf (stderr, "Failure: toupper(%s) == %s, should have been %s\n",
- test, convert, expected);
- result = 1;
- }
- g_free (convert);
-
- convert = g_utf8_strdown (test, -1);
- expected = strings[2][0] ? strings[2] : test;
- if (strcmp (convert, expected) != 0)
- {
- fprintf (stderr, "Failure: tolower(%s) == %s, should have been %s\n",
- test, convert, expected);
- result = 1;
- }
- g_free (convert);
-
- next:
- g_strfreev (strings);
- }
-
- fclose (infile);
-
- g_free (filename);
- filename = g_test_build_filename (G_TEST_DIST, "casefold.txt", NULL);
-
- infile = fopen (filename, "r");
- if (!infile)
- {
- fprintf (stderr, "Failed to open %s\n", filename );
- g_free (filename);
- exit (1);
- }
-
- while (fgets (buffer, sizeof(buffer), infile))
- {
- if (buffer[0] == '#')
- continue;
-
- buffer[strlen(buffer) - 1] = '\0';
- strings = g_strsplit (buffer, "\t", -1);
-
- test = strings[0];
-
- convert = g_utf8_casefold (test, -1);
- if (strcmp (convert, strings[1]) != 0)
- {
- fprintf (stderr, "Failure: casefold(%s) == '%s', should have been '%s'\n",
- test, convert, strings[1]);
- result = 1;
- }
- g_free (convert);
-
- g_strfreev (strings);
- }
-
- fclose (infile);
- g_free (filename);
-
- return result;
-}
diff --git a/tests/unicode-collate.c b/tests/unicode-collate.c
deleted file mode 100644
index 8de3f60ca..000000000
--- a/tests/unicode-collate.c
+++ /dev/null
@@ -1,124 +0,0 @@
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
-
-#include <glib.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <locale.h>
-
-typedef struct {
- const char *key;
- const char *str;
-} Line;
-
-
-static int
-compare_collate (const void *a, const void *b)
-{
- const Line *line_a = a;
- const Line *line_b = b;
-
- return g_utf8_collate (line_a->str, line_b->str);
-}
-
-static int
-compare_key (const void *a, const void *b)
-{
- const Line *line_a = a;
- const Line *line_b = b;
-
- return strcmp (line_a->key, line_b->key);
-}
-
-int main (int argc, char **argv)
-{
- GIOChannel *in;
- GError *error = NULL;
- GArray *line_array = g_array_new (FALSE, FALSE, sizeof(Line));
- guint i;
- gboolean do_key = FALSE;
- gboolean do_file = FALSE;
- gchar *locale;
-
- /* FIXME: need to modify environment here,
- * since g_utf8_collate_key calls setlocal (LC_COLLATE, "")
- */
- g_setenv ("LC_ALL", "en_US", TRUE);
- locale = setlocale (LC_ALL, "");
- if (locale == NULL || strcmp (locale, "en_US") != 0)
- {
- fprintf (stderr, "No suitable locale, skipping test\n");
- return 2;
- }
-
- if (argc != 1 && argc != 2 && argc != 3)
- {
- fprintf (stderr, "Usage: unicode-collate [--key|--file] [FILE]\n");
- return 1;
- }
-
- i = 1;
- if (argc > 1)
- {
- if (strcmp (argv[1], "--key") == 0)
- {
- do_key = TRUE;
- i = 2;
- }
- else if (strcmp (argv[1], "--file") == 0)
- {
- do_key = TRUE;
- do_file = TRUE;
- i = 2;
- }
- }
-
- if (argc > (gint) i)
- {
- in = g_io_channel_new_file (argv[i], "r", &error);
- if (!in)
- {
- fprintf (stderr, "Cannot open %s: %s\n", argv[i], error->message);
- return 1;
- }
- }
- else
- {
- in = g_io_channel_unix_new (fileno (stdin));
- }
-
- while (TRUE)
- {
- gsize term_pos;
- gchar *str;
- Line line;
-
- if (g_io_channel_read_line (in, &str, NULL, &term_pos, &error) != G_IO_STATUS_NORMAL)
- break;
-
- str[term_pos] = '\0';
-
- if (do_file)
- line.key = g_utf8_collate_key_for_filename (str, -1);
- else
- line.key = g_utf8_collate_key (str, -1);
- line.str = str;
-
- g_array_append_val (line_array, line);
- }
-
- if (error)
- {
- fprintf (stderr, "Error reading test file, %s\n", error->message);
- return 1;
- }
-
- qsort (line_array->data, line_array->len, sizeof (Line), do_key ? compare_key : compare_collate);
- for (i = 0; i < line_array->len; i++)
- printf ("%s\n", g_array_index (line_array, Line, i).str);
-
- g_io_channel_unref (in);
-
- return 0;
-}