You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by co...@apache.org on 2002/05/02 01:10:17 UTC
cvs commit: jakarta-tomcat-connectors/jk/native2/include jk_map.h
costin 02/05/01 16:10:17
Modified: jk/native2/common jk_channel_jni.c jk_shm.c
jk_worker_ajp13.c
jk/native2/include jk_map.h
Log:
Few fixes in error handling and checking for exceptions.
Revision Changes Path
1.12 +1 -2 jakarta-tomcat-connectors/jk/native2/common/jk_channel_jni.c
Index: jk_channel_jni.c
===================================================================
RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/common/jk_channel_jni.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- jk_channel_jni.c 1 May 2002 22:23:36 -0000 1.11
+++ jk_channel_jni.c 1 May 2002 23:10:17 -0000 1.12
@@ -309,8 +309,7 @@
jk2_channel_jni_open( env, _this, endpoint );
epData=(jk_ch_jni_ep_private_t *)endpoint->channelData;
}
-
- if( epData->jniJavaContext == NULL ) {
+ if( epData == NULL || epData->jniJavaContext == NULL ) {
env->l->jkLog(env, env->l, JK_LOG_ERROR,"channel_jni.send() no java context\n" );
return JK_ERR;
1.9 +16 -7 jakarta-tomcat-connectors/jk/native2/common/jk_shm.c
Index: jk_shm.c
===================================================================
RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/common/jk_shm.c,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- jk_shm.c 30 Apr 2002 01:01:03 -0000 1.8
+++ jk_shm.c 1 May 2002 23:10:17 -0000 1.9
@@ -175,6 +175,11 @@
return JK_OK;
}
+ if( shm->size <= 0 ) {
+ env->l->jkLog(env, env->l, JK_LOG_ERROR,
+ "shm.create(): No size %s\n", shm->fname);
+ return JK_ERR;
+ }
/* make sure it's an absolute pathname */
/* fname = ap_server_root_relative(pconf, ap_scoreboard_fname); */
@@ -189,13 +194,11 @@
"shm.create(): error removing shm %s %d %s\n",
shm->fname, rv, error );
shm->privateData=NULL;
- return rv;
} else {
env->l->jkLog(env, env->l, JK_LOG_ERROR,
"shm.create(): file removed ok\n");
}
-
rv = apr_shm_create((apr_shm_t **)&shm->privateData,(apr_size_t)shm->size,
shm->fname, globalShmPool);
@@ -232,7 +235,7 @@
shm->head->slotSize = shm->slotSize;
shm->head->slotMaxCount = shm->slotMaxCount;
- shm->head->lastSlot = 0;
+ shm->head->lastSlot = 1;
env->l->jkLog(env, env->l, JK_LOG_INFO,
"shm.init() Initalized %s %p\n",
@@ -312,6 +315,7 @@
{
jk_bean_t *bean=(jk_bean_t *)target;
jk_shm_t *shm=(jk_shm_t *)bean->object;
+ int rc;
int code=msg->getByte(env, msg );
@@ -330,8 +334,8 @@
case SHM_ATTACH: {
env->l->jkLog(env, env->l, JK_LOG_INFO,
"shm.init()\n");
- shm->init(env, shm);
- return JK_OK;
+ rc=shm->init(env, shm);
+ return rc;
}
case SHM_DETACH: {
@@ -342,12 +346,17 @@
jk_shm_slot_t *slot;
env->l->jkLog(env, env->l, JK_LOG_INFO,
- "shm.registerTomcat() %s %d\n",
+ "shm.writeSlot() %s %d\n",
instanceName, msg->len );
if( msg->len > shm->slotSize ) {
env->l->jkLog(env, env->l, JK_LOG_ERROR,
- "shm.registerTomcat() Packet too large %d %d\n",
+ "shm.writeSlot() Packet too large %d %d\n",
shm->slotSize, msg->len );
+ return JK_ERR;
+ }
+ if( shm->head == NULL ) {
+ env->l->jkLog(env, env->l, JK_LOG_ERROR,
+ "shm.writeSlot() No head - shm was not initalized\n");
return JK_ERR;
}
slot=shm->createSlot( env, shm, instanceName, 0 );
1.11 +1 -1 jakarta-tomcat-connectors/jk/native2/common/jk_worker_ajp13.c
Index: jk_worker_ajp13.c
===================================================================
RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/common/jk_worker_ajp13.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- jk_worker_ajp13.c 1 May 2002 22:23:36 -0000 1.10
+++ jk_worker_ajp13.c 1 May 2002 23:10:17 -0000 1.11
@@ -401,7 +401,7 @@
"ajp14.forwardST() After %d\n",err);
- return JK_OK;
+ return err;
}
static int JK_METHOD
1.13 +4 -2 jakarta-tomcat-connectors/jk/native2/include/jk_map.h
Index: jk_map.h
===================================================================
RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/include/jk_map.h,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- jk_map.h 27 Apr 2002 00:50:43 -0000 1.12
+++ jk_map.h 1 May 2002 23:10:17 -0000 1.13
@@ -58,7 +58,7 @@
/***************************************************************************
* Description: Map object header file *
* Author: Gal Shachor <sh...@il.ibm.com> *
- * Version: $Revision: 1.12 $ *
+ * Version: $Revision: 1.13 $ *
***************************************************************************/
#ifndef JK_MAP_H
@@ -85,11 +85,13 @@
void *(*get)(struct jk_env *env, struct jk_map *_this,
const char *name);
-
+
+ /** Set the value, overriding previous values */
int (*put)(struct jk_env *env, struct jk_map *_this,
const char *name, void *value,
void **oldValue);
+ /** Multi-value support */
int (*add)(struct jk_env *env, struct jk_map *_this,
const char *name, void *value );
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>