summaryrefslogtreecommitdiffstats
path: root/mojo
diff options
context:
space:
mode:
authorananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-10 02:45:10 +0000
committerananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-10 02:45:10 +0000
commit0e8e792cd3a41390cb18efda6981d609569f2761 (patch)
treef22137c003af343b88d61266eed29524554c7bb8 /mojo
parent5e16e69cb88e5d0b782b3888c8cd5643bf8df03d (diff)
downloadchromium_src-0e8e792cd3a41390cb18efda6981d609569f2761.zip
chromium_src-0e8e792cd3a41390cb18efda6981d609569f2761.tar.gz
chromium_src-0e8e792cd3a41390cb18efda6981d609569f2761.tar.bz2
Fix compile error on Win64 due to C++ warning 4275 occurring because an exported class ViewManagerConnection is deriving from a non exported interface IViewManager.
Attempt 2 at fixing this. The previous approach of using NON_EXPORTED_BASE does not work in the template base derivation used in this class. Proposed fix is to explicitly disable this warning for Windows. BUG=none R=cpu@chromium.org, cpu TBR=darin Review URL: https://codereview.chromium.org/271363002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269493 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'mojo')
-rw-r--r--mojo/services/view_manager/view_manager_connection.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/mojo/services/view_manager/view_manager_connection.h b/mojo/services/view_manager/view_manager_connection.h
index 6b09498..2ccbe8e 100644
--- a/mojo/services/view_manager/view_manager_connection.h
+++ b/mojo/services/view_manager/view_manager_connection.h
@@ -23,10 +23,16 @@ class Node;
class RootNodeManager;
class View;
+#if defined(OS_WIN)
+// Equivalent of NON_EXPORTED_BASE which does not work with the template snafu
+// below.
+#pragma warning(push)
+#pragma warning(disable : 4275)
+#endif
+
// Manages a connection from the client.
class MOJO_VIEW_MANAGER_EXPORT ViewManagerConnection
- : public ServiceConnection<NON_EXPORTED_BASE(IViewManager),
- ViewManagerConnection,
+ : public ServiceConnection<IViewManager, ViewManagerConnection,
RootNodeManager>,
public NodeDelegate {
public:
@@ -128,6 +134,10 @@ class MOJO_VIEW_MANAGER_EXPORT ViewManagerConnection
DISALLOW_COPY_AND_ASSIGN(ViewManagerConnection);
};
+#if defined(OS_WIN)
+#pragma warning(pop)
+#endif
+
} // namespace view_manager
} // namespace services
} // namespace mojo