order placement doesnt crash
This commit is contained in:
29
vault.js
29
vault.js
@@ -24,22 +24,28 @@ export function vaultAddress(chainId, owner, num=0) {
|
||||
export async function loginAddress(socket, chainId, address) {
|
||||
if( socket.user_room !== undefined)
|
||||
socket.leave(socket.user_room)
|
||||
socket.user_room = `${chainId}|${address}`
|
||||
socket.join(socket.user_room)
|
||||
const found = []
|
||||
for( let num = 0; ; num++ ) {
|
||||
const vault = vaultAddress(chainId, address, num)
|
||||
if(await vaults.contains(chainId, vault))
|
||||
found.push(vault)
|
||||
else
|
||||
break
|
||||
if( address === undefined ) {
|
||||
socket.emit('vaults', [])
|
||||
}
|
||||
else {
|
||||
socket.user_room = `${chainId}|${address}`
|
||||
socket.join(socket.user_room)
|
||||
const found = []
|
||||
for( let num = 0; ; num++ ) {
|
||||
const vault = vaultAddress(chainId, address, num)
|
||||
if(await vaults.contains(chainId, vault))
|
||||
found.push(vault)
|
||||
else
|
||||
break
|
||||
}
|
||||
socket.emit('vaults', found)
|
||||
}
|
||||
socket.emit('vaults', found)
|
||||
}
|
||||
|
||||
|
||||
export async function ensureVault(socket, chainId, owner, num) {
|
||||
const address = vaultAddress(chainId, owner, num)
|
||||
console.log('ensureVault', chainId, owner, num, address)
|
||||
if (!await vaults.contains(chainId,address)) {
|
||||
try {
|
||||
await createVault(chainId, owner, num)
|
||||
@@ -53,6 +59,7 @@ export async function ensureVault(socket, chainId, owner, num) {
|
||||
|
||||
|
||||
async function createVault(chainId, owner, num) {
|
||||
console.log('createVault', chainId, owner, )
|
||||
const signer = getSigner(chainId);
|
||||
const deployer = new ethers.Contract(chainInfo[chainId].factory, factoryAbi, signer)
|
||||
try {
|
||||
@@ -64,7 +71,7 @@ async function createVault(chainId, owner, num) {
|
||||
const vault = new ethers.Contract(addr, vaultAbi, getProvider(chainId))
|
||||
try {
|
||||
const ver = await vault.version()
|
||||
// console.log(`vault already deployed at ${addr} with version ${ver}`)
|
||||
console.log(`vault already deployed at ${addr} with version ${ver}`)
|
||||
}
|
||||
catch (e2) {
|
||||
console.error('could not deploy vault:',e)
|
||||
|
||||
Reference in New Issue
Block a user