Skip to content

Instantly share code, notes, and snippets.

View cypres's full-sized avatar

Hans Arnholm cypres

View GitHub Profile
//
// NSString+SizeCalculation.h
//
// Created by Hans Duedal on 24/01/13.
// Copyright (c) 2013 OnlineCity ApS.
//
// Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby
// granted, provided that the above copyright notice and this permission notice appear in all copies.
//
// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
@cypres
cypres / thrift.rb
Last active December 25, 2015 06:48
Fixed formular to install thrift 0.9.1, with working PHP lib and extension.
require 'formula'
class Thrift < Formula
homepage 'http://thrift.apache.org'
# The thrift.apache.org 0.9.1 archive is missing PHP ext, fixed in THRIFT-2129
# By grapping the source from git instead, it's fixed, but we need to bootstrap
url 'https://git-wip-us.apache.org/repos/asf/thrift.git', :branch => "0.9.1"
version "0.9.1"
head do
--- a/tutorial/cpp/CppClient.cpp
+++ b/tutorial/cpp/CppClient.cpp
@@ -38,9 +38,9 @@
using namespace boost;
int main(int argc, char** argv) {
- shared_ptr<TTransport> socket(new TSocket("localhost", 9090));
- shared_ptr<TTransport> transport(new TBufferedTransport(socket));
- shared_ptr<TProtocol> protocol(new TBinaryProtocol(transport));
+ boost::shared_ptr<TTransport> socket(new TSocket("localhost", 9090));
@cypres
cypres / install-folly.sh
Last active December 30, 2015 21:29
Canonical way to install https://github.com/facebook/folly on OS 10.9 (Mavericks)
#!/bin/bash
# Canonical way to install folly on OS 10.9 (Mavericks)
# For deps try: brew install boost glog gflags jemalloc scons autoconf automake libtool
git clone [email protected]:facebook/folly.git fb-folly
cd fb-folly
# Commit 79c25e6f4a breaks complilation on OS X, so checkout previous version
git checkout 6d89f3d33268eaa12d5eb03a4afa5caa856306c5
git clone https://code.google.com/p/double-conversion/
@cypres
cypres / .vimrc
Created February 11, 2014 08:54
vimrc for severs
" everything needs to be unicode. EVERYTHING
set encoding=utf8
" always join with just one space, even between sentences
set nojoinspaces
" don't move the cursor to the start of the line when changing buffers
set nostartofline
" Yeah, we like
@cypres
cypres / main.cc
Created March 26, 2014 12:45
smpp time parse
#include <iostream>
#include <iomanip>
#include <ctime>
#include <cstdint>
uint64_t unixtime(const char* ts) {
std::tm tm;
tm.tm_year = (ts[0] - '0') * 10 + (ts[1] - '0');
if (tm.tm_year < 70) tm.tm_year += 2000;
tm.tm_mon = (ts[2] - '0') * 10 + (ts[3] - '0');
# This file is NOT licensed under the GPLv3, which is the license for the rest
# of YouCompleteMe.
#
# Here's the license text for this file:
#
# This is free and unencumbered software released into the public domain.
#
# Anyone is free to copy, modify, publish, use, compile, sell, or
# distribute this software, either in source code form or as a compiled
# binary, for any purpose, commercial or non-commercial, and by any
@cypres
cypres / daemon.cc
Created April 2, 2014 08:49
C++ example daemon with fork and relaunch should child die. Required C++11, gflags and glog.
//
// Copyright (C) 2011-2012 Yaroslav Stavnichiy <[email protected]>
// Copyright (C) 2014 OnlineCity Aps <[email protected]>
//
// Inspired by: https://bitbucket.org/yarosla/nxweb/src/tip/src/lib/daemon.c
//
// Licensed under The MIT License:
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
@cypres
cypres / .astylerc
Created June 11, 2014 08:16
OC C++ config for astyle plugin
# astylerc
align-pointer=name
align-reference=name
max-code-length=120
break-after-logical
indent=spaces=2
style=google
# Padding
pad-header
@cypres
cypres / api.sendfile.nginx.patch
Last active August 29, 2015 14:02
trac nginx send file
--- /usr/local/lib/python2.7/site-packages/trac/web/api.py 2014-04-07 11:34:10.326789939 +0200
+++ /usr/local/lib/python2.7/site-packages/trac/web/api.py 2014-06-19 12:52:08.690985738 +0200
@@ -577,7 +577,7 @@
self.send_header('Last-Modified', last_modified)
use_xsendfile = getattr(self, 'use_xsendfile', False)
if use_xsendfile:
- self.send_header('X-Sendfile', os.path.abspath(path))
+ self.send_header('X-Accel-Redirect', os.path.abspath(path))
self.end_headers()