From owner-cvs-projects@FreeBSD.ORG Wed Feb 1 05:53:20 2006 Return-Path: X-Original-To: cvs-projects@FreeBSD.org Delivered-To: cvs-projects@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 82A8416A420; Wed, 1 Feb 2006 05:53:20 +0000 (GMT) (envelope-from mux@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3A7A143D49; Wed, 1 Feb 2006 05:53:20 +0000 (GMT) (envelope-from mux@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k115rKuQ024462; Wed, 1 Feb 2006 05:53:20 GMT (envelope-from mux@repoman.freebsd.org) Received: (from mux@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k115rJCx024461; Wed, 1 Feb 2006 05:53:19 GMT (envelope-from mux) Message-Id: <200602010553.k115rJCx024461@repoman.freebsd.org> From: Maxime Henrion Date: Wed, 1 Feb 2006 05:53:19 +0000 (UTC) To: projects-committers@FreeBSD.org, cvs-projects@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Cc: Subject: cvs commit: projects/csup mux.c X-BeenThere: cvs-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the projects tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 Feb 2006 05:53:20 -0000 mux 2006-02-01 05:53:19 UTC FreeBSD projects repository Modified files: csup mux.c Log: - Not only did I blame GCC for a so-called bogus warning about an unitialized variable when we has indeed right, but I managed to leak channels mutexes in the error code path of both chan_read() and chan_write()! Really fix the variable initialization by rewriting the loops more sanely, and fix the aforementioned leaks. - Rewrite sender_wakeup() more like in CVSup by retaining the status of the sender thread, thus avoiding unnecessary pthread_cond_signal() calls. Revision Changes Path 1.55 +41 -19 projects/csup/mux.c