contrib/chg/procutil.h
author Martin von Zweigbergk <martinvonz@google.com>
Tue, 13 Feb 2018 13:23:18 -0800
changeset 36174 b42c47b8c9d4
parent 31941 ac5527021097
permissions -rw-r--r--
treemanifest: add an optimized __nonzero__() We use bool(manifest) in at least some places: localrepo.py:1730 hgweb/webcommands.py:524 Since the treemanifest class doesn't define __nonzero__() (before this patch), bool(manifest) will instead call __len__(), which can be slow for treemanifests. This patch may make a noticeable difference in the localrepo case above, but that only happens when committing a merge and I haven't timed it. Note that Durham already added a __nonzero__ implementation to manifestdict in b19291e5d506 (manifest: add __nonzero__ method, 2016-11-03). Differential Revision: https://phab.mercurial-scm.org/D2232

/*
 * Utilities about process handling - signal and subprocess (ex. pager)
 *
 * Copyright (c) 2011 Yuya Nishihara <yuya@tcha.org>
 *
 * This software may be used and distributed according to the terms of the
 * GNU General Public License version 2 or any later version.
 */

#ifndef PROCUTIL_H_
#define PROCUTIL_H_

#include <unistd.h>

void restoresignalhandler(void);
void setupsignalhandler(pid_t pid, pid_t pgid);

pid_t setuppager(const char *pagercmd, const char *envp[]);
void waitpager(void);

#endif /* PROCUTIL_H_ */