diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pure/asyncdispatch.nim | 2 | ||||
-rw-r--r-- | lib/pure/asyncfutures.nim | 5 | ||||
-rw-r--r-- | lib/pure/browsers.nim | 4 | ||||
-rw-r--r-- | lib/pure/concurrency/cpuinfo.nim | 2 | ||||
-rw-r--r-- | lib/pure/net.nim | 5 | ||||
-rw-r--r-- | lib/pure/osproc.nim | 2 | ||||
-rw-r--r-- | lib/pure/terminal.nim | 2 | ||||
-rw-r--r-- | lib/std/monotimes.nim | 2 | ||||
-rw-r--r-- | lib/std/private/globs.nim | 4 | ||||
-rw-r--r-- | lib/system/dollars.nim | 1 | ||||
-rw-r--r-- | lib/system/excpt.nim | 3 |
11 files changed, 19 insertions, 13 deletions
diff --git a/lib/pure/asyncdispatch.nim b/lib/pure/asyncdispatch.nim index 1b3548268..cf276fc7b 100644 --- a/lib/pure/asyncdispatch.nim +++ b/lib/pure/asyncdispatch.nim @@ -1279,7 +1279,7 @@ else: var newList = newSeqOfCap[Callback](newLength) var cb = curList[0] - if not cb(fd.AsyncFD): + if not cb(fd): newList.add(cb) withData(p.selector, fd.int, adata) do: diff --git a/lib/pure/asyncfutures.nim b/lib/pure/asyncfutures.nim index 1a3b901df..d13d58bd6 100644 --- a/lib/pure/asyncfutures.nim +++ b/lib/pure/asyncfutures.nim @@ -364,7 +364,10 @@ proc read*[T](future: Future[T] | FutureVar[T]): T = ## ## If the result of the future is an error then that error will be raised. {.push hint[ConvFromXtoItselfNotNeeded]: off.} - let fut = Future[T](future) + when future is Future[T]: + let fut = future + else: + let fut = Future[T](future) {.pop.} if fut.finished: if fut.error != nil: diff --git a/lib/pure/browsers.nim b/lib/pure/browsers.nim index ee53e557e..aff95e09b 100644 --- a/lib/pure/browsers.nim +++ b/lib/pure/browsers.nim @@ -20,7 +20,9 @@ when defined(windows): import winlean from os import absolutePath else: - import os, osproc + import os + when not defined(osx): + import osproc const osOpenCmd* = when defined(macos) or defined(macosx) or defined(windows): "open" else: "xdg-open" ## \ diff --git a/lib/pure/concurrency/cpuinfo.nim b/lib/pure/concurrency/cpuinfo.nim index 57d13fde3..dab5a2447 100644 --- a/lib/pure/concurrency/cpuinfo.nim +++ b/lib/pure/concurrency/cpuinfo.nim @@ -15,7 +15,7 @@ runnableExamples: include "system/inclrtl" -when not defined(windows): +when defined(linux): import posix when defined(freebsd) or defined(macosx): diff --git a/lib/pure/net.nim b/lib/pure/net.nim index b353227a3..decf97777 100644 --- a/lib/pure/net.nim +++ b/lib/pure/net.nim @@ -88,7 +88,6 @@ import std/private/since import nativesockets, os, strutils, times, sets, options, std/monotimes -from ssl_certs import scanSSLCertificates import ssl_config export nativesockets.Port, nativesockets.`$`, nativesockets.`==` export Domain, SockType, Protocol @@ -101,6 +100,8 @@ when useWinVersion: when defineSsl: import openssl + when not defined(nimDisableCertificateValidation): + from ssl_certs import scanSSLCertificates # Note: The enumerations are mapped to Window's constants. @@ -670,7 +671,7 @@ when defineSsl: # That means we can assume that the next internal index is the length of # extra data indexes. for i in ctx.referencedData: - GC_unref(getExtraData(ctx, i).RootRef) + GC_unref(getExtraData(ctx, i)) ctx.context.SSL_CTX_free() proc `pskIdentityHint=`*(ctx: SslContext, hint: string) = diff --git a/lib/pure/osproc.nim b/lib/pure/osproc.nim index a35ff3a9a..00dc907e0 100644 --- a/lib/pure/osproc.nim +++ b/lib/pure/osproc.nim @@ -1234,7 +1234,7 @@ elif not defined(useNimRtl): when defined(macosx) or defined(freebsd) or defined(netbsd) or defined(openbsd) or defined(dragonfly): - import kqueue, times + import kqueue proc waitForExit(p: Process, timeout: int = -1): int = if p.exitFlag: diff --git a/lib/pure/terminal.nim b/lib/pure/terminal.nim index 14a2613fe..046fa42df 100644 --- a/lib/pure/terminal.nim +++ b/lib/pure/terminal.nim @@ -769,8 +769,6 @@ proc getch*(): char = discard fd.tcSetAttr(TCSADRAIN, addr oldMode) when defined(windows): - from unicode import toUTF8, Rune, runeLenAt - proc readPasswordFromStdin*(prompt: string, password: var string): bool {.tags: [ReadIOEffect, WriteIOEffect].} = ## Reads a `password` from stdin without printing it. `password` must not diff --git a/lib/std/monotimes.nim b/lib/std/monotimes.nim index c56bf77b3..f84670ecc 100644 --- a/lib/std/monotimes.nim +++ b/lib/std/monotimes.nim @@ -74,7 +74,7 @@ when defined(js): system.`+`(a, b) {.pop.} -elif defined(posix): +elif defined(posix) and not defined(osx): import posix elif defined(windows): diff --git a/lib/std/private/globs.nim b/lib/std/private/globs.nim index e697ca91c..b98a7808b 100644 --- a/lib/std/private/globs.nim +++ b/lib/std/private/globs.nim @@ -4,7 +4,9 @@ this can eventually be moved to std/os and `walkDirRec` can be implemented in te to avoid duplication ]## -import std/[os,strutils] +import std/[os] +when defined(windows): + from strutils import replace type PathEntry* = object diff --git a/lib/system/dollars.nim b/lib/system/dollars.nim index 16569ea12..4c72c2901 100644 --- a/lib/system/dollars.nim +++ b/lib/system/dollars.nim @@ -5,7 +5,6 @@ proc `$`*(x: int): string {.magic: "IntToStr", noSideEffect.} when defined(js): import std/private/since - since (1, 3): proc `$`*(x: uint): string = ## Caveat: currently implemented as $(cast[int](x)), tied to current diff --git a/lib/system/excpt.nim b/lib/system/excpt.nim index 95dbfe3af..dbb39f536 100644 --- a/lib/system/excpt.nim +++ b/lib/system/excpt.nim @@ -378,7 +378,8 @@ proc reportUnhandledErrorAux(e: ref Exception) {.nodestroy.} = # ugly, but avoids heap allocations :-) template xadd(buf, s, slen) = if L + slen < high(buf): - copyMem(addr(buf[L]), cstring(s), slen) + + copyMem(addr(buf[L]), (when s is cstring: s else: cstring(s)), slen) inc L, slen template add(buf, s) = xadd(buf, s, s.len) |