Skip to content

Instantly share code, notes, and snippets.

View fischman's full-sized avatar

Ami Fischman fischman

View GitHub Profile

Keybase proof

I hereby claim:

  • I am fischman on github.
  • I am ami (https://keybase.io/ami) on keybase.
  • I have a public key whose fingerprint is 326F 3B6A 660B 9CB0 637D AA17 A678 6237 68A5 6A7C

To claim this, I am signing this object:

@fischman
fischman / Designs.md
Last active October 16, 2021 17:26
This gist is a "table of contents" for some finished versions of things I've designed, either for 3d-printed or lasercutting.

NOTE: OBSOLETE

The designs below use OpenJSCAD V1 which has long been superceded by the incompatible V2 API. Links are to a kindly-provided V1 host that may not stick around forever, in which case V1 -> V2 migration guide may come in handy.

Also references/links are made to a Google+ community and posts, all of which were et by the Google+ turndown.

Tapered text

Prompted by a G+ post I hacked up a demo of tapered text

Keybase proof

I hereby claim:

  • I am fischman on github.
  • I am ami (https://keybase.io/ami) on keybase.
  • I have a public key whose fingerprint is 3BA9 6B9A BF5C 97BE D624 D409 A96B 2854 0A01 71B9

To claim this, I am signing this object:

@fischman
fischman / shell log
Created July 11, 2013 21:08
Example of negation in gyp
fischman@fischman-linux ~/t $ GYP_DEFINES="base=0" GYP_GENERATORS=ninja ~/src/chromium/src/tools/gyp/gyp --depth=. t.gyp && grep NEGATION out/Default/obj/MyTarget.ninja
cflags = -DNEGATION_1
fischman@fischman-linux ~/t $ GYP_DEFINES="base=1" GYP_GENERATORS=ninja ~/src/chromium/src/tools/gyp/gyp --depth=. t.gyp && grep NEGATION out/Default/obj/MyTarget.ninja
cflags = -DNEGATION_0
@fischman
fischman / gist:3654045
Created September 6, 2012 09:50
vdpau-driver use-after-free
=================================================================
==25091== ERROR: AddressSanitizer heap-use-after-free on address 0x7f1d93f98188 at pc 0x7f1d85f33161 bp 0x7f1d7bc16e30 sp 0x7f1d7bc16e28
READ of size 8 at 0x7f1d93f98188 thread T4
#0 0x7f1d85f33160 in render_thread /home/fischman/va-craxy/vdpau-driver/src/vdpau_video_x11.c:85
#1 0x7f1de231613b in __asan::AsanThread::ThreadStart() ??:0
0x7f1d93f98188 is located 264 bytes inside of 2304-byte region [0x7f1d93f98080,0x7f1d93f98980)
freed by thread T0 here:
#0 0x7f1de23131b5 in __interceptor_realloc ??:0
#1 0x7f1d85f0e38a in object_heap_expand /home/fischman/va-craxy/vdpau-driver/src/object_heap.c:62
#2 0x7f1d85f0e63b in object_heap_allocate /home/fischman/va-craxy/vdpau-driver/src/object_heap.c:104
fischman@trap ~/src/chromium/src/third_party/WebKit {b92881} $ echo -e "file://`pwd`/LayoutTests/jquery/traversing.html\nfile://`pwd`/LayoutTests/media/video-poster-blocked-by-willsendrequest.html" | ../../ninja/Debug/DumpRenderTree --pixel-tests -
Xlib: extension "RANDR" missing on display ":0.0".
ALERT: 198 tests of 198 passed, 0 failed.
Content-Type: text/plain
#EOF
#EOF
#EOF
Content-Type: text/plain
Test for https://bugs.webkit.org/show_bug.cgi?id=65270.
<class 'google.appengine.api.datastore_errors.Timeout'>: The datastore operation timed out, or the data was temporarily unavailable.
Traceback (most recent call last):
File "/base/data/home/apps/chromium-status/r118900.356331869415836973/main.py", line 74, in <module>
base_page.bootstrap()
File "/base/data/home/apps/chromium-status/r118900.356331869415836973/base_page.py", line 132, in bootstrap
config = db.GqlQuery('SELECT * FROM GlobalConfig').get()
File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/db/__init__.py", line 2101, in get
return results.next()
File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/db/__init__.py", line 2313, in next
return self.__model_class.from_entity(self.__iterator.next())
commit 7dbe5ab20cdf7b014f1697d97908dd81100ca878
Author: Ami Fischman <fischman@chromium.org>
Date: Tue Jun 12 18:18:47 2012
Better impl of MakeCurrent
diff --git a/content/common/gpu/media/gpu_video_decode_accelerator.cc b/content/common/gpu/media/gpu_video_decode_accelerator.cc
index 39dd80f..e782235 100644
--- a/content/common/gpu/media/gpu_video_decode_accelerator.cc
+++ b/content/common/gpu/media/gpu_video_decode_accelerator.cc
diff --git a/Source/WebKit/chromium/src/WebLayerTreeView.cpp b/Source/WebKit/chromium/src/WebLayerTreeView.cpp
index fed3db9..7de17fd 100644
--- a/Source/WebKit/chromium/src/WebLayerTreeView.cpp
+++ b/Source/WebKit/chromium/src/WebLayerTreeView.cpp
@@ -167,7 +167,10 @@ void WebLayerTreeView::finishAllRendering()
WebGraphicsContext3D* WebLayerTreeView::context()
{
- return GraphicsContext3DPrivate::extractWebGraphicsContext3D(m_private->layerTreeHost()->context()->context3D());
+ WebCore::CCGraphicsContext* c = m_private->layerTreeHost()->context();
(gdb) bt
#0 0x00007f2cb89daa32 in WTF::RefPtr<WebCore::GraphicsContext3D>::get (this=0x20) at ../../third_party/WebKit/Source/WTF/wtf/RefPtr.h:58
#1 0x00007f2cb89da8ea in WebCore::CCGraphicsContext::context3D (this=0x0) at ../../third_party/WebKit/Source/WebCore/platform/graphics/chromium/cc/CCGraphicsContext.h:47
#2 0x00007f2cb89da874 in WebKit::WebLayerTreeView::context (this=0x7f2cb496faf8) at ../../third_party/WebKit/Source/WebKit/chromium/src/WebLayerTreeView.cpp:170
#3 0x00007f2cb8a17096 in WebKit::WebViewImpl::graphicsContext3D (this=0x7f2cb496f880) at ../../third_party/WebKit/Source/WebKit/chromium/src/WebViewImpl.cpp:3659
#4 0x00007f2cc083065a in RenderViewImpl::createMediaPlayer (this=0x7f2cae18d000, frame=0x7f2cad4d6e00, client=0x7f2cac8a43d0) at ../../content/renderer/render_view_impl.cc:2369
#5 0x00007f2cb89db5bb in WebKit::createWebMediaPlayer (client=0x7f2cac8a43d0, frame=0x7f2caccb6000) at ../../third_party/WebKit/Source/WebKit/chromium/src/WebMediaPlayerClientImpl.cpp:56
#6 0x00007f2cb