From 768bbae90eb116349940821a1fb48920291ddd97 Mon Sep 17 00:00:00 2001
From: Vladislav Vaintroub <vvaintroub@mysql.com>
Date: Wed, 10 Jun 2009 10:59:49 +0200
Subject: Backport WL#3653 to 5.1 to enable bundled innodb plugin. Remove
 custom DLL loader code from innodb plugin code, use symbols exported from
 mysqld.

storage/innodb_plugin/handler/ha_innodb.cc:
  Remove a Win32 workaround for current_thd.
  The original  problem that innodb plugin used
  value of TLS variable across DLL boundaries is
  solved in MySQL server (current_thd is a function
  not TLS variable now)
storage/innodb_plugin/handler/handler0alter.cc:
  Remove custom delay loader
storage/innodb_plugin/handler/handler0vars.h:
  Remove custom delay loader
storage/innodb_plugin/handler/i_s.cc:
  Remove custom delay loader
storage/innodb_plugin/handler/win_delay_loader.cc:
  Remove custom delay loader
storage/innodb_plugin/plug.in:
  Remove commented out MYSQL_PLUGIN_STATIC,
  CMake would not parse that correctly
---
 sql/sql_class.cc | 6 ++++++
 1 file changed, 6 insertions(+)

(limited to 'sql/sql_class.cc')

diff --git a/sql/sql_class.cc b/sql/sql_class.cc
index cf5fdcf27a7..f003a9c502b 100644
--- a/sql/sql_class.cc
+++ b/sql/sql_class.cc
@@ -746,6 +746,12 @@ void thd_get_xid(const MYSQL_THD thd, MYSQL_XID *xid)
   *xid = *(MYSQL_XID *) &thd->transaction.xid_state.xid;
 }
 
+#ifdef _WIN32
+extern "C"   THD *_current_thd_noinline(void)
+{
+  return my_pthread_getspecific_ptr(THD*,THR_THD);
+}
+#endif
 /*
   Init common variables that has to be reset on start and on change_user
 */
-- 
cgit v1.2.1