https://issues.apache.org/bugzilla/show_bug.cgi?id=56313

Timcesq <ti_m...@poczta.fm> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 OS|                            |All

--- Comment #11 from Timcesq <ti_m...@poczta.fm> ---
I used a debugger to locate the crash address in the source code. It looks like
the crash occurs inside the function "Java_org_apache_tomcat_jni_Poll_poll",
specifically inside the following block:

for (i = 0; i < num; i++) {
    tcn_socket_t *s = (tcn_socket_t *)fd->client_data;
    p->set[i*2+0] = (jlong)(fd->rtnevents);
    p->set[i*2+1] = P2J(s);
    if (remove) {
        apr_pollset_remove(p->pollset, fd);
        APR_RING_REMOVE(s->pe, link);
        APR_RING_INSERT_TAIL(&p->dead_ring, s->pe, tcn_pfde_t, link);
        s->pe = NULL;
        p->nelts--;
#ifdef TCN_DO_STATISTICS
        p->sp_removed++;
#endif
    }
    else {
        /* Update last active with the current time
        * after the poll call.
        */
        s->last_active = now;
    }
    fd ++;
}

The crash address suggests that a read of the "s->pe" variable inside the
"if(remove)" block fails (the variable is null).

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to