diff --git a/db.py b/db.py
index f64e6a36b6db5dabb604c0bbdaaebf3c20133fdb..26eb9219052feb05feb43c8a01ecb8ce4f4f7904 100644
--- a/db.py
+++ b/db.py
@@ -84,7 +84,7 @@ elif config['DB_ENGINE'] == 'mysql':
 		db.close()
 		return res
 
-def query(operation, *params, delim="sep"):
+def query(operation, *params, delim="sep", nlfix=True):
 	operation, params = fix_query(operation, params)
 	cur = get_dbcursor()
 	cur.execute(operation, params)
@@ -106,7 +106,7 @@ def query(operation, *params, delim="sep"):
 			if name == delim:
 				ptr = res[-1][col] = {}
 				continue
-			if type(col) == str:
+			if type(col) == str and nlfix:
 				col = col.replace('\\n', '\n').replace('\\r', '\r')
 			ptr[name] = col
 	return res
diff --git a/jobs.py b/jobs.py
index 57bce95364c844325bd7178f9ba8b44418d1d399..25a9a309715974c5a0c29a064db4afd1170263b5 100644
--- a/jobs.py
+++ b/jobs.py
@@ -106,7 +106,7 @@ def jobs_ping(id):
 		query('UPDATE jobs SET time_finished = ?, status = ?, state = "finished" where id = ?', datetime.now(), status, id)
 	else:
 		query('UPDATE jobs SET worker = ?, last_ping = ?, status = ?, state = ? where id = ?', hostname, datetime.now(), status, state, id)
-	job = query('SELECT * FROM jobs WHERE id = ?', id)[0]
+	job = query('SELECT * FROM jobs WHERE id = ?', id, nlfix=False)[0]
 	for func in job_handlers.get(job['type'], {}).get(state, []):
 		try:
 			func(id, job['type'], json.loads(job['data']), state, json.loads(job['status']))