diff --git a/RISCOS/Python/dynload_riscos.c b/RISCOS/Python/dynload_riscos.c
index 6b87f2d..8ecb29d 100644
--- a/RISCOS/Python/dynload_riscos.c
+++ b/RISCOS/Python/dynload_riscos.c
@@ -39,8 +39,8 @@
 
 
 const struct filedescr _PyImport_DynLoadFiletab[] = {
-	{"/pyd", "rb", C_EXTENSION},
-	{0, 0}
+    {"/pyd", "rb", C_EXTENSION},
+    {0, 0}
 };
 
 void dynload_init_dummy()
@@ -48,16 +48,16 @@
 }
 
 dl_funcptr _PyImport_GetDynLoadFunc(const char *fqname, const char *shortname,
-				    char *pathname, FILE *fp)
+                                    char *pathname, FILE *fp)
 {
-	int err;
-	char errstr[256];
-	void (*init_function)(void);
+    int err;
+    char errstr[256];
+    void (*init_function)(void);
 
-	err = dlk_load_no_init(pathname, &init_function);
-	if (err) {
-	    PyOS_snprintf(errstr, sizeof(errstr), "dlk failure %d", err);
-	    PyErr_SetString(PyExc_ImportError, errstr);
-	}
-	return init_function;
+    err = dlk_load_no_init(pathname, &init_function);
+    if (err) {
+        PyOS_snprintf(errstr, sizeof(errstr), "dlk failure %d", err);
+        PyErr_SetString(PyExc_ImportError, errstr);
+    }
+    return init_function;
 }
