1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-08 11:22:35 +03:00

- Fix conversion bug for MS-DOM XML tables. The node content was written

and read as if the table DATA_CHARSET was ANSI instead of UTF-8. Warning
  are now provided when the read content of a node is truncated.

modified:
  storage/connect/domdoc.cpp
  storage/connect/domdoc.h
  storage/connect/libdoc.cpp
  storage/connect/libdoc.h
  storage/connect/plgxml.h
  storage/connect/tabxml.cpp

- Conditional compilation of pre_create depending on the MARIADB setting.

modified:
  storage/connect/ha_connect.cc
  storage/connect/ha_connect.h
This commit is contained in:
Olivier Bertrand
2013-03-02 17:58:18 +01:00
parent 8c8fe2f3a6
commit 5972b56a6d
8 changed files with 91 additions and 27 deletions

View File

@@ -1212,7 +1212,16 @@ void XMLCOL::ReadColumn(PGLOBAL g)
} // endif type
// Get the Xname value from the XML file
ValNode->GetText(Valbuf, Long);
switch (ValNode->GetContent(g, Valbuf, Long + 1)) {
case RC_OK:
break;
case RC_INFO:
PushWarning(g, Tdbp);
break;
default:
longjmp(g->jumper[g->jump_level], TYPE_AM_XML);
} // endswitch
} else
*Valbuf = '\0';
@@ -1405,7 +1414,15 @@ void XMULCOL::ReadColumn(PGLOBAL g)
} // endif type
// Get the Xname value from the XML file
ValNode->GetText(p, len);
switch (ValNode->GetContent(g, p, len + 1)) {
case RC_OK:
break;
case RC_INFO:
PushWarning(g, Tdbp);
break;
default:
longjmp(g->jumper[g->jump_level], TYPE_AM_XML);
} // endswitch
if (!Tdbp->Xpand) {
// Concatenate all values
@@ -1627,7 +1644,15 @@ void XPOSCOL::ReadColumn(PGLOBAL g)
if ((ValNode = Tdbp->Clist->GetItem(g, Rank, Vxnp)))
// Get the column value from the XML file
ValNode->GetText(Valbuf, Long);
switch (ValNode->GetContent(g, Valbuf, Long + 1)) {
case RC_OK:
break;
case RC_INFO:
PushWarning(g, Tdbp);
break;
default:
longjmp(g->jumper[g->jump_level], TYPE_AM_XML);
} // endswitch
Value->SetValue_psz(Valbuf);
Nx = Tdbp->Irow;