Skip to content

Commit b028379

Browse files
committed
removed move_on_copy from mx (broken in msvc), updated premake
1 parent 2f6549c commit b028379

File tree

2 files changed

+9
-9
lines changed

2 files changed

+9
-9
lines changed

kit/async/mx.h

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -157,9 +157,9 @@ class Multiplexer:
157157
if(!m_Buffered || m_Units.size() < m_Buffered) {
158158
auto cbt = Task<T()>(std::move(cb));
159159
auto fut = cbt.get_future();
160-
auto cbc = kit::move_on_copy<Task<T()>>(std::move(cbt));
160+
auto cbc = std::make_shared<Task<T()>>(std::move(cbt));
161161
m_Units.emplace_back(cond, [cbc]() {
162-
cbc.get()();
162+
(*cbc)();
163163
});
164164
m_CondVar.notify_one();
165165
return fut;
@@ -178,7 +178,7 @@ class Multiplexer:
178178
if(!m_Buffered || m_Units.size() < m_Buffered) {
179179
auto cbt = Task<T()>(std::move(cb));
180180
auto fut = cbt.get_future();
181-
auto cbc = kit::move_on_copy<Task<T()>>(std::move(cbt));
181+
auto cbc = std::make_shared<Task<T()>>(std::move(cbt));
182182
m_Units.emplace_back(
183183
std::function<bool()>(),
184184
std::function<void()>()
@@ -187,7 +187,7 @@ class Multiplexer:
187187
m_Units.back().m_pPush = kit::make_unique<push_coro_t>(
188188
[cbc, pullptr](pull_coro_t& sink){
189189
*pullptr = &sink;
190-
cbc.get()();
190+
(*cbc)();
191191
}
192192
);
193193
auto* coroptr = m_Units.back().m_pPush.get();
@@ -230,13 +230,13 @@ class Multiplexer:
230230

231231
template<class R, class T>
232232
std::future<R> when(std::future<T>& fut, std::function<R(std::future<T>&)> cb) {
233-
kit::move_on_copy<std::future<T>> futc(std::move(fut));
233+
auto futc = std::make_shared<std::future<T>>(std::move(fut));
234234

235235
return task<void>([cb, futc]() {
236-
if(futc.get().wait_for(std::chrono::seconds(0)) ==
236+
if(futc->wait_for(std::chrono::seconds(0)) ==
237237
std::future_status::ready)
238238
{
239-
cb(futc.get());
239+
cb(*futc);
240240
}
241241
else
242242
throw kit::yield_exception();

premake4.lua

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@ solution("kit")
3030
--"toys/**.cpp",
3131
"tests/**.cpp",
3232
"tests/**.h",
33-
"include/kit/**.cpp",
34-
"include/kit/**.h"
33+
"kit/**.cpp",
34+
"kit/**.h"
3535
}
3636

3737
--excludes {

0 commit comments

Comments
 (0)