Profile cover photo
Profile photo
Christoph Haag
Christoph's interests
View all
Christoph's posts

Post has attachment
When it's 3am and you're searching for the bug that makes the grid for the nearest neighbor search in germany far too big and you realize that geofabrik's dataset just contains nodes so far outside germany

Post has attachment
The shortest route from my home to uni - according to Dijkstra gone wrong.

Post has shared content

Set<String> s = new HashSet<String>() {{
add("1"); add("2"); add("5");

Post has attachment

Post has attachment
I don't get it. I was trying to print something and since the Linux driver for my Epson AcuLaser C900 doesn't really work anymore, I tried the Windows 10 IE VM. Apparently windows has a driver built in for it, but for me it said "unknown device" or so and I had to "search for drivers online" before it decided my driver is "up to date" and only then did it fill out the vendor and device strings.
Anyway, I was wondering why my VM is so slow, so I looked at the task manager and saw - it's because I'm trying to run windows. No, it did not stop doing that for the 30 or so minutes I tried to print something.

Wow, this printer smells bad when you power it on. It's probably a convenient cancer dispenser by now. And on top of that, it doesn't actually print anymore. On the test page there is some faint teal color, but trying to print black - a white sheet of paper comes out.

Why am I even trying to make this garbage work? I should just buy a basic printer from HP and be done with it.

Post has shared content
2025: Microsoft will Cortana auf jedem Telescreen haben.
In Zukunft könnt ihr den Kühlschrank also fragen: "Hey Cortana, wie viel Milch ist noch da?"

When my mother bought a DECT phone, of course I connected it directly to the FritzBox router as a base station not to waste a precious analog phone port.
Nice functionality. Except today it couldn't find its base station.
Looking in the FritzBox webinterface: 1 DECT phone connected.
Taking out the batteries of the phone: 1 DECT phone connected. Of course.
Rebooting the router: Everything works again.

Always choose a router you can run OpenWRT on, if you can.

Yea that seems like it would be a really fun to debug

#0 0x00007ffff7001285 in QButtonGroup::id(QAbstractButton*) const () at /usr/lib/
#1 0x00007ffff7002374 in () at /usr/lib/
#2 0x00007ffff7003747 in () at /usr/lib/
#3 0x00007ffff7003924 in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () at /usr/lib/
#4 0x00007ffff6f61ef8 in QWidget::event(QEvent*) () at /usr/lib/
#5 0x00007ffff6f1ae0c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/
#6 0x00007ffff6f2343d in QApplication::notify(QObject*, QEvent*) () at /usr/lib/
#7 0x00007ffff5ed1de0 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/
#8 0x00007ffff6f21aed in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () at /usr/lib/
#9 0x00007ffff6f7bfa0 in () at /usr/lib/
#10 0x00007ffff6f7e743 in () at /usr/lib/
#11 0x00007ffff6f1ae0c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/
#12 0x00007ffff6f22581 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/
#13 0x00007ffff5ed1de0 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/
#14 0x00007ffff6789303 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at /usr/lib/
#15 0x00007ffff678ae85 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () at /usr/lib/
#16 0x00007ffff6768cab in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/
#17 0x00007fffec9d32f0 in () at /usr/lib/
#18 0x00007ffff26262a7 in g_main_context_dispatch () at /usr/lib/
#19 0x00007ffff26264e8 in () at /usr/lib/
#20 0x00007ffff26265ab in g_main_context_iteration () at /usr/lib/
#21 0x00007ffff5f2670f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/
#22 0x00007ffff5ed023a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/
#23 0x00007ffff5ed873c in QCoreApplication::exec() () at /usr/lib/
#24 0x000055555556eb7c in main(int, char**) (argc=1, argv=0x7fffffffda98) at main.cpp:17

+Brandon Jones
Are we going to see OSVR and Linux support any time soon in the chromium webvr build?

Firefox nightly already has it, but it only works for about 2 seconds before crashing, so it has always been unusable.

Would be nice to have an alternative that actually works.

Fun with optimization...

Mandelbulber-opencl has an opencl kernel that doesn't compile with mesa's clover:
<unknown>:0:0: in function fractal3D void (%struct.sClPixel addrspace(1), %struct.sClInBuff addrspace(1), %struct.sClInConstants addrspace(2), %struct.sClReflect addrspace(1), %opencl.image2d_ro_t.0 addrspace(2)*, i32): unsupported call to function logf

Since the messages of the opencl compiler are ... lacking and the code is split over many files, I was going through the code manually and narrowed it down to this line:
out.distance = dist;

Of course that's weird. An assignment that causes an "unsupported call to function logf" error?

As the code (yes, the code of a single function) is spread over several files, I searched for dumping the CL code and finally found CLOVER_DEBUG=clc. With its help I could finally see this series of statements:
1. dist = 0.5f * r * native_log(r) / (r_dz);
2. if(dist < 0.0f) dist = 0.0f;
3. out.distance = dist;

native_log(r) is the problem. Probably a bug in mesa. But the fun thing is that when the assignment from line 3 is removed, it is not triggered. Or if you replace the condition dist < 0.0f with 1, then it is also not triggered.
Kinda interesting to see how compile errors in later stages are sometimes not hit just because the semantic analysis allows the compiler to throw away the problematic code because it can infer that its result isn't being used anyway.
Wait while more posts are being loaded