hopefully implement va_end properly - may require some fixes or reverts, partial or full

This commit is contained in:
DarthArgus
2015-04-02 20:25:00 -05:00
parent bc33f176c2
commit 1b7d4c6283
15 changed files with 81 additions and 22 deletions
@@ -1554,7 +1554,7 @@ SessionApiClient* ConnectionServer::getSessionApiClient()
// ----------------------------------------------------------------------
void ConnectionServer::setDone(char const *reasonfmt, ...)
void ConnectionServer::setDone(char const reasonfmt, ...)
{
if (!done)
{
@@ -1579,6 +1579,7 @@ void ConnectionServer::setDone(char const *reasonfmt, ...)
reason));
done = true;
va_end(ap);
}
}
@@ -36,7 +36,7 @@ class ConnectionServer : public MessageDispatch::Receiver
public:
static void install();
static void remove();
void setDone(char const *reasonfmt, ...);
void setDone(char const reasonfmt, ...);
~ConnectionServer ();
@@ -127,7 +127,7 @@ void LogServer::receiveMessage(MessageDispatch::Emitter const &source, MessageDi
// ----------------------------------------------------------------------
void LogServer::setDone(char const *reasonfmt, ...)
void LogServer::setDone(char const reasonfmt, ...)
{
if (!m_done)
{
@@ -151,6 +151,7 @@ void LogServer::setDone(char const *reasonfmt, ...)
static_cast<int>(Os::getProcessId()),
reason));
va_end(ap);
m_done = true;
}
}
@@ -30,7 +30,7 @@ public:
static void remove();
static void run();
void mainLoop();
void setDone(char const *reason, ...);
void setDone(char const reason, ...);
virtual void receiveMessage(MessageDispatch::Emitter const &source, MessageDispatch::MessageBase const &message);
@@ -1449,7 +1449,7 @@ void PlanetServer::sendQueuedMessagesForObject(const PlanetProxyObject &theObjec
// ----------------------------------------------------------------------
void PlanetServer::setDone(char const *reasonfmt, ...)
void PlanetServer::setDone(char const reasonfmt, ...)
{
if (!m_done)
{
@@ -1472,7 +1472,8 @@ void PlanetServer::setDone(char const *reasonfmt, ...)
"PlanetServer (pid %d) shutdown, reason: %s\n",
static_cast<int>(Os::getProcessId()),
reason));
va_end(ap);
m_done = true;
}
}
@@ -49,7 +49,7 @@ public:
static void run(void);
void mainLoop(void);
void setDone(char const *reasonfmt, ...);
void setDone(char const reasonfmt, ...);
const unsigned short getGameServicePort() const;
const Service * getGameService() const;
@@ -311,7 +311,7 @@ void DatabaseProcess::run(void)
// ----------------------------------------------------------------------
void DatabaseProcess::setDone(char const *reasonfmt, ...)
void DatabaseProcess::setDone(char const reasonfmt, ...)
{
if (!done)
{
@@ -336,7 +336,8 @@ void DatabaseProcess::setDone(char const *reasonfmt, ...)
static_cast<int>(getProcessId()),
static_cast<int>(Os::getProcessId()),
reason));
va_end(ap);
done = true;
}
}
@@ -40,7 +40,7 @@ class DatabaseProcess : public MessageDispatch::Receiver
// running:
virtual void run (void) = 0;
void setDone(char const *reasonfmt, ...);
void setDone(char const reasonfmt, ...);
virtual void frameTick(void) {}
@@ -535,7 +535,7 @@ uint32 PlayerShipController::getCurSyncStamp() const
// ----------------------------------------------------------------------
void PlayerShipController::logMoveFail(char const *reasonFmt, ...) const
void PlayerShipController::logMoveFail(char const reasonFmt, ...) const
{
ShipObject const * const ship = NON_NULL(getShipOwner());
Client const * const client = NON_NULL(ship->getClient());
@@ -554,6 +554,7 @@ void PlayerShipController::logMoveFail(char const *reasonFmt, ...) const
client->getCharacterObjectId().getValueString().c_str(),
client->getStationId(),
reason));
va_end(ap);
}
// ----------------------------------------------------------------------
@@ -76,7 +76,7 @@ private:
uint32 getCurSyncStamp() const;
bool checkValidMove(Transform const &transform, Vector const &velocity, float speed, uint32 syncStamp);
void logMoveFail(char const *reasonFmt, ...) const;
void logMoveFail(char const reasonFmt, ...) const;
private:
@@ -4864,7 +4864,7 @@ void GameServer::getObjectsWithClients(std::vector<ServerObject *> &objects) con
// ----------------------------------------------------------------------
void GameServer::setDone(char const *reasonfmt, ...)
void GameServer::setDone(char const reasonfmt, ...)
{
if (!m_done)
{
@@ -4890,6 +4890,7 @@ void GameServer::setDone(char const *reasonfmt, ...)
static_cast<int>(Os::getProcessId()),
reason));
va_end(ap);
m_done = true;
}
}
@@ -106,7 +106,7 @@ public:
void clearCustomerServiceServerConnection();
void setCentralServerConnection (CentralServerConnection *newCentralServerConnection);
void setDatabaseProcessConnection (DatabaseProcessConnection *newDatabaseProcessConnection);
void setDone (char const *reason, ...);
void setDone (char const reasonfmt, ...);
void setProcessId (uint32 newProcessId);
void onDatabaseProcessConnectionEstablished();
void onPlanetServerConnectionEstablished ();
@@ -78,6 +78,9 @@ LocalRefPtr createNewObject(jclass clazz, jmethodID constructorID, ...)
va_start(marker, constructorID);
LocalRefPtr result(new LocalRef(JavaLibrary::getEnv()->NewObjectV(clazz, constructorID, marker)));
va_end(marker);
if (result->getValue() == 0)
return LocalRef::cms_nullPtr;
return result;
@@ -187,8 +190,11 @@ LocalRefPtr callObjectMethod(const LocalRefParam & object, jmethodID methodID, .
{
va_list marker;
va_start(marker, methodID);
LocalRefPtr result(new LocalRef(JavaLibrary::getEnv()->CallObjectMethodV(object.getValue(), methodID, marker)));
va_end(marker);
if (result->getValue() != 0)
return result;
}
@@ -205,6 +211,9 @@ LocalObjectArrayRefPtr callObjectArrayMethod(const LocalRefParam & object, jmeth
va_start(marker, methodID);
LocalObjectArrayRefPtr result(new LocalObjectArrayRef(static_cast<jobjectArray>(JavaLibrary::getEnv()->CallObjectMethodV(object.getValue(), methodID, marker))));
va_end(marker);
if (result->getValue() != 0)
return result;
}
@@ -221,6 +230,9 @@ LocalByteArrayRefPtr callByteArrayMethod(const LocalRefParam & object, jmethodID
va_start(marker, methodID);
LocalByteArrayRefPtr result(new LocalByteArrayRef(static_cast<jbyteArray>(JavaLibrary::getEnv()->CallObjectMethodV(object.getValue(), methodID, marker))));
va_end(marker);
if (result->getValue() != 0)
return result;
}
@@ -236,7 +248,11 @@ jint callIntMethod(const LocalRefParam & object, jmethodID methodID, ...)
va_list marker;
va_start(marker, methodID);
return JavaLibrary::getEnv()->CallIntMethodV(object.getValue(), methodID, marker);
jint result = JavaLibrary::getEnv()->CallIntMethodV(object.getValue(), methodID, marker);
va_end(marker);
return result;
}
return 0;
}
@@ -250,7 +266,11 @@ jlong callLongMethod(const LocalRefParam & object, jmethodID methodID, ...)
va_list marker;
va_start(marker, methodID);
return JavaLibrary::getEnv()->CallLongMethodV(object.getValue(), methodID, marker);
jlong result = JavaLibrary::getEnv()->CallLongMethodV(object.getValue(), methodID, marker);
va_end(marker);
return result;
}
return 0;
}
@@ -264,7 +284,11 @@ jfloat callFloatMethod(const LocalRefParam & object, jmethodID methodID, ...)
va_list marker;
va_start(marker, methodID);
return JavaLibrary::getEnv()->CallFloatMethodV(object.getValue(), methodID, marker);
jfloat result = JavaLibrary::getEnv()->CallFloatMethodV(object.getValue(), methodID, marker);
va_end(marker);
return result;
}
return 0;
}
@@ -278,7 +302,11 @@ jboolean callBooleanMethod(const LocalRefParam & object, jmethodID methodID, ...
va_list marker;
va_start(marker, methodID);
return JavaLibrary::getEnv()->CallBooleanMethodV(object.getValue(), methodID, marker);
jboolean result = JavaLibrary::getEnv()->CallBooleanMethodV(object.getValue(), methodID, marker);
va_end(marker);
return result;
}
return JNI_FALSE;
}
@@ -293,6 +321,8 @@ void callVoidMethod(const LocalRefParam & object, jmethodID methodID, ...)
va_start(marker, methodID);
JavaLibrary::getEnv()->CallVoidMethodV(object.getValue(), methodID, marker);
va_end(marker);
}
}
@@ -305,7 +335,11 @@ jboolean callNonvirtualBooleanMethod(const LocalRefParam & object, jclass clazz,
va_list marker;
va_start(marker, methodID);
return JavaLibrary::getEnv()->CallNonvirtualBooleanMethodV(object.getValue(), clazz, methodID, marker);
jboolean result = JavaLibrary::getEnv()->CallNonvirtualBooleanMethodV(object.getValue(), clazz, methodID, marker);
va_end(marker);
return result;
}
return JNI_FALSE;
}
@@ -318,6 +352,8 @@ void callStaticVoidMethod(jclass clazz, jmethodID methodID, ...)
va_start(marker, methodID);
JavaLibrary::getEnv()->CallStaticVoidMethodV(clazz, methodID, marker);
va_end(marker);
}
//-----------------------------------------------------------------------
@@ -328,6 +364,9 @@ LocalRefPtr callStaticObjectMethod(jclass clazz, jmethodID methodID, ...)
va_start(marker, methodID);
LocalRefPtr result(new LocalRef(JavaLibrary::getEnv()->CallStaticObjectMethodV(clazz, methodID, marker)));
va_end(marker);
if (result->getValue() == 0)
return LocalRef::cms_nullPtr;
return result;
@@ -341,6 +380,9 @@ LocalObjectArrayRefPtr callStaticObjectArrayMethod(jclass clazz, jmethodID metho
va_start(marker, methodID);
LocalObjectArrayRefPtr result(new LocalObjectArrayRef(static_cast<jobjectArray>(JavaLibrary::getEnv()->CallStaticObjectMethodV(clazz, methodID, marker))));
va_end(marker);
if (result->getValue() == 0)
return LocalObjectArrayRef::cms_nullPtr;
return result;
@@ -354,6 +396,9 @@ LocalByteArrayRefPtr callStaticByteArrayMethod(jclass clazz, jmethodID methodID,
va_start(marker, methodID);
LocalByteArrayRefPtr result(new LocalByteArrayRef(static_cast<jbyteArray>(JavaLibrary::getEnv()->CallStaticObjectMethodV(clazz, methodID, marker))));
va_end(marker);
if (result->getValue() == 0)
return LocalByteArrayRef::cms_nullPtr;
return result;
@@ -407,6 +452,9 @@ JavaStringPtr callStringMethod(const LocalRefParam & object, jmethodID methodID,
va_start(marker, methodID);
jobject result = JavaLibrary::getEnv()->CallObjectMethodV(object.getValue(), methodID, marker);
va_end(marker);
if (result != 0)
{
#ifdef _DEBUG
@@ -432,6 +480,9 @@ JavaStringPtr callStaticStringMethod(jclass clazz, jmethodID methodID, ...)
JavaStringPtr result(new JavaString(static_cast<jstring>(JavaLibrary::getEnv()->CallStaticObjectMethodV(clazz,
methodID, marker))));
va_end(marker);
if (result->getValue() != 0)
return result;
return JavaString::cms_nullPtr;
@@ -177,7 +177,7 @@ int File::readLine(char *buffer, int bufferSize)
/**
* fprintf functionality.
*/
int File::print(const char *format, ...)
int File::print(const char format, ...)
{
NOT_NULL(m_fp);
@@ -185,4 +185,6 @@ int File::print(const char *format, ...)
va_start(argptr, format);
return vfprintf(m_fp, format, argptr);
va_end(argptr);
} // File::print
@@ -33,7 +33,7 @@ public:
int readLine(char *buffer, int bufferSize);
int puts(const char *string);
int print(const char *format, ...);
int print(const char format, ...);
void printWarning(const char *buffer) const;
void printError(const char *buffer) const;