* tls_pbuf.h (tmp_pathbuf::tmp_pathbuf): Convert to inline method.

(tmp_pathbuf::~tmp_pathbuf): Ditto.
	* tls_pbuf.cc (tmp_pathbuf::tmp_pathbuf): Remove here.
	(tmp_pathbuf::~tmp_pathbuf): Ditto.
This commit is contained in:
Corinna Vinschen 2014-08-20 19:44:09 +00:00
parent 905a851912
commit 854e058b56
3 changed files with 18 additions and 13 deletions

View File

@ -1,3 +1,10 @@
2014-08-20 Corinna Vinschen <corinna@vinschen.de>
* tls_pbuf.h (tmp_pathbuf::tmp_pathbuf): Convert to inline method.
(tmp_pathbuf::~tmp_pathbuf): Ditto.
* tls_pbuf.cc (tmp_pathbuf::tmp_pathbuf): Remove here.
(tmp_pathbuf::~tmp_pathbuf): Ditto.
2014-08-19 Corinna Vinschen <corinna@vinschen.de>
* dir.cc (dirfd): Per POSIX, return EINVAL on invalid directory stream.

View File

@ -22,17 +22,6 @@ tls_pathbuf::destroy ()
free (w_buf[i]);
}
tmp_pathbuf::tmp_pathbuf ()
: c_buf_old (tls_pbuf.c_cnt),
w_buf_old (tls_pbuf.w_cnt)
{}
tmp_pathbuf::~tmp_pathbuf ()
{
tls_pbuf.c_cnt = c_buf_old;
tls_pbuf.w_cnt = w_buf_old;
}
char *
tmp_pathbuf::c_get ()
{

View File

@ -6,13 +6,22 @@ This software is a copyrighted work licensed under the terms of the
Cygwin license. Please consult the file "CYGWIN_LICENSE" for
details. */
#pragma once
class tmp_pathbuf
{
unsigned c_buf_old;
unsigned w_buf_old;
public:
tmp_pathbuf ();
~tmp_pathbuf ();
tmp_pathbuf () __attribute__ ((always_inline))
: c_buf_old (_my_tls.locals.pathbufs.c_cnt),
w_buf_old (_my_tls.locals.pathbufs.w_cnt)
{}
~tmp_pathbuf () __attribute__ ((always_inline))
{
_my_tls.locals.pathbufs.c_cnt = c_buf_old;
_my_tls.locals.pathbufs.w_cnt = w_buf_old;
}
inline bool check_usage (unsigned c_need, unsigned w_need)
{