diff options
author | Murray Cumming <murrayc@murrayc.com> | 2011-03-29 10:45:18 +0200 |
---|---|---|
committer | Murray Cumming <murrayc@murrayc.com> | 2011-03-29 10:45:18 +0200 |
commit | 9ee8e6c39f15a0c7731ae475313f51128df322d4 (patch) | |
tree | 9df239ab29b13040ed165dc062a6ec79615e6145 | |
parent | 07981769f4b9795b156b8f2bfddd916b4de6d6c3 (diff) | |
download | glibmm-9ee8e6c39f15a0c7731ae475313f51128df322d4.tar.gz |
Use the utility functions for creating strings.
* gio/src/dbuserrorutils.ccg:
* gio/src/dbusownname.ccg:
* gio/src/dbusutils.ccg:
* gio/src/dbuswatchname.ccg:
* glib/src/fileutils.ccg:
* glib/src/iochannel.ccg:
* glib/src/markup.ccg:
* glib/src/variant.ccg: Use convert_const_gchar_ptr_to_ustring() and
convert_const_gchar_ptr_to_stdstring(), simplifying code and sometimes
avoiding crashes with NULL const char*.
-rw-r--r-- | ChangeLog | 15 | ||||
-rw-r--r-- | gio/src/dbuserrorutils.ccg | 2 | ||||
-rw-r--r-- | gio/src/dbusownname.ccg | 6 | ||||
-rw-r--r-- | gio/src/dbusutils.ccg | 2 | ||||
-rw-r--r-- | gio/src/dbuswatchname.ccg | 10 | ||||
-rw-r--r-- | glib/src/fileutils.ccg | 2 | ||||
-rw-r--r-- | glib/src/iochannel.ccg | 2 | ||||
-rw-r--r-- | glib/src/markup.ccg | 2 | ||||
-rw-r--r-- | glib/src/variant.ccg | 4 |
9 files changed, 30 insertions, 15 deletions
@@ -1,5 +1,20 @@ 2011-03-29 Murray Cumming <murrayc@murrayc.com> + Use the utility functions for creating strings. + + * gio/src/dbuserrorutils.ccg: + * gio/src/dbusownname.ccg: + * gio/src/dbusutils.ccg: + * gio/src/dbuswatchname.ccg: + * glib/src/fileutils.ccg: + * glib/src/iochannel.ccg: + * glib/src/markup.ccg: + * glib/src/variant.ccg: Use convert_const_gchar_ptr_to_ustring() and + convert_const_gchar_ptr_to_stdstring(), simplifying code and sometimes + avoiding crashes with NULL const char*. + +2011-03-29 Murray Cumming <murrayc@murrayc.com> + Variant<std::string>::get(): Correct my custom implementation. * glib/src/variant.ccg: Really call g_variant_get_bytestring(). diff --git a/gio/src/dbuserrorutils.ccg b/gio/src/dbuserrorutils.ccg index dcf0c2f1..0744aaad 100644 --- a/gio/src/dbuserrorutils.ccg +++ b/gio/src/dbuserrorutils.ccg @@ -35,7 +35,7 @@ bool is_remote_error(const Glib::Error& error) Glib::ustring get_remote_error(const Glib::Error& error) { - return Glib::ustring(g_dbus_error_get_remote_error(error.gobj())); + return Glib::convert_const_gchar_ptr_to_ustring(g_dbus_error_get_remote_error(error.gobj())); } bool strip_remote_error(Glib::Error& error) diff --git a/gio/src/dbusownname.ccg b/gio/src/dbusownname.ccg index 6e5bb221..bdadb280 100644 --- a/gio/src/dbusownname.ccg +++ b/gio/src/dbusownname.ccg @@ -41,7 +41,7 @@ static void Bus_Acquired_giomm_callback(GDBusConnection* connection, try { - (*the_slot)(Glib::wrap(connection, true), Glib::ustring(name)); + (*the_slot)(Glib::wrap(connection, true), Glib::convert_const_gchar_ptr_to_ustring(name)); } catch(...) { @@ -57,7 +57,7 @@ static void Bus_Name_Acquired_giomm_callback(GDBusConnection* connection, try { - (*the_slot)(Glib::wrap(connection, true), Glib::ustring(name)); + (*the_slot)(Glib::wrap(connection, true), Glib::convert_const_gchar_ptr_to_ustring(name)); } catch(...) { @@ -73,7 +73,7 @@ static void Bus_Name_Lost_giomm_callback(GDBusConnection* connection, try { - (*the_slot)(Glib::wrap(connection, true), Glib::ustring(name)); + (*the_slot)(Glib::wrap(connection, true), Glib::convert_const_gchar_ptr_to_ustring(name)); } catch(...) { diff --git a/gio/src/dbusutils.ccg b/gio/src/dbusutils.ccg index 2d1d48e1..3967fce3 100644 --- a/gio/src/dbusutils.ccg +++ b/gio/src/dbusutils.ccg @@ -27,7 +27,7 @@ namespace DBus std::string generate_guid() { - return std::string(g_dbus_generate_guid()); + return Glib::convert_const_gchar_ptr_to_stdstring(g_dbus_generate_guid()); } bool is_guid(const std::string& string) diff --git a/gio/src/dbuswatchname.ccg b/gio/src/dbuswatchname.ccg index 972b6cc8..7c36e611 100644 --- a/gio/src/dbuswatchname.ccg +++ b/gio/src/dbuswatchname.ccg @@ -40,8 +40,8 @@ static void Bus_Name_Appeared_giomm_callback(GDBusConnection* connection, try { - (*the_slot)(Glib::wrap(connection, true), Glib::ustring(name), - Glib::ustring(name_owner)); + (*the_slot)(Glib::wrap(connection, true), Glib::convert_const_gchar_ptr_to_ustring(name), + Glib::convert_const_gchar_ptr_to_ustring(name_owner)); } catch(...) { @@ -57,7 +57,7 @@ static void Bus_Name_Vanished_giomm_callback(GDBusConnection* connection, try { - (*the_slot)(Glib::wrap(connection, true), Glib::ustring(name)); + (*the_slot)(Glib::wrap(connection, true), Glib::convert_const_gchar_ptr_to_ustring(name)); } catch(...) { @@ -104,7 +104,7 @@ guint watch_name( slots->name_vanished_slot = new SlotNameVanished(name_vanished_slot); return g_bus_watch_name(static_cast<GBusType>(bus_type), name.c_str(), - static_cast<GBusNameWatcherFlags>(flags), + static_cast<GBusNameWatcherFlags>(flags), &Bus_Name_Appeared_giomm_callback, &Bus_Name_Vanished_giomm_callback, slots, &Bus_Watch_Name_giomm_callback_destroy); } @@ -124,7 +124,7 @@ guint watch_name( slots->name_vanished_slot = new SlotNameVanished(name_vanished_slot); return g_bus_watch_name_on_connection(Glib::unwrap(connection), - name.c_str(), static_cast<GBusNameWatcherFlags>(flags), + name.c_str(), static_cast<GBusNameWatcherFlags>(flags), &Bus_Name_Appeared_giomm_callback, &Bus_Name_Vanished_giomm_callback, slots, &Bus_Watch_Name_giomm_callback_destroy); } diff --git a/glib/src/fileutils.ccg b/glib/src/fileutils.ccg index 77bd1f1b..0fde698a 100644 --- a/glib/src/fileutils.ccg +++ b/glib/src/fileutils.ccg @@ -95,7 +95,7 @@ DirIterator::DirIterator(GDir* gobject, const char* current) std::string DirIterator::operator*() const { - return (current_) ? std::string(current_) : std::string(); + return convert_const_gchar_ptr_to_ustring(current_); } DirIterator& DirIterator::operator++() diff --git a/glib/src/iochannel.ccg b/glib/src/iochannel.ccg index d8009392..9405727e 100644 --- a/glib/src/iochannel.ccg +++ b/glib/src/iochannel.ccg @@ -289,7 +289,7 @@ IOStatus IOChannel::set_encoding(const std::string& encoding) std::string IOChannel::get_encoding() const { const char *const encoding = g_io_channel_get_encoding(gobject_); - return (encoding) ? std::string(encoding) : std::string(); + return convert_const_gchar_ptr_to_ustring(encoding); } void IOChannel::set_line_term(const std::string& term) diff --git a/glib/src/markup.ccg b/glib/src/markup.ccg index eb58f67a..5c1b0f30 100644 --- a/glib/src/markup.ccg +++ b/glib/src/markup.ccg @@ -286,7 +286,7 @@ void ParseContext::end_parse() Glib::ustring ParseContext::get_element() const { const char *const element_name = g_markup_parse_context_get_element(gobject_); - return (element_name) ? Glib::ustring(element_name) : Glib::ustring(); + return convert_const_gchar_ptr_to_ustring(element_name); } int ParseContext::get_line_number() const diff --git a/glib/src/variant.ccg b/glib/src/variant.ccg index 39509f03..f18f03c6 100644 --- a/glib/src/variant.ccg +++ b/glib/src/variant.ccg @@ -223,7 +223,7 @@ Variant<Glib::ustring>::create(const Glib::ustring& data) Glib::ustring Variant<Glib::ustring>::get() const { - return Glib::ustring(g_variant_get_string(gobject_, 0)); + return convert_const_gchar_ptr_to_ustring(g_variant_get_string(gobject_, 0)); } // Variant<Glib::ustring> makes sense for multiple types. @@ -315,7 +315,7 @@ std::string Variant<std::string>::get() const else //g_variant_get_string() cna handle strings, object paths, and signatures. pch = g_variant_get_string(gobject_, 0); - return std::string(pch); + return convert_const_gchar_ptr_to_stdstring(pch); } typedef std::vector<Glib::ustring> type_vec_ustring; |