|
From: <br...@us...> - 2009-06-22 08:28:41
|
Revision: 3924
http://openvrml.svn.sourceforge.net/openvrml/?rev=3924&view=rev
Author: braden
Date: 2009-06-22 08:28:39 +0000 (Mon, 22 Jun 2009)
Log Message:
-----------
Use GIO instead of GnomeVFS in openvrml-player.
Modified Paths:
--------------
trunk/ChangeLog
trunk/configure.ac
trunk/src/Makefile.am
trunk/src/openvrml-player/curlbrowserhost.cpp
trunk/src/openvrml-player/player.cpp
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2009-06-22 06:24:57 UTC (rev 3923)
+++ trunk/ChangeLog 2009-06-22 08:28:39 UTC (rev 3924)
@@ -1,5 +1,19 @@
2009-06-22 Braden McDaniel <br...@en...>
+ Use GIO instead of GnomeVFS in openvrml-player.
+
+ * configure.ac: Check for GIO.
+ * src/Makefile.am
+ (openvrml_player_openvrml_player_CXXFLAGS): Pass GIO_CFLAGS.
+ (openvrml_player_openvrml_player_LDFLAGS): Pass GIO_LIBS.
+ * src/openvrml-player/curlbrowserhost.cpp
+ (openvrml_player_curl_browser_host_curl_write(void *, size_t,
+ size_t, void *)): Use GIO to get the MIME media type.
+ * src/openvrml-player/player.cpp
+ (main(int, char *[])): Don't need to initialize GnomeVFS anymore.
+
+2009-06-22 Braden McDaniel <br...@en...>
+
Use boost::shared_mutex instead of openvrml::read_write_mutex.
* src/Makefile.am
Modified: trunk/configure.ac
===================================================================
--- trunk/configure.ac 2009-06-22 06:24:57 UTC (rev 3923)
+++ trunk/configure.ac 2009-06-22 08:28:39 UTC (rev 3924)
@@ -188,18 +188,19 @@
AC_ARG_VAR([DBUS_BINDING_TOOL], [Generate stub code for dbus-glib])
AC_PATH_PROG([DBUS_BINDING_TOOL], [dbus-binding-tool])
-#
-# openvrml-player uses GtkBuilder, which was introduced in GTK+ 2.12.
-#
PKG_CHECK_MODULES([GTKGL],
- [gtkglext-1.0 gtk+-2.0 >= 2.12 gthread-2.0 glib-2.0 >= 2.6], ,
+ [gtkglext-1.0 gthread-2.0], ,
[have_gtkgl=no])
#
# openvrml-player uses GNOME_PARAM_GOPTION_CONTEXT, which was
# introduced in libgnome 2.14.
#
-PKG_CHECK_MODULES([GNOMEUI], [libgnomeui-2.0 libgnome-2.0 >= 2.14], ,
+# openvrml-player uses GtkBuilder, which was introduced in GTK+ 2.12.
+#
+PKG_CHECK_MODULES([GNOMEUI],
+ [libgnomeui-2.0 libgnome-2.0 >= 2.14 gtk+-2.0 >= 2.12], ,
[have_gnomeui=no])
+PKG_CHECK_MODULES([GIO], [gio-2.0], , [have_gio=no])
PKG_CHECK_MODULES([CURL], [libcurl], , [have_libcurl=no])
#
# The Mozilla plug-in uses the npfunctions.h header introduced in
@@ -440,8 +441,8 @@
AS_IF([test X$enable_player != Xno],
[AS_IF([test X$enable_xembed = Xno],
[AC_MSG_FAILURE([OpenVRML Player cannot be built without the XEmbed control])])
- AS_IF([test X$have_libglade = Xno],
- [AC_MSG_FAILURE([libglade is required to build OpenVRML Player])])
+ AS_IF([test X$have_gio = Xno],
+ [AC_MSG_FAILURE([GIO is required to build OpenVRML Player])])
AS_IF([test X$have_gnomeui = Xno],
[AC_MSG_FAILURE([libgnomeui is required to build OpenVRML Player])])
AS_IF([test X$have_libcurl = Xno],
Modified: trunk/src/Makefile.am
===================================================================
--- trunk/src/Makefile.am 2009-06-22 06:24:57 UTC (rev 3923)
+++ trunk/src/Makefile.am 2009-06-22 08:28:39 UTC (rev 3924)
@@ -820,12 +820,14 @@
-Ilibopenvrml \
-I$(srcdir)/libopenvrml
openvrml_player_openvrml_player_CXXFLAGS = \
+ $(GNOMEUI_CFLAGS) \
+ $(GIO_CFLAGS) \
$(DBUS_G_CFLAGS) \
- $(GNOMEUI_CFLAGS) \
$(CURL_CFLAGS)
openvrml_player_openvrml_player_LDFLAGS = \
-export-dynamic \
$(GNOMEUI_LIBS) \
+ $(GIO_LIBS) \
$(DBUS_G_LIBS) \
$(CURL_LIBS)
Modified: trunk/src/openvrml-player/curlbrowserhost.cpp
===================================================================
--- trunk/src/openvrml-player/curlbrowserhost.cpp 2009-06-22 06:24:57 UTC (rev 3923)
+++ trunk/src/openvrml-player/curlbrowserhost.cpp 2009-06-22 08:28:39 UTC (rev 3924)
@@ -19,7 +19,7 @@
# include "curlbrowserhost.h"
# include <curl/curl.h>
-# include <libgnomevfs/gnome-vfs.h>
+# include <gio/gio.h>
# include <browser-host-server-glue.h>
# include <browser-factory-client-glue.h>
# include <browser-client-glue.h>
@@ -788,25 +788,35 @@
&type);
CURL_BROWSER_HOST_CURL_EASY_RETURN_VAL_IF_ERROR(getinfo_result, 0);
- GnomeVFSFileInfo * info = 0;
- scope_guard info_guard = make_guard(gnome_vfs_file_info_unref,
- ref(info));
+ GError * error = 0;
+ GFile * file = 0;
+ scope_guard file_guard = make_guard(g_object_unref, ref(file));
+ GFileInfo * info = 0;
+ scope_guard info_guard = make_guard(g_object_unref, ref(info));
if (!type) {
- info = gnome_vfs_file_info_new();
- GnomeVFSResult get_file_info_result =
- gnome_vfs_get_file_info(stream_data.url(),
- info,
- GNOME_VFS_FILE_INFO_GET_MIME_TYPE);
- if (get_file_info_result != GNOME_VFS_OK) {
- g_critical("%s",
- gnome_vfs_result_to_string(get_file_info_result));
+ file = g_file_new_for_uri(stream_data.url());
+ static GCancellable * const cancellable = 0;
+ info = g_file_query_info(file,
+ G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE,
+ G_FILE_QUERY_INFO_NONE,
+ cancellable,
+ &error);
+ if (error) {
+ g_warning(error->message);
+ g_error_free(error);
+ error = 0;
}
- type = gnome_vfs_file_info_get_mime_type(info);
+ if (info) {
+ type =
+ g_file_info_get_attribute_string(
+ info,
+ G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE);
+ }
} else {
info_guard.dismiss();
+ file_guard.dismiss();
}
- GError * error = 0;
scope_guard error_guard = make_guard(g_error_free, boost::ref(error));
gboolean new_stream_result =
org_openvrml_Browser_new_stream(
Modified: trunk/src/openvrml-player/player.cpp
===================================================================
--- trunk/src/openvrml-player/player.cpp 2009-06-22 06:24:57 UTC (rev 3923)
+++ trunk/src/openvrml-player/player.cpp 2009-06-22 08:28:39 UTC (rev 3924)
@@ -24,7 +24,6 @@
# include <boost/multi_index/detail/scope_guard.hpp>
# include <boost/ref.hpp>
# include <dbus/dbus-glib.h>
-# include <libgnomevfs/gnome-vfs.h>
# include <libgnomeui/libgnomeui.h>
# include <gtk/gtkbuilder.h>
# include <openvrml-config.h>
@@ -84,11 +83,6 @@
g_set_application_name(app_name);
- if (!gnome_vfs_init()) {
- g_critical("GnomeVFS initialization failed");
- return EXIT_FAILURE;
- }
-
if (curl_global_init(CURL_GLOBAL_ALL) != 0) {
g_critical("libcurl initialization failed");
return EXIT_FAILURE;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|