[minor] reduce substr (#18611)
* minor * correct * unify the type of addrLen * Update lib/packages/docutils/rstgen.nim
This commit is contained in:
parent
9a26f5059b
commit
c6fadb1799
2 changed files with 7 additions and 5 deletions
|
|
@ -675,7 +675,7 @@ proc readIndexDir(dir: string):
|
||||||
var x = fileEntries[0].link
|
var x = fileEntries[0].link
|
||||||
let i = find(x, '#')
|
let i = find(x, '#')
|
||||||
if i > 0:
|
if i > 0:
|
||||||
x = x.substr(0, i-1)
|
x.setLen(i)
|
||||||
if i != 0:
|
if i != 0:
|
||||||
# don't add entries starting with '#'
|
# don't add entries starting with '#'
|
||||||
result.modules.add(x.changeFileExt(""))
|
result.modules.add(x.changeFileExt(""))
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
|
|
||||||
import os, options
|
import os, options
|
||||||
import std/private/since
|
import std/private/since
|
||||||
|
import std/strbasics
|
||||||
|
|
||||||
|
|
||||||
when hostOS == "solaris":
|
when hostOS == "solaris":
|
||||||
|
|
@ -468,7 +469,7 @@ proc getAddrString*(sockAddr: ptr SockAddr): string =
|
||||||
if sockAddr.sa_family.cint == nativeAfInet:
|
if sockAddr.sa_family.cint == nativeAfInet:
|
||||||
result = $inet_ntoa(cast[ptr Sockaddr_in](sockAddr).sin_addr)
|
result = $inet_ntoa(cast[ptr Sockaddr_in](sockAddr).sin_addr)
|
||||||
elif sockAddr.sa_family.cint == nativeAfInet6:
|
elif sockAddr.sa_family.cint == nativeAfInet6:
|
||||||
let addrLen = when not useWinVersion: posix.INET6_ADDRSTRLEN
|
let addrLen = when not useWinVersion: posix.INET6_ADDRSTRLEN.int
|
||||||
else: 46 # it's actually 46 in both cases
|
else: 46 # it's actually 46 in both cases
|
||||||
result = newString(addrLen)
|
result = newString(addrLen)
|
||||||
let addr6 = addr cast[ptr Sockaddr_in6](sockAddr).sin6_addr
|
let addr6 = addr cast[ptr Sockaddr_in6](sockAddr).sin6_addr
|
||||||
|
|
@ -477,7 +478,7 @@ proc getAddrString*(sockAddr: ptr SockAddr): string =
|
||||||
result.len.int32) == nil:
|
result.len.int32) == nil:
|
||||||
raiseOSError(osLastError())
|
raiseOSError(osLastError())
|
||||||
if posix.IN6_IS_ADDR_V4MAPPED(addr6) != 0:
|
if posix.IN6_IS_ADDR_V4MAPPED(addr6) != 0:
|
||||||
result = result.substr("::ffff:".len)
|
result.setSlice("::ffff:".len..<addrLen)
|
||||||
else:
|
else:
|
||||||
if winlean.inet_ntop(winlean.AF_INET6, addr6, addr result[0],
|
if winlean.inet_ntop(winlean.AF_INET6, addr6, addr result[0],
|
||||||
result.len.int32) == nil:
|
result.len.int32) == nil:
|
||||||
|
|
@ -495,7 +496,8 @@ proc getAddrString*(sockAddr: ptr SockAddr, strAddress: var string) =
|
||||||
##
|
##
|
||||||
## **Note**
|
## **Note**
|
||||||
## * `strAddress` must be initialized to 46 in length.
|
## * `strAddress` must be initialized to 46 in length.
|
||||||
assert(46 == len(strAddress),
|
const length = 46
|
||||||
|
assert(length == len(strAddress),
|
||||||
"`strAddress` was not initialized correctly. 46 != `len(strAddress)`")
|
"`strAddress` was not initialized correctly. 46 != `len(strAddress)`")
|
||||||
if sockAddr.sa_family.cint == nativeAfInet:
|
if sockAddr.sa_family.cint == nativeAfInet:
|
||||||
let addr4 = addr cast[ptr Sockaddr_in](sockAddr).sin_addr
|
let addr4 = addr cast[ptr Sockaddr_in](sockAddr).sin_addr
|
||||||
|
|
@ -514,7 +516,7 @@ proc getAddrString*(sockAddr: ptr SockAddr, strAddress: var string) =
|
||||||
strAddress.len.int32) == nil:
|
strAddress.len.int32) == nil:
|
||||||
raiseOSError(osLastError())
|
raiseOSError(osLastError())
|
||||||
if posix.IN6_IS_ADDR_V4MAPPED(addr6) != 0:
|
if posix.IN6_IS_ADDR_V4MAPPED(addr6) != 0:
|
||||||
strAddress = strAddress.substr("::ffff:".len)
|
strAddress.setSlice("::ffff:".len..<length)
|
||||||
else:
|
else:
|
||||||
if winlean.inet_ntop(winlean.AF_INET6, addr6, addr strAddress[0],
|
if winlean.inet_ntop(winlean.AF_INET6, addr6, addr strAddress[0],
|
||||||
strAddress.len.int32) == nil:
|
strAddress.len.int32) == nil:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue