summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <monty@mashka.mysql.fi>2003-07-01 15:02:16 +0300
committerunknown <monty@mashka.mysql.fi>2003-07-01 15:02:16 +0300
commit5a3c12effb4a0d32bf6b77d4b19edcf1757bb823 (patch)
tree1dd88e8c946c87dfaa131fd495d71766127a0e94
parent23a9a5805cd258c5699e782cebdb5763acb1d85d (diff)
parent1726ae86be52bc129b5788406d60808b15b8bd9f (diff)
downloadmariadb-git-5a3c12effb4a0d32bf6b77d4b19edcf1757bb823.tar.gz
Merge with 3.23 tree to get latest bug fixes
BitKeeper/etc/logging_ok: auto-union sql/item_func.cc: Auto merged mysql-test/t/user_var.test: Auto merged sql/log_event.cc: Auto merged sql/log_event.h: Auto merged sql/nt_servc.cc: Auto merged configure.in: Use local version innobase/os/os0file.c: Use local version innobase/page/page0page.c: Use local version innobase/row/row0sel.c: Use local version innobase/row/row0vers.c: Use local version mysql-test/r/order_by.result: Use local version mysql-test/r/user_var.result: merge with 3.23 mysql-test/t/order_by.test: Use local version (test is already in range.test) sql/log.cc: Use local version sql/share/spanish/errmsg.txt: merge sql/slave.cc: Use local version sql/sql_class.h: Use local version sql/sql_select.cc: Use patch in 4.0 for range with NULL problem
-rw-r--r--BitKeeper/etc/logging_ok2
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/Component Definitions/.fgl37
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/Component Definitions/Default.cdf192
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/Component Definitions/Default.fgl42
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/File Groups/Clients and Tools.fgl35
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/File Groups/Default.fdf82
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/File Groups/Default.fgl4
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/File Groups/Development.fgl191
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/File Groups/Documentation.fgl99
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/File Groups/Grant Tables.fgl36
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/File Groups/Servers.fgl184
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/MySQL 3.23.XX-GPL.ipr51
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/Registry Entries/Default.rge4
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.dbgbin0 -> 28458 bytes
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.inobin0 -> 58611 bytes
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.insbin0 -> 57122 bytes
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.obsbin0 -> 65611 bytes
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.rul641
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt24
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/Setup Files/Uncompressed Files/Language Independent/OS Independent/SETUP.BMPbin0 -> 15694 bytes
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/Shell Objects/Default.shl12
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/String Tables/0009-English/value.shl23
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/String Tables/Default.shl74
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/Text Substitutions/Build.tsb56
-rw-r--r--VC++Files/InstallShield/3.23.XX-gpl/Text Substitutions/Setup.tsb76
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/Component Definitions/.fgl37
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/Component Definitions/Default.cdf192
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/Component Definitions/Default.fgl42
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/File Groups/Clients and Tools.fgl35
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/File Groups/Default.fdf82
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/File Groups/Default.fgl4
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/File Groups/Development.fgl190
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/File Groups/Documentation.fgl98
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/File Groups/Grant Tables.fgl36
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/File Groups/Servers.fgl183
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/MySQL 3.23.com.ipr51
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/Registry Entries/Default.rge4
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.dbgbin0 -> 28458 bytes
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.inobin0 -> 58611 bytes
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.insbin0 -> 57122 bytes
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.obsbin0 -> 65611 bytes
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.rul641
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt24
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/Setup Files/Uncompressed Files/Language Independent/OS Independent/SETUP.BMPbin0 -> 15694 bytes
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/Shell Objects/Default.shl12
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/String Tables/0009-English/value.shl23
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/String Tables/Default.shl74
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/Text Substitutions/Build.tsb56
-rw-r--r--VC++Files/InstallShield/3.23.XXcom/Text Substitutions/Setup.tsb76
-rw-r--r--mysql-test/r/user_var.result8
-rw-r--r--mysql-test/t/user_var.test6
-rw-r--r--sql/item_func.cc1
-rw-r--r--sql/log_event.cc4
-rw-r--r--sql/log_event.h20
-rw-r--r--sql/share/spanish/errmsg.txt16
-rw-r--r--sql/sql_select.cc2
56 files changed, 3773 insertions, 9 deletions
diff --git a/BitKeeper/etc/logging_ok b/BitKeeper/etc/logging_ok
index 89f03d96369..be9d7b77650 100644
--- a/BitKeeper/etc/logging_ok
+++ b/BitKeeper/etc/logging_ok
@@ -17,6 +17,7 @@ bk@admin.bk
davida@isil.mysql.com
gluh@gluh.(none)
gluh@gluh.mysql.r18.ru
+greg@gcw.ath.cx
greg@mysql.com
guilhem@mysql.com
gweir@work.mysql.com
@@ -49,6 +50,7 @@ miguel@hegel.br
miguel@hegel.local
miguel@light.
miguel@light.local
+miguel@sartre.local
mmatthew@markslaptop.
monty@bitch.mysql.fi
monty@butch.
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/Component Definitions/.fgl b/VC++Files/InstallShield/3.23.XX-gpl/Component Definitions/.fgl
new file mode 100644
index 00000000000..81e474f9be8
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/Component Definitions/.fgl
@@ -0,0 +1,37 @@
+[General]
+Type=FILELIST
+Version=1.00.000
+
+[topdir]
+subdir0=<WINDIR>
+subdir1=<PROGRAMFILES>
+subdir2=<TARGETDIR>
+subdir3=USERDEFINED
+
+[<WINDIR>]
+DISPLAYTEXT=Windows Operating System
+TYPE=TEXTSUBFIXED
+subdir0=<WINDIR>\<WINSYSDIR>
+
+[<WINDIR>\<WINSYSDIR>]
+DISPLAYTEXT=Windows System Folder
+TYPE=TEXTSUBFIXED
+
+[<PROGRAMFILES>]
+DISPLAYTEXT=Program Files Folder
+TYPE=TEXTSUBFIXED
+subdir0=<PROGRAMFILES>\<COMMONFILES>
+
+[<PROGRAMFILES>\<COMMONFILES>]
+DISPLAYTEXT=Common Files Folder
+TYPE=TEXTSUBFIXED
+
+[<TARGETDIR>]
+DISPLAYTEXT=General Application Destination
+TYPE=TEXTSUBFIXED
+
+[USERDEFINED]
+DISPLAYTEXT=Script-defined Folders
+TYPE=USERSTART
+
+
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/Component Definitions/Default.cdf b/VC++Files/InstallShield/3.23.XX-gpl/Component Definitions/Default.cdf
new file mode 100644
index 00000000000..48d37800cd1
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/Component Definitions/Default.cdf
@@ -0,0 +1,192 @@
+[Development]
+required0=Servers
+SELECTED=Yes
+FILENEED=STANDARD
+required1=Grant Tables
+HTTPLOCATION=
+STATUS=Examples, Libraries, Includes and Script files
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=Examples, Libraries, Includes and Script files
+DISPLAYTEXT=Examples, Libraries, Includes and Script files
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Development
+COMMENT=
+INCLUDEINBUILD=Yes
+INSTALLATION=ALWAYSOVERWRITE
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[Grant Tables]
+required0=Servers
+SELECTED=Yes
+FILENEED=CRITICAL
+HTTPLOCATION=
+STATUS=The Grant Tables and Core Files
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The Grant Tables and Core Files
+DISPLAYTEXT=The Grant Tables and Core Files
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Grant Tables
+requiredby0=Development
+COMMENT=
+INCLUDEINBUILD=Yes
+requiredby1=Clients and Tools
+INSTALLATION=NEVEROVERWRITE
+requiredby2=Documentation
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[Components]
+component0=Development
+component1=Grant Tables
+component2=Servers
+component3=Clients and Tools
+component4=Documentation
+
+[TopComponents]
+component0=Servers
+component1=Clients and Tools
+component2=Documentation
+component3=Development
+component4=Grant Tables
+
+[SetupType]
+setuptype0=Compact
+setuptype1=Typical
+setuptype2=Custom
+
+[Clients and Tools]
+required0=Servers
+SELECTED=Yes
+FILENEED=HIGHLYRECOMMENDED
+required1=Grant Tables
+HTTPLOCATION=
+STATUS=The MySQL clients and Maintenance Tools
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The MySQL clients and Maintenance Tools
+DISPLAYTEXT=The MySQL clients and Maintenance Tools
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Clients and Tools
+COMMENT=
+INCLUDEINBUILD=Yes
+INSTALLATION=NEWERDATE
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[Servers]
+SELECTED=Yes
+FILENEED=CRITICAL
+HTTPLOCATION=
+STATUS=The MySQL Servers
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The MySQL Servers
+DISPLAYTEXT=The MySQL Servers
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Servers
+requiredby0=Development
+COMMENT=
+INCLUDEINBUILD=Yes
+requiredby1=Grant Tables
+INSTALLATION=ALWAYSOVERWRITE
+requiredby2=Clients and Tools
+requiredby3=Documentation
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[SetupTypeItem-Compact]
+Comment=
+item0=Grant Tables
+item1=Servers
+item2=Clients and Tools
+item3=Documentation
+Descrip=
+DisplayText=
+
+[SetupTypeItem-Custom]
+Comment=
+item0=Development
+item1=Grant Tables
+item2=Servers
+item3=Clients and Tools
+Descrip=
+item4=Documentation
+DisplayText=
+
+[Info]
+Type=CompDef
+Version=1.00.000
+Name=
+
+[SetupTypeItem-Typical]
+Comment=
+item0=Development
+item1=Grant Tables
+item2=Servers
+item3=Clients and Tools
+Descrip=
+item4=Documentation
+DisplayText=
+
+[Documentation]
+required0=Servers
+SELECTED=Yes
+FILENEED=HIGHLYRECOMMENDED
+required1=Grant Tables
+HTTPLOCATION=
+STATUS=The MySQL Documentation with different formats
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The MySQL Documentation with different formats
+DISPLAYTEXT=The MySQL Documentation with different formats
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Documentation
+COMMENT=
+INCLUDEINBUILD=Yes
+INSTALLATION=ALWAYSOVERWRITE
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/Component Definitions/Default.fgl b/VC++Files/InstallShield/3.23.XX-gpl/Component Definitions/Default.fgl
new file mode 100644
index 00000000000..4e20dcea4ab
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/Component Definitions/Default.fgl
@@ -0,0 +1,42 @@
+[<PROGRAMFILES>\<COMMONFILES>]
+DISPLAYTEXT=Common Files Folder
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[<WINDIR>\<WINSYSDIR>]
+DISPLAYTEXT=Windows System Folder
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[USERDEFINED]
+DISPLAYTEXT=Script-defined Folders
+TYPE=USERSTART
+fulldirectory=
+
+[<PROGRAMFILES>]
+DISPLAYTEXT=Program Files Folder
+SubDir0=<PROGRAMFILES>\<COMMONFILES>
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[<TARGETDIR>]
+DISPLAYTEXT=General Application Destination
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[<WINDIR>]
+DISPLAYTEXT=Windows Operating System
+SubDir0=<WINDIR>\<WINSYSDIR>
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[TopDir]
+SubDir0=<WINDIR>
+SubDir1=<PROGRAMFILES>
+SubDir2=<TARGETDIR>
+SubDir3=USERDEFINED
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Clients and Tools.fgl b/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Clients and Tools.fgl
new file mode 100644
index 00000000000..7f30ff9f64b
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Clients and Tools.fgl
@@ -0,0 +1,35 @@
+[bin]
+file15=C:\mysql\bin\pack_isam.exe
+file16=C:\mysql\bin\perror.exe
+file0=C:\mysql\bin\isamchk.exe
+file17=C:\mysql\bin\replace.exe
+file1=C:\mysql\bin\myisamchk.exe
+file18=C:\mysql\bin\winmysqladmin.cnt
+file2=C:\mysql\bin\myisamlog.exe
+file19=C:\mysql\bin\winmysqladmin.exe
+file3=C:\mysql\bin\myisampack.exe
+file4=C:\mysql\bin\mysql.exe
+file5=C:\mysql\bin\mysqladmin.exe
+file6=C:\mysql\bin\mysqlbinlog.exe
+file7=C:\mysql\bin\mysqlc.exe
+file8=C:\mysql\bin\mysqlcheck.exe
+file9=C:\mysql\bin\mysqldump.exe
+file20=C:\mysql\bin\WINMYSQLADMIN.HLP
+file21=C:\mysql\bin\cygwinb19.dll
+file10=C:\mysql\bin\mysqlimport.exe
+fulldirectory=
+file22=C:\mysql\bin\libmySQL.dll
+file11=C:\mysql\bin\MySqlManager.exe
+file23=C:\mysql\bin\my_print_defaults.exe
+file12=C:\mysql\bin\mysqlshow.exe
+file24=C:\mysql\bin\comp-err.exe
+file13=C:\mysql\bin\mysqlshutdown.exe
+file14=C:\mysql\bin\mysqlwatch.exe
+
+[TopDir]
+SubDir0=bin
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Default.fdf b/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Default.fdf
new file mode 100644
index 00000000000..8096a4b74bf
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Default.fdf
@@ -0,0 +1,82 @@
+[FileGroups]
+group0=Development
+group1=Grant Tables
+group2=Servers
+group3=Clients and Tools
+group4=Documentation
+
+[Development]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Grant Tables]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Clients and Tools]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=0000000000000000
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Servers]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Info]
+Type=FileGrp
+Version=1.00.000
+Name=
+
+[Documentation]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Default.fgl b/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Default.fgl
new file mode 100644
index 00000000000..94344a6ff69
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Default.fgl
@@ -0,0 +1,4 @@
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Development.fgl b/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Development.fgl
new file mode 100644
index 00000000000..e7b8cc7cd0f
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Development.fgl
@@ -0,0 +1,191 @@
+[bench\Data\Wisconsin]
+file0=C:\mysql\bench\Data\Wisconsin\onek.data
+file1=C:\mysql\bench\Data\Wisconsin\tenk.data
+fulldirectory=
+
+[lib\debug]
+file0=C:\mysql\lib\debug\libmySQL.dll
+file1=C:\mysql\lib\debug\libmySQL.lib
+file2=C:\mysql\lib\debug\mysqlclient.lib
+file3=C:\mysql\lib\debug\zlib.lib
+fulldirectory=
+
+[bench\output]
+fulldirectory=
+
+[examples\libmysqltest]
+file0=C:\mysql\examples\libmysqltest\myTest.c
+file1=C:\mysql\examples\libmysqltest\myTest.dsp
+file2=C:\mysql\examples\libmysqltest\myTest.dsw
+file3=C:\mysql\examples\libmysqltest\myTest.exe
+file4=C:\mysql\examples\libmysqltest\myTest.mak
+file5=C:\mysql\examples\libmysqltest\myTest.ncb
+file6=C:\mysql\examples\libmysqltest\myTest.opt
+file7=C:\mysql\examples\libmysqltest\readme
+fulldirectory=
+
+[include]
+file0=C:\mysql\include\raid.h
+file1=C:\mysql\include\errmsg.h
+file2=C:\mysql\include\Libmysql.def
+file3=C:\mysql\include\m_ctype.h
+file4=C:\mysql\include\m_string.h
+file5=C:\mysql\include\my_list.h
+file6=C:\mysql\include\my_pthread.h
+file7=C:\mysql\include\my_sys.h
+file8=C:\mysql\include\mysql.h
+file9=C:\mysql\include\mysql_com.h
+file10=C:\mysql\include\mysql_version.h
+fulldirectory=
+file11=C:\mysql\include\mysqld_error.h
+file12=C:\mysql\include\dbug.h
+file13=C:\mysql\include\my_global.h
+file14=C:\mysql\include\config-win.h
+
+[examples]
+SubDir0=examples\libmysqltest
+SubDir1=examples\tests
+fulldirectory=
+
+[lib\opt]
+file0=C:\mysql\lib\opt\libmySQL.dll
+file1=C:\mysql\lib\opt\libmySQL.lib
+file2=C:\mysql\lib\opt\mysqlclient.lib
+file3=C:\mysql\lib\opt\zlib.lib
+fulldirectory=
+
+[bench\Data]
+SubDir0=bench\Data\ATIS
+SubDir1=bench\Data\Wisconsin
+fulldirectory=
+
+[bench\limits]
+file15=C:\mysql\bench\limits\pg.comment
+file16=C:\mysql\bench\limits\solid.cfg
+file0=C:\mysql\bench\limits\access.cfg
+file17=C:\mysql\bench\limits\solid-nt4.cfg
+file1=C:\mysql\bench\limits\access.comment
+file18=C:\mysql\bench\limits\sybase.cfg
+file2=C:\mysql\bench\limits\Adabas.cfg
+file3=C:\mysql\bench\limits\Adabas.comment
+file4=C:\mysql\bench\limits\Db2.cfg
+file5=C:\mysql\bench\limits\empress.cfg
+file6=C:\mysql\bench\limits\empress.comment
+file7=C:\mysql\bench\limits\Informix.cfg
+file8=C:\mysql\bench\limits\Informix.comment
+file9=C:\mysql\bench\limits\msql.cfg
+file10=C:\mysql\bench\limits\ms-sql.cfg
+fulldirectory=
+file11=C:\mysql\bench\limits\Ms-sql65.cfg
+file12=C:\mysql\bench\limits\mysql.cfg
+file13=C:\mysql\bench\limits\oracle.cfg
+file14=C:\mysql\bench\limits\pg.cfg
+
+[TopDir]
+SubDir0=bench
+SubDir1=examples
+SubDir2=include
+SubDir3=lib
+SubDir4=scripts
+
+[bench]
+file15=C:\mysql\bench\test-create
+file16=C:\mysql\bench\test-insert
+file0=C:\mysql\bench\uname.bat
+file17=C:\mysql\bench\test-select
+file1=C:\mysql\bench\compare-results
+file18=C:\mysql\bench\test-wisconsin
+file2=C:\mysql\bench\copy-db
+file19=C:\mysql\bench\bench-init.pl
+file3=C:\mysql\bench\crash-me
+file4=C:\mysql\bench\example.bat
+file5=C:\mysql\bench\print-limit-table
+file6=C:\mysql\bench\pwd.bat
+file7=C:\mysql\bench\Readme
+SubDir0=bench\Data
+file8=C:\mysql\bench\run.bat
+SubDir1=bench\limits
+file9=C:\mysql\bench\run-all-tests
+SubDir2=bench\output
+file10=C:\mysql\bench\server-cfg
+fulldirectory=
+file11=C:\mysql\bench\test-alter-table
+file12=C:\mysql\bench\test-ATIS
+file13=C:\mysql\bench\test-big-tables
+file14=C:\mysql\bench\test-connect
+
+[examples\tests]
+file15=C:\mysql\examples\tests\lock_test.res
+file16=C:\mysql\examples\tests\mail_to_db.pl
+file0=C:\mysql\examples\tests\unique_users.tst
+file17=C:\mysql\examples\tests\table_types.pl
+file1=C:\mysql\examples\tests\auto_increment.tst
+file18=C:\mysql\examples\tests\test_delayed_insert.pl
+file2=C:\mysql\examples\tests\big_record.pl
+file19=C:\mysql\examples\tests\udf_test
+file3=C:\mysql\examples\tests\big_record.res
+file4=C:\mysql\examples\tests\czech-sorting
+file5=C:\mysql\examples\tests\deadlock-script.pl
+file6=C:\mysql\examples\tests\export.pl
+file7=C:\mysql\examples\tests\fork_test.pl
+file8=C:\mysql\examples\tests\fork2_test.pl
+file9=C:\mysql\examples\tests\fork3_test.pl
+file20=C:\mysql\examples\tests\udf_test.res
+file21=C:\mysql\examples\tests\auto_increment.res
+file10=C:\mysql\examples\tests\function.res
+fulldirectory=
+file11=C:\mysql\examples\tests\function.tst
+file12=C:\mysql\examples\tests\grant.pl
+file13=C:\mysql\examples\tests\grant.res
+file14=C:\mysql\examples\tests\lock_test.pl
+
+[bench\Data\ATIS]
+file26=C:\mysql\bench\Data\ATIS\stop1.txt
+file15=C:\mysql\bench\Data\ATIS\flight_class.txt
+file27=C:\mysql\bench\Data\ATIS\time_interval.txt
+file16=C:\mysql\bench\Data\ATIS\flight_day.txt
+file0=C:\mysql\bench\Data\ATIS\transport.txt
+file28=C:\mysql\bench\Data\ATIS\time_zone.txt
+file17=C:\mysql\bench\Data\ATIS\flight_fare.txt
+file1=C:\mysql\bench\Data\ATIS\airline.txt
+file29=C:\mysql\bench\Data\ATIS\aircraft.txt
+file18=C:\mysql\bench\Data\ATIS\food_service.txt
+file2=C:\mysql\bench\Data\ATIS\airport.txt
+file19=C:\mysql\bench\Data\ATIS\ground_service.txt
+file3=C:\mysql\bench\Data\ATIS\airport_service.txt
+file4=C:\mysql\bench\Data\ATIS\city.txt
+file5=C:\mysql\bench\Data\ATIS\class_of_service.txt
+file6=C:\mysql\bench\Data\ATIS\code_description.txt
+file7=C:\mysql\bench\Data\ATIS\compound_class.txt
+file8=C:\mysql\bench\Data\ATIS\connect_leg.txt
+file9=C:\mysql\bench\Data\ATIS\date_day.txt
+file20=C:\mysql\bench\Data\ATIS\month_name.txt
+file21=C:\mysql\bench\Data\ATIS\restrict_carrier.txt
+file10=C:\mysql\bench\Data\ATIS\day_name.txt
+fulldirectory=
+file22=C:\mysql\bench\Data\ATIS\restrict_class.txt
+file11=C:\mysql\bench\Data\ATIS\dual_carrier.txt
+file23=C:\mysql\bench\Data\ATIS\restriction.txt
+file12=C:\mysql\bench\Data\ATIS\fare.txt
+file24=C:\mysql\bench\Data\ATIS\state.txt
+file13=C:\mysql\bench\Data\ATIS\fconnection.txt
+file25=C:\mysql\bench\Data\ATIS\stop.txt
+file14=C:\mysql\bench\Data\ATIS\flight.txt
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
+[scripts]
+file0=C:\mysql\scripts\mysql_find_rows.pl
+file1=C:\mysql\scripts\mysql_setpermission.pl
+file2=C:\mysql\scripts\mysqlhotcopy.pl
+file3=C:\mysql\scripts\Readme
+fulldirectory=
+
+[lib]
+file0=C:\mysql\lib\Readme
+SubDir0=lib\debug
+SubDir1=lib\opt
+fulldirectory=
+
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Documentation.fgl b/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Documentation.fgl
new file mode 100644
index 00000000000..80fe777cf0f
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Documentation.fgl
@@ -0,0 +1,99 @@
+[Docs\Flags]
+file59=C:\mysql\Docs\Flags\romania.gif
+file48=C:\mysql\Docs\Flags\kroatia.eps
+file37=C:\mysql\Docs\Flags\iceland.gif
+file26=C:\mysql\Docs\Flags\france.eps
+file15=C:\mysql\Docs\Flags\china.gif
+file49=C:\mysql\Docs\Flags\kroatia.gif
+file38=C:\mysql\Docs\Flags\ireland.eps
+file27=C:\mysql\Docs\Flags\france.gif
+file16=C:\mysql\Docs\Flags\croatia.eps
+file0=C:\mysql\Docs\Flags\usa.gif
+file39=C:\mysql\Docs\Flags\ireland.gif
+file28=C:\mysql\Docs\Flags\germany.eps
+file17=C:\mysql\Docs\Flags\croatia.gif
+file1=C:\mysql\Docs\Flags\argentina.gif
+file29=C:\mysql\Docs\Flags\germany.gif
+file18=C:\mysql\Docs\Flags\czech-republic.eps
+file2=C:\mysql\Docs\Flags\australia.eps
+file19=C:\mysql\Docs\Flags\czech-republic.gif
+file3=C:\mysql\Docs\Flags\australia.gif
+file80=C:\mysql\Docs\Flags\usa.eps
+file4=C:\mysql\Docs\Flags\austria.eps
+file81=C:\mysql\Docs\Flags\argentina.eps
+file70=C:\mysql\Docs\Flags\spain.eps
+file5=C:\mysql\Docs\Flags\austria.gif
+file71=C:\mysql\Docs\Flags\spain.gif
+file60=C:\mysql\Docs\Flags\russia.eps
+file6=C:\mysql\Docs\Flags\brazil.eps
+file72=C:\mysql\Docs\Flags\sweden.eps
+file61=C:\mysql\Docs\Flags\russia.gif
+file50=C:\mysql\Docs\Flags\latvia.eps
+file7=C:\mysql\Docs\Flags\brazil.gif
+file73=C:\mysql\Docs\Flags\sweden.gif
+file62=C:\mysql\Docs\Flags\singapore.eps
+file51=C:\mysql\Docs\Flags\latvia.gif
+file40=C:\mysql\Docs\Flags\island.eps
+file8=C:\mysql\Docs\Flags\bulgaria.eps
+file74=C:\mysql\Docs\Flags\switzerland.eps
+file63=C:\mysql\Docs\Flags\singapore.gif
+file52=C:\mysql\Docs\Flags\netherlands.eps
+file41=C:\mysql\Docs\Flags\island.gif
+file30=C:\mysql\Docs\Flags\great-britain.eps
+file9=C:\mysql\Docs\Flags\bulgaria.gif
+file75=C:\mysql\Docs\Flags\switzerland.gif
+file64=C:\mysql\Docs\Flags\south-africa.eps
+file53=C:\mysql\Docs\Flags\netherlands.gif
+file42=C:\mysql\Docs\Flags\israel.eps
+file31=C:\mysql\Docs\Flags\great-britain.gif
+file20=C:\mysql\Docs\Flags\denmark.eps
+file76=C:\mysql\Docs\Flags\taiwan.eps
+file65=C:\mysql\Docs\Flags\south-africa.gif
+file54=C:\mysql\Docs\Flags\poland.eps
+file43=C:\mysql\Docs\Flags\israel.gif
+file32=C:\mysql\Docs\Flags\greece.eps
+file21=C:\mysql\Docs\Flags\denmark.gif
+file10=C:\mysql\Docs\Flags\canada.eps
+fulldirectory=
+file77=C:\mysql\Docs\Flags\taiwan.gif
+file66=C:\mysql\Docs\Flags\south-africa1.eps
+file55=C:\mysql\Docs\Flags\poland.gif
+file44=C:\mysql\Docs\Flags\italy.eps
+file33=C:\mysql\Docs\Flags\greece.gif
+file22=C:\mysql\Docs\Flags\estonia.eps
+file11=C:\mysql\Docs\Flags\canada.gif
+file78=C:\mysql\Docs\Flags\ukraine.eps
+file67=C:\mysql\Docs\Flags\south-africa1.gif
+file56=C:\mysql\Docs\Flags\portugal.eps
+file45=C:\mysql\Docs\Flags\italy.gif
+file34=C:\mysql\Docs\Flags\hungary.eps
+file23=C:\mysql\Docs\Flags\estonia.gif
+file12=C:\mysql\Docs\Flags\chile.eps
+file79=C:\mysql\Docs\Flags\ukraine.gif
+file68=C:\mysql\Docs\Flags\south-korea.eps
+file57=C:\mysql\Docs\Flags\portugal.gif
+file46=C:\mysql\Docs\Flags\japan.eps
+file35=C:\mysql\Docs\Flags\hungary.gif
+file24=C:\mysql\Docs\Flags\finland.eps
+file13=C:\mysql\Docs\Flags\chile.gif
+file69=C:\mysql\Docs\Flags\south-korea.gif
+file58=C:\mysql\Docs\Flags\romania.eps
+file47=C:\mysql\Docs\Flags\japan.gif
+file36=C:\mysql\Docs\Flags\iceland.eps
+file25=C:\mysql\Docs\Flags\finland.gif
+file14=C:\mysql\Docs\Flags\china.eps
+
+[Docs]
+file0=C:\mysql\Docs\manual_toc.html
+file1=C:\mysql\Docs\manual.html
+file2=C:\mysql\Docs\manual.txt
+SubDir0=Docs\Flags
+fulldirectory=
+
+[TopDir]
+SubDir0=Docs
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Grant Tables.fgl b/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Grant Tables.fgl
new file mode 100644
index 00000000000..178065a7003
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Grant Tables.fgl
@@ -0,0 +1,36 @@
+[data\test]
+fulldirectory=
+
+[data\mysql]
+file15=C:\mysql\data\mysql\func.frm
+file16=C:\mysql\data\mysql\func.MYD
+file0=C:\mysql\data\mysql\columns_priv.frm
+file17=C:\mysql\data\mysql\func.MYI
+file1=C:\mysql\data\mysql\columns_priv.MYD
+file2=C:\mysql\data\mysql\columns_priv.MYI
+file3=C:\mysql\data\mysql\db.frm
+file4=C:\mysql\data\mysql\db.MYD
+file5=C:\mysql\data\mysql\db.MYI
+file6=C:\mysql\data\mysql\host.frm
+file7=C:\mysql\data\mysql\host.MYD
+file8=C:\mysql\data\mysql\host.MYI
+file9=C:\mysql\data\mysql\tables_priv.frm
+file10=C:\mysql\data\mysql\tables_priv.MYD
+fulldirectory=
+file11=C:\mysql\data\mysql\tables_priv.MYI
+file12=C:\mysql\data\mysql\user.frm
+file13=C:\mysql\data\mysql\user.MYD
+file14=C:\mysql\data\mysql\user.MYI
+
+[TopDir]
+SubDir0=data
+
+[data]
+SubDir0=data\mysql
+SubDir1=data\test
+fulldirectory=
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Servers.fgl b/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Servers.fgl
new file mode 100644
index 00000000000..b23e2f90595
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/File Groups/Servers.fgl
@@ -0,0 +1,184 @@
+[share\polish]
+file0=C:\mysql\share\polish\errmsg.sys
+file1=C:\mysql\share\polish\errmsg.txt
+fulldirectory=
+
+[share\dutch]
+file0=C:\mysql\share\dutch\errmsg.sys
+file1=C:\mysql\share\dutch\errmsg.txt
+fulldirectory=
+
+[share\spanish]
+file0=C:\mysql\share\spanish\errmsg.sys
+file1=C:\mysql\share\spanish\errmsg.txt
+fulldirectory=
+
+[share\english]
+file0=C:\mysql\share\english\errmsg.sys
+file1=C:\mysql\share\english\errmsg.txt
+fulldirectory=
+
+[bin]
+file0=C:\mysql\bin\mysqld-opt.exe
+file1=C:\mysql\bin\mysqld-max.exe
+file2=C:\mysql\bin\mysqld-max-nt.exe
+file3=C:\mysql\bin\mysqld-nt.exe
+file4=C:\mysql\bin\mysqld.exe
+fulldirectory=
+
+[share\korean]
+file0=C:\mysql\share\korean\errmsg.sys
+file1=C:\mysql\share\korean\errmsg.txt
+fulldirectory=
+
+[share\charsets]
+file15=C:\mysql\share\charsets\latin1.conf
+file16=C:\mysql\share\charsets\latin2.conf
+file0=C:\mysql\share\charsets\win1251ukr.conf
+file17=C:\mysql\share\charsets\latin5.conf
+file1=C:\mysql\share\charsets\cp1257.conf
+file18=C:\mysql\share\charsets\Readme
+file2=C:\mysql\share\charsets\croat.conf
+file19=C:\mysql\share\charsets\swe7.conf
+file3=C:\mysql\share\charsets\danish.conf
+file4=C:\mysql\share\charsets\dec8.conf
+file5=C:\mysql\share\charsets\dos.conf
+file6=C:\mysql\share\charsets\estonia.conf
+file7=C:\mysql\share\charsets\german1.conf
+file8=C:\mysql\share\charsets\greek.conf
+file9=C:\mysql\share\charsets\hebrew.conf
+file20=C:\mysql\share\charsets\usa7.conf
+file21=C:\mysql\share\charsets\win1250.conf
+file10=C:\mysql\share\charsets\hp8.conf
+fulldirectory=
+file22=C:\mysql\share\charsets\win1251.conf
+file11=C:\mysql\share\charsets\hungarian.conf
+file23=C:\mysql\share\charsets\cp1251.conf
+file12=C:\mysql\share\charsets\Index
+file13=C:\mysql\share\charsets\koi8_ru.conf
+file14=C:\mysql\share\charsets\koi8_ukr.conf
+
+[share\ukrainian]
+file0=C:\mysql\share\ukrainian\errmsg.sys
+file1=C:\mysql\share\ukrainian\errmsg.txt
+fulldirectory=
+
+[share\hungarian]
+file0=C:\mysql\share\hungarian\errmsg.sys
+file1=C:\mysql\share\hungarian\errmsg.txt
+fulldirectory=
+
+[share\german]
+file0=C:\mysql\share\german\errmsg.sys
+file1=C:\mysql\share\german\errmsg.txt
+fulldirectory=
+
+[share\portuguese]
+file0=C:\mysql\share\portuguese\errmsg.sys
+file1=C:\mysql\share\portuguese\errmsg.txt
+fulldirectory=
+
+[share\estonian]
+file0=C:\mysql\share\estonian\errmsg.sys
+file1=C:\mysql\share\estonian\errmsg.txt
+fulldirectory=
+
+[share\romanian]
+file0=C:\mysql\share\romanian\errmsg.sys
+file1=C:\mysql\share\romanian\errmsg.txt
+fulldirectory=
+
+[share\french]
+file0=C:\mysql\share\french\errmsg.sys
+file1=C:\mysql\share\french\errmsg.txt
+fulldirectory=
+
+[share\swedish]
+file0=C:\mysql\share\swedish\errmsg.sys
+file1=C:\mysql\share\swedish\errmsg.txt
+fulldirectory=
+
+[share\slovak]
+file0=C:\mysql\share\slovak\errmsg.sys
+file1=C:\mysql\share\slovak\errmsg.txt
+fulldirectory=
+
+[share\greek]
+file0=C:\mysql\share\greek\errmsg.sys
+file1=C:\mysql\share\greek\errmsg.txt
+fulldirectory=
+
+[TopDir]
+file0=C:\mysql\mysqlbug.txt
+file1=C:\mysql\my-small.cnf
+file2=C:\mysql\my-large.cnf
+file3=C:\mysql\my-medium.cnf
+file4=C:\mysql\my-huge.cnf
+SubDir0=bin
+SubDir1=share
+
+[share]
+SubDir8=share\hungarian
+SubDir9=share\charsets
+SubDir20=share\spanish
+SubDir21=share\swedish
+SubDir10=share\italian
+SubDir22=share\ukrainian
+SubDir11=share\japanese
+SubDir12=share\korean
+SubDir13=share\norwegian
+SubDir14=share\norwegian-ny
+SubDir15=share\polish
+SubDir16=share\portuguese
+SubDir0=share\czech
+SubDir17=share\romanian
+SubDir1=share\danish
+SubDir18=share\russian
+SubDir2=share\dutch
+SubDir19=share\slovak
+SubDir3=share\english
+fulldirectory=
+SubDir4=share\estonian
+SubDir5=share\french
+SubDir6=share\german
+SubDir7=share\greek
+
+[share\norwegian-ny]
+file0=C:\mysql\share\norwegian-ny\errmsg.sys
+file1=C:\mysql\share\norwegian-ny\errmsg.txt
+fulldirectory=
+
+[share\danish]
+file0=C:\mysql\share\danish\errmsg.sys
+file1=C:\mysql\share\danish\errmsg.txt
+fulldirectory=
+
+[share\czech]
+file0=C:\mysql\share\czech\errmsg.sys
+file1=C:\mysql\share\czech\errmsg.txt
+fulldirectory=
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
+[share\russian]
+file0=C:\mysql\share\russian\errmsg.sys
+file1=C:\mysql\share\russian\errmsg.txt
+fulldirectory=
+
+[share\norwegian]
+file0=C:\mysql\share\norwegian\errmsg.sys
+file1=C:\mysql\share\norwegian\errmsg.txt
+fulldirectory=
+
+[share\japanese]
+file0=C:\mysql\share\japanese\errmsg.sys
+file1=C:\mysql\share\japanese\errmsg.txt
+fulldirectory=
+
+[share\italian]
+file0=C:\mysql\share\italian\errmsg.sys
+file1=C:\mysql\share\italian\errmsg.txt
+fulldirectory=
+
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/MySQL 3.23.XX-GPL.ipr b/VC++Files/InstallShield/3.23.XX-gpl/MySQL 3.23.XX-GPL.ipr
new file mode 100644
index 00000000000..de15790e744
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/MySQL 3.23.XX-GPL.ipr
@@ -0,0 +1,51 @@
+[Language]
+LanguageSupport0=0009
+
+[OperatingSystem]
+OSSupport=0000000000010010
+
+[Data]
+CurrentMedia=
+CurrentComponentDef=Default.cdf
+ProductName=MySQL Servers and Clients
+set_mifserial=
+DevEnvironment=Microsoft Visual C++ 6
+AppExe=
+set_dlldebug=No
+EmailAddresss=
+Instructions=Instructions.txt
+set_testmode=No
+set_mif=No
+SummaryText=
+Department=
+HomeURL=
+Author=
+Type=Database Application
+InstallRoot=C:\MySQL-Install\3.23.XX-gpl
+Version=1.00.000
+InstallationGUID=40744a4d-efed-4cff-84a9-9e6389550f5c
+set_level=Level 3
+CurrentFileGroupDef=Default.fdf
+Notes=Notes.txt
+set_maxerr=50
+set_args=
+set_miffile=Status.mif
+set_dllcmdline=
+Copyright=
+set_warnaserr=No
+CurrentPlatform=
+Category=
+set_preproc=
+CurrentLanguage=English
+CompanyName=MySQL
+Description=Description.txt
+set_maxwarn=50
+set_crc=Yes
+set_compileb4build=No
+
+[MediaInfo]
+
+[General]
+Type=INSTALLMAIN
+Version=1.10.000
+
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/Registry Entries/Default.rge b/VC++Files/InstallShield/3.23.XX-gpl/Registry Entries/Default.rge
new file mode 100644
index 00000000000..537dfd82e48
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/Registry Entries/Default.rge
@@ -0,0 +1,4 @@
+[General]
+Type=REGISTRYDATA
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.dbg b/VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.dbg
new file mode 100644
index 00000000000..0c6d4e6b708
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.dbg
Binary files differ
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.ino b/VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.ino
new file mode 100644
index 00000000000..204d8ea0f36
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.ino
Binary files differ
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.ins b/VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.ins
new file mode 100644
index 00000000000..759009b5c84
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.ins
Binary files differ
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.obs b/VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.obs
new file mode 100644
index 00000000000..5fcfcb62c4e
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.obs
Binary files differ
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.rul b/VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.rul
new file mode 100644
index 00000000000..0db8417a62c
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/Script Files/Setup.rul
@@ -0,0 +1,641 @@
+
+////////////////////////////////////////////////////////////////////////////////
+//
+// IIIIIII SSSSSS
+// II SS InstallShield (R)
+// II SSSSSS (c) 1996-1997, InstallShield Software Corporation
+// II SS (c) 1990-1996, InstallShield Corporation
+// IIIIIII SSSSSS All Rights Reserved.
+//
+//
+// This code is generated as a starting setup template. You should
+// modify it to provide all necessary steps for your setup.
+//
+//
+// File Name: Setup.rul
+//
+// Description: InstallShield script
+//
+// Comments: This template script performs a basic setup on a
+// Windows 95 or Windows NT 4.0 platform. With minor
+// modifications, this template can be adapted to create
+// new, customized setups.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+
+ // Include header file
+#include "sdlang.h"
+#include "sddialog.h"
+
+////////////////////// string defines ////////////////////////////
+
+#define UNINST_LOGFILE_NAME "Uninst.isu"
+
+//////////////////// installation declarations ///////////////////
+
+ // ----- DLL prototypes -----
+
+
+ // your DLL prototypes
+
+
+ // ---- script prototypes -----
+
+ // generated
+ prototype ShowDialogs();
+ prototype MoveFileData();
+ prototype HandleMoveDataError( NUMBER );
+ prototype ProcessBeforeDataMove();
+ prototype ProcessAfterDataMove();
+ prototype SetupRegistry();
+ prototype SetupFolders();
+ prototype CleanUpInstall();
+ prototype SetupInstall();
+ prototype SetupScreen();
+ prototype CheckRequirements();
+ prototype DialogShowSdWelcome();
+ prototype DialogShowSdShowInfoList();
+ prototype DialogShowSdAskDestPath();
+ prototype DialogShowSdSetupType();
+ prototype DialogShowSdComponentDialog2();
+ prototype DialogShowSdFinishReboot();
+
+ // your prototypes
+
+
+ // ----- global variables ------
+
+ // generated
+ BOOL bWinNT, bIsShellExplorer, bInstallAborted, bIs32BitSetup;
+ STRING svDir;
+ STRING svName, svCompany, svSerial;
+ STRING szAppPath;
+ STRING svSetupType;
+
+
+ // your global variables
+
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// MAIN PROGRAM
+//
+// The setup begins here by hiding the visible setup
+// window. This is done to allow all the titles, images, etc. to
+// be established before showing the main window. The following
+// logic then performs the setup in a series of steps.
+//
+///////////////////////////////////////////////////////////////////////////////
+program
+ Disable( BACKGROUND );
+
+ CheckRequirements();
+
+ SetupInstall();
+
+ SetupScreen();
+
+ if (ShowDialogs()<0) goto end_install;
+
+ if (ProcessBeforeDataMove()<0) goto end_install;
+
+ if (MoveFileData()<0) goto end_install;
+
+ if (ProcessAfterDataMove()<0) goto end_install;
+
+ if (SetupRegistry()<0) goto end_install;
+
+ if (SetupFolders()<0) goto end_install;
+
+
+ end_install:
+
+ CleanUpInstall();
+
+ // If an unrecoverable error occurred, clean up the partial installation.
+ // Otherwise, exit normally.
+
+ if (bInstallAborted) then
+ abort;
+ endif;
+
+endprogram
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ShowDialogs //
+// //
+// Purpose: This function manages the display and navigation //
+// the standard dialogs that exist in a setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ShowDialogs()
+ NUMBER nResult;
+ begin
+
+ Dlg_Start:
+ // beginning of dialogs label
+
+ Dlg_SdWelcome:
+ nResult = DialogShowSdWelcome();
+ if (nResult = BACK) goto Dlg_Start;
+
+ Dlg_SdShowInfoList:
+ nResult = DialogShowSdShowInfoList();
+ if (nResult = BACK) goto Dlg_SdWelcome;
+
+ Dlg_SdAskDestPath:
+ nResult = DialogShowSdAskDestPath();
+ if (nResult = BACK) goto Dlg_SdShowInfoList;
+
+ Dlg_SdSetupType:
+ nResult = DialogShowSdSetupType();
+ if (nResult = BACK) goto Dlg_SdAskDestPath;
+
+ Dlg_SdComponentDialog2:
+ if ((nResult = BACK) && (svSetupType != "Custom") && (svSetupType != "")) then
+ goto Dlg_SdSetupType;
+ endif;
+ nResult = DialogShowSdComponentDialog2();
+ if (nResult = BACK) goto Dlg_SdSetupType;
+
+ return 0;
+
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ProcessBeforeDataMove //
+// //
+// Purpose: This function performs any necessary operations prior to the //
+// actual data move operation. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ProcessBeforeDataMove()
+ STRING svLogFile;
+ NUMBER nResult;
+ begin
+
+ InstallationInfo( @COMPANY_NAME, @PRODUCT_NAME, @PRODUCT_VERSION, @PRODUCT_KEY );
+
+ svLogFile = UNINST_LOGFILE_NAME;
+
+ nResult = DeinstallStart( svDir, svLogFile, @UNINST_KEY, 0 );
+ if (nResult < 0) then
+ MessageBox( @ERROR_UNINSTSETUP, WARNING );
+ endif;
+
+ szAppPath = TARGETDIR; // TODO : if your application .exe is in a subdir of TARGETDIR then add subdir
+
+ if ((bIs32BitSetup) && (bIsShellExplorer)) then
+ RegDBSetItem( REGDB_APPPATH, szAppPath );
+ RegDBSetItem( REGDB_APPPATH_DEFAULT, szAppPath ^ @PRODUCT_KEY );
+ RegDBSetItem( REGDB_UNINSTALL_NAME, @UNINST_DISPLAY_NAME );
+ endif;
+
+ // TODO : update any items you want to process before moving the data
+ //
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: MoveFileData //
+// //
+// Purpose: This function handles the data movement for //
+// the setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function MoveFileData()
+ NUMBER nResult, nDisk;
+ begin
+
+ nDisk = 1;
+ SetStatusWindow( 0, "" );
+ Disable( DIALOGCACHE );
+ Enable( STATUS );
+ StatusUpdate( ON, 100 );
+ nResult = ComponentMoveData( MEDIA, nDisk, 0 );
+
+ HandleMoveDataError( nResult );
+
+ Disable( STATUS );
+
+ return nResult;
+
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: HandleMoveDataError //
+// //
+// Purpose: This function handles the error (if any) during the move data //
+// operation. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function HandleMoveDataError( nResult )
+ STRING szErrMsg, svComponent , svFileGroup , svFile;
+ begin
+
+ svComponent = "";
+ svFileGroup = "";
+ svFile = "";
+
+ switch (nResult)
+ case 0:
+ return 0;
+ default:
+ ComponentError ( MEDIA , svComponent , svFileGroup , svFile , nResult );
+ szErrMsg = @ERROR_MOVEDATA + "\n\n" +
+ @ERROR_COMPONENT + " " + svComponent + "\n" +
+ @ERROR_FILEGROUP + " " + svFileGroup + "\n" +
+ @ERROR_FILE + " " + svFile;
+ SprintfBox( SEVERE, @TITLE_CAPTIONBAR, szErrMsg, nResult );
+ bInstallAborted = TRUE;
+ return nResult;
+ endswitch;
+
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ProcessAfterDataMove //
+// //
+// Purpose: This function performs any necessary operations needed after //
+// all data has been moved. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ProcessAfterDataMove()
+ begin
+
+ // TODO : update self-registered files and other processes that
+ // should be performed after the data has been moved.
+
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupRegistry //
+// //
+// Purpose: This function makes the registry entries for this setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupRegistry()
+ NUMBER nResult;
+
+ begin
+
+ // TODO : Add all your registry entry keys here
+ //
+ //
+ // RegDBCreateKeyEx, RegDBSetKeyValueEx....
+ //
+
+ nResult = CreateRegistrySet( "" );
+
+ return nResult;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// Function: SetupFolders
+//
+// Purpose: This function creates all the folders and shortcuts for the
+// setup. This includes program groups and items for Windows 3.1.
+//
+///////////////////////////////////////////////////////////////////////////////
+function SetupFolders()
+ NUMBER nResult;
+
+ begin
+
+
+ // TODO : Add all your folder (program group) along with shortcuts (program items)
+ //
+ //
+ // CreateProgramFolder, AddFolderIcon....
+ //
+
+ nResult = CreateShellObjects( "" );
+
+ return nResult;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: CleanUpInstall //
+// //
+// Purpose: This cleans up the setup. Anything that should //
+// be released or deleted at the end of the setup should //
+// be done here. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function CleanUpInstall()
+ begin
+
+
+ if (bInstallAborted) then
+ return 0;
+ endif;
+
+ DialogShowSdFinishReboot();
+
+ if (BATCH_INSTALL) then // ensure locked files are properly written
+ CommitSharedFiles(0);
+ endif;
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupInstall //
+// //
+// Purpose: This will setup the installation. Any general initialization //
+// needed for the installation should be performed here. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupInstall()
+ begin
+
+ Enable( CORECOMPONENTHANDLING );
+
+ bInstallAborted = FALSE;
+
+ if (bIs32BitSetup) then
+ svDir = "C:\\mysql"; //PROGRAMFILES ^ @COMPANY_NAME ^ @PRODUCT_NAME;
+ else
+ svDir = "C:\\mysql"; //PROGRAMFILES ^ @COMPANY_NAME16 ^ @PRODUCT_NAME16; // use shorten names
+ endif;
+
+ TARGETDIR = svDir;
+
+ SdProductName( @PRODUCT_NAME );
+
+ Enable( DIALOGCACHE );
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupScreen //
+// //
+// Purpose: This function establishes the screen look. This includes //
+// colors, fonts, and text to be displayed. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupScreen()
+ begin
+
+ Enable( FULLWINDOWMODE );
+ Enable( INDVFILESTATUS );
+ SetTitle( @TITLE_MAIN, 24, WHITE );
+
+ SetTitle( @TITLE_CAPTIONBAR, 0, BACKGROUNDCAPTION ); // Caption bar text.
+
+ Enable( BACKGROUND );
+
+ Delay( 1 );
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: CheckRequirements //
+// //
+// Purpose: This function checks all minimum requirements for the //
+// application being installed. If any fail, then the user //
+// is informed and the setup is terminated. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function CheckRequirements()
+ NUMBER nvDx, nvDy, nvResult;
+ STRING svResult;
+
+ begin
+
+ bWinNT = FALSE;
+ bIsShellExplorer = FALSE;
+
+ // Check screen resolution.
+ GetExtents( nvDx, nvDy );
+
+ if (nvDy < 480) then
+ MessageBox( @ERROR_VGARESOLUTION, WARNING );
+ abort;
+ endif;
+
+ // set 'setup' operation mode
+ bIs32BitSetup = TRUE;
+ GetSystemInfo( ISTYPE, nvResult, svResult );
+ if (nvResult = 16) then
+ bIs32BitSetup = FALSE; // running 16-bit setup
+ return 0; // no additional information required
+ endif;
+
+ // --- 32-bit testing after this point ---
+
+ // Determine the target system's operating system.
+ GetSystemInfo( OS, nvResult, svResult );
+
+ if (nvResult = IS_WINDOWSNT) then
+ // Running Windows NT.
+ bWinNT = TRUE;
+
+ // Check to see if the shell being used is EXPLORER shell.
+ if (GetSystemInfo( OSMAJOR, nvResult, svResult ) = 0) then
+ if (nvResult >= 4) then
+ bIsShellExplorer = TRUE;
+ endif;
+ endif;
+
+ elseif (nvResult = IS_WINDOWS95 ) then
+ bIsShellExplorer = TRUE;
+
+ endif;
+
+end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdWelcome //
+// //
+// Purpose: This function handles the standard welcome dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdWelcome()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdWelcome( szTitle, szMsg );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdShowInfoList //
+// //
+// Purpose: This function displays the general information list dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdShowInfoList()
+ NUMBER nResult;
+ LIST list;
+ STRING szTitle, szMsg, szFile;
+ begin
+
+ szFile = SUPPORTDIR ^ "infolist.txt";
+
+ list = ListCreate( STRINGLIST );
+ ListReadFromFile( list, szFile );
+ szTitle = "";
+ szMsg = " ";
+ nResult = SdShowInfoList( szTitle, szMsg, list );
+
+ ListDestroy( list );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdAskDestPath //
+// //
+// Purpose: This function asks the user for the destination directory. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdAskDestPath()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdAskDestPath( szTitle, szMsg, svDir, 0 );
+
+ TARGETDIR = svDir;
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdSetupType //
+// //
+// Purpose: This function displays the standard setup type dialog. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdSetupType()
+ NUMBER nResult, nType;
+ STRING szTitle, szMsg;
+ begin
+
+ switch (svSetupType)
+ case "Typical":
+ nType = TYPICAL;
+ case "Custom":
+ nType = CUSTOM;
+ case "Compact":
+ nType = COMPACT;
+ case "":
+ svSetupType = "Typical";
+ nType = TYPICAL;
+ endswitch;
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SetupType( szTitle, szMsg, "", nType, 0 );
+
+ switch (nResult)
+ case COMPACT:
+ svSetupType = "Compact";
+ case TYPICAL:
+ svSetupType = "Typical";
+ case CUSTOM:
+ svSetupType = "Custom";
+ endswitch;
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdComponentDialog2 //
+// //
+// Purpose: This function displays the custom component dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdComponentDialog2()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ if ((svSetupType != "Custom") && (svSetupType != "")) then
+ return 0;
+ endif;
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdComponentDialog2( szTitle, szMsg, svDir, "" );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdFinishReboot //
+// //
+// Purpose: This function will show the last dialog of the product. //
+// It will allow the user to reboot and/or show some readme text. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdFinishReboot()
+ NUMBER nResult, nDefOptions;
+ STRING szTitle, szMsg1, szMsg2, szOption1, szOption2;
+ NUMBER bOpt1, bOpt2;
+ begin
+/*
+ if (!BATCH_INSTALL) then
+ bOpt1 = FALSE;
+ bOpt2 = FALSE;
+ szMsg1 = "";
+ szMsg2 = "";
+ szOption1 = "";
+ szOption2 = "";
+ nResult = SdFinish( szTitle, szMsg1, szMsg2, szOption1, szOption2, bOpt1, bOpt2 );
+ return 0;
+ endif;
+
+ nDefOptions = SYS_BOOTMACHINE;
+ szTitle = "";
+ szMsg1 = "";
+ szMsg2 = "";
+ nResult = SdFinishReboot( szTitle, szMsg1, nDefOptions, szMsg2, 0 );
+*/
+ return nResult;
+ end;
+
+ // --- include script file section ---
+
+#include "sddialog.rul"
+
+
+
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt b/VC++Files/InstallShield/3.23.XX-gpl/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt
new file mode 100644
index 00000000000..2f561d29d81
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt
@@ -0,0 +1,24 @@
+This is a release of MySQL 3.23.56 for Win32.
+
+NOTE: If you install MySQL in a folder other than
+C:\MYSQL or you intend to start MySQL on NT/Win2000
+as a service, you must create a file named C:\MY.CNF
+or \Windows\my.ini or \winnt\my.ini with the following
+information::
+
+[mysqld]
+basedir=E:/installation-path/
+datadir=E:/data-path/
+
+After your have installed MySQL, the installation
+directory which contains the files named 'my-size.cnf'.
+You can use this as a starting point for your own
+C:\my.cnf file.
+
+If you have any problems, you can mail them to
+win32@lists.mysql.com after you have consulted the
+MySQL manual and the MySQL mailing list archive
+(http://www.mysql.com/documentation/index.html)
+
+On behalf of the MySQL AB gang,
+Michael Widenius \ No newline at end of file
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/Setup Files/Uncompressed Files/Language Independent/OS Independent/SETUP.BMP b/VC++Files/InstallShield/3.23.XX-gpl/Setup Files/Uncompressed Files/Language Independent/OS Independent/SETUP.BMP
new file mode 100644
index 00000000000..3229d50c9bf
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/Setup Files/Uncompressed Files/Language Independent/OS Independent/SETUP.BMP
Binary files differ
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/Shell Objects/Default.shl b/VC++Files/InstallShield/3.23.XX-gpl/Shell Objects/Default.shl
new file mode 100644
index 00000000000..187cb651307
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/Shell Objects/Default.shl
@@ -0,0 +1,12 @@
+[Data]
+Folder3=<FOLDER_STARTUP>
+Group0=Main
+Group1=Startup
+Folder0=<FOLDER_DESKTOP>
+Folder1=<FOLDER_STARTMENU>
+Folder2=<FOLDER_PROGRAMS>
+
+[Info]
+Type=ShellObject
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/String Tables/0009-English/value.shl b/VC++Files/InstallShield/3.23.XX-gpl/String Tables/0009-English/value.shl
new file mode 100644
index 00000000000..687c58b7b21
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/String Tables/0009-English/value.shl
@@ -0,0 +1,23 @@
+[Data]
+TITLE_MAIN=MySQL Servers and Clients 3.23.56
+COMPANY_NAME=MySQL AB
+ERROR_COMPONENT=Component:
+COMPANY_NAME16=Company
+PRODUCT_VERSION=3.23.56
+ERROR_MOVEDATA=An error occurred during the move data process: %d
+ERROR_FILEGROUP=File Group:
+UNINST_KEY=MySQL Servers and Clients 3.23.56
+TITLE_CAPTIONBAR=MySQL Servers and Clients 3.23.56 Setup
+PRODUCT_NAME16=Product
+ERROR_VGARESOLUTION=This program requires VGA or better resolution.
+ERROR_FILE=File:
+UNINST_DISPLAY_NAME=MySQL Servers and Clients 3.23.56
+PRODUCT_KEY=yourapp.Exe
+PRODUCT_NAME=MySQL Servers and Clients 3.23.56
+ERROR_UNINSTSETUP=unInstaller setup failed to initialize. You may not be able to uninstall this product.
+
+[General]
+Language=0009
+Type=STRINGTABLESPECIFIC
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/String Tables/Default.shl b/VC++Files/InstallShield/3.23.XX-gpl/String Tables/Default.shl
new file mode 100644
index 00000000000..d4dc4925ab1
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/String Tables/Default.shl
@@ -0,0 +1,74 @@
+[TITLE_MAIN]
+Comment=
+
+[COMPANY_NAME]
+Comment=
+
+[ERROR_COMPONENT]
+Comment=
+
+[COMPANY_NAME16]
+Comment=
+
+[PRODUCT_VERSION]
+Comment=
+
+[ERROR_MOVEDATA]
+Comment=
+
+[ERROR_FILEGROUP]
+Comment=
+
+[Language]
+Lang0=0009
+CurrentLang=0
+
+[UNINST_KEY]
+Comment=
+
+[TITLE_CAPTIONBAR]
+Comment=
+
+[Data]
+Entry0=ERROR_VGARESOLUTION
+Entry1=TITLE_MAIN
+Entry2=TITLE_CAPTIONBAR
+Entry3=UNINST_KEY
+Entry4=UNINST_DISPLAY_NAME
+Entry5=COMPANY_NAME
+Entry6=PRODUCT_NAME
+Entry7=PRODUCT_VERSION
+Entry8=PRODUCT_KEY
+Entry9=ERROR_MOVEDATA
+Entry10=ERROR_UNINSTSETUP
+Entry11=COMPANY_NAME16
+Entry12=PRODUCT_NAME16
+Entry13=ERROR_COMPONENT
+Entry14=ERROR_FILEGROUP
+Entry15=ERROR_FILE
+
+[PRODUCT_NAME16]
+Comment=
+
+[ERROR_VGARESOLUTION]
+Comment=
+
+[ERROR_FILE]
+Comment=
+
+[General]
+Type=STRINGTABLE
+Version=1.00.000
+
+[UNINST_DISPLAY_NAME]
+Comment=
+
+[PRODUCT_KEY]
+Comment=
+
+[PRODUCT_NAME]
+Comment=
+
+[ERROR_UNINSTSETUP]
+Comment=
+
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/Text Substitutions/Build.tsb b/VC++Files/InstallShield/3.23.XX-gpl/Text Substitutions/Build.tsb
new file mode 100644
index 00000000000..3949bd4c066
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/Text Substitutions/Build.tsb
@@ -0,0 +1,56 @@
+[<HKUS>]
+Value=
+KeyType=4
+
+[<HKCR>]
+Value=
+KeyType=4
+
+[<PROGRAMFILES>]
+Value=
+KeyType=4
+
+[<WINSYSDIR>]
+Value=
+KeyType=4
+
+[<COMMONFILES>]
+Value=
+KeyType=4
+
+[<WINDIR>]
+Value=
+KeyType=4
+
+[Data]
+Key0=<PROGRAMFILES>
+Key1=<COMMONFILES>
+Key2=<WINDIR>
+Key3=<WINSYSDIR>
+Key4=<HKLM>
+Key5=<HKCU>
+Key6=<HKCC>
+Key7=<HKDD>
+Key8=<HKUS>
+Key9=<HKCR>
+
+[General]
+Type=TEXTSUB
+Version=1.00.000
+
+[<HKLM>]
+Value=
+KeyType=4
+
+[<HKCU>]
+Value=
+KeyType=4
+
+[<HKCC>]
+Value=
+KeyType=4
+
+[<HKDD>]
+Value=
+KeyType=4
+
diff --git a/VC++Files/InstallShield/3.23.XX-gpl/Text Substitutions/Setup.tsb b/VC++Files/InstallShield/3.23.XX-gpl/Text Substitutions/Setup.tsb
new file mode 100644
index 00000000000..b0c5a509f0b
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XX-gpl/Text Substitutions/Setup.tsb
@@ -0,0 +1,76 @@
+[<SRCDIR>]
+Value=
+KeyType=4
+
+[<HKUS>]
+Value=
+KeyType=4
+
+[<HKCR>]
+Value=
+KeyType=4
+
+[<PROGRAMFILES>]
+Value=
+KeyType=4
+
+[<TARGETDIR>]
+Value=
+KeyType=4
+
+[<WINSYSDIR>]
+Value=
+KeyType=4
+
+[<COMMONFILES>]
+Value=
+KeyType=4
+
+[<WINDIR>]
+Value=
+KeyType=4
+
+[Data]
+Key0=<PROGRAMFILES>
+Key1=<COMMONFILES>
+Key2=<WINDIR>
+Key3=<WINSYSDIR>
+Key4=<TARGETDIR>
+Key5=<SUPPORTDIR>
+Key10=<HKDD>
+Key6=<SRCDIR>
+Key11=<HKUS>
+Key7=<HKLM>
+Key12=<HKCR>
+Key8=<HKCU>
+Key13=<SHELL_OBJECT_FOLDER>
+Key9=<HKCC>
+
+[<SUPPORTDIR>]
+Value=
+KeyType=4
+
+[<SHELL_OBJECT_FOLDER>]
+Value=
+KeyType=4
+
+[General]
+Type=TEXTSUB
+Version=1.00.000
+
+[<HKLM>]
+Value=
+KeyType=4
+
+[<HKCU>]
+Value=
+KeyType=4
+
+[<HKCC>]
+Value=
+KeyType=4
+
+[<HKDD>]
+Value=
+KeyType=4
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/Component Definitions/.fgl b/VC++Files/InstallShield/3.23.XXcom/Component Definitions/.fgl
new file mode 100644
index 00000000000..81e474f9be8
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/Component Definitions/.fgl
@@ -0,0 +1,37 @@
+[General]
+Type=FILELIST
+Version=1.00.000
+
+[topdir]
+subdir0=<WINDIR>
+subdir1=<PROGRAMFILES>
+subdir2=<TARGETDIR>
+subdir3=USERDEFINED
+
+[<WINDIR>]
+DISPLAYTEXT=Windows Operating System
+TYPE=TEXTSUBFIXED
+subdir0=<WINDIR>\<WINSYSDIR>
+
+[<WINDIR>\<WINSYSDIR>]
+DISPLAYTEXT=Windows System Folder
+TYPE=TEXTSUBFIXED
+
+[<PROGRAMFILES>]
+DISPLAYTEXT=Program Files Folder
+TYPE=TEXTSUBFIXED
+subdir0=<PROGRAMFILES>\<COMMONFILES>
+
+[<PROGRAMFILES>\<COMMONFILES>]
+DISPLAYTEXT=Common Files Folder
+TYPE=TEXTSUBFIXED
+
+[<TARGETDIR>]
+DISPLAYTEXT=General Application Destination
+TYPE=TEXTSUBFIXED
+
+[USERDEFINED]
+DISPLAYTEXT=Script-defined Folders
+TYPE=USERSTART
+
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/Component Definitions/Default.cdf b/VC++Files/InstallShield/3.23.XXcom/Component Definitions/Default.cdf
new file mode 100644
index 00000000000..f44131f754e
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/Component Definitions/Default.cdf
@@ -0,0 +1,192 @@
+[Development]
+required0=Servers
+SELECTED=Yes
+FILENEED=STANDARD
+required1=Grant Tables
+HTTPLOCATION=
+STATUS=Examples, Libraries, Includes and Script files
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=Examples, Libraries, Includes and Script files
+DISPLAYTEXT=Examples, Libraries, Includes and Script files
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Development
+COMMENT=
+INCLUDEINBUILD=Yes
+INSTALLATION=ALWAYSOVERWRITE
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[Grant Tables]
+required0=Servers
+SELECTED=Yes
+FILENEED=CRITICAL
+HTTPLOCATION=
+STATUS=The Grant Tables and Core Files
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The Grant Tables and Core Files
+DISPLAYTEXT=The Grant Tables and Core Files
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Grant Tables
+requiredby0=Development
+COMMENT=
+INCLUDEINBUILD=Yes
+requiredby1=Clients and Tools
+INSTALLATION=NEVEROVERWRITE
+requiredby2=Documentation
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[Components]
+component0=Development
+component1=Grant Tables
+component2=Clients and Tools
+component3=Servers
+component4=Documentation
+
+[TopComponents]
+component0=Servers
+component1=Clients and Tools
+component2=Documentation
+component3=Development
+component4=Grant Tables
+
+[SetupType]
+setuptype0=Compact
+setuptype1=Typical
+setuptype2=Custom
+
+[Servers]
+SELECTED=Yes
+FILENEED=CRITICAL
+HTTPLOCATION=
+STATUS=The MySQL Servers
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The MySQL Servers
+DISPLAYTEXT=The MySQL Servers
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Servers
+requiredby0=Development
+COMMENT=
+INCLUDEINBUILD=Yes
+requiredby1=Grant Tables
+INSTALLATION=ALWAYSOVERWRITE
+requiredby2=Clients and Tools
+requiredby3=Documentation
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[Clients and Tools]
+required0=Servers
+SELECTED=Yes
+FILENEED=HIGHLYRECOMMENDED
+required1=Grant Tables
+HTTPLOCATION=
+STATUS=The MySQL clients and Maintenance Tools
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The MySQL clients and Maintenance Tools
+DISPLAYTEXT=The MySQL clients and Maintenance Tools
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Clients and Tools
+COMMENT=
+INCLUDEINBUILD=Yes
+INSTALLATION=NEWERDATE
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[SetupTypeItem-Compact]
+Comment=
+item0=Grant Tables
+item1=Clients and Tools
+item2=Servers
+item3=Documentation
+Descrip=
+DisplayText=
+
+[SetupTypeItem-Custom]
+Comment=
+item0=Development
+item1=Grant Tables
+item2=Clients and Tools
+item3=Servers
+Descrip=
+item4=Documentation
+DisplayText=
+
+[Info]
+Type=CompDef
+Version=1.00.000
+Name=
+
+[SetupTypeItem-Typical]
+Comment=
+item0=Development
+item1=Grant Tables
+item2=Clients and Tools
+item3=Servers
+Descrip=
+item4=Documentation
+DisplayText=
+
+[Documentation]
+required0=Servers
+SELECTED=Yes
+FILENEED=HIGHLYRECOMMENDED
+required1=Grant Tables
+HTTPLOCATION=
+STATUS=The MySQL Documentation with different formats
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The MySQL Documentation with different formats
+DISPLAYTEXT=The MySQL Documentation with different formats
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Documentation
+COMMENT=
+INCLUDEINBUILD=Yes
+INSTALLATION=ALWAYSOVERWRITE
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/Component Definitions/Default.fgl b/VC++Files/InstallShield/3.23.XXcom/Component Definitions/Default.fgl
new file mode 100644
index 00000000000..4e20dcea4ab
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/Component Definitions/Default.fgl
@@ -0,0 +1,42 @@
+[<PROGRAMFILES>\<COMMONFILES>]
+DISPLAYTEXT=Common Files Folder
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[<WINDIR>\<WINSYSDIR>]
+DISPLAYTEXT=Windows System Folder
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[USERDEFINED]
+DISPLAYTEXT=Script-defined Folders
+TYPE=USERSTART
+fulldirectory=
+
+[<PROGRAMFILES>]
+DISPLAYTEXT=Program Files Folder
+SubDir0=<PROGRAMFILES>\<COMMONFILES>
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[<TARGETDIR>]
+DISPLAYTEXT=General Application Destination
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[<WINDIR>]
+DISPLAYTEXT=Windows Operating System
+SubDir0=<WINDIR>\<WINSYSDIR>
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[TopDir]
+SubDir0=<WINDIR>
+SubDir1=<PROGRAMFILES>
+SubDir2=<TARGETDIR>
+SubDir3=USERDEFINED
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/File Groups/Clients and Tools.fgl b/VC++Files/InstallShield/3.23.XXcom/File Groups/Clients and Tools.fgl
new file mode 100644
index 00000000000..7f30ff9f64b
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/File Groups/Clients and Tools.fgl
@@ -0,0 +1,35 @@
+[bin]
+file15=C:\mysql\bin\pack_isam.exe
+file16=C:\mysql\bin\perror.exe
+file0=C:\mysql\bin\isamchk.exe
+file17=C:\mysql\bin\replace.exe
+file1=C:\mysql\bin\myisamchk.exe
+file18=C:\mysql\bin\winmysqladmin.cnt
+file2=C:\mysql\bin\myisamlog.exe
+file19=C:\mysql\bin\winmysqladmin.exe
+file3=C:\mysql\bin\myisampack.exe
+file4=C:\mysql\bin\mysql.exe
+file5=C:\mysql\bin\mysqladmin.exe
+file6=C:\mysql\bin\mysqlbinlog.exe
+file7=C:\mysql\bin\mysqlc.exe
+file8=C:\mysql\bin\mysqlcheck.exe
+file9=C:\mysql\bin\mysqldump.exe
+file20=C:\mysql\bin\WINMYSQLADMIN.HLP
+file21=C:\mysql\bin\cygwinb19.dll
+file10=C:\mysql\bin\mysqlimport.exe
+fulldirectory=
+file22=C:\mysql\bin\libmySQL.dll
+file11=C:\mysql\bin\MySqlManager.exe
+file23=C:\mysql\bin\my_print_defaults.exe
+file12=C:\mysql\bin\mysqlshow.exe
+file24=C:\mysql\bin\comp-err.exe
+file13=C:\mysql\bin\mysqlshutdown.exe
+file14=C:\mysql\bin\mysqlwatch.exe
+
+[TopDir]
+SubDir0=bin
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/File Groups/Default.fdf b/VC++Files/InstallShield/3.23.XXcom/File Groups/Default.fdf
new file mode 100644
index 00000000000..282fae9d19b
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/File Groups/Default.fdf
@@ -0,0 +1,82 @@
+[FileGroups]
+group0=Development
+group1=Grant Tables
+group2=Clients and Tools
+group3=Servers
+group4=Documentation
+
+[Development]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Grant Tables]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Servers]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Clients and Tools]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=0000000000000000
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Info]
+Type=FileGrp
+Version=1.00.000
+Name=
+
+[Documentation]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/File Groups/Default.fgl b/VC++Files/InstallShield/3.23.XXcom/File Groups/Default.fgl
new file mode 100644
index 00000000000..94344a6ff69
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/File Groups/Default.fgl
@@ -0,0 +1,4 @@
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/File Groups/Development.fgl b/VC++Files/InstallShield/3.23.XXcom/File Groups/Development.fgl
new file mode 100644
index 00000000000..a1cf53f880a
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/File Groups/Development.fgl
@@ -0,0 +1,190 @@
+[bench\Data\Wisconsin]
+file0=C:\mysql\bench\Data\Wisconsin\onek.data
+file1=C:\mysql\bench\Data\Wisconsin\tenk.data
+fulldirectory=
+
+[lib\debug]
+file0=C:\mysql\lib\debug\libmySQL.dll
+file1=C:\mysql\lib\debug\libmySQL.lib
+file2=C:\mysql\lib\debug\mysqlclient.lib
+file3=C:\mysql\lib\debug\zlib.lib
+fulldirectory=
+
+[bench\output]
+fulldirectory=
+
+[examples\libmysqltest]
+file0=C:\mysql\examples\libmysqltest\myTest.c
+file1=C:\mysql\examples\libmysqltest\myTest.dsp
+file2=C:\mysql\examples\libmysqltest\myTest.dsw
+file3=C:\mysql\examples\libmysqltest\myTest.exe
+file4=C:\mysql\examples\libmysqltest\myTest.mak
+file5=C:\mysql\examples\libmysqltest\myTest.ncb
+file6=C:\mysql\examples\libmysqltest\myTest.opt
+file7=C:\mysql\examples\libmysqltest\readme
+fulldirectory=
+
+[include]
+file0=C:\mysql\include\raid.h
+file1=C:\mysql\include\errmsg.h
+file2=C:\mysql\include\Libmysql.def
+file3=C:\mysql\include\m_ctype.h
+file4=C:\mysql\include\m_string.h
+file5=C:\mysql\include\my_list.h
+file6=C:\mysql\include\my_pthread.h
+file7=C:\mysql\include\my_sys.h
+file8=C:\mysql\include\mysql.h
+file9=C:\mysql\include\mysql_com.h
+file10=C:\mysql\include\mysql_version.h
+fulldirectory=
+file11=C:\mysql\include\mysqld_error.h
+file12=C:\mysql\include\dbug.h
+file13=C:\mysql\include\my_global.h
+file14=C:\mysql\include\config-win.h
+
+[examples]
+SubDir0=examples\libmysqltest
+SubDir1=examples\tests
+fulldirectory=
+
+[lib\opt]
+file0=C:\mysql\lib\opt\libmySQL.dll
+file1=C:\mysql\lib\opt\libmySQL.lib
+file2=C:\mysql\lib\opt\mysqlclient.lib
+file3=C:\mysql\lib\opt\zlib.lib
+fulldirectory=
+
+[bench\Data]
+SubDir0=bench\Data\ATIS
+SubDir1=bench\Data\Wisconsin
+fulldirectory=
+
+[bench\limits]
+file15=C:\mysql\bench\limits\pg.comment
+file16=C:\mysql\bench\limits\solid.cfg
+file0=C:\mysql\bench\limits\access.cfg
+file17=C:\mysql\bench\limits\solid-nt4.cfg
+file1=C:\mysql\bench\limits\access.comment
+file18=C:\mysql\bench\limits\sybase.cfg
+file2=C:\mysql\bench\limits\Adabas.cfg
+file3=C:\mysql\bench\limits\Adabas.comment
+file4=C:\mysql\bench\limits\Db2.cfg
+file5=C:\mysql\bench\limits\empress.cfg
+file6=C:\mysql\bench\limits\empress.comment
+file7=C:\mysql\bench\limits\Informix.cfg
+file8=C:\mysql\bench\limits\Informix.comment
+file9=C:\mysql\bench\limits\msql.cfg
+file10=C:\mysql\bench\limits\ms-sql.cfg
+fulldirectory=
+file11=C:\mysql\bench\limits\Ms-sql65.cfg
+file12=C:\mysql\bench\limits\mysql.cfg
+file13=C:\mysql\bench\limits\oracle.cfg
+file14=C:\mysql\bench\limits\pg.cfg
+
+[TopDir]
+SubDir0=bench
+SubDir1=examples
+SubDir2=include
+SubDir3=lib
+SubDir4=scripts
+
+[bench]
+file15=C:\mysql\bench\test-create
+file16=C:\mysql\bench\test-insert
+file0=C:\mysql\bench\uname.bat
+file17=C:\mysql\bench\test-select
+file1=C:\mysql\bench\compare-results
+file18=C:\mysql\bench\test-wisconsin
+file2=C:\mysql\bench\copy-db
+file19=C:\mysql\bench\bench-init.pl
+file3=C:\mysql\bench\crash-me
+file4=C:\mysql\bench\example.bat
+file5=C:\mysql\bench\print-limit-table
+file6=C:\mysql\bench\pwd.bat
+file7=C:\mysql\bench\Readme
+SubDir0=bench\Data
+file8=C:\mysql\bench\run.bat
+SubDir1=bench\limits
+file9=C:\mysql\bench\run-all-tests
+SubDir2=bench\output
+file10=C:\mysql\bench\server-cfg
+fulldirectory=
+file11=C:\mysql\bench\test-alter-table
+file12=C:\mysql\bench\test-ATIS
+file13=C:\mysql\bench\test-big-tables
+file14=C:\mysql\bench\test-connect
+
+[examples\tests]
+file15=C:\mysql\examples\tests\lock_test.res
+file16=C:\mysql\examples\tests\mail_to_db.pl
+file0=C:\mysql\examples\tests\unique_users.tst
+file17=C:\mysql\examples\tests\table_types.pl
+file1=C:\mysql\examples\tests\auto_increment.tst
+file18=C:\mysql\examples\tests\test_delayed_insert.pl
+file2=C:\mysql\examples\tests\big_record.pl
+file19=C:\mysql\examples\tests\udf_test
+file3=C:\mysql\examples\tests\big_record.res
+file4=C:\mysql\examples\tests\czech-sorting
+file5=C:\mysql\examples\tests\deadlock-script.pl
+file6=C:\mysql\examples\tests\export.pl
+file7=C:\mysql\examples\tests\fork_test.pl
+file8=C:\mysql\examples\tests\fork2_test.pl
+file9=C:\mysql\examples\tests\fork3_test.pl
+file20=C:\mysql\examples\tests\udf_test.res
+file21=C:\mysql\examples\tests\auto_increment.res
+file10=C:\mysql\examples\tests\function.res
+fulldirectory=
+file11=C:\mysql\examples\tests\function.tst
+file12=C:\mysql\examples\tests\grant.pl
+file13=C:\mysql\examples\tests\grant.res
+file14=C:\mysql\examples\tests\lock_test.pl
+
+[bench\Data\ATIS]
+file26=C:\mysql\bench\Data\ATIS\stop1.txt
+file15=C:\mysql\bench\Data\ATIS\flight_class.txt
+file27=C:\mysql\bench\Data\ATIS\time_interval.txt
+file16=C:\mysql\bench\Data\ATIS\flight_day.txt
+file0=C:\mysql\bench\Data\ATIS\transport.txt
+file28=C:\mysql\bench\Data\ATIS\time_zone.txt
+file17=C:\mysql\bench\Data\ATIS\flight_fare.txt
+file1=C:\mysql\bench\Data\ATIS\airline.txt
+file29=C:\mysql\bench\Data\ATIS\aircraft.txt
+file18=C:\mysql\bench\Data\ATIS\food_service.txt
+file2=C:\mysql\bench\Data\ATIS\airport.txt
+file19=C:\mysql\bench\Data\ATIS\ground_service.txt
+file3=C:\mysql\bench\Data\ATIS\airport_service.txt
+file4=C:\mysql\bench\Data\ATIS\city.txt
+file5=C:\mysql\bench\Data\ATIS\class_of_service.txt
+file6=C:\mysql\bench\Data\ATIS\code_description.txt
+file7=C:\mysql\bench\Data\ATIS\compound_class.txt
+file8=C:\mysql\bench\Data\ATIS\connect_leg.txt
+file9=C:\mysql\bench\Data\ATIS\date_day.txt
+file20=C:\mysql\bench\Data\ATIS\month_name.txt
+file21=C:\mysql\bench\Data\ATIS\restrict_carrier.txt
+file10=C:\mysql\bench\Data\ATIS\day_name.txt
+fulldirectory=
+file22=C:\mysql\bench\Data\ATIS\restrict_class.txt
+file11=C:\mysql\bench\Data\ATIS\dual_carrier.txt
+file23=C:\mysql\bench\Data\ATIS\restriction.txt
+file12=C:\mysql\bench\Data\ATIS\fare.txt
+file24=C:\mysql\bench\Data\ATIS\state.txt
+file13=C:\mysql\bench\Data\ATIS\fconnection.txt
+file25=C:\mysql\bench\Data\ATIS\stop.txt
+file14=C:\mysql\bench\Data\ATIS\flight.txt
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
+[scripts]
+file0=C:\mysql\scripts\mysql_find_rows.pl
+file1=C:\mysql\scripts\mysql_setpermission.pl
+file2=C:\mysql\scripts\mysqlhotcopy.pl
+file3=C:\mysql\scripts\Readme
+fulldirectory=
+
+[lib]
+SubDir0=lib\debug
+SubDir1=lib\opt
+fulldirectory=
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/File Groups/Documentation.fgl b/VC++Files/InstallShield/3.23.XXcom/File Groups/Documentation.fgl
new file mode 100644
index 00000000000..d36acb64538
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/File Groups/Documentation.fgl
@@ -0,0 +1,98 @@
+[Docs\Flags]
+file59=C:\mysql\Docs\Flags\romania.gif
+file48=C:\mysql\Docs\Flags\kroatia.eps
+file37=C:\mysql\Docs\Flags\iceland.gif
+file26=C:\mysql\Docs\Flags\france.eps
+file15=C:\mysql\Docs\Flags\china.gif
+file49=C:\mysql\Docs\Flags\kroatia.gif
+file38=C:\mysql\Docs\Flags\ireland.eps
+file27=C:\mysql\Docs\Flags\france.gif
+file16=C:\mysql\Docs\Flags\croatia.eps
+file0=C:\mysql\Docs\Flags\usa.gif
+file39=C:\mysql\Docs\Flags\ireland.gif
+file28=C:\mysql\Docs\Flags\germany.eps
+file17=C:\mysql\Docs\Flags\croatia.gif
+file1=C:\mysql\Docs\Flags\argentina.gif
+file29=C:\mysql\Docs\Flags\germany.gif
+file18=C:\mysql\Docs\Flags\czech-republic.eps
+file2=C:\mysql\Docs\Flags\australia.eps
+file19=C:\mysql\Docs\Flags\czech-republic.gif
+file3=C:\mysql\Docs\Flags\australia.gif
+file80=C:\mysql\Docs\Flags\usa.eps
+file4=C:\mysql\Docs\Flags\austria.eps
+file81=C:\mysql\Docs\Flags\argentina.eps
+file70=C:\mysql\Docs\Flags\spain.eps
+file5=C:\mysql\Docs\Flags\austria.gif
+file71=C:\mysql\Docs\Flags\spain.gif
+file60=C:\mysql\Docs\Flags\russia.eps
+file6=C:\mysql\Docs\Flags\brazil.eps
+file72=C:\mysql\Docs\Flags\sweden.eps
+file61=C:\mysql\Docs\Flags\russia.gif
+file50=C:\mysql\Docs\Flags\latvia.eps
+file7=C:\mysql\Docs\Flags\brazil.gif
+file73=C:\mysql\Docs\Flags\sweden.gif
+file62=C:\mysql\Docs\Flags\singapore.eps
+file51=C:\mysql\Docs\Flags\latvia.gif
+file40=C:\mysql\Docs\Flags\island.eps
+file8=C:\mysql\Docs\Flags\bulgaria.eps
+file74=C:\mysql\Docs\Flags\switzerland.eps
+file63=C:\mysql\Docs\Flags\singapore.gif
+file52=C:\mysql\Docs\Flags\netherlands.eps
+file41=C:\mysql\Docs\Flags\island.gif
+file30=C:\mysql\Docs\Flags\great-britain.eps
+file9=C:\mysql\Docs\Flags\bulgaria.gif
+file75=C:\mysql\Docs\Flags\switzerland.gif
+file64=C:\mysql\Docs\Flags\south-africa.eps
+file53=C:\mysql\Docs\Flags\netherlands.gif
+file42=C:\mysql\Docs\Flags\israel.eps
+file31=C:\mysql\Docs\Flags\great-britain.gif
+file20=C:\mysql\Docs\Flags\denmark.eps
+file76=C:\mysql\Docs\Flags\taiwan.eps
+file65=C:\mysql\Docs\Flags\south-africa.gif
+file54=C:\mysql\Docs\Flags\poland.eps
+file43=C:\mysql\Docs\Flags\israel.gif
+file32=C:\mysql\Docs\Flags\greece.eps
+file21=C:\mysql\Docs\Flags\denmark.gif
+file10=C:\mysql\Docs\Flags\canada.eps
+fulldirectory=
+file77=C:\mysql\Docs\Flags\taiwan.gif
+file66=C:\mysql\Docs\Flags\south-africa1.eps
+file55=C:\mysql\Docs\Flags\poland.gif
+file44=C:\mysql\Docs\Flags\italy.eps
+file33=C:\mysql\Docs\Flags\greece.gif
+file22=C:\mysql\Docs\Flags\estonia.eps
+file11=C:\mysql\Docs\Flags\canada.gif
+file78=C:\mysql\Docs\Flags\ukraine.eps
+file67=C:\mysql\Docs\Flags\south-africa1.gif
+file56=C:\mysql\Docs\Flags\portugal.eps
+file45=C:\mysql\Docs\Flags\italy.gif
+file34=C:\mysql\Docs\Flags\hungary.eps
+file23=C:\mysql\Docs\Flags\estonia.gif
+file12=C:\mysql\Docs\Flags\chile.eps
+file79=C:\mysql\Docs\Flags\ukraine.gif
+file68=C:\mysql\Docs\Flags\south-korea.eps
+file57=C:\mysql\Docs\Flags\portugal.gif
+file46=C:\mysql\Docs\Flags\japan.eps
+file35=C:\mysql\Docs\Flags\hungary.gif
+file24=C:\mysql\Docs\Flags\finland.eps
+file13=C:\mysql\Docs\Flags\chile.gif
+file69=C:\mysql\Docs\Flags\south-korea.gif
+file58=C:\mysql\Docs\Flags\romania.eps
+file47=C:\mysql\Docs\Flags\japan.gif
+file36=C:\mysql\Docs\Flags\iceland.eps
+file25=C:\mysql\Docs\Flags\finland.gif
+file14=C:\mysql\Docs\Flags\china.eps
+
+[Docs]
+file0=C:\mysql\Docs\manual_toc.html
+file1=C:\mysql\Docs\manual.html
+SubDir0=Docs\Flags
+fulldirectory=
+
+[TopDir]
+SubDir0=Docs
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/File Groups/Grant Tables.fgl b/VC++Files/InstallShield/3.23.XXcom/File Groups/Grant Tables.fgl
new file mode 100644
index 00000000000..178065a7003
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/File Groups/Grant Tables.fgl
@@ -0,0 +1,36 @@
+[data\test]
+fulldirectory=
+
+[data\mysql]
+file15=C:\mysql\data\mysql\func.frm
+file16=C:\mysql\data\mysql\func.MYD
+file0=C:\mysql\data\mysql\columns_priv.frm
+file17=C:\mysql\data\mysql\func.MYI
+file1=C:\mysql\data\mysql\columns_priv.MYD
+file2=C:\mysql\data\mysql\columns_priv.MYI
+file3=C:\mysql\data\mysql\db.frm
+file4=C:\mysql\data\mysql\db.MYD
+file5=C:\mysql\data\mysql\db.MYI
+file6=C:\mysql\data\mysql\host.frm
+file7=C:\mysql\data\mysql\host.MYD
+file8=C:\mysql\data\mysql\host.MYI
+file9=C:\mysql\data\mysql\tables_priv.frm
+file10=C:\mysql\data\mysql\tables_priv.MYD
+fulldirectory=
+file11=C:\mysql\data\mysql\tables_priv.MYI
+file12=C:\mysql\data\mysql\user.frm
+file13=C:\mysql\data\mysql\user.MYD
+file14=C:\mysql\data\mysql\user.MYI
+
+[TopDir]
+SubDir0=data
+
+[data]
+SubDir0=data\mysql
+SubDir1=data\test
+fulldirectory=
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/File Groups/Servers.fgl b/VC++Files/InstallShield/3.23.XXcom/File Groups/Servers.fgl
new file mode 100644
index 00000000000..6f91a474d80
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/File Groups/Servers.fgl
@@ -0,0 +1,183 @@
+[share\polish]
+file0=C:\mysql\share\polish\errmsg.sys
+file1=C:\mysql\share\polish\errmsg.txt
+fulldirectory=
+
+[share\dutch]
+file0=C:\mysql\share\dutch\errmsg.sys
+file1=C:\mysql\share\dutch\errmsg.txt
+fulldirectory=
+
+[share\spanish]
+file0=C:\mysql\share\spanish\errmsg.sys
+file1=C:\mysql\share\spanish\errmsg.txt
+fulldirectory=
+
+[share\english]
+file0=C:\mysql\share\english\errmsg.sys
+file1=C:\mysql\share\english\errmsg.txt
+fulldirectory=
+
+[bin]
+file0=C:\mysql\bin\mysqld-opt.exe
+file1=C:\mysql\bin\mysqld-max.exe
+file2=C:\mysql\bin\mysqld-max-nt.exe
+file3=C:\mysql\bin\mysqld-nt.exe
+file4=C:\mysql\bin\mysqld.exe
+fulldirectory=
+
+[share\korean]
+file0=C:\mysql\share\korean\errmsg.sys
+file1=C:\mysql\share\korean\errmsg.txt
+fulldirectory=
+
+[share\charsets]
+file15=C:\mysql\share\charsets\latin1.conf
+file16=C:\mysql\share\charsets\latin2.conf
+file0=C:\mysql\share\charsets\win1251ukr.conf
+file17=C:\mysql\share\charsets\latin5.conf
+file1=C:\mysql\share\charsets\cp1257.conf
+file18=C:\mysql\share\charsets\Readme
+file2=C:\mysql\share\charsets\croat.conf
+file19=C:\mysql\share\charsets\swe7.conf
+file3=C:\mysql\share\charsets\danish.conf
+file4=C:\mysql\share\charsets\dec8.conf
+file5=C:\mysql\share\charsets\dos.conf
+file6=C:\mysql\share\charsets\estonia.conf
+file7=C:\mysql\share\charsets\german1.conf
+file8=C:\mysql\share\charsets\greek.conf
+file9=C:\mysql\share\charsets\hebrew.conf
+file20=C:\mysql\share\charsets\usa7.conf
+file21=C:\mysql\share\charsets\win1250.conf
+file10=C:\mysql\share\charsets\hp8.conf
+fulldirectory=
+file22=C:\mysql\share\charsets\win1251.conf
+file11=C:\mysql\share\charsets\hungarian.conf
+file23=C:\mysql\share\charsets\cp1251.conf
+file12=C:\mysql\share\charsets\Index
+file13=C:\mysql\share\charsets\koi8_ru.conf
+file14=C:\mysql\share\charsets\koi8_ukr.conf
+
+[share\ukrainian]
+file0=C:\mysql\share\ukrainian\errmsg.sys
+file1=C:\mysql\share\ukrainian\errmsg.txt
+fulldirectory=
+
+[share\hungarian]
+file0=C:\mysql\share\hungarian\errmsg.sys
+file1=C:\mysql\share\hungarian\errmsg.txt
+fulldirectory=
+
+[share\german]
+file0=C:\mysql\share\german\errmsg.sys
+file1=C:\mysql\share\german\errmsg.txt
+fulldirectory=
+
+[share\portuguese]
+file0=C:\mysql\share\portuguese\errmsg.sys
+file1=C:\mysql\share\portuguese\errmsg.txt
+fulldirectory=
+
+[share\estonian]
+file0=C:\mysql\share\estonian\errmsg.sys
+file1=C:\mysql\share\estonian\errmsg.txt
+fulldirectory=
+
+[share\romanian]
+file0=C:\mysql\share\romanian\errmsg.sys
+file1=C:\mysql\share\romanian\errmsg.txt
+fulldirectory=
+
+[share\french]
+file0=C:\mysql\share\french\errmsg.sys
+file1=C:\mysql\share\french\errmsg.txt
+fulldirectory=
+
+[share\swedish]
+file0=C:\mysql\share\swedish\errmsg.sys
+file1=C:\mysql\share\swedish\errmsg.txt
+fulldirectory=
+
+[share\slovak]
+file0=C:\mysql\share\slovak\errmsg.sys
+file1=C:\mysql\share\slovak\errmsg.txt
+fulldirectory=
+
+[share\greek]
+file0=C:\mysql\share\greek\errmsg.sys
+file1=C:\mysql\share\greek\errmsg.txt
+fulldirectory=
+
+[TopDir]
+file0=C:\mysql\my-small.cnf
+file1=C:\mysql\my-large.cnf
+file2=C:\mysql\my-medium.cnf
+file3=C:\mysql\my-huge.cnf
+SubDir0=bin
+SubDir1=share
+
+[share]
+SubDir8=share\hungarian
+SubDir9=share\charsets
+SubDir20=share\spanish
+SubDir21=share\swedish
+SubDir10=share\italian
+SubDir22=share\ukrainian
+SubDir11=share\japanese
+SubDir12=share\korean
+SubDir13=share\norwegian
+SubDir14=share\norwegian-ny
+SubDir15=share\polish
+SubDir16=share\portuguese
+SubDir0=share\czech
+SubDir17=share\romanian
+SubDir1=share\danish
+SubDir18=share\russian
+SubDir2=share\dutch
+SubDir19=share\slovak
+SubDir3=share\english
+fulldirectory=
+SubDir4=share\estonian
+SubDir5=share\french
+SubDir6=share\german
+SubDir7=share\greek
+
+[share\norwegian-ny]
+file0=C:\mysql\share\norwegian-ny\errmsg.sys
+file1=C:\mysql\share\norwegian-ny\errmsg.txt
+fulldirectory=
+
+[share\danish]
+file0=C:\mysql\share\danish\errmsg.sys
+file1=C:\mysql\share\danish\errmsg.txt
+fulldirectory=
+
+[share\czech]
+file0=C:\mysql\share\czech\errmsg.sys
+file1=C:\mysql\share\czech\errmsg.txt
+fulldirectory=
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
+[share\russian]
+file0=C:\mysql\share\russian\errmsg.sys
+file1=C:\mysql\share\russian\errmsg.txt
+fulldirectory=
+
+[share\norwegian]
+file0=C:\mysql\share\norwegian\errmsg.sys
+file1=C:\mysql\share\norwegian\errmsg.txt
+fulldirectory=
+
+[share\japanese]
+file0=C:\mysql\share\japanese\errmsg.sys
+file1=C:\mysql\share\japanese\errmsg.txt
+fulldirectory=
+
+[share\italian]
+file0=C:\mysql\share\italian\errmsg.sys
+file1=C:\mysql\share\italian\errmsg.txt
+fulldirectory=
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/MySQL 3.23.com.ipr b/VC++Files/InstallShield/3.23.XXcom/MySQL 3.23.com.ipr
new file mode 100644
index 00000000000..811d69717d8
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/MySQL 3.23.com.ipr
@@ -0,0 +1,51 @@
+[Language]
+LanguageSupport0=0009
+
+[OperatingSystem]
+OSSupport=0000000000010010
+
+[Data]
+CurrentMedia=
+set_mifserial=
+ProductName=MySQL Servers and Clients
+CurrentComponentDef=Default.cdf
+set_dlldebug=No
+AppExe=
+DevEnvironment=Microsoft Visual C++ 6
+set_mif=No
+set_testmode=No
+Instructions=Instructions.txt
+EmailAddresss=
+SummaryText=
+Department=
+Type=Database Application
+Author=
+HomeURL=
+InstallRoot=C:\MySQL-Install\3.23.XXcom
+set_level=Level 3
+InstallationGUID=40744a4d-efed-4cff-84a9-9e6389550f5c
+Version=1.00.000
+set_miffile=Status.mif
+set_args=
+set_maxerr=50
+Notes=Notes.txt
+CurrentFileGroupDef=Default.fdf
+set_dllcmdline=
+set_warnaserr=No
+Copyright=
+set_preproc=
+Category=
+CurrentPlatform=
+set_compileb4build=No
+set_crc=Yes
+set_maxwarn=50
+Description=Description.txt
+CompanyName=MySQL
+CurrentLanguage=English
+
+[MediaInfo]
+
+[General]
+Type=INSTALLMAIN
+Version=1.10.000
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/Registry Entries/Default.rge b/VC++Files/InstallShield/3.23.XXcom/Registry Entries/Default.rge
new file mode 100644
index 00000000000..537dfd82e48
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/Registry Entries/Default.rge
@@ -0,0 +1,4 @@
+[General]
+Type=REGISTRYDATA
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.dbg b/VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.dbg
new file mode 100644
index 00000000000..0c6d4e6b708
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.dbg
Binary files differ
diff --git a/VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.ino b/VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.ino
new file mode 100644
index 00000000000..204d8ea0f36
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.ino
Binary files differ
diff --git a/VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.ins b/VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.ins
new file mode 100644
index 00000000000..759009b5c84
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.ins
Binary files differ
diff --git a/VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.obs b/VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.obs
new file mode 100644
index 00000000000..5fcfcb62c4e
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.obs
Binary files differ
diff --git a/VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.rul b/VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.rul
new file mode 100644
index 00000000000..0db8417a62c
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/Script Files/Setup.rul
@@ -0,0 +1,641 @@
+
+////////////////////////////////////////////////////////////////////////////////
+//
+// IIIIIII SSSSSS
+// II SS InstallShield (R)
+// II SSSSSS (c) 1996-1997, InstallShield Software Corporation
+// II SS (c) 1990-1996, InstallShield Corporation
+// IIIIIII SSSSSS All Rights Reserved.
+//
+//
+// This code is generated as a starting setup template. You should
+// modify it to provide all necessary steps for your setup.
+//
+//
+// File Name: Setup.rul
+//
+// Description: InstallShield script
+//
+// Comments: This template script performs a basic setup on a
+// Windows 95 or Windows NT 4.0 platform. With minor
+// modifications, this template can be adapted to create
+// new, customized setups.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+
+ // Include header file
+#include "sdlang.h"
+#include "sddialog.h"
+
+////////////////////// string defines ////////////////////////////
+
+#define UNINST_LOGFILE_NAME "Uninst.isu"
+
+//////////////////// installation declarations ///////////////////
+
+ // ----- DLL prototypes -----
+
+
+ // your DLL prototypes
+
+
+ // ---- script prototypes -----
+
+ // generated
+ prototype ShowDialogs();
+ prototype MoveFileData();
+ prototype HandleMoveDataError( NUMBER );
+ prototype ProcessBeforeDataMove();
+ prototype ProcessAfterDataMove();
+ prototype SetupRegistry();
+ prototype SetupFolders();
+ prototype CleanUpInstall();
+ prototype SetupInstall();
+ prototype SetupScreen();
+ prototype CheckRequirements();
+ prototype DialogShowSdWelcome();
+ prototype DialogShowSdShowInfoList();
+ prototype DialogShowSdAskDestPath();
+ prototype DialogShowSdSetupType();
+ prototype DialogShowSdComponentDialog2();
+ prototype DialogShowSdFinishReboot();
+
+ // your prototypes
+
+
+ // ----- global variables ------
+
+ // generated
+ BOOL bWinNT, bIsShellExplorer, bInstallAborted, bIs32BitSetup;
+ STRING svDir;
+ STRING svName, svCompany, svSerial;
+ STRING szAppPath;
+ STRING svSetupType;
+
+
+ // your global variables
+
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// MAIN PROGRAM
+//
+// The setup begins here by hiding the visible setup
+// window. This is done to allow all the titles, images, etc. to
+// be established before showing the main window. The following
+// logic then performs the setup in a series of steps.
+//
+///////////////////////////////////////////////////////////////////////////////
+program
+ Disable( BACKGROUND );
+
+ CheckRequirements();
+
+ SetupInstall();
+
+ SetupScreen();
+
+ if (ShowDialogs()<0) goto end_install;
+
+ if (ProcessBeforeDataMove()<0) goto end_install;
+
+ if (MoveFileData()<0) goto end_install;
+
+ if (ProcessAfterDataMove()<0) goto end_install;
+
+ if (SetupRegistry()<0) goto end_install;
+
+ if (SetupFolders()<0) goto end_install;
+
+
+ end_install:
+
+ CleanUpInstall();
+
+ // If an unrecoverable error occurred, clean up the partial installation.
+ // Otherwise, exit normally.
+
+ if (bInstallAborted) then
+ abort;
+ endif;
+
+endprogram
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ShowDialogs //
+// //
+// Purpose: This function manages the display and navigation //
+// the standard dialogs that exist in a setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ShowDialogs()
+ NUMBER nResult;
+ begin
+
+ Dlg_Start:
+ // beginning of dialogs label
+
+ Dlg_SdWelcome:
+ nResult = DialogShowSdWelcome();
+ if (nResult = BACK) goto Dlg_Start;
+
+ Dlg_SdShowInfoList:
+ nResult = DialogShowSdShowInfoList();
+ if (nResult = BACK) goto Dlg_SdWelcome;
+
+ Dlg_SdAskDestPath:
+ nResult = DialogShowSdAskDestPath();
+ if (nResult = BACK) goto Dlg_SdShowInfoList;
+
+ Dlg_SdSetupType:
+ nResult = DialogShowSdSetupType();
+ if (nResult = BACK) goto Dlg_SdAskDestPath;
+
+ Dlg_SdComponentDialog2:
+ if ((nResult = BACK) && (svSetupType != "Custom") && (svSetupType != "")) then
+ goto Dlg_SdSetupType;
+ endif;
+ nResult = DialogShowSdComponentDialog2();
+ if (nResult = BACK) goto Dlg_SdSetupType;
+
+ return 0;
+
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ProcessBeforeDataMove //
+// //
+// Purpose: This function performs any necessary operations prior to the //
+// actual data move operation. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ProcessBeforeDataMove()
+ STRING svLogFile;
+ NUMBER nResult;
+ begin
+
+ InstallationInfo( @COMPANY_NAME, @PRODUCT_NAME, @PRODUCT_VERSION, @PRODUCT_KEY );
+
+ svLogFile = UNINST_LOGFILE_NAME;
+
+ nResult = DeinstallStart( svDir, svLogFile, @UNINST_KEY, 0 );
+ if (nResult < 0) then
+ MessageBox( @ERROR_UNINSTSETUP, WARNING );
+ endif;
+
+ szAppPath = TARGETDIR; // TODO : if your application .exe is in a subdir of TARGETDIR then add subdir
+
+ if ((bIs32BitSetup) && (bIsShellExplorer)) then
+ RegDBSetItem( REGDB_APPPATH, szAppPath );
+ RegDBSetItem( REGDB_APPPATH_DEFAULT, szAppPath ^ @PRODUCT_KEY );
+ RegDBSetItem( REGDB_UNINSTALL_NAME, @UNINST_DISPLAY_NAME );
+ endif;
+
+ // TODO : update any items you want to process before moving the data
+ //
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: MoveFileData //
+// //
+// Purpose: This function handles the data movement for //
+// the setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function MoveFileData()
+ NUMBER nResult, nDisk;
+ begin
+
+ nDisk = 1;
+ SetStatusWindow( 0, "" );
+ Disable( DIALOGCACHE );
+ Enable( STATUS );
+ StatusUpdate( ON, 100 );
+ nResult = ComponentMoveData( MEDIA, nDisk, 0 );
+
+ HandleMoveDataError( nResult );
+
+ Disable( STATUS );
+
+ return nResult;
+
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: HandleMoveDataError //
+// //
+// Purpose: This function handles the error (if any) during the move data //
+// operation. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function HandleMoveDataError( nResult )
+ STRING szErrMsg, svComponent , svFileGroup , svFile;
+ begin
+
+ svComponent = "";
+ svFileGroup = "";
+ svFile = "";
+
+ switch (nResult)
+ case 0:
+ return 0;
+ default:
+ ComponentError ( MEDIA , svComponent , svFileGroup , svFile , nResult );
+ szErrMsg = @ERROR_MOVEDATA + "\n\n" +
+ @ERROR_COMPONENT + " " + svComponent + "\n" +
+ @ERROR_FILEGROUP + " " + svFileGroup + "\n" +
+ @ERROR_FILE + " " + svFile;
+ SprintfBox( SEVERE, @TITLE_CAPTIONBAR, szErrMsg, nResult );
+ bInstallAborted = TRUE;
+ return nResult;
+ endswitch;
+
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ProcessAfterDataMove //
+// //
+// Purpose: This function performs any necessary operations needed after //
+// all data has been moved. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ProcessAfterDataMove()
+ begin
+
+ // TODO : update self-registered files and other processes that
+ // should be performed after the data has been moved.
+
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupRegistry //
+// //
+// Purpose: This function makes the registry entries for this setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupRegistry()
+ NUMBER nResult;
+
+ begin
+
+ // TODO : Add all your registry entry keys here
+ //
+ //
+ // RegDBCreateKeyEx, RegDBSetKeyValueEx....
+ //
+
+ nResult = CreateRegistrySet( "" );
+
+ return nResult;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// Function: SetupFolders
+//
+// Purpose: This function creates all the folders and shortcuts for the
+// setup. This includes program groups and items for Windows 3.1.
+//
+///////////////////////////////////////////////////////////////////////////////
+function SetupFolders()
+ NUMBER nResult;
+
+ begin
+
+
+ // TODO : Add all your folder (program group) along with shortcuts (program items)
+ //
+ //
+ // CreateProgramFolder, AddFolderIcon....
+ //
+
+ nResult = CreateShellObjects( "" );
+
+ return nResult;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: CleanUpInstall //
+// //
+// Purpose: This cleans up the setup. Anything that should //
+// be released or deleted at the end of the setup should //
+// be done here. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function CleanUpInstall()
+ begin
+
+
+ if (bInstallAborted) then
+ return 0;
+ endif;
+
+ DialogShowSdFinishReboot();
+
+ if (BATCH_INSTALL) then // ensure locked files are properly written
+ CommitSharedFiles(0);
+ endif;
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupInstall //
+// //
+// Purpose: This will setup the installation. Any general initialization //
+// needed for the installation should be performed here. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupInstall()
+ begin
+
+ Enable( CORECOMPONENTHANDLING );
+
+ bInstallAborted = FALSE;
+
+ if (bIs32BitSetup) then
+ svDir = "C:\\mysql"; //PROGRAMFILES ^ @COMPANY_NAME ^ @PRODUCT_NAME;
+ else
+ svDir = "C:\\mysql"; //PROGRAMFILES ^ @COMPANY_NAME16 ^ @PRODUCT_NAME16; // use shorten names
+ endif;
+
+ TARGETDIR = svDir;
+
+ SdProductName( @PRODUCT_NAME );
+
+ Enable( DIALOGCACHE );
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupScreen //
+// //
+// Purpose: This function establishes the screen look. This includes //
+// colors, fonts, and text to be displayed. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupScreen()
+ begin
+
+ Enable( FULLWINDOWMODE );
+ Enable( INDVFILESTATUS );
+ SetTitle( @TITLE_MAIN, 24, WHITE );
+
+ SetTitle( @TITLE_CAPTIONBAR, 0, BACKGROUNDCAPTION ); // Caption bar text.
+
+ Enable( BACKGROUND );
+
+ Delay( 1 );
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: CheckRequirements //
+// //
+// Purpose: This function checks all minimum requirements for the //
+// application being installed. If any fail, then the user //
+// is informed and the setup is terminated. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function CheckRequirements()
+ NUMBER nvDx, nvDy, nvResult;
+ STRING svResult;
+
+ begin
+
+ bWinNT = FALSE;
+ bIsShellExplorer = FALSE;
+
+ // Check screen resolution.
+ GetExtents( nvDx, nvDy );
+
+ if (nvDy < 480) then
+ MessageBox( @ERROR_VGARESOLUTION, WARNING );
+ abort;
+ endif;
+
+ // set 'setup' operation mode
+ bIs32BitSetup = TRUE;
+ GetSystemInfo( ISTYPE, nvResult, svResult );
+ if (nvResult = 16) then
+ bIs32BitSetup = FALSE; // running 16-bit setup
+ return 0; // no additional information required
+ endif;
+
+ // --- 32-bit testing after this point ---
+
+ // Determine the target system's operating system.
+ GetSystemInfo( OS, nvResult, svResult );
+
+ if (nvResult = IS_WINDOWSNT) then
+ // Running Windows NT.
+ bWinNT = TRUE;
+
+ // Check to see if the shell being used is EXPLORER shell.
+ if (GetSystemInfo( OSMAJOR, nvResult, svResult ) = 0) then
+ if (nvResult >= 4) then
+ bIsShellExplorer = TRUE;
+ endif;
+ endif;
+
+ elseif (nvResult = IS_WINDOWS95 ) then
+ bIsShellExplorer = TRUE;
+
+ endif;
+
+end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdWelcome //
+// //
+// Purpose: This function handles the standard welcome dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdWelcome()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdWelcome( szTitle, szMsg );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdShowInfoList //
+// //
+// Purpose: This function displays the general information list dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdShowInfoList()
+ NUMBER nResult;
+ LIST list;
+ STRING szTitle, szMsg, szFile;
+ begin
+
+ szFile = SUPPORTDIR ^ "infolist.txt";
+
+ list = ListCreate( STRINGLIST );
+ ListReadFromFile( list, szFile );
+ szTitle = "";
+ szMsg = " ";
+ nResult = SdShowInfoList( szTitle, szMsg, list );
+
+ ListDestroy( list );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdAskDestPath //
+// //
+// Purpose: This function asks the user for the destination directory. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdAskDestPath()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdAskDestPath( szTitle, szMsg, svDir, 0 );
+
+ TARGETDIR = svDir;
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdSetupType //
+// //
+// Purpose: This function displays the standard setup type dialog. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdSetupType()
+ NUMBER nResult, nType;
+ STRING szTitle, szMsg;
+ begin
+
+ switch (svSetupType)
+ case "Typical":
+ nType = TYPICAL;
+ case "Custom":
+ nType = CUSTOM;
+ case "Compact":
+ nType = COMPACT;
+ case "":
+ svSetupType = "Typical";
+ nType = TYPICAL;
+ endswitch;
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SetupType( szTitle, szMsg, "", nType, 0 );
+
+ switch (nResult)
+ case COMPACT:
+ svSetupType = "Compact";
+ case TYPICAL:
+ svSetupType = "Typical";
+ case CUSTOM:
+ svSetupType = "Custom";
+ endswitch;
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdComponentDialog2 //
+// //
+// Purpose: This function displays the custom component dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdComponentDialog2()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ if ((svSetupType != "Custom") && (svSetupType != "")) then
+ return 0;
+ endif;
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdComponentDialog2( szTitle, szMsg, svDir, "" );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdFinishReboot //
+// //
+// Purpose: This function will show the last dialog of the product. //
+// It will allow the user to reboot and/or show some readme text. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdFinishReboot()
+ NUMBER nResult, nDefOptions;
+ STRING szTitle, szMsg1, szMsg2, szOption1, szOption2;
+ NUMBER bOpt1, bOpt2;
+ begin
+/*
+ if (!BATCH_INSTALL) then
+ bOpt1 = FALSE;
+ bOpt2 = FALSE;
+ szMsg1 = "";
+ szMsg2 = "";
+ szOption1 = "";
+ szOption2 = "";
+ nResult = SdFinish( szTitle, szMsg1, szMsg2, szOption1, szOption2, bOpt1, bOpt2 );
+ return 0;
+ endif;
+
+ nDefOptions = SYS_BOOTMACHINE;
+ szTitle = "";
+ szMsg1 = "";
+ szMsg2 = "";
+ nResult = SdFinishReboot( szTitle, szMsg1, nDefOptions, szMsg2, 0 );
+*/
+ return nResult;
+ end;
+
+ // --- include script file section ---
+
+#include "sddialog.rul"
+
+
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt b/VC++Files/InstallShield/3.23.XXcom/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt
new file mode 100644
index 00000000000..2f561d29d81
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt
@@ -0,0 +1,24 @@
+This is a release of MySQL 3.23.56 for Win32.
+
+NOTE: If you install MySQL in a folder other than
+C:\MYSQL or you intend to start MySQL on NT/Win2000
+as a service, you must create a file named C:\MY.CNF
+or \Windows\my.ini or \winnt\my.ini with the following
+information::
+
+[mysqld]
+basedir=E:/installation-path/
+datadir=E:/data-path/
+
+After your have installed MySQL, the installation
+directory which contains the files named 'my-size.cnf'.
+You can use this as a starting point for your own
+C:\my.cnf file.
+
+If you have any problems, you can mail them to
+win32@lists.mysql.com after you have consulted the
+MySQL manual and the MySQL mailing list archive
+(http://www.mysql.com/documentation/index.html)
+
+On behalf of the MySQL AB gang,
+Michael Widenius \ No newline at end of file
diff --git a/VC++Files/InstallShield/3.23.XXcom/Setup Files/Uncompressed Files/Language Independent/OS Independent/SETUP.BMP b/VC++Files/InstallShield/3.23.XXcom/Setup Files/Uncompressed Files/Language Independent/OS Independent/SETUP.BMP
new file mode 100644
index 00000000000..3229d50c9bf
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/Setup Files/Uncompressed Files/Language Independent/OS Independent/SETUP.BMP
Binary files differ
diff --git a/VC++Files/InstallShield/3.23.XXcom/Shell Objects/Default.shl b/VC++Files/InstallShield/3.23.XXcom/Shell Objects/Default.shl
new file mode 100644
index 00000000000..187cb651307
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/Shell Objects/Default.shl
@@ -0,0 +1,12 @@
+[Data]
+Folder3=<FOLDER_STARTUP>
+Group0=Main
+Group1=Startup
+Folder0=<FOLDER_DESKTOP>
+Folder1=<FOLDER_STARTMENU>
+Folder2=<FOLDER_PROGRAMS>
+
+[Info]
+Type=ShellObject
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/String Tables/0009-English/value.shl b/VC++Files/InstallShield/3.23.XXcom/String Tables/0009-English/value.shl
new file mode 100644
index 00000000000..dd998365667
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/String Tables/0009-English/value.shl
@@ -0,0 +1,23 @@
+[Data]
+TITLE_MAIN=MySQL Commercial Servers and Clients 3.23.56
+ERROR_COMPONENT=Component:
+COMPANY_NAME=MySQL AB
+COMPANY_NAME16=Company
+ERROR_FILEGROUP=File Group:
+ERROR_MOVEDATA=An error occurred during the move data process: %d
+PRODUCT_VERSION=3.23.56
+UNINST_KEY=MySQL Commercial Servers and Clients 3.23.56
+TITLE_CAPTIONBAR=MySQL Commercial Servers and Clients 3.23.56 Setup
+PRODUCT_NAME16=Product
+ERROR_FILE=File:
+ERROR_VGARESOLUTION=This program requires VGA or better resolution.
+PRODUCT_KEY=yourapp.Exe
+UNINST_DISPLAY_NAME=MySQL Commercial Servers and Clients 3.23.56
+ERROR_UNINSTSETUP=unInstaller setup failed to initialize. You may not be able to uninstall this product.
+PRODUCT_NAME=MySQL Commercial Servers and Clients 3.23.56
+
+[General]
+Language=0009
+Type=STRINGTABLESPECIFIC
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/String Tables/Default.shl b/VC++Files/InstallShield/3.23.XXcom/String Tables/Default.shl
new file mode 100644
index 00000000000..f197667992e
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/String Tables/Default.shl
@@ -0,0 +1,74 @@
+[TITLE_MAIN]
+Comment=
+
+[ERROR_COMPONENT]
+Comment=
+
+[COMPANY_NAME]
+Comment=
+
+[COMPANY_NAME16]
+Comment=
+
+[ERROR_FILEGROUP]
+Comment=
+
+[ERROR_MOVEDATA]
+Comment=
+
+[PRODUCT_VERSION]
+Comment=
+
+[UNINST_KEY]
+Comment=
+
+[Language]
+Lang0=0009
+CurrentLang=0
+
+[TITLE_CAPTIONBAR]
+Comment=
+
+[PRODUCT_NAME16]
+Comment=
+
+[Data]
+Entry0=ERROR_VGARESOLUTION
+Entry1=TITLE_MAIN
+Entry2=TITLE_CAPTIONBAR
+Entry3=UNINST_KEY
+Entry4=UNINST_DISPLAY_NAME
+Entry5=COMPANY_NAME
+Entry6=PRODUCT_NAME
+Entry7=PRODUCT_VERSION
+Entry8=PRODUCT_KEY
+Entry10=ERROR_UNINSTSETUP
+Entry9=ERROR_MOVEDATA
+Entry11=COMPANY_NAME16
+Entry12=PRODUCT_NAME16
+Entry13=ERROR_COMPONENT
+Entry14=ERROR_FILEGROUP
+Entry15=ERROR_FILE
+
+[ERROR_FILE]
+Comment=
+
+[ERROR_VGARESOLUTION]
+Comment=
+
+[PRODUCT_KEY]
+Comment=
+
+[UNINST_DISPLAY_NAME]
+Comment=
+
+[General]
+Type=STRINGTABLE
+Version=1.00.000
+
+[ERROR_UNINSTSETUP]
+Comment=
+
+[PRODUCT_NAME]
+Comment=
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/Text Substitutions/Build.tsb b/VC++Files/InstallShield/3.23.XXcom/Text Substitutions/Build.tsb
new file mode 100644
index 00000000000..0478df14bff
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/Text Substitutions/Build.tsb
@@ -0,0 +1,56 @@
+[<HKCR>]
+KeyType=4
+Value=
+
+[<HKUS>]
+KeyType=4
+Value=
+
+[<PROGRAMFILES>]
+KeyType=4
+Value=
+
+[<WINSYSDIR>]
+KeyType=4
+Value=
+
+[<COMMONFILES>]
+KeyType=4
+Value=
+
+[<WINDIR>]
+KeyType=4
+Value=
+
+[Data]
+Key0=<PROGRAMFILES>
+Key1=<COMMONFILES>
+Key2=<WINDIR>
+Key3=<WINSYSDIR>
+Key4=<HKLM>
+Key5=<HKCU>
+Key6=<HKCC>
+Key7=<HKDD>
+Key8=<HKUS>
+Key9=<HKCR>
+
+[General]
+Type=TEXTSUB
+Version=1.00.000
+
+[<HKCU>]
+KeyType=4
+Value=
+
+[<HKLM>]
+KeyType=4
+Value=
+
+[<HKDD>]
+KeyType=4
+Value=
+
+[<HKCC>]
+KeyType=4
+Value=
+
diff --git a/VC++Files/InstallShield/3.23.XXcom/Text Substitutions/Setup.tsb b/VC++Files/InstallShield/3.23.XXcom/Text Substitutions/Setup.tsb
new file mode 100644
index 00000000000..258173c7a48
--- /dev/null
+++ b/VC++Files/InstallShield/3.23.XXcom/Text Substitutions/Setup.tsb
@@ -0,0 +1,76 @@
+[<HKCR>]
+KeyType=4
+Value=
+
+[<HKUS>]
+KeyType=4
+Value=
+
+[<SRCDIR>]
+KeyType=4
+Value=
+
+[<PROGRAMFILES>]
+KeyType=4
+Value=
+
+[<TARGETDIR>]
+KeyType=4
+Value=
+
+[<WINSYSDIR>]
+KeyType=4
+Value=
+
+[<COMMONFILES>]
+KeyType=4
+Value=
+
+[<WINDIR>]
+KeyType=4
+Value=
+
+[Data]
+Key0=<PROGRAMFILES>
+Key1=<COMMONFILES>
+Key2=<WINDIR>
+Key3=<WINSYSDIR>
+Key4=<TARGETDIR>
+Key10=<HKDD>
+Key5=<SUPPORTDIR>
+Key11=<HKUS>
+Key6=<SRCDIR>
+Key12=<HKCR>
+Key7=<HKLM>
+Key13=<SHELL_OBJECT_FOLDER>
+Key8=<HKCU>
+Key9=<HKCC>
+
+[<SHELL_OBJECT_FOLDER>]
+KeyType=4
+Value=
+
+[<SUPPORTDIR>]
+KeyType=4
+Value=
+
+[General]
+Type=TEXTSUB
+Version=1.00.000
+
+[<HKCU>]
+KeyType=4
+Value=
+
+[<HKLM>]
+KeyType=4
+Value=
+
+[<HKDD>]
+KeyType=4
+Value=
+
+[<HKCC>]
+KeyType=4
+Value=
+
diff --git a/mysql-test/r/user_var.result b/mysql-test/r/user_var.result
index 5e9f3a720c2..0d4f7b401e6 100644
--- a/mysql-test/r/user_var.result
+++ b/mysql-test/r/user_var.result
@@ -30,3 +30,11 @@ explain select * from t1 where i=@vv1;
table type possible_keys key key_len ref rows Extra
t1 ref i i 4 const 1 Using where
drop table t1,t2;
+@a:=10 @b:=1 @a > @b @a < @b
+10 1 1 0
+@a:="10" @b:="1" @a > @b @a < @b
+10 1 1 0
+@a:=10 @b:=2 @a > @b @a < @b
+10 2 1 0
+@a:="10" @b:="2" @a > @b @a < @b
+10 2 0 1
diff --git a/mysql-test/t/user_var.test b/mysql-test/t/user_var.test
index bb1a9b59611..f5f91a8a680 100644
--- a/mysql-test/t/user_var.test
+++ b/mysql-test/t/user_var.test
@@ -17,3 +17,9 @@ explain select * from t1 where @vv1:=@vv1+1 and i=@vv1;
explain select @vv1:=i from t1 where i=@vv1;
explain select * from t1 where i=@vv1;
drop table t1,t2;
+
+# Check types of variables
+select @a:=10, @b:=1, @a > @b, @a < @b;
+select @a:="10", @b:="1", @a > @b, @a < @b;
+select @a:=10, @b:=2, @a > @b, @a < @b;
+select @a:="10", @b:="2", @a > @b, @a < @b;
diff --git a/sql/item_func.cc b/sql/item_func.cc
index 23bec0c3c81..8e9677cc459 100644
--- a/sql/item_func.cc
+++ b/sql/item_func.cc
@@ -1830,6 +1830,7 @@ bool Item_func_set_user_var::fix_fields(THD *thd,TABLE_LIST *tables)
if (Item_func::fix_fields(thd,tables) ||
!(entry= get_variable(&thd->user_vars, name, 1)))
return 1;
+ entry->type= cached_result_type;
entry->update_query_id=thd->query_id;
return 0;
}
diff --git a/sql/log_event.cc b/sql/log_event.cc
index 53289888242..ae4a429e35f 100644
--- a/sql/log_event.cc
+++ b/sql/log_event.cc
@@ -724,7 +724,9 @@ void Start_log_event::print(FILE* file, bool short_form, char* last_db)
print_header(file);
fprintf(file, "\tStart: binlog v %d, server v %s created ", binlog_version,
server_version);
- print_timestamp(file, &created);
+ print_timestamp(file);
+ if (created)
+ fprintf(file," at startup");
fputc('\n', file);
fflush(file);
}
diff --git a/sql/log_event.h b/sql/log_event.h
index 4b32894d787..a55efffa319 100644
--- a/sql/log_event.h
+++ b/sql/log_event.h
@@ -452,6 +452,26 @@ extern char server_version[SERVER_VERSION_LENGTH];
class Start_log_event: public Log_event
{
public:
+ /*
+ If this event is at the start of the first binary log since server startup
+ 'created' should be the timestamp when the event (and the binary log) was
+ created.
+ In the other case (i.e. this event is at the start of a binary log created
+ by FLUSH LOGS or automatic rotation), 'created' should be 0.
+ This "trick" is used by MySQL >=4.0.14 slaves to know if they must drop the
+ stale temporary tables or not.
+ Note that when 'created'!=0, it is always equal to the event's timestamp;
+ indeed Start_log_event is written only in log.cc where the first
+ constructor below is called, in which 'created' is set to 'when'.
+ So in fact 'created' is a useless variable. When it is 0
+ we can read the actual value from timestamp ('when') and when it is
+ non-zero we can read the same value from timestamp ('when'). Conclusion:
+ - we use timestamp to print when the binlog was created.
+ - we use 'created' only to know if this is a first binlog or not.
+ In 3.23.57 we did not pay attention to this identity, so mysqlbinlog in
+ 3.23.57 does not print 'created the_date' if created was zero. This is now
+ fixed.
+ */
time_t created;
uint16 binlog_version;
char server_version[ST_SERVER_VER_LEN];
diff --git a/sql/share/spanish/errmsg.txt b/sql/share/spanish/errmsg.txt
index d566642f1c9..c8e33325786 100644
--- a/sql/share/spanish/errmsg.txt
+++ b/sql/share/spanish/errmsg.txt
@@ -212,14 +212,14 @@
"Bloqueos de actualización no pueden ser adqueridos durante una transición READ UNCOMMITTED",
"DROP DATABASE no permitido mientras un thread está ejerciendo un bloqueo de lectura global",
"CREATE DATABASE no permitido mientras un thread está ejerciendo un bloqueo de lectura global",
-"Wrong arguments to %s",
-"%-.32s@%-.64s is not allowed to create new users",
-"Incorrect table definition; All MERGE tables must be in the same database",
-"Deadlock found when trying to get lock; Try restarting transaction",
-"The used table type doesn't support FULLTEXT indexes",
-"Cannot add foreign key constraint",
-"Cannot add a child row: a foreign key constraint fails",
-"Cannot delete a parent row: a foreign key constraint fails",
+"Argumentos errados para %s",
+"%-.32s@%-.64s no es permitido para crear nuevos usuarios",
+"Incorrecta definición de la tabla; Todas las tablas MERGE deben estar en el mismo banco de datos",
+"Encontrado deadlock cuando tentando obtener el bloqueo; Tente recomenzar la transición",
+"El tipo de tabla usada no soporta índices FULLTEXT",
+"No puede adicionar clave extranjera constraint",
+"No puede adicionar una línea hijo: falla de clave extranjera constraint",
+"No puede deletar una línea padre: falla de clave extranjera constraint",
"Error de coneccion a master: %-128s",
"Error executando el query en master: %-128%",
"Error de %s: %-128%",
diff --git a/sql/sql_select.cc b/sql/sql_select.cc
index 9c31064cd27..14e1bebbc4a 100644
--- a/sql/sql_select.cc
+++ b/sql/sql_select.cc
@@ -5961,6 +5961,8 @@ create_sort_index(JOIN_TAB *tab, ORDER *order, ha_rows filesort_limit,
/*
We have a ref on a const; Change this to a range that filesort
can use.
+ For impossible ranges (like when doing a lookup on NULL on a NOT NULL
+ field, quick will contain an empty record set.
*/
if (!(select->quick=get_ft_or_quick_select_for_ref(table, tab)))
goto err;