@@ -1489,34 +1489,33 @@ static void fill_server(MEM_ROOT *mem_root, FEDERATEDX_SERVER *server,
1489
1489
sizeof (int ) + 8 );
1490
1490
key.append (scheme);
1491
1491
key.q_append (' \0 ' );
1492
- server-> hostname = ( const char *) (intptr) key.length ();
1492
+ size_t hostname_pos= key.length ();
1493
1493
key.append (hostname);
1494
1494
key.q_append (' \0 ' );
1495
- server-> database = ( const char *) (intptr) key.length ();
1495
+ size_t database_pos= key.length ();
1496
1496
key.append (database);
1497
1497
key.q_append (' \0 ' );
1498
1498
key.q_append ((uint32) share->port );
1499
- server-> socket = ( const char *) (intptr) key.length ();
1499
+ size_t socket_pos= key.length ();
1500
1500
key.append (socket);
1501
1501
key.q_append (' \0 ' );
1502
- server-> username = ( const char *) (intptr) key.length ();
1502
+ size_t username_pos= key.length ();
1503
1503
key.append (username);
1504
1504
key.q_append (' \0 ' );
1505
- server-> password = ( const char *) (intptr) key.length ();
1505
+ size_t password_pos= key.length ();
1506
1506
key.append (password);
1507
1507
key.c_ptr_safe (); // Ensure we have end \0
1508
1508
1509
1509
server->key_length = key.length ();
1510
1510
/* Copy and add end \0 */
1511
1511
server->key = (uchar *) strmake_root (mem_root, key.ptr (), key.length ());
1512
1512
1513
- /* pointer magic */
1514
- server->scheme += (intptr) server->key ;
1515
- server->hostname += (intptr) server->key ;
1516
- server->database += (intptr) server->key ;
1517
- server->username += (intptr) server->key ;
1518
- server->password += (intptr) server->key ;
1519
- server->socket += (intptr) server->key ;
1513
+ server->scheme = (const char *)server->key ;
1514
+ server->hostname = (const char *)server->key + hostname_pos;
1515
+ server->database = (const char *)server->key + database_pos;
1516
+ server->username = (const char *)server->key + username_pos;
1517
+ server->password = (const char *)server->key + password_pos;
1518
+ server->socket = (const char *)server->key + socket_pos;
1520
1519
server->port = share->port ;
1521
1520
1522
1521
if (!share->socket )
0 commit comments