browser-switch
9 years agoRemove unnecessary #includes
Steven Luo [Thu, 17 Dec 2009 07:57:34 +0000 (23:57 -0800)]
Remove unnecessary #includes

9 years agoZap stray debugging printf()s
Steven Luo [Thu, 17 Dec 2009 07:48:27 +0000 (23:48 -0800)]
Zap stray debugging printf()s

9 years agoMove the regex #defines to configfile.c
Steven Luo [Thu, 17 Dec 2009 07:47:00 +0000 (23:47 -0800)]
Move the regex #defines to configfile.c

They're not needed anywhere else, so no need for them to be in the
header file.

9 years agoSwitch the proxy over to use shared config file parsing functions
Steven Luo [Thu, 17 Dec 2009 07:42:32 +0000 (23:42 -0800)]
Switch the proxy over to use shared config file parsing functions

9 years agoAdd independent config file parsing functions
Steven Luo [Thu, 17 Dec 2009 07:31:51 +0000 (23:31 -0800)]
Add independent config file parsing functions

Config file parsing will also be needed by the config UI, so break out
into its own function so that it can be shared between the config UI
and the C implementation.

9 years agoInitial refactor of config file handling
Steven Luo [Wed, 16 Dec 2009 12:02:08 +0000 (04:02 -0800)]
Initial refactor of config file handling

Move the config file locating code, the location #defines, and the
parsing regexes into new files, so that they can be shared by the config
UI.

9 years agoBe more consistent with debug printf()s for the launcher functions
Steven Luo [Tue, 15 Dec 2009 06:43:23 +0000 (22:43 -0800)]
Be more consistent with debug printf()s for the launcher functions

9 years agoAdd some comments to the code
Steven Luo [Tue, 15 Dec 2009 06:37:53 +0000 (22:37 -0800)]
Add some comments to the code

Restore some of the comments from the Python script, plus a few other
points that might make the code clearer.

9 years agoTry legacy config file location if config file not found
Steven Luo [Tue, 15 Dec 2009 06:14:27 +0000 (22:14 -0800)]
Try legacy config file location if config file not found

Before we renamed the project, the config file used to be found in
$HOME/.config/browser-proxy, so if we don't find a config file in the
new place, try the old one before giving up.

9 years agoLaunch MicroB if default_browser not set and Tear isn't installed
Steven Luo [Tue, 15 Dec 2009 06:07:28 +0000 (22:07 -0800)]
Launch MicroB if default_browser not set and Tear isn't installed

Change the handling of default_browser == NULL in
update_default_browser() to check for the presence of Tear before
setting it as the default browser, and to use MicroB as the default
otherwise.

9 years agoMerge documentation updates from 2.2 into c-implementation
Steven Luo [Mon, 14 Dec 2009 11:27:51 +0000 (03:27 -0800)]
Merge documentation updates from 2.2 into c-implementation

9 years agoReformat the changelog python-implementation v2.2
Steven Luo [Mon, 14 Dec 2009 11:10:00 +0000 (03:10 -0800)]
Reformat the changelog

9 years agoUpdate the Changelog
Steven Luo [Mon, 14 Dec 2009 11:06:22 +0000 (03:06 -0800)]
Update the Changelog

9 years agoUpdate README
Steven Luo [Mon, 14 Dec 2009 11:01:37 +0000 (03:01 -0800)]
Update README

Substantial rewrite of the README, providing usage instructions for the
package and documenting the config file.

9 years agoFix off-by-one error in launch_other_browser
Steven Luo [Sun, 13 Dec 2009 08:45:12 +0000 (00:45 -0800)]
Fix off-by-one error in launch_other_browser

quote+1 has length one less than quote, so asking memmove() to move
strlen(quote)+1 bytes (including the \0) starting at quote+1 results in
writing one byte beyond the end of the memory area.  Found by valgrind.

9 years agoActually initialize sa_mask properly
Steven Luo [Sun, 13 Dec 2009 08:35:18 +0000 (00:35 -0800)]
Actually initialize sa_mask properly

sigset_t isn't necessarily an integer, so we can't assign an integer to
it -- use the appropriate function instead.

9 years agoInitialize sa_mask in sigaction structure
Steven Luo [Sun, 13 Dec 2009 08:29:04 +0000 (00:29 -0800)]
Initialize sa_mask in sigaction structure

Found by valgrind.

9 years agoCreate and register two different OssoBrowser objects instead of reusing one
Steven Luo [Sun, 13 Dec 2009 08:21:46 +0000 (00:21 -0800)]
Create and register two different OssoBrowser objects instead of reusing one

Valgrind complains about a memory leak otherwise.

9 years agoFix thinko in open_address
Steven Luo [Sun, 13 Dec 2009 08:15:41 +0000 (00:15 -0800)]
Fix thinko in open_address

if (!uri && uri[0] = '/') is obviously never going to be true ...
Fix by just giving up in the !uri case.

Strangely enough, I'm not hitting this in testing on the tablet --
perhaps gcc is optimizing out the test?

9 years agoUnbreak the no-config-file case after last commit
Steven Luo [Fri, 11 Dec 2009 10:56:22 +0000 (02:56 -0800)]
Unbreak the no-config-file case after last commit

Thinko in the last commit left LaunchBrowser potentially undefined in
the no-config-file case.

9 years agoTry legacy config file location if config file not found
Steven Luo [Fri, 11 Dec 2009 10:51:31 +0000 (02:51 -0800)]
Try legacy config file location if config file not found

Before we renamed the project, the config file used to be found in
$HOME/.config/browser-proxy, so if we don't find a config file in the
new place, try the old one before giving up.

Also fix a couple of syntax errors.

9 years agoDon't exit if pidof dies abnormally
Steven Luo [Fri, 11 Dec 2009 10:28:27 +0000 (02:28 -0800)]
Don't exit if pidof dies abnormally

There's no need to quit if pidof is killed or otherwise dies abnormally
instead of exiting normally, we just can't check its exit status.

9 years agoMake "make install" install the /usr/bin/browser wrapper and dbus service too
Steven Luo [Fri, 11 Dec 2009 10:24:58 +0000 (02:24 -0800)]
Make "make install" install the /usr/bin/browser wrapper and dbus service too

9 years agoRemove a stray debugging printf()
Steven Luo [Fri, 11 Dec 2009 10:21:42 +0000 (02:21 -0800)]
Remove a stray debugging printf()

9 years agoClean up string handling
Steven Luo [Fri, 11 Dec 2009 10:18:05 +0000 (02:18 -0800)]
Clean up string handling

Revise the handling of strings in several places to be less confusing
and safer.  Fix at least two definite bugs in launcher.c concerning
integer overflows and realloc() possibly moving memory.

Also a few indentation changes.

9 years agoStyle changes
Steven Luo [Fri, 11 Dec 2009 05:28:12 +0000 (21:28 -0800)]
Style changes

9 years agoMake config file parsing (mostly) compatible with the Python implementation
Steven Luo [Fri, 11 Dec 2009 05:15:39 +0000 (21:15 -0800)]
Make config file parsing (mostly) compatible with the Python implementation

Redo the config file parsing using POSIX regular expressions, so that
it's mostly compatible with the Python implementation.  Full
compatibility isn't happening, of course, since the Python
implementation's config file is being sourced by the interpreter.

9 years agoRemove a redundant -Wall from CPPFLAGS
Steven Luo [Fri, 11 Dec 2009 04:53:26 +0000 (20:53 -0800)]
Remove a redundant -Wall from CPPFLAGS

9 years agoCommit a plain C reimplementation of browser-switchboard
Steven Luo [Fri, 11 Dec 2009 04:08:23 +0000 (20:08 -0800)]
Commit a plain C reimplementation of browser-switchboard

The C implementation has a ~2 second startup time advantage over the
Python version, very noticeable when continuous_mode is disabled.

For now, the config file format is incompatible with the Python
implementation.

9 years agoMake browser-switchboard launch MicroB if unconfigured and Tear is not installed
Steven Luo [Fri, 11 Dec 2009 02:09:23 +0000 (18:09 -0800)]
Make browser-switchboard launch MicroB if unconfigured and Tear is not installed

Make browser-switchboard launch MicroB if there is no config file and
Tear is not installed.  Do this by handling default_browser == ""
specially, and by setting default_browser to the empty string by
default.

This allows us to drop the Depends: on tear in the packaging.

9 years agoFinish changing the name from browser-proxy to browser-switchboard
Steven Luo [Fri, 11 Dec 2009 00:47:48 +0000 (16:47 -0800)]
Finish changing the name from browser-proxy to browser-switchboard

Rename the script to browser-switchboard, and change the D-Bus .service
file and the docs accordingly.  Change the config file location from
$HOME/.config/browser-proxy to $HOME/.config/browser-switchboard.

Also, get rid of the # in front of every line of the README.

9 years agoZap the welcome file
Steven Luo [Fri, 11 Dec 2009 00:27:35 +0000 (16:27 -0800)]
Zap the welcome file

9 years agoMerge branch 'master' of https://git.maemo.org/projects/browser-switch
Steven Luo [Fri, 11 Dec 2009 00:20:53 +0000 (16:20 -0800)]
Merge branch 'master' of https://git.maemo.org/projects/browser-switch

9 years agoInitial commit.
Steven Luo [Fri, 11 Dec 2009 00:18:38 +0000 (16:18 -0800)]
Initial commit.

9 years agowelcome
www-data [Thu, 10 Dec 2009 12:40:32 +0000 (14:40 +0200)]
welcome