Fix stack corruption causing a crash on Windows with connection pooling
This commit is contained in:
parent
3ca2c765c4
commit
fe0dd9701a
|
@ -23,6 +23,8 @@
|
|||
*
|
||||
*****************************************************************************/
|
||||
|
||||
#include "node.h"
|
||||
|
||||
#include "njsOracle.h"
|
||||
#include "njsConnection.h"
|
||||
#include "njsPool.h"
|
||||
|
@ -53,6 +55,7 @@ Oracledb::Oracledb()
|
|||
poolMin_ = POOL_MIN;
|
||||
poolIncrement_ = POOL_INCR;
|
||||
poolTimeout_ = POOL_TIMEOUT;
|
||||
connClass_ = "";
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
|
|
@ -79,7 +79,7 @@ private:
|
|||
// Create Pool Methods
|
||||
static Handle<Value> CreatePool (const Arguments& args);
|
||||
static void Async_CreatePool (uv_work_t *req );
|
||||
static void Async_AfterCreatePool (uv_work_t *req );
|
||||
static void Async_AfterCreatePool (uv_work_t *req);
|
||||
|
||||
// Define Getter Accessors to Properties
|
||||
static Handle<Value> GetPoolMin(Local<String> property,
|
||||
|
|
|
@ -23,6 +23,10 @@
|
|||
*
|
||||
*****************************************************************************/
|
||||
|
||||
#include "node.h"
|
||||
|
||||
#include <string>
|
||||
|
||||
#include "njsOracle.h"
|
||||
#include "njsPool.h"
|
||||
#include "njsConnection.h"
|
||||
|
@ -504,11 +508,12 @@ void Pool::Async_GetConnection(uv_work_t *req)
|
|||
|
||||
PARAMETERS:
|
||||
UV queue work block
|
||||
status - expected to be non-zero.
|
||||
|
||||
NOTES:
|
||||
Connection handle is formed and handed over to JS.
|
||||
*/
|
||||
Handle<Value> Pool::Async_AfterGetConnection(uv_work_t *req)
|
||||
void Pool::Async_AfterGetConnection(uv_work_t *req)
|
||||
{
|
||||
HandleScope scope;
|
||||
connectionBaton *connBaton = (connectionBaton*)req->data;
|
||||
|
@ -536,7 +541,6 @@ Handle<Value> Pool::Async_AfterGetConnection(uv_work_t *req)
|
|||
node::FatalException(tc);
|
||||
}
|
||||
delete connBaton;
|
||||
return Undefined();
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
|
|
@ -53,7 +53,7 @@ private:
|
|||
// Get Connection Methods
|
||||
static Handle<Value> GetConnection(const Arguments& args);
|
||||
static void Async_GetConnection(uv_work_t* req);
|
||||
static Handle<Value> Async_AfterGetConnection(uv_work_t* req);
|
||||
static void Async_AfterGetConnection(uv_work_t* req);
|
||||
|
||||
// Terminate Methods
|
||||
static Handle<Value> Terminate(const Arguments& args);
|
||||
|
|
Loading…
Reference in New Issue