aboutsummaryrefslogtreecommitdiff
path: root/www/chromium/files/patch-net_disk__cache_simple_simple__file__tracker.cc
blob: ea6580b0cab2f09ceb35cb4d35ebe6ee6f700630 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
--- net/disk_cache/simple/simple_file_tracker.cc.orig	2022-06-17 14:20:10 UTC
+++ net/disk_cache/simple/simple_file_tracker.cc
@@ -29,7 +29,17 @@ void RecordFileDescripterLimiterOp(FileDescriptorLimit
 }  // namespace
 
 SimpleFileTracker::SimpleFileTracker(int file_limit)
+#if defined(OS_OPENBSD)
+{
+  // cap the file descriptor limit at 85% of the size of the
+  // file descriptor table and also substract the amount of
+  // currently used file descriptors as this should give us
+  // enough reserve to avoid hitting the limit 
+  file_limit_ = (getdtablesize() * 0.85) -  getdtablecount();
+}
+#else
     : file_limit_(file_limit) {}
+#endif
 
 SimpleFileTracker::~SimpleFileTracker() {
   DCHECK(lru_.empty());